From f7765e018d473321342d816498f901be473ca6c0 Mon Sep 17 00:00:00 2001 From: Andreas Thomas Date: Thu, 23 Mar 2023 00:36:30 +0100 Subject: [PATCH] fix: remove edge runtime --- .../.cache/v0.3.0/data-KFUTZ636.json | 30 +-- .contentlayer/generated/Project/_index.json | 16 +- .../Project/projects__access.mdx.json | 2 +- .../Project/projects__envshare.mdx.json | 4 +- .../Project/projects__planetfall.mdx.json | 2 +- .../Project/projects__qstash.mdx.json | 2 +- ...ojects__terraform-provider-vercel.mdx.json | 2 +- .../Project/projects__upstash-kafka.mdx.json | 2 +- .../Project/projects__upstash-redis.mdx.json | 2 +- app/projects/[slug]/page.tsx | 1 - content/projects/envshare.mdx | 2 +- next.config.mjs | 4 - package.json | 8 +- pnpm-lock.yaml | 246 +++++++++--------- 14 files changed, 159 insertions(+), 164 deletions(-) diff --git a/.contentlayer/.cache/v0.3.0/data-KFUTZ636.json b/.contentlayer/.cache/v0.3.0/data-KFUTZ636.json index 588095b..29d9642 100644 --- a/.contentlayer/.cache/v0.3.0/data-KFUTZ636.json +++ b/.contentlayer/.cache/v0.3.0/data-KFUTZ636.json @@ -8,7 +8,7 @@ "repository": "chronark/access", "body": { "raw": "A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\n\n- Fully typed\n- Zero dependencies\n- Serializable to store in a database\n\n## Install\n\n```sh-session\nnpm i @chronark/access\n```\n\n## Usage\n\n```ts\nimport { AccessControl, Role } from \"@chronark/access\";\n\n/**\n * Define all your resources and their access patterns\n *\n * key => resource\n * value => array of access types\n */\ntype Statements = {\n user: [\"read\", \"write\", \"dance\"];\n team: [\"read\", \"write\"];\n};\n\n/**\n * Create an access control instance and pass the Statements type to enjoy full\n * type safety\n */\nconst ac = new AccessControl();\n\n/**\n * Now you can define one or more roles by specifying the access permissions\n *\n * This is already fully typed and typescript will let you know if you try to\n * use anything, that is not defined in the Statements type.\n */\nconst role = ac.newRole({\n user: [\"read\", \"write\"],\n team: [\"read\"],\n});\n\n/**\n * Simulate storing and retrieving the role in a database\n *\n * The idea here is, that you can store permissions alongside an API token.\n * Now, when you verify the token, you can also verify the access permissions.\n */\nconst serialized = role.toString();\n\n/**\n * Note how you can pass in the Statements type again, to get full type safety\n */\nconst recovered = Role.fromString(serialized);\n\n/**\n * Validate the role by specifying the resource and the required access\n *\n * everything is fully typed\n */\nconst res = recovered.authorize({\"team\", [\"read\"]});\n\n// res.success => boolean\n// res.error => string | undefined provides a reason for failure\n```", - "code": "var Component=(()=>{var cn=Object.create;var S=Object.defineProperty;var bn=Object.getOwnPropertyDescriptor;var ln=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,un=Object.prototype.hasOwnProperty;var z=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),fn=(i,e)=>{for(var _ in e)S(i,_,{get:e[_],enumerable:!0})},xe=(i,e,_,k)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let y of ln(e))!un.call(i,y)&&y!==_&&S(i,y,{get:()=>e[y],enumerable:!(k=bn(e,y))||k.enumerable});return i};var hn=(i,e,_)=>(_=i!=null?cn(mn(i)):{},xe(e||!i||!i.__esModule?S(_,\"default\",{value:i,enumerable:!0}):_,i)),_n=i=>xe(S({},\"__esModule\",{value:!0}),i);var Ee=z((gn,ge)=>{ge.exports=React});var je=z(G=>{\"use strict\";(function(){\"use strict\";var i=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),k=Symbol.for(\"react.fragment\"),y=Symbol.for(\"react.strict_mode\"),X=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),O=Symbol.for(\"react.suspense\"),P=Symbol.for(\"react.suspense_list\"),R=Symbol.for(\"react.memo\"),B=Symbol.for(\"react.lazy\"),Re=Symbol.for(\"react.offscreen\"),Z=Symbol.iterator,Ce=\"@@iterator\";function De(n){if(n===null||typeof n!=\"object\")return null;var a=Z&&n[Z]||n[Ce];return typeof a==\"function\"?a:null}var g=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function u(n){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&m>=0&&s[l]!==f[m];)m--;for(;l>=1&&m>=0;l--,m--)if(s[l]!==f[m]){if(l!==1||m!==1)do if(l--,m--,m<0||s[l]!==f[m]){var h=`\n`+s[l].replace(\" at new \",\" at \");return n.displayName&&h.includes(\"\")&&(h=h.replace(\"\",n.displayName)),typeof n==\"function\"&&D.set(n,h),h}while(l>=1&&m>=0);break}}}finally{$=!1,I.current=b,$e(),Error.prepareStackTrace=c}var j=n?n.displayName||n.name:\"\",ke=j?C(j):\"\";return typeof n==\"function\"&&D.set(n,ke),ke}function Ve(n,a,t){return ce(n,!1)}function Me(n){var a=n.prototype;return!!(a&&a.isReactComponent)}function w(n,a,t){if(n==null)return\"\";if(typeof n==\"function\")return ce(n,Me(n));if(typeof n==\"string\")return C(n);switch(n){case O:return C(\"Suspense\");case P:return C(\"SuspenseList\")}if(typeof n==\"object\")switch(n.$$typeof){case F:return Ve(n.render);case R:return w(n.type,a,t);case B:{var o=n,c=o._payload,b=o._init;try{return w(b(c),a,t)}catch{}}}return\"\"}var T=Object.prototype.hasOwnProperty,be={},ie=g.ReactDebugCurrentFrame;function A(n){if(n){var a=n._owner,t=w(n.type,n._source,a?a.type:null);ie.setExtraStackFrame(t)}else ie.setExtraStackFrame(null)}function Le(n,a,t,o,c){{var b=Function.call.bind(T);for(var d in n)if(b(n,d)){var s=void 0;try{if(typeof n[d]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof n[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=n[d](a,d,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(l){s=l}s&&!(s instanceof Error)&&(A(c),u(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,d,typeof s),A(null)),s instanceof Error&&!(s.message in be)&&(be[s.message]=!0,A(c),u(\"Failed %s type: %s\",t,s.message),A(null))}}}var qe=Array.isArray;function W(n){return qe(n)}function ze(n){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&n[Symbol.toStringTag]||n.constructor.name||\"Object\";return t}}function Ge(n){try{return le(n),!1}catch{return!0}}function le(n){return\"\"+n}function me(n){if(Ge(n))return u(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",ze(n)),le(n)}var v=g.ReactCurrentOwner,Xe={key:!0,ref:!0,__self:!0,__source:!0},ue,fe,V;V={};function Ke(n){if(T.call(n,\"ref\")){var a=Object.getOwnPropertyDescriptor(n,\"ref\").get;if(a&&a.isReactWarning)return!1}return n.ref!==void 0}function He(n){if(T.call(n,\"key\")){var a=Object.getOwnPropertyDescriptor(n,\"key\").get;if(a&&a.isReactWarning)return!1}return n.key!==void 0}function Ze(n,a){if(typeof n.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);V[t]||(u('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),n.ref),V[t]=!0)}}function Je(n,a){{var t=function(){ue||(ue=!0,u(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(n,\"key\",{get:t,configurable:!0})}}function Qe(n,a){{var t=function(){fe||(fe=!0,u(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(n,\"ref\",{get:t,configurable:!0})}}var en=function(n,a,t,o,c,b,d){var s={$$typeof:e,type:n,key:a,ref:t,props:d,_owner:b};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:c}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(n,a,t,o,c){{var b,d={},s=null,f=null;t!==void 0&&(me(t),s=\"\"+t),He(a)&&(me(a.key),s=\"\"+a.key),Ke(a)&&(f=a.ref,Ze(a,c));for(b in a)T.call(a,b)&&!Xe.hasOwnProperty(b)&&(d[b]=a[b]);if(n&&n.defaultProps){var l=n.defaultProps;for(b in l)d[b]===void 0&&(d[b]=l[b])}if(s||f){var m=typeof n==\"function\"?n.displayName||n.name||\"Unknown\":n;s&&Je(d,m),f&&Qe(d,m)}return en(n,s,f,c,o,v.current,d)}}var M=g.ReactCurrentOwner,he=g.ReactDebugCurrentFrame;function E(n){if(n){var a=n._owner,t=w(n.type,n._source,a?a.type:null);he.setExtraStackFrame(t)}else he.setExtraStackFrame(null)}var L;L=!1;function q(n){return typeof n==\"object\"&&n!==null&&n.$$typeof===e}function _e(){{if(M.current){var n=p(M.current.type);if(n)return`\n\nCheck the render method of \\``+n+\"`.\"}return\"\"}}function rn(n){{if(n!==void 0){var a=n.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=n.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(n){{var a=_e();if(!a){var t=typeof n==\"string\"?n:n.displayName||n.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(n,a){{if(!n._store||n._store.validated||n.key!=null)return;n._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";n&&n._owner&&n._owner!==M.current&&(o=\" It was passed a child from \"+p(n._owner.type)+\".\"),E(n),u('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ye(n,a){{if(typeof n!=\"object\")return;if(W(n))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):l=typeof n,u(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",l,s)}var m=nn(n,a,t,c,b);if(m==null)return m;if(d){var h=a.children;if(h!==void 0)if(o)if(W(h)){for(var j=0;j{\"use strict\";Ue.exports=je()});var kn={};fn(kn,{default:()=>yn,frontmatter:()=>pn});var r=hn(ve()),pn={title:\"@chronark/access\",description:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\",repository:\"chronark/access\",date:\"2022-11-13\"};function Fe(i){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",h2:\"h2\",a:\"a\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\"},i.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(e.p,{children:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.ul,{children:[`\n`,(0,r.jsxDEV)(e.li,{children:\"Fully typed\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.li,{children:\"Zero dependencies\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.li,{children:\"Serializable to store in a database\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.h2,{id:\"install\",children:[(0,r.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,r.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this),\"Install\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(e.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#e1e4e8\"},children:\"npm i @chronark/access\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.h2,{id:\"usage\",children:[(0,r.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#usage\",children:(0,r.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this),\"Usage\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:104},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { AccessControl, Role } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:146},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:207},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:247},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@chronark/access\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:284},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:348},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:3,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Define all your resources and their access patterns\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:4,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * key => resource\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * value => array of access types\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"type\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:60},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:97},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:143},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:180},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:217},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#FFAB70\"},children:\"user\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:58},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\":\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:135},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:225},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:263},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:316},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"dance\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:354},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:407},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#FFAB70\"},children:\"team\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:58},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\":\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:135},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:225},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:263},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:316},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"};\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Create an access control instance and pass the Statements type to enjoy full\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:15,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * type safety\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:17,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"ac\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:136},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:210},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:247},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:286},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"AccessControl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:323},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:372},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:412},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">();\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:458},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Now you can define one or more roles by specifying the access permissions\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:21,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * This is already fully typed and typescript will let you know if you try to\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:23,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * use anything, that is not defined in the Statements type.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:24,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"role\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:138},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:175},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" ac.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:212},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"newRole\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:252},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:295},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" user: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:65},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:117},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:155},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:208},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" team: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:65},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:117},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:29,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:29,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:31,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Simulate storing and retrieving the role in a database\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:32,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:33,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:33,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * The idea here is, that you can store permissions alongside an API token.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:34,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Now, when you verify the token, you can also verify the access permissions.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:35,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:36,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:36,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"serialized\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:144},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:181},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" role.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:218},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"toString\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:260},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"();\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:304},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:38,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:39,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Note how you can pass in the Statements type again, to get full type safety\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:40,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:40,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:41,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:41,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"recovered\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:143},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:180},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" Role.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:217},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"fromString\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:259},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:305},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:345},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">(serialized);\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:391},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:43,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:44,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:44,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Validate the role by specifying the resource and the required access\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:45,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:45,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:46,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * everything is fully typed\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:47,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:47,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:48,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:137},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:174},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" recovered.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:211},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"authorize\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:258},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:303},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"team\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:341},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:393},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:432},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"]});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:484},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// res.success => boolean\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:51,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:51,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// res.error => string | undefined provides a reason for failure\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:52,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:52,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(i={}){let{wrapper:e}=i.components||{};return e?(0,r.jsxDEV)(e,Object.assign({},i,{children:(0,r.jsxDEV)(Fe,i,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this):Fe(i)}var yn=Nn;return _n(kn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var F=(l,e)=>()=>(e||l((e={exports:{}}).exports,e),e.exports),N=(l,e)=>{for(var s in e)a(l,s,{get:e[s],enumerable:!0})},o=(l,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let c of y(e))!m.call(l,c)&&c!==s&&a(l,c,{get:()=>e[c],enumerable:!(r=p(e,c))||r.enumerable});return l};var u=(l,e,s)=>(s=l!=null?h(E(l)):{},o(e||!l||!l.__esModule?a(s,\"default\",{value:l,enumerable:!0}):s,l)),f=l=>o(a({},\"__esModule\",{value:!0}),l);var t=F((v,i)=>{i.exports=_jsx_runtime});var B={};N(B,{default:()=>D,frontmatter:()=>g});var n=u(t()),g={title:\"@chronark/access\",description:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\",repository:\"chronark/access\",date:\"2022-11-13\"};function d(l){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",h2:\"h2\",a:\"a\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\"},l.components);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(e.p,{children:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\"}),`\n`,(0,n.jsxs)(e.ul,{children:[`\n`,(0,n.jsx)(e.li,{children:\"Fully typed\"}),`\n`,(0,n.jsx)(e.li,{children:\"Zero dependencies\"}),`\n`,(0,n.jsx)(e.li,{children:\"Serializable to store in a database\"}),`\n`]}),`\n`,(0,n.jsxs)(e.h2,{id:\"install\",children:[(0,n.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,n.jsx)(e.span,{className:\"icon icon-link\"})}),\"Install\"]}),`\n`,(0,n.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsx)(e.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,n.jsx)(e.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#e1e4e8\"},children:\"npm i @chronark/access\"})})})})}),`\n`,(0,n.jsxs)(e.h2,{id:\"usage\",children:[(0,n.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#usage\",children:(0,n.jsx)(e.span,{className:\"icon icon-link\"})}),\"Usage\"]}),`\n`,(0,n.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxs)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { AccessControl, Role } \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@chronark/access\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Define all your resources and their access patterns\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * key => resource\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * value => array of access types\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"type\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\"user\"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\":\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"dance\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\"team\"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\":\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"};\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Create an access control instance and pass the Statements type to enjoy full\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * type safety\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"ac\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"AccessControl\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">();\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Now you can define one or more roles by specifying the access permissions\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * This is already fully typed and typescript will let you know if you try to\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * use anything, that is not defined in the Statements type.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"role\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" ac.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"newRole\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" user: [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" team: [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Simulate storing and retrieving the role in a database\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * The idea here is, that you can store permissions alongside an API token.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Now, when you verify the token, you can also verify the access permissions.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"serialized\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" role.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"toString\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"();\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Note how you can pass in the Statements type again, to get full type safety\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"recovered\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" Role.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"fromString\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">(serialized);\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Validate the role by specifying the resource and the required access\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * everything is fully typed\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" recovered.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"authorize\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"team\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"]});\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// res.success => boolean\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// res.error => string | undefined provides a reason for failure\"})})]})})})]})}function A(l={}){let{wrapper:e}=l.components||{};return e?(0,n.jsx)(e,Object.assign({},l,{children:(0,n.jsx)(d,l)})):d(l)}var D=A;return f(B);})();\n;return Component;" }, "_id": "projects/access.mdx", "_raw": { @@ -22,7 +22,7 @@ "path": "/projects/access", "slug": "access" }, - "documentHash": "1678487136437", + "documentHash": "1679527360059", "hasWarnings": false, "documentTypeName": "Project" }, @@ -34,8 +34,8 @@ "url": "https://envshare.dev", "repository": "chronark/envshare", "body": { - "raw": "\nEnvShare is a simple tool to share environment variables securely. It uses\n**AES-GCM** to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.\n\n## Features\n\n- **Shareable Links:** Share your environment variables securely by sending a\n link\n- **End-to-End Encryption:** AES-GCM encryption is used to encrypt your data\n before sending it to the server\n- **Limit number of reads:** Limit the number of times a link can be read\n- **Auto Expire:** Automatically expire links and delete data after a certain\n time\n\n\n\n![](img/envshare.png)\n\n## Built with\n\n- [Next.js](https://nextjs.org)\n- [tailwindcss](https://tailwindcss.com)\n- Deployed on [Vercel](https://vercel.com?utm_source=envshare)\n- Data stored on [Upstash](https://upstash.com?utm_source=envshare)\n\n## Deploy your own\n\nDetailed instructions can be found [here](https://envshare.dev/deploy)\n\nAll you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17)\n\n\n\n## Configuration\n\n### Environment Variables\n\n`ENABLE_VERCEL_ANALYTICS` Any truthy value will enable Vercel Analytics. This is turned off by default\n\n## Contributing\n\nThis repository uses `pnpm` to manage dependencies. Install it using\n`npm install -g pnpm`\n\nPlease run `pnpm fmt` before committing to format the code.\n\n## Docs\n\nDocs in the README are temporary and will be moved to the website soon.\n\n### API\n\n#### Store a secret\n\n**PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.**\n\nThis endpoint is only meant to store **already encrypted** secrets. The\nencrypted secrets are stored in plain text.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"\n```\n\nYou can add optional headers to configure the ttl and number of reads.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"\n```\n\n- Omitting the `envshare-ttl` header will set a default of 30 days. Disable the\n ttl by setting it to 0. (`envshare-ttl: 0`)\n- Omitting the `envshare-reads` header will simply disable it and allow reading\n for an unlimited number of times.\n\nThis endpoint returns a JSON response with the secret id:\n\n```json\n{\n \"data\": {\n \"id\": \"HdPbXgpvUvNk43oxSdK97u\",\n \"ttl\": 86400,\n \"reads\": 2,\n \"expiresAt\": \"2023-01-19T20:47:28.383Z\",\n \"url\": \"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"\n }\n}\n```\n\n#### Retrieve a secret\n\nYou need an id to retrieve a secret. The id is returned when you store a secret.\n\n```sh-session\n$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\n```\n\n```json\n{\n \"data\": {\n \"secret\": \"Hello\",\n \"remainingReads\": 1\n }\n}\n```", - "code": "var Component=(()=>{var sn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var un=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var X=(l,n)=>()=>(n||l((n={exports:{}}).exports,n),n.exports),hn=(l,n)=>{for(var _ in n)O(l,_,{get:n[_],enumerable:!0})},ye=(l,n,_,x)=>{if(n&&typeof n==\"object\"||typeof n==\"function\")for(let k of un(n))!bn.call(l,k)&&k!==_&&O(l,k,{get:()=>n[k],enumerable:!(x=ln(n,k))||x.enumerable});return l};var fn=(l,n,_)=>(_=l!=null?sn(mn(l)):{},ye(n||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var ve=X((gn,ge)=>{ge.exports=React});var Ee=X(H=>{\"use strict\";(function(){\"use strict\";var l=ve(),n=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),q=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),z=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),L=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var t=J&&e[J]||e[Te];return typeof t==\"function\"?t:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function b(e){{for(var t=arguments.length,c=new Array(t>1?t-1:0),a=1;a=1&&m>=0&&o[u]!==h[m];)m--;for(;u>=1&&m>=0;u--,m--)if(o[u]!==h[m]){if(u!==1||m!==1)do if(u--,m--,m<0||o[u]!==h[m]){var f=`\n`+o[u].replace(\" at new \",\" at \");return e.displayName&&f.includes(\"\")&&(f=f.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,f),f}while(u>=1&&m>=0);break}}}finally{V=!1,I.current=i,Ve(),Error.prepareStackTrace=s}var E=e?e.displayName||e.name:\"\",xe=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,xe),xe}function $e(e,t,c){return se(e,!1)}function Me(e){var t=e.prototype;return!!(t&&t.isReactComponent)}function S(e,t,c){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return $e(e.render);case F:return S(e.type,t,c);case L:{var a=e,s=a._payload,i=a._init;try{return S(i(s),t,c)}catch{}}}return\"\"}var C=Object.prototype.hasOwnProperty,ie={},le=g.ReactDebugCurrentFrame;function P(e){if(e){var t=e._owner,c=S(e.type,e._source,t?t.type:null);le.setExtraStackFrame(c)}else le.setExtraStackFrame(null)}function We(e,t,c,a,s){{var i=Function.call.bind(C);for(var d in e)if(i(e,d)){var o=void 0;try{if(typeof e[d]!=\"function\"){var h=Error((a||\"React class\")+\": \"+c+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}o=e[d](t,d,a,c,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){o=u}o&&!(o instanceof Error)&&(P(s),b(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",a||\"React class\",c,d,typeof o),P(null)),o instanceof Error&&!(o.message in ie)&&(ie[o.message]=!0,P(s),b(\"Failed %s type: %s\",c,o.message),P(null))}}}var Ge=Array.isArray;function Y(e){return Ge(e)}function Xe(e){{var t=typeof Symbol==\"function\"&&Symbol.toStringTag,c=t&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return c}}function He(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(He(e))return b(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Xe(e)),ue(e)}var U=g.ReactCurrentOwner,qe={key:!0,ref:!0,__self:!0,__source:!0},be,he,$;$={};function Ke(e){if(C.call(e,\"ref\")){var t=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(t&&t.isReactWarning)return!1}return e.ref!==void 0}function ze(e){if(C.call(e,\"key\")){var t=Object.getOwnPropertyDescriptor(e,\"key\").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function Je(e,t){if(typeof e.ref==\"string\"&&U.current&&t&&U.current.stateNode!==t){var c=p(U.current.type);$[c]||(b('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),$[c]=!0)}}function Ze(e,t){{var c=function(){be||(be=!0,b(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",t))};c.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:c,configurable:!0})}}function Qe(e,t){{var c=function(){he||(he=!0,b(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",t))};c.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:c,configurable:!0})}}var en=function(e,t,c,a,s,i,d){var o={$$typeof:n,type:e,key:t,ref:c,props:d,_owner:i};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function nn(e,t,c,a,s){{var i,d={},o=null,h=null;c!==void 0&&(me(c),o=\"\"+c),ze(t)&&(me(t.key),o=\"\"+t.key),Ke(t)&&(h=t.ref,Je(t,s));for(i in t)C.call(t,i)&&!qe.hasOwnProperty(i)&&(d[i]=t[i]);if(e&&e.defaultProps){var u=e.defaultProps;for(i in u)d[i]===void 0&&(d[i]=u[i])}if(o||h){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Ze(d,m),h&&Qe(d,m)}return en(e,o,h,s,a,U.current,d)}}var M=g.ReactCurrentOwner,fe=g.ReactDebugCurrentFrame;function v(e){if(e){var t=e._owner,c=S(e.type,e._source,t?t.type:null);fe.setExtraStackFrame(c)}else fe.setExtraStackFrame(null)}var W;W=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===n}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function rn(e){{if(e!==void 0){var t=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),c=e.lineNumber;return`\n\nCheck your code at `+t+\":\"+c+\".\"}return\"\"}}var pe={};function tn(e){{var t=_e();if(!t){var c=typeof e==\"string\"?e:e.displayName||e.name;c&&(t=`\n\nCheck the top-level render call using <`+c+\">.\")}return t}}function Ne(e,t){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var c=tn(t);if(pe[c])return;pe[c]=!0;var a=\"\";e&&e._owner&&e._owner!==M.current&&(a=\" It was passed a child from \"+p(e._owner.type)+\".\"),v(e),b('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',c,a),v(null)}}function ke(e,t){{if(typeof e!=\"object\")return;if(Y(e))for(var c=0;c\",o=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,b(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,o)}var m=nn(e,t,c,s,i);if(m==null)return m;if(d){var f=t.children;if(f!==void 0)if(a)if(Y(f)){for(var E=0;E{\"use strict\";je.exports=Ee()});var xn={};hn(xn,{default:()=>kn,frontmatter:()=>pn});var r=fn(Ue()),pn={title:\"envshare.dev\",description:\"EnvShare is a simple tool to share environment variables securely. It uses AES-GCM to encrypt your data before sending it to the server. The encryption key never leaves your browser.\",date:\"2023-01-16\",url:\"https://envshare.dev\",repository:\"chronark/envshare\"};function Re(l){let n=Object.assign({p:\"p\",strong:\"strong\",h2:\"h2\",a:\"a\",span:\"span\",ul:\"ul\",li:\"li\",img:\"img\",h3:\"h3\",code:\"code\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(n.p,{children:[`EnvShare is a simple tool to share environment variables securely. It uses\n`,(0,r.jsxDEV)(n.strong,{children:\"AES-GCM\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:11,columnNumber:1},this),` to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"features\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#features\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Features\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Shareable Links:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:3},this),` Share your environment variables securely by sending a\nlink`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"End-to-End Encryption:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:18,columnNumber:3},this),` AES-GCM encryption is used to encrypt your data\nbefore sending it to the server`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Limit number of reads:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:20,columnNumber:3},this),\" Limit the number of times a link can be read\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Auto Expire:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:21,columnNumber:3},this),` Automatically expire links and delete data after a certain\ntime`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.img,{src:\"img/envshare.png\",alt:\"\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:26,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"built-with\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#built-with\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Built with\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://nextjs.org\",children:\"Next.js\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://tailwindcss.com\",children:\"tailwindcss\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:31,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Deployed on \",(0,r.jsxDEV)(n.a,{href:\"https://vercel.com?utm_source=envshare\",children:\"Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:32,columnNumber:15},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Data stored on \",(0,r.jsxDEV)(n.a,{href:\"https://upstash.com?utm_source=envshare\",children:\"Upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:33,columnNumber:18},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:33,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"deploy-your-own\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deploy-your-own\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Deploy your own\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Detailed instructions can be found \",(0,r.jsxDEV)(n.a,{href:\"https://envshare.dev/deploy\",children:\"here\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:37,columnNumber:36},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:`All you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.a,{href:\"https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17\",children:(0,r.jsxDEV)(n.img,{src:\"https://vercel.com/button\",alt:\"Deploy with Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:2},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"configuration\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#configuration\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Configuration\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"environment-variables\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#environment-variables\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Environment Variables\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[(0,r.jsxDEV)(n.code,{children:\"ENABLE_VERCEL_ANALYTICS\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:50,columnNumber:1},this),\" Any truthy value will enable Vercel Analytics. This is turned off by default\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"contributing\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:52,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This repository uses \",(0,r.jsxDEV)(n.code,{children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:54,columnNumber:22},this),` to manage dependencies. Install it using\n`,(0,r.jsxDEV)(n.code,{children:\"npm install -g pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:55,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:54,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Please run \",(0,r.jsxDEV)(n.code,{children:\"pnpm fmt\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:57,columnNumber:12},this),\" before committing to format the code.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:57,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"docs\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#docs\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Docs\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:59,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"Docs in the README are temporary and will be moved to the website soon.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"api\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#api\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"API\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"store-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#store-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Store a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.strong,{children:\"PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:67,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:67,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This endpoint is only meant to store \",(0,r.jsxDEV)(n.strong,{children:\"already encrypted\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:69,columnNumber:38},this),` secrets. The\nencrypted secrets are stored in plain text.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:69,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:72,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You can add optional headers to configure the ttl and number of reads.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:76,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:78,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-ttl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:16},this),` header will set a default of 30 days. Disable the\nttl by setting it to 0. (`,(0,r.jsxDEV)(n.code,{children:\"envshare-ttl: 0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:83,columnNumber:28},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-reads\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:84,columnNumber:16},this),` header will simply disable it and allow reading\nfor an unlimited number of times.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:84,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"This endpoint returns a JSON response with the secret id:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:87,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"id\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:110},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:148},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:218},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"ttl\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"86400\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:149},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:190},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"reads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:113},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"2\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:151},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:188},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"expiresAt\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:117},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"2023-01-19T20:47:28.383Z\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:155},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:227},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"url\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"retrieve-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#retrieve-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Retrieve a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:101,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You need an id to retrieve a secret. The id is returned when you store a secret.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:103,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:\"$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:105,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:114},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"Hello\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:152},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:205},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"remainingReads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:122},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:160},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:109,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:n}=l.components||{};return n?(0,r.jsxDEV)(n,Object.assign({},l,{children:(0,r.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this):Re(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "raw": "\nEnvShare is a simple tool to share environment variables securely. It uses\n**AES-GCM** to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.\n\n## Features\n\n- **Shareable Links:** Share your environment variables securely by sending a\n link\n- **End-to-End Encryption:** AES-GCM encryption is used to encrypt your data\n before sending it to the server\n- **Limit number of reads:** Limit the number of times a link can be read\n- **Auto Expire:** Automatically expire links and delete data after a certain\n time\n\n\n\n![](https://github.com/chronark/envshare/raw/main/img/envshare.png)\n\n## Built with\n\n- [Next.js](https://nextjs.org)\n- [tailwindcss](https://tailwindcss.com)\n- Deployed on [Vercel](https://vercel.com?utm_source=envshare)\n- Data stored on [Upstash](https://upstash.com?utm_source=envshare)\n\n## Deploy your own\n\nDetailed instructions can be found [here](https://envshare.dev/deploy)\n\nAll you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17)\n\n\n\n## Configuration\n\n### Environment Variables\n\n`ENABLE_VERCEL_ANALYTICS` Any truthy value will enable Vercel Analytics. This is turned off by default\n\n## Contributing\n\nThis repository uses `pnpm` to manage dependencies. Install it using\n`npm install -g pnpm`\n\nPlease run `pnpm fmt` before committing to format the code.\n\n## Docs\n\nDocs in the README are temporary and will be moved to the website soon.\n\n### API\n\n#### Store a secret\n\n**PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.**\n\nThis endpoint is only meant to store **already encrypted** secrets. The\nencrypted secrets are stored in plain text.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"\n```\n\nYou can add optional headers to configure the ttl and number of reads.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"\n```\n\n- Omitting the `envshare-ttl` header will set a default of 30 days. Disable the\n ttl by setting it to 0. (`envshare-ttl: 0`)\n- Omitting the `envshare-reads` header will simply disable it and allow reading\n for an unlimited number of times.\n\nThis endpoint returns a JSON response with the secret id:\n\n```json\n{\n \"data\": {\n \"id\": \"HdPbXgpvUvNk43oxSdK97u\",\n \"ttl\": 86400,\n \"reads\": 2,\n \"expiresAt\": \"2023-01-19T20:47:28.383Z\",\n \"url\": \"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"\n }\n}\n```\n\n#### Retrieve a secret\n\nYou need an id to retrieve a secret. The id is returned when you store a secret.\n\n```sh-session\n$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\n```\n\n```json\n{\n \"data\": {\n \"secret\": \"Hello\",\n \"remainingReads\": 1\n }\n}\n```", + "code": "var Component=(()=>{var dn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var un=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,hn=Object.prototype.hasOwnProperty;var X=(l,n)=>()=>(n||l((n={exports:{}}).exports,n),n.exports),bn=(l,n)=>{for(var _ in n)O(l,_,{get:n[_],enumerable:!0})},ye=(l,n,_,x)=>{if(n&&typeof n==\"object\"||typeof n==\"function\")for(let k of un(n))!hn.call(l,k)&&k!==_&&O(l,k,{get:()=>n[k],enumerable:!(x=ln(n,k))||x.enumerable});return l};var fn=(l,n,_)=>(_=l!=null?dn(mn(l)):{},ye(n||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var ve=X((gn,ge)=>{ge.exports=React});var Ee=X(H=>{\"use strict\";(function(){\"use strict\";var l=ve(),n=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),q=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),z=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),L=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var a=J&&e[J]||e[Te];return typeof a==\"function\"?a:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function h(e){{for(var a=arguments.length,t=new Array(a>1?a-1:0),c=1;c=1&&m>=0&&o[u]!==b[m];)m--;for(;u>=1&&m>=0;u--,m--)if(o[u]!==b[m]){if(u!==1||m!==1)do if(u--,m--,m<0||o[u]!==b[m]){var f=`\n`+o[u].replace(\" at new \",\" at \");return e.displayName&&f.includes(\"\")&&(f=f.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,f),f}while(u>=1&&m>=0);break}}}finally{V=!1,I.current=d,Ve(),Error.prepareStackTrace=i}var E=e?e.displayName||e.name:\"\",xe=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,xe),xe}function $e(e,a,t){return ie(e,!1)}function Me(e){var a=e.prototype;return!!(a&&a.isReactComponent)}function S(e,a,t){if(e==null)return\"\";if(typeof e==\"function\")return ie(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return $e(e.render);case F:return S(e.type,a,t);case L:{var c=e,i=c._payload,d=c._init;try{return S(d(i),a,t)}catch{}}}return\"\"}var C=Object.prototype.hasOwnProperty,de={},le=g.ReactDebugCurrentFrame;function P(e){if(e){var a=e._owner,t=S(e.type,e._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function We(e,a,t,c,i){{var d=Function.call.bind(C);for(var s in e)if(d(e,s)){var o=void 0;try{if(typeof e[s]!=\"function\"){var b=Error((c||\"React class\")+\": \"+t+\" type `\"+s+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[s]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw b.name=\"Invariant Violation\",b}o=e[s](a,s,c,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){o=u}o&&!(o instanceof Error)&&(P(i),h(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",c||\"React class\",t,s,typeof o),P(null)),o instanceof Error&&!(o.message in de)&&(de[o.message]=!0,P(i),h(\"Failed %s type: %s\",t,o.message),P(null))}}}var Ge=Array.isArray;function Y(e){return Ge(e)}function Xe(e){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function He(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(He(e))return h(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Xe(e)),ue(e)}var U=g.ReactCurrentOwner,qe={key:!0,ref:!0,__self:!0,__source:!0},he,be,$;$={};function Ke(e){if(C.call(e,\"ref\")){var a=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(a&&a.isReactWarning)return!1}return e.ref!==void 0}function ze(e){if(C.call(e,\"key\")){var a=Object.getOwnPropertyDescriptor(e,\"key\").get;if(a&&a.isReactWarning)return!1}return e.key!==void 0}function Je(e,a){if(typeof e.ref==\"string\"&&U.current&&a&&U.current.stateNode!==a){var t=p(U.current.type);$[t]||(h('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),$[t]=!0)}}function Ze(e,a){{var t=function(){he||(he=!0,h(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,a){{var t=function(){be||(be=!0,h(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var en=function(e,a,t,c,i,d,s){var o={$$typeof:n,type:e,key:a,ref:t,props:s,_owner:d};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:c}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function nn(e,a,t,c,i){{var d,s={},o=null,b=null;t!==void 0&&(me(t),o=\"\"+t),ze(a)&&(me(a.key),o=\"\"+a.key),Ke(a)&&(b=a.ref,Je(a,i));for(d in a)C.call(a,d)&&!qe.hasOwnProperty(d)&&(s[d]=a[d]);if(e&&e.defaultProps){var u=e.defaultProps;for(d in u)s[d]===void 0&&(s[d]=u[d])}if(o||b){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Ze(s,m),b&&Qe(s,m)}return en(e,o,b,i,c,U.current,s)}}var M=g.ReactCurrentOwner,fe=g.ReactDebugCurrentFrame;function v(e){if(e){var a=e._owner,t=S(e.type,e._source,a?a.type:null);fe.setExtraStackFrame(t)}else fe.setExtraStackFrame(null)}var W;W=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===n}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function rn(e){{if(e!==void 0){var a=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(e){{var a=_e();if(!a){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(e,a){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var c=\"\";e&&e._owner&&e._owner!==M.current&&(c=\" It was passed a child from \"+p(e._owner.type)+\".\"),v(e),h('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,c),v(null)}}function ke(e,a){{if(typeof e!=\"object\")return;if(Y(e))for(var t=0;t\",o=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,h(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,o)}var m=nn(e,a,t,i,d);if(m==null)return m;if(s){var f=a.children;if(f!==void 0)if(c)if(Y(f)){for(var E=0;E{\"use strict\";je.exports=Ee()});var xn={};bn(xn,{default:()=>kn,frontmatter:()=>pn});var r=fn(Ue()),pn={title:\"envshare.dev\",description:\"EnvShare is a simple tool to share environment variables securely. It uses AES-GCM to encrypt your data before sending it to the server. The encryption key never leaves your browser.\",date:\"2023-01-16\",url:\"https://envshare.dev\",repository:\"chronark/envshare\"};function Re(l){let n=Object.assign({p:\"p\",strong:\"strong\",h2:\"h2\",a:\"a\",span:\"span\",ul:\"ul\",li:\"li\",img:\"img\",h3:\"h3\",code:\"code\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(n.p,{children:[`EnvShare is a simple tool to share environment variables securely. It uses\n`,(0,r.jsxDEV)(n.strong,{children:\"AES-GCM\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:11,columnNumber:1},this),` to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"features\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#features\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Features\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Shareable Links:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:3},this),` Share your environment variables securely by sending a\nlink`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"End-to-End Encryption:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:18,columnNumber:3},this),` AES-GCM encryption is used to encrypt your data\nbefore sending it to the server`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Limit number of reads:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:20,columnNumber:3},this),\" Limit the number of times a link can be read\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Auto Expire:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:21,columnNumber:3},this),` Automatically expire links and delete data after a certain\ntime`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.img,{src:\"https://github.com/chronark/envshare/raw/main/img/envshare.png\",alt:\"\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:26,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"built-with\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#built-with\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Built with\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://nextjs.org\",children:\"Next.js\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://tailwindcss.com\",children:\"tailwindcss\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:31,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Deployed on \",(0,r.jsxDEV)(n.a,{href:\"https://vercel.com?utm_source=envshare\",children:\"Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:32,columnNumber:15},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Data stored on \",(0,r.jsxDEV)(n.a,{href:\"https://upstash.com?utm_source=envshare\",children:\"Upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:33,columnNumber:18},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:33,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"deploy-your-own\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deploy-your-own\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Deploy your own\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Detailed instructions can be found \",(0,r.jsxDEV)(n.a,{href:\"https://envshare.dev/deploy\",children:\"here\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:37,columnNumber:36},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:`All you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.a,{href:\"https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17\",children:(0,r.jsxDEV)(n.img,{src:\"https://vercel.com/button\",alt:\"Deploy with Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:2},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"configuration\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#configuration\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Configuration\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"environment-variables\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#environment-variables\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Environment Variables\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[(0,r.jsxDEV)(n.code,{children:\"ENABLE_VERCEL_ANALYTICS\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:50,columnNumber:1},this),\" Any truthy value will enable Vercel Analytics. This is turned off by default\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"contributing\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:52,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This repository uses \",(0,r.jsxDEV)(n.code,{children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:54,columnNumber:22},this),` to manage dependencies. Install it using\n`,(0,r.jsxDEV)(n.code,{children:\"npm install -g pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:55,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:54,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Please run \",(0,r.jsxDEV)(n.code,{children:\"pnpm fmt\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:57,columnNumber:12},this),\" before committing to format the code.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:57,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"docs\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#docs\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Docs\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:59,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"Docs in the README are temporary and will be moved to the website soon.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"api\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#api\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"API\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"store-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#store-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Store a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.strong,{children:\"PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:67,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:67,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This endpoint is only meant to store \",(0,r.jsxDEV)(n.strong,{children:\"already encrypted\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:69,columnNumber:38},this),` secrets. The\nencrypted secrets are stored in plain text.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:69,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:72,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You can add optional headers to configure the ttl and number of reads.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:76,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:78,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-ttl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:16},this),` header will set a default of 30 days. Disable the\nttl by setting it to 0. (`,(0,r.jsxDEV)(n.code,{children:\"envshare-ttl: 0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:83,columnNumber:28},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-reads\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:84,columnNumber:16},this),` header will simply disable it and allow reading\nfor an unlimited number of times.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:84,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"This endpoint returns a JSON response with the secret id:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:87,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"id\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:110},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:148},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:218},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"ttl\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"86400\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:149},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:190},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"reads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:113},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"2\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:151},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:188},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"expiresAt\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:117},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"2023-01-19T20:47:28.383Z\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:155},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:227},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"url\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"retrieve-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#retrieve-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Retrieve a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:101,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You need an id to retrieve a secret. The id is returned when you store a secret.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:103,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:\"$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:105,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:114},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"Hello\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:152},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:205},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"remainingReads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:122},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:160},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:109,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:n}=l.components||{};return n?(0,r.jsxDEV)(n,Object.assign({},l,{children:(0,r.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this):Re(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" }, "_id": "projects/envshare.mdx", "_raw": { @@ -49,7 +49,7 @@ "path": "/projects/envshare", "slug": "envshare" }, - "documentHash": "1677516594972", + "documentHash": "1679527941563", "hasWarnings": false, "documentTypeName": "Project" }, @@ -61,7 +61,7 @@ "url": "https://planetfall.io", "body": { "raw": "\n\nI'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.", - "code": "var Component=(()=>{var sr=Object.create;var D=Object.defineProperty;var lr=Object.getOwnPropertyDescriptor;var fr=Object.getOwnPropertyNames;var cr=Object.getPrototypeOf,dr=Object.prototype.hasOwnProperty;var q=(s,l)=>()=>(l||s((l={exports:{}}).exports,l),l.exports),vr=(s,l)=>{for(var b in l)D(s,b,{get:l[b],enumerable:!0})},_e=(s,l,b,y)=>{if(l&&typeof l==\"object\"||typeof l==\"function\")for(let m of fr(l))!dr.call(s,m)&&m!==b&&D(s,m,{get:()=>l[m],enumerable:!(y=lr(l,m))||y.enumerable});return s};var pr=(s,l,b)=>(b=s!=null?sr(cr(s)):{},_e(l||!s||!s.__esModule?D(b,\"default\",{value:s,enumerable:!0}):b,s)),br=s=>_e(D({},\"__esModule\",{value:!0}),s);var Te=q((_r,Re)=>{Re.exports=React});var we=q(z=>{\"use strict\";(function(){\"use strict\";var s=Te(),l=Symbol.for(\"react.element\"),b=Symbol.for(\"react.portal\"),y=Symbol.for(\"react.fragment\"),m=Symbol.for(\"react.strict_mode\"),H=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),K=Symbol.for(\"react.context\"),C=Symbol.for(\"react.forward_ref\"),I=Symbol.for(\"react.suspense\"),Y=Symbol.for(\"react.suspense_list\"),O=Symbol.for(\"react.memo\"),$=Symbol.for(\"react.lazy\"),Se=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,je=\"@@iterator\";function xe(e){if(e===null||typeof e!=\"object\")return null;var r=J&&e[J]||e[je];return typeof r==\"function\"?r:null}var _=s.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function d(e){{for(var r=arguments.length,t=new Array(r>1?r-1:0),n=1;n=1&&c>=0&&a[f]!==v[c];)c--;for(;f>=1&&c>=0;f--,c--)if(a[f]!==v[c]){if(f!==1||c!==1)do if(f--,c--,c<0||a[f]!==v[c]){var p=`\n`+a[f].replace(\" at new \",\" at \");return e.displayName&&p.includes(\"\")&&(p=p.replace(\"\",e.displayName)),typeof e==\"function\"&&j.set(e,p),p}while(f>=1&&c>=0);break}}}finally{M=!1,W.current=u,Me(),Error.prepareStackTrace=i}var T=e?e.displayName||e.name:\"\",Ee=T?S(T):\"\";return typeof e==\"function\"&&j.set(e,Ee),Ee}function Ue(e,r,t){return se(e,!1)}function Le(e){var r=e.prototype;return!!(r&&r.isReactComponent)}function x(e,r,t){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Le(e));if(typeof e==\"string\")return S(e);switch(e){case I:return S(\"Suspense\");case Y:return S(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case C:return Ue(e.render);case O:return x(e.type,r,t);case $:{var n=e,i=n._payload,u=n._init;try{return x(u(i),r,t)}catch{}}}return\"\"}var k=Object.prototype.hasOwnProperty,le={},fe=_.ReactDebugCurrentFrame;function A(e){if(e){var r=e._owner,t=x(e.type,e._source,r?r.type:null);fe.setExtraStackFrame(t)}else fe.setExtraStackFrame(null)}function Be(e,r,t,n,i){{var u=Function.call.bind(k);for(var o in e)if(u(e,o)){var a=void 0;try{if(typeof e[o]!=\"function\"){var v=Error((n||\"React class\")+\": \"+t+\" type `\"+o+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[o]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw v.name=\"Invariant Violation\",v}a=e[o](r,o,n,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(f){a=f}a&&!(a instanceof Error)&&(A(i),d(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",n||\"React class\",t,o,typeof a),A(null)),a instanceof Error&&!(a.message in le)&&(le[a.message]=!0,A(i),d(\"Failed %s type: %s\",t,a.message),A(null))}}}var Ge=Array.isArray;function V(e){return Ge(e)}function qe(e){{var r=typeof Symbol==\"function\"&&Symbol.toStringTag,t=r&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function ze(e){try{return ce(e),!1}catch{return!0}}function ce(e){return\"\"+e}function de(e){if(ze(e))return d(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",qe(e)),ce(e)}var P=_.ReactCurrentOwner,He={key:!0,ref:!0,__self:!0,__source:!0},ve,pe,U;U={};function Xe(e){if(k.call(e,\"ref\")){var r=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(r&&r.isReactWarning)return!1}return e.ref!==void 0}function Ke(e){if(k.call(e,\"key\")){var r=Object.getOwnPropertyDescriptor(e,\"key\").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function Je(e,r){if(typeof e.ref==\"string\"&&P.current&&r&&P.current.stateNode!==r){var t=h(P.current.type);U[t]||(d('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',h(P.current.type),e.ref),U[t]=!0)}}function Ze(e,r){{var t=function(){ve||(ve=!0,d(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,r){{var t=function(){pe||(pe=!0,d(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var er=function(e,r,t,n,i,u,o){var a={$$typeof:l,type:e,key:r,ref:t,props:o,_owner:u};return a._store={},Object.defineProperty(a._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(a,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:n}),Object.defineProperty(a,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(a.props),Object.freeze(a)),a};function rr(e,r,t,n,i){{var u,o={},a=null,v=null;t!==void 0&&(de(t),a=\"\"+t),Ke(r)&&(de(r.key),a=\"\"+r.key),Xe(r)&&(v=r.ref,Je(r,i));for(u in r)k.call(r,u)&&!He.hasOwnProperty(u)&&(o[u]=r[u]);if(e&&e.defaultProps){var f=e.defaultProps;for(u in f)o[u]===void 0&&(o[u]=f[u])}if(a||v){var c=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;a&&Ze(o,c),v&&Qe(o,c)}return er(e,a,v,i,n,P.current,o)}}var L=_.ReactCurrentOwner,be=_.ReactDebugCurrentFrame;function R(e){if(e){var r=e._owner,t=x(e.type,e._source,r?r.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var B;B=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===l}function he(){{if(L.current){var e=h(L.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function tr(e){{if(e!==void 0){var r=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+r+\":\"+t+\".\"}return\"\"}}var ge={};function nr(e){{var r=he();if(!r){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(r=`\n\nCheck the top-level render call using <`+t+\">.\")}return r}}function me(e,r){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=nr(r);if(ge[t])return;ge[t]=!0;var n=\"\";e&&e._owner&&e._owner!==L.current&&(n=\" It was passed a child from \"+h(e._owner.type)+\".\"),R(e),d('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,n),R(null)}}function ye(e,r){{if(typeof e!=\"object\")return;if(V(e))for(var t=0;t\",a=\" Did you accidentally export a JSX literal instead of a component?\"):f=typeof e,d(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",f,a)}var c=rr(e,r,t,i,u);if(c==null)return c;if(o){var p=r.children;if(p!==void 0)if(n)if(V(p)){for(var T=0;T{\"use strict\";Pe.exports=we()});var yr={};vr(yr,{default:()=>mr,frontmatter:()=>hr});var F=pr(Ce()),hr={title:\"planetfall.io\",description:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\",date:\"2023-04-01\",url:\"https://planetfall.io\"};function Oe(s){let l=Object.assign({p:\"p\"},s.components);return(0,F.jsxDEV)(l.p,{children:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\",lineNumber:10,columnNumber:1},this)}function gr(s={}){let{wrapper:l}=s.components||{};return l?(0,F.jsxDEV)(l,Object.assign({},s,{children:(0,F.jsxDEV)(Oe,s,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\"},this):Oe(s)}var mr=gr;return br(yr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var c=Object.create;var a=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var w=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports),h=(o,t)=>{for(var n in t)a(o,n,{get:t[n],enumerable:!0})},l=(o,t,n,i)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let e of m(t))!p.call(o,e)&&e!==n&&a(o,e,{get:()=>t[e],enumerable:!(i=f(t,e))||i.enumerable});return o};var g=(o,t,n)=>(n=o!=null?c(y(o)):{},l(t||!o||!o.__esModule?a(n,\"default\",{value:o,enumerable:!0}):n,o)),b=o=>l(a({},\"__esModule\",{value:!0}),o);var d=w((j,s)=>{s.exports=_jsx_runtime});var I={};h(I,{default:()=>v,frontmatter:()=>A});var r=g(d()),A={title:\"planetfall.io\",description:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\",date:\"2023-04-01\",url:\"https://planetfall.io\"};function u(o){let t=Object.assign({p:\"p\"},o.components);return(0,r.jsx)(t.p,{children:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\"})}function x(o={}){let{wrapper:t}=o.components||{};return t?(0,r.jsx)(t,Object.assign({},o,{children:(0,r.jsx)(u,o)})):u(o)}var v=x;return b(I);})();\n;return Component;" }, "_id": "projects/planetfall.mdx", "_raw": { @@ -75,7 +75,7 @@ "path": "/projects/planetfall", "slug": "planetfall" }, - "documentHash": "1678487576960", + "documentHash": "1679527360059", "hasWarnings": false, "documentTypeName": "Project" }, @@ -87,7 +87,7 @@ "url": "https://upstash.com/qstash", "body": { "raw": "\nQStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\n\n- 100% serverless, no stateful connections required. Messages are pushed to your API.\n- At-least-once delivery guaranteed to any public API\n- Pubsub via topics\n- Delay message delivery\n- Message deduplication\n- Scheduling via CRON\n\n\nFormally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\n\nThere was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\n\n- Works anywhere including serverless and edge.\n- Messaging as a service with no backend for users to run.\n- Lightweight, easy to understand, requires nothing to learn.\n- Price scales to zero.\n\nLet's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\n\nIf you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\n\nWith QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\n\n\nTo learn more about QStash, visit [upstash.com/qstash](upstash.com/qstash).", - "code": "var Component=(()=>{var cr=Object.create;var F=Object.defineProperty;var ur=Object.getOwnPropertyDescriptor;var lr=Object.getOwnPropertyNames;var dr=Object.getPrototypeOf,fr=Object.prototype.hasOwnProperty;var B=(l,t)=>()=>(t||l((t={exports:{}}).exports,t),t.exports),mr=(l,t)=>{for(var v in t)F(l,v,{get:t[v],enumerable:!0})},Ee=(l,t,v,y)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let g of lr(t))!fr.call(l,g)&&g!==v&&F(l,g,{get:()=>t[g],enumerable:!(y=ur(t,g))||y.enumerable});return l};var hr=(l,t,v)=>(v=l!=null?cr(dr(l)):{},Ee(t||!l||!l.__esModule?F(v,\"default\",{value:l,enumerable:!0}):v,l)),br=l=>Ee(F({},\"__esModule\",{value:!0}),l);var we=B((Er,ke)=>{ke.exports=React});var xe=B(z=>{\"use strict\";(function(){\"use strict\";var l=we(),t=Symbol.for(\"react.element\"),v=Symbol.for(\"react.portal\"),y=Symbol.for(\"react.fragment\"),g=Symbol.for(\"react.strict_mode\"),G=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),T=Symbol.for(\"react.forward_ref\"),U=Symbol.for(\"react.suspense\"),A=Symbol.for(\"react.suspense_list\"),j=Symbol.for(\"react.memo\"),I=Symbol.for(\"react.lazy\"),je=Symbol.for(\"react.offscreen\"),K=Symbol.iterator,Pe=\"@@iterator\";function Se(e){if(e===null||typeof e!=\"object\")return null;var r=K&&e[K]||e[Pe];return typeof r==\"function\"?r:null}var k=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function m(e){{for(var r=arguments.length,n=new Array(r>1?r-1:0),a=1;a=1&&f>=0&&o[d]!==h[f];)f--;for(;d>=1&&f>=0;d--,f--)if(o[d]!==h[f]){if(d!==1||f!==1)do if(d--,f--,f<0||o[d]!==h[f]){var b=`\n`+o[d].replace(\" at new \",\" at \");return e.displayName&&b.includes(\"\")&&(b=b.replace(\"\",e.displayName)),typeof e==\"function\"&&S.set(e,b),b}while(d>=1&&f>=0);break}}}finally{M=!1,W.current=c,Me(),Error.prepareStackTrace=s}var x=e?e.displayName||e.name:\"\",ye=x?P(x):\"\";return typeof e==\"function\"&&S.set(e,ye),ye}function Ve(e,r,n){return ce(e,!1)}function Le(e){var r=e.prototype;return!!(r&&r.isReactComponent)}function C(e,r,n){if(e==null)return\"\";if(typeof e==\"function\")return ce(e,Le(e));if(typeof e==\"string\")return P(e);switch(e){case U:return P(\"Suspense\");case A:return P(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case T:return Ve(e.render);case j:return C(e.type,r,n);case I:{var a=e,s=a._payload,c=a._init;try{return C(c(s),r,n)}catch{}}}return\"\"}var O=Object.prototype.hasOwnProperty,ue={},le=k.ReactDebugCurrentFrame;function D(e){if(e){var r=e._owner,n=C(e.type,e._source,r?r.type:null);le.setExtraStackFrame(n)}else le.setExtraStackFrame(null)}function qe(e,r,n,a,s){{var c=Function.call.bind(O);for(var i in e)if(c(e,i)){var o=void 0;try{if(typeof e[i]!=\"function\"){var h=Error((a||\"React class\")+\": \"+n+\" type `\"+i+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[i]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}o=e[i](r,i,a,n,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(d){o=d}o&&!(o instanceof Error)&&(D(s),m(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",a||\"React class\",n,i,typeof o),D(null)),o instanceof Error&&!(o.message in ue)&&(ue[o.message]=!0,D(s),m(\"Failed %s type: %s\",n,o.message),D(null))}}}var Qe=Array.isArray;function $(e){return Qe(e)}function Be(e){{var r=typeof Symbol==\"function\"&&Symbol.toStringTag,n=r&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return n}}function ze(e){try{return de(e),!1}catch{return!0}}function de(e){return\"\"+e}function fe(e){if(ze(e))return m(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Be(e)),de(e)}var N=k.ReactCurrentOwner,Ge={key:!0,ref:!0,__self:!0,__source:!0},me,he,V;V={};function Xe(e){if(O.call(e,\"ref\")){var r=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(r&&r.isReactWarning)return!1}return e.ref!==void 0}function He(e){if(O.call(e,\"key\")){var r=Object.getOwnPropertyDescriptor(e,\"key\").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function Ke(e,r){if(typeof e.ref==\"string\"&&N.current&&r&&N.current.stateNode!==r){var n=p(N.current.type);V[n]||(m('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(N.current.type),e.ref),V[n]=!0)}}function Je(e,r){{var n=function(){me||(me=!0,m(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};n.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:n,configurable:!0})}}function Ze(e,r){{var n=function(){he||(he=!0,m(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};n.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:n,configurable:!0})}}var er=function(e,r,n,a,s,c,i){var o={$$typeof:t,type:e,key:r,ref:n,props:i,_owner:c};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function rr(e,r,n,a,s){{var c,i={},o=null,h=null;n!==void 0&&(fe(n),o=\"\"+n),He(r)&&(fe(r.key),o=\"\"+r.key),Xe(r)&&(h=r.ref,Ke(r,s));for(c in r)O.call(r,c)&&!Ge.hasOwnProperty(c)&&(i[c]=r[c]);if(e&&e.defaultProps){var d=e.defaultProps;for(c in d)i[c]===void 0&&(i[c]=d[c])}if(o||h){var f=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Je(i,f),h&&Ze(i,f)}return er(e,o,h,s,a,N.current,i)}}var L=k.ReactCurrentOwner,be=k.ReactDebugCurrentFrame;function w(e){if(e){var r=e._owner,n=C(e.type,e._source,r?r.type:null);be.setExtraStackFrame(n)}else be.setExtraStackFrame(null)}var q;q=!1;function Q(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===t}function ve(){{if(L.current){var e=p(L.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function nr(e){{if(e!==void 0){var r=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),n=e.lineNumber;return`\n\nCheck your code at `+r+\":\"+n+\".\"}return\"\"}}var pe={};function ar(e){{var r=ve();if(!r){var n=typeof e==\"string\"?e:e.displayName||e.name;n&&(r=`\n\nCheck the top-level render call using <`+n+\">.\")}return r}}function _e(e,r){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var n=ar(r);if(pe[n])return;pe[n]=!0;var a=\"\";e&&e._owner&&e._owner!==L.current&&(a=\" It was passed a child from \"+p(e._owner.type)+\".\"),w(e),m('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',n,a),w(null)}}function ge(e,r){{if(typeof e!=\"object\")return;if($(e))for(var n=0;n\",o=\" Did you accidentally export a JSX literal instead of a component?\"):d=typeof e,m(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",d,o)}var f=rr(e,r,n,s,c);if(f==null)return f;if(i){var b=r.children;if(b!==void 0)if(a)if($(b)){for(var x=0;x{\"use strict\";Re.exports=xe()});var gr={};mr(gr,{default:()=>_r,frontmatter:()=>vr});var u=hr(Ne()),vr={title:\"QStash\",description:\"QStash is a fully managed serverless queue and messaging service designed for the serverless era.\",date:\"2022-07-18\",url:\"https://upstash.com/qstash\"};function Te(l){let t=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",a:\"a\"},l.components);return(0,u.jsxDEV)(u.Fragment,{children:[(0,u.jsxDEV)(t.p,{children:\"QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.ul,{children:[`\n`,(0,u.jsxDEV)(t.li,{children:\"100% serverless, no stateful connections required. Messages are pushed to your API.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"At-least-once delivery guaranteed to any public API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Pubsub via topics\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Delay message delivery\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Message deduplication\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Scheduling via CRON\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:16,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"Formally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"There was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.ul,{children:[`\n`,(0,u.jsxDEV)(t.li,{children:\"Works anywhere including serverless and edge.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Messaging as a service with no backend for users to run.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Lightweight, easy to understand, requires nothing to learn.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Price scales to zero.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:26,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"Let's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"If you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"With QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:[\"To learn more about QStash, visit \",(0,u.jsxDEV)(t.a,{href:\"upstash.com/qstash\",children:\"upstash.com/qstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:35,columnNumber:35},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:35,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:1,columnNumber:1},this)}function pr(l={}){let{wrapper:t}=l.components||{};return t?(0,u.jsxDEV)(t,Object.assign({},l,{children:(0,u.jsxDEV)(Te,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\"},this):Te(l)}var _r=pr;return br(gr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var d=Object.create;var r=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var p=Object.getPrototypeOf,f=Object.prototype.hasOwnProperty;var g=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),v=(n,e)=>{for(var t in e)r(n,t,{get:e[t],enumerable:!0})},o=(n,e,t,i)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of m(e))!f.call(n,a)&&a!==t&&r(n,a,{get:()=>e[a],enumerable:!(i=u(e,a))||i.enumerable});return n};var w=(n,e,t)=>(t=n!=null?d(p(n)):{},o(e||!n||!n.__esModule?r(t,\"default\",{value:n,enumerable:!0}):t,n)),y=n=>o(r({},\"__esModule\",{value:!0}),n);var c=g((Q,l)=>{l.exports=_jsx_runtime});var x={};v(x,{default:()=>P,frontmatter:()=>b});var s=w(c()),b={title:\"QStash\",description:\"QStash is a fully managed serverless queue and messaging service designed for the serverless era.\",date:\"2022-07-18\",url:\"https://upstash.com/qstash\"};function h(n){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",a:\"a\"},n.components);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(e.p,{children:\"QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\"}),`\n`,(0,s.jsxs)(e.ul,{children:[`\n`,(0,s.jsx)(e.li,{children:\"100% serverless, no stateful connections required. Messages are pushed to your API.\"}),`\n`,(0,s.jsx)(e.li,{children:\"At-least-once delivery guaranteed to any public API\"}),`\n`,(0,s.jsx)(e.li,{children:\"Pubsub via topics\"}),`\n`,(0,s.jsx)(e.li,{children:\"Delay message delivery\"}),`\n`,(0,s.jsx)(e.li,{children:\"Message deduplication\"}),`\n`,(0,s.jsx)(e.li,{children:\"Scheduling via CRON\"}),`\n`]}),`\n`,(0,s.jsx)(e.p,{children:\"Formally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\"}),`\n`,(0,s.jsx)(e.p,{children:\"There was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\"}),`\n`,(0,s.jsxs)(e.ul,{children:[`\n`,(0,s.jsx)(e.li,{children:\"Works anywhere including serverless and edge.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Messaging as a service with no backend for users to run.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Lightweight, easy to understand, requires nothing to learn.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Price scales to zero.\"}),`\n`]}),`\n`,(0,s.jsx)(e.p,{children:\"Let's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\"}),`\n`,(0,s.jsx)(e.p,{children:\"If you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\"}),`\n`,(0,s.jsx)(e.p,{children:\"With QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\"}),`\n`,(0,s.jsxs)(e.p,{children:[\"To learn more about QStash, visit \",(0,s.jsx)(e.a,{href:\"upstash.com/qstash\",children:\"upstash.com/qstash\"}),\".\"]})]})}function S(n={}){let{wrapper:e}=n.components||{};return e?(0,s.jsx)(e,Object.assign({},n,{children:(0,s.jsx)(h,n)})):h(n)}var P=S;return y(x);})();\n;return Component;" }, "_id": "projects/qstash.mdx", "_raw": { @@ -101,7 +101,7 @@ "path": "/projects/qstash", "slug": "qstash" }, - "documentHash": "1679526148985", + "documentHash": "1679527764267", "hasWarnings": false, "documentTypeName": "Project" }, @@ -114,7 +114,7 @@ "repository": "chronark/terraform-provider-vercel", "body": { "raw": "\n\n\nBack in the day when Vercel didn't have an official Terraform provider, I wrote one. \nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.\n\n```hcl\nterraform {\n required_providers {\n vercel = {\n source = \"registry.terraform.io/chronark/vercel\"\n version = \">=0.10.3\"\n }\n }\n}\n\nprovider \"vercel\" {\n token = \"\"\n}\n\nresource \"vercel_project\" \"my_project\" {\n name = \"project-via-terraform\"\n git_repository {\n type = \"github\"\n repo = \"chronark/terraform-provider-vercel\"\n }\n}\n```\n\nIt was a fun project and I learned a lot about Terraform and Vercel's API. \nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.\n\nThere have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\n\nNow that Vercel have stepped in, I have decided to [deprecate](https://twitter.com/chronark_/status/1517759708983177218) this one on April 23rd 2022. \n\nPlease use the [official provider](https://registry.terraform.io/providers/vercel/vercel/latest) instead.", - "code": "var Component=(()=>{var sr=Object.create;var S=Object.defineProperty;var ir=Object.getOwnPropertyDescriptor;var lr=Object.getOwnPropertyNames;var ur=Object.getPrototypeOf,mr=Object.prototype.hasOwnProperty;var G=(l,r)=>()=>(r||l((r={exports:{}}).exports,r),r.exports),fr=(l,r)=>{for(var _ in r)S(l,_,{get:r[_],enumerable:!0})},ve=(l,r,_,k)=>{if(r&&typeof r==\"object\"||typeof r==\"function\")for(let y of lr(r))!mr.call(l,y)&&y!==_&&S(l,y,{get:()=>r[y],enumerable:!(k=ir(r,y))||k.enumerable});return l};var hr=(l,r,_)=>(_=l!=null?sr(ur(l)):{},ve(r||!l||!l.__esModule?S(_,\"default\",{value:l,enumerable:!0}):_,l)),br=l=>ve(S({},\"__esModule\",{value:!0}),l);var ge=G((vr,xe)=>{xe.exports=React});var Ee=G(z=>{\"use strict\";(function(){\"use strict\";var l=ge(),r=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),k=Symbol.for(\"react.fragment\"),y=Symbol.for(\"react.strict_mode\"),K=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),B=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var a=J&&e[J]||e[Te];return typeof a==\"function\"?a:null}var x=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function f(e){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&m>=0&&c[u]!==h[m];)m--;for(;u>=1&&m>=0;u--,m--)if(c[u]!==h[m]){if(u!==1||m!==1)do if(u--,m--,m<0||c[u]!==h[m]){var b=`\n`+c[u].replace(\" at new \",\" at \");return e.displayName&&b.includes(\"\")&&(b=b.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,b),b}while(u>=1&&m>=0);break}}}finally{Y=!1,I.current=i,Ye(),Error.prepareStackTrace=s}var E=e?e.displayName||e.name:\"\",ke=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,ke),ke}function We(e,a,t){return se(e,!1)}function Me(e){var a=e.prototype;return!!(a&&a.isReactComponent)}function C(e,a,t){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return We(e.render);case F:return C(e.type,a,t);case B:{var o=e,s=o._payload,i=o._init;try{return C(i(s),a,t)}catch{}}}return\"\"}var O=Object.prototype.hasOwnProperty,ie={},le=x.ReactDebugCurrentFrame;function P(e){if(e){var a=e._owner,t=C(e.type,e._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function Le(e,a,t,o,s){{var i=Function.call.bind(O);for(var d in e)if(i(e,d)){var c=void 0;try{if(typeof e[d]!=\"function\"){var h=Error((o||\"React class\")+\": \"+t+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}c=e[d](a,d,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){c=u}c&&!(c instanceof Error)&&(P(s),f(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,d,typeof c),P(null)),c instanceof Error&&!(c.message in ie)&&(ie[c.message]=!0,P(s),f(\"Failed %s type: %s\",t,c.message),P(null))}}}var qe=Array.isArray;function $(e){return qe(e)}function Ge(e){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function ze(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(ze(e))return f(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Ge(e)),ue(e)}var U=x.ReactCurrentOwner,Ke={key:!0,ref:!0,__self:!0,__source:!0},fe,he,W;W={};function Xe(e){if(O.call(e,\"ref\")){var a=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(a&&a.isReactWarning)return!1}return e.ref!==void 0}function He(e){if(O.call(e,\"key\")){var a=Object.getOwnPropertyDescriptor(e,\"key\").get;if(a&&a.isReactWarning)return!1}return e.key!==void 0}function Je(e,a){if(typeof e.ref==\"string\"&&U.current&&a&&U.current.stateNode!==a){var t=p(U.current.type);W[t]||(f('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),W[t]=!0)}}function Ze(e,a){{var t=function(){fe||(fe=!0,f(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,a){{var t=function(){he||(he=!0,f(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var er=function(e,a,t,o,s,i,d){var c={$$typeof:r,type:e,key:a,ref:t,props:d,_owner:i};return c._store={},Object.defineProperty(c._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(c,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(c,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c};function rr(e,a,t,o,s){{var i,d={},c=null,h=null;t!==void 0&&(me(t),c=\"\"+t),He(a)&&(me(a.key),c=\"\"+a.key),Xe(a)&&(h=a.ref,Je(a,s));for(i in a)O.call(a,i)&&!Ke.hasOwnProperty(i)&&(d[i]=a[i]);if(e&&e.defaultProps){var u=e.defaultProps;for(i in u)d[i]===void 0&&(d[i]=u[i])}if(c||h){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;c&&Ze(d,m),h&&Qe(d,m)}return er(e,c,h,s,o,U.current,d)}}var M=x.ReactCurrentOwner,be=x.ReactDebugCurrentFrame;function g(e){if(e){var a=e._owner,t=C(e.type,e._source,a?a.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var L;L=!1;function q(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===r}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function nr(e){{if(e!==void 0){var a=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function ar(e){{var a=_e();if(!a){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(e,a){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=ar(a);if(pe[t])return;pe[t]=!0;var o=\"\";e&&e._owner&&e._owner!==M.current&&(o=\" It was passed a child from \"+p(e._owner.type)+\".\"),g(e),f('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),g(null)}}function ye(e,a){{if(typeof e!=\"object\")return;if($(e))for(var t=0;t\",c=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,f(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,c)}var m=rr(e,a,t,s,i);if(m==null)return m;if(d){var b=a.children;if(b!==void 0)if(o)if($(b)){for(var E=0;E{\"use strict\";je.exports=Ee()});var yr={};fr(yr,{default:()=>Nr,frontmatter:()=>_r});var n=hr(Ue()),_r={title:\"Vercel Terraform Provider\",description:\"A Terraform provider for Vercel. It has been deprecated it when Vercel rolled out their official provider.\",date:\"2021-03-16\",repository:\"chronark/terraform-provider-vercel\",url:\"https://registry.terraform.io/providers/chronark/vercel/latest\"};function Re(l){let r=Object.assign({p:\"p\",div:\"div\",pre:\"pre\",code:\"code\",span:\"span\",a:\"a\"},l.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(r.p,{children:`Back in the day when Vercel didn't have an official Terraform provider, I wrote one.\nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(r.pre,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(r.code,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"terraform\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"required_providers\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:58},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:112},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:66},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:103},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:140},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:177},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" source \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:70},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:107},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"registry.terraform.io/chronark/vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:144},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" version \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:70},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:107},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\">=0.10.3\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:144},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"provider\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:155},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" token\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:63},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:100},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:137},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:174},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"resource\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"vercel_project\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:163},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"my_project\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:200},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:258},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" name\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:62},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:99},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:136},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"project-via-terraform\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:173},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"git_repository\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:58},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:108},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" type\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:138},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"github\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:175},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" repo\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:138},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"chronark/terraform-provider-vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:175},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:19,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:20,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:`It was a fun project and I learned a lot about Terraform and Vercel's API.\nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:38,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:\"There have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:41,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:[\"Now that Vercel have stepped in, I have decided to \",(0,n.jsxDEV)(r.a,{href:\"https://twitter.com/chronark_/status/1517759708983177218\",children:\"deprecate\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:43,columnNumber:52},this),\" this one on April 23rd 2022.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:43,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:[\"Please use the \",(0,n.jsxDEV)(r.a,{href:\"https://registry.terraform.io/providers/vercel/vercel/latest\",children:\"official provider\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:45,columnNumber:16},this),\" instead.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:45,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:1},this)}function pr(l={}){let{wrapper:r}=l.components||{};return r?(0,n.jsxDEV)(r,Object.assign({},l,{children:(0,n.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\"},this):Re(l)}var Nr=pr;return br(yr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var p=Object.create;var a=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var F=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),f=(n,e)=>{for(var l in e)a(n,l,{get:e[l],enumerable:!0})},o=(n,e,l,c)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let s of E(e))!m.call(n,s)&&s!==l&&a(n,s,{get:()=>e[s],enumerable:!(c=h(e,s))||c.enumerable});return n};var v=(n,e,l)=>(l=n!=null?p(y(n)):{},o(e||!n||!n.__esModule?a(l,\"default\",{value:n,enumerable:!0}):l,n)),u=n=>o(a({},\"__esModule\",{value:!0}),n);var i=F((_,t)=>{t.exports=_jsx_runtime});var w={};f(w,{default:()=>g,frontmatter:()=>B});var r=v(i()),B={title:\"Vercel Terraform Provider\",description:\"A Terraform provider for Vercel. It has been deprecated it when Vercel rolled out their official provider.\",date:\"2021-03-16\",repository:\"chronark/terraform-provider-vercel\",url:\"https://registry.terraform.io/providers/chronark/vercel/latest\"};function d(n){let e=Object.assign({p:\"p\",div:\"div\",pre:\"pre\",code:\"code\",span:\"span\",a:\"a\"},n.components);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(e.p,{children:`Back in the day when Vercel didn't have an official Terraform provider, I wrote one.\nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.`}),`\n`,(0,r.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsx)(e.pre,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:(0,r.jsxs)(e.code,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:[(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"terraform\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"required_providers\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" vercel\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"{\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" source \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"registry.terraform.io/chronark/vercel\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" version \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\">=0.10.3\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"provider\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"vercel\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" token\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"resource\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"vercel_project\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"my_project\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" name\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"project-via-terraform\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"git_repository\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" type\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"github\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" repo\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"chronark/terraform-provider-vercel\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})})]})})}),`\n`,(0,r.jsx)(e.p,{children:`It was a fun project and I learned a lot about Terraform and Vercel's API.\nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.`}),`\n`,(0,r.jsx)(e.p,{children:\"There have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\"}),`\n`,(0,r.jsxs)(e.p,{children:[\"Now that Vercel have stepped in, I have decided to \",(0,r.jsx)(e.a,{href:\"https://twitter.com/chronark_/status/1517759708983177218\",children:\"deprecate\"}),\" this one on April 23rd 2022.\"]}),`\n`,(0,r.jsxs)(e.p,{children:[\"Please use the \",(0,r.jsx)(e.a,{href:\"https://registry.terraform.io/providers/vercel/vercel/latest\",children:\"official provider\"}),\" instead.\"]})]})}function N(n={}){let{wrapper:e}=n.components||{};return e?(0,r.jsx)(e,Object.assign({},n,{children:(0,r.jsx)(d,n)})):d(n)}var g=N;return u(w);})();\n;return Component;" }, "_id": "projects/terraform-provider-vercel.mdx", "_raw": { @@ -128,7 +128,7 @@ "path": "/projects/terraform-provider-vercel", "slug": "terraform-provider-vercel" }, - "documentHash": "1679527234899", + "documentHash": "1679527786360", "hasWarnings": false, "documentTypeName": "Project" }, @@ -248,7 +248,7 @@ "repository": "upstash/upstash-kafka", "body": { "raw": "\n\nAn HTTP/REST based Kafka client built on top of\n[Upstash REST API](https://docs.upstash.com/kafka/rest).\n\nIt is the only connectionless (HTTP based) Kafka client and designed for:\n\n- Serverless functions (AWS Lambda ...)\n- Cloudflare Workers (see the example)\n- Fastly Compute@Edge\n- Next.js Edge, Remix ...\n- Client side web/mobile applications\n- WebAssembly and other environments where HTTP is preferred over TCP\n connections.\n\n# Installation\n\n```bash\nnpm install @upstash/kafka\n```\n\n# Quickstart\n\n## Auth\n\n1. Go to [upstash](https://console.upstash.com/kafka) and select your database.\n2. Copy the `REST API` secrets at the bottom of the page\n\n```typescript\nimport { Kafka } from \"@upstash/kafka\"\n\nconst kafka = new Kafka({\n url: \"\",\n username: \"\",\n password: \"\",\n})\n```\n\n## Produce a single message\n\n```typescript\nconst p = kafka.producer()\nconst message = { hello: \"world\" } // Objects will get serialized using `JSON.stringify`\nconst res = await p.produce(\"\", message)\nconst res = await p.produce(\"\", message, {\n partition: 1,\n timestamp: 12345,\n key: \"\",\n headers: [{ key: \"traceId\", value: \"85a9f12\" }],\n})\n```\n\n## Produce multiple messages.\n\nThe same options from the example above can be set for every message.\n\n```typescript\nconst p = kafka.producer()\nconst res = await p.produceMany([\n {\n topic: \"my.topic\",\n value: { hello: \"world\" },\n // ...options\n },\n {\n topic: \"another.topic\",\n value: \"another message\",\n // ...options\n },\n])\n```\n\n## Consume\n\nThe first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.\n\n```typescript\nconst c = kafka.consumer()\nconst messages = await c.consume({\n consumerGroupId: \"group_1\",\n instanceId: \"instance_1\",\n topics: [\"test.topic\"],\n autoOffsetReset: \"earliest\",\n})\n```\n\nMore examples can be found in the\n[docstring](https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265)\n\n## Commit manually\n\nWhile `consume` can handle committing automatically, you can also use\n`Consumer.commit` to manually commit.\n\n```typescript\nconst consumerGroupId = \"mygroup\"\nconst instanceId = \"myinstance\"\nconst topic = \"my.topic\"\n\nconst c = kafka.consumer()\nconst messages = await c.consume({\n consumerGroupId,\n instanceId,\n topics: [topic],\n autoCommit: false,\n})\n\nfor (const message of messages) {\n // message handling logic\n\n await c.commit({\n consumerGroupId,\n instanceId,\n offset: {\n topic: message.topic,\n partition: message.partition,\n offset: message.offset,\n },\n })\n}\n```\n\n## Fetch\n\nYou can also manage offsets manually by using `Consumer.fetch`\n\n```typescript\nconst c = kafka.consumer()\nconst messages = await c.fetch({\n topic: \"greeting\",\n partition: 3,\n offset: 42,\n timeout: 1000,\n})\n```\n\n## Examples\n\nSee [/examples](https://github.com/upstash/upstash-kafka/tree/main/examples) as\nwell as various examples in the docstrings of each method.\n\n# Contributing\n\n## Requirements\n\n- [nodejs](https://nodejs.org) v14.x or higher\n- [pnpm](https://pnpm.io/installation)\n\n## Setup\n\n0. Install dependencies using `pnpm install`\n1. Create a kafka instance on upstash.\n [docs](https://docs.upstash.com/kafka#create-a-kafka-cluster)\n2. Create the following topics: `blue`, `red`, `green`.\n [docs](https://docs.upstash.com/kafka#create-a-topic)\n\n The partitions or retention settings don't matter at this time.\n\n3. Create `.env` file with your kafka secrets `cp .env.example .env`\n\n## Running tests\n\n```bash\npnpm test\n```\n", - "code": "var Component=(()=>{var dn=Object.create;var P=Object.defineProperty;var mn=Object.getOwnPropertyDescriptor;var ln=Object.getOwnPropertyNames;var un=Object.getPrototypeOf,hn=Object.prototype.hasOwnProperty;var G=(m,e)=>()=>(e||m((e={exports:{}}).exports,e),e.exports),fn=(m,e)=>{for(var _ in e)P(m,_,{get:e[_],enumerable:!0})},ye=(m,e,_,x)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let k of ln(e))!hn.call(m,k)&&k!==_&&P(m,k,{get:()=>e[k],enumerable:!(x=mn(e,k))||x.enumerable});return m};var bn=(m,e,_)=>(_=m!=null?dn(un(m)):{},ye(e||!m||!m.__esModule?P(_,\"default\",{value:m,enumerable:!0}):_,m)),_n=m=>ye(P({},\"__esModule\",{value:!0}),m);var Ee=G((gn,ge)=>{ge.exports=React});var je=G(q=>{\"use strict\";(function(){\"use strict\";var m=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),H=Symbol.for(\"react.profiler\"),z=Symbol.for(\"react.provider\"),X=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),O=Symbol.for(\"react.suspense\"),A=Symbol.for(\"react.suspense_list\"),C=Symbol.for(\"react.memo\"),D=Symbol.for(\"react.lazy\"),Ce=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Re=\"@@iterator\";function Te(r){if(r===null||typeof r!=\"object\")return null;var a=J&&r[J]||r[Re];return typeof a==\"function\"?a:null}var g=m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function h(r){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&u>=0&&s[l]!==f[u];)u--;for(;l>=1&&u>=0;l--,u--)if(s[l]!==f[u]){if(l!==1||u!==1)do if(l--,u--,u<0||s[l]!==f[u]){var b=`\n`+s[l].replace(\" at new \",\" at \");return r.displayName&&b.includes(\"\")&&(b=b.replace(\"\",r.displayName)),typeof r==\"function\"&&T.set(r,b),b}while(l>=1&&u>=0);break}}}finally{W=!1,I.current=i,We(),Error.prepareStackTrace=d}var j=r?r.displayName||r.name:\"\",xe=j?R(j):\"\";return typeof r==\"function\"&&T.set(r,xe),xe}function Me(r,a,t){return de(r,!1)}function $e(r){var a=r.prototype;return!!(a&&a.isReactComponent)}function w(r,a,t){if(r==null)return\"\";if(typeof r==\"function\")return de(r,$e(r));if(typeof r==\"string\")return R(r);switch(r){case O:return R(\"Suspense\");case A:return R(\"SuspenseList\")}if(typeof r==\"object\")switch(r.$$typeof){case F:return Me(r.render);case C:return w(r.type,a,t);case D:{var o=r,d=o._payload,i=o._init;try{return w(i(d),a,t)}catch{}}}return\"\"}var S=Object.prototype.hasOwnProperty,ie={},me=g.ReactDebugCurrentFrame;function B(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);me.setExtraStackFrame(t)}else me.setExtraStackFrame(null)}function Ve(r,a,t,o,d){{var i=Function.call.bind(S);for(var c in r)if(i(r,c)){var s=void 0;try{if(typeof r[c]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+c+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof r[c]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=r[c](a,c,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(l){s=l}s&&!(s instanceof Error)&&(B(d),h(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,c,typeof s),B(null)),s instanceof Error&&!(s.message in ie)&&(ie[s.message]=!0,B(d),h(\"Failed %s type: %s\",t,s.message),B(null))}}}var Ke=Array.isArray;function Y(r){return Ke(r)}function Ge(r){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&r[Symbol.toStringTag]||r.constructor.name||\"Object\";return t}}function qe(r){try{return le(r),!1}catch{return!0}}function le(r){return\"\"+r}function ue(r){if(qe(r))return h(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Ge(r)),le(r)}var v=g.ReactCurrentOwner,He={key:!0,ref:!0,__self:!0,__source:!0},he,fe,M;M={};function ze(r){if(S.call(r,\"ref\")){var a=Object.getOwnPropertyDescriptor(r,\"ref\").get;if(a&&a.isReactWarning)return!1}return r.ref!==void 0}function Xe(r){if(S.call(r,\"key\")){var a=Object.getOwnPropertyDescriptor(r,\"key\").get;if(a&&a.isReactWarning)return!1}return r.key!==void 0}function Je(r,a){if(typeof r.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);M[t]||(h('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),r.ref),M[t]=!0)}}function Qe(r,a){{var t=function(){he||(he=!0,h(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"key\",{get:t,configurable:!0})}}function Ze(r,a){{var t=function(){fe||(fe=!0,h(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"ref\",{get:t,configurable:!0})}}var en=function(r,a,t,o,d,i,c){var s={$$typeof:e,type:r,key:a,ref:t,props:c,_owner:i};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:d}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(r,a,t,o,d){{var i,c={},s=null,f=null;t!==void 0&&(ue(t),s=\"\"+t),Xe(a)&&(ue(a.key),s=\"\"+a.key),ze(a)&&(f=a.ref,Je(a,d));for(i in a)S.call(a,i)&&!He.hasOwnProperty(i)&&(c[i]=a[i]);if(r&&r.defaultProps){var l=r.defaultProps;for(i in l)c[i]===void 0&&(c[i]=l[i])}if(s||f){var u=typeof r==\"function\"?r.displayName||r.name||\"Unknown\":r;s&&Qe(c,u),f&&Ze(c,u)}return en(r,s,f,d,o,v.current,c)}}var $=g.ReactCurrentOwner,be=g.ReactDebugCurrentFrame;function E(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var V;V=!1;function K(r){return typeof r==\"object\"&&r!==null&&r.$$typeof===e}function _e(){{if($.current){var r=p($.current.type);if(r)return`\n\nCheck the render method of \\``+r+\"`.\"}return\"\"}}function rn(r){{if(r!==void 0){var a=r.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=r.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(r){{var a=_e();if(!a){var t=typeof r==\"string\"?r:r.displayName||r.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(r,a){{if(!r._store||r._store.validated||r.key!=null)return;r._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";r&&r._owner&&r._owner!==$.current&&(o=\" It was passed a child from \"+p(r._owner.type)+\".\"),E(r),h('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ke(r,a){{if(typeof r!=\"object\")return;if(Y(r))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):l=typeof r,h(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",l,s)}var u=nn(r,a,t,d,i);if(u==null)return u;if(c){var b=a.children;if(b!==void 0)if(o)if(Y(b)){for(var j=0;j{\"use strict\";Ue.exports=je()});var xn={};fn(xn,{default:()=>kn,frontmatter:()=>pn});var n=bn(ve()),pn={title:\"@upstash/kafka\",description:\"A fully typed Kafka client built for Upstash Kafka and HTTP, perfect for serverless and edge runtimes\",date:\"2022-01-08\",url:\"https://upstash.com/kafka\",repository:\"upstash/upstash-kafka\"};function Fe(m){let e=Object.assign({p:\"p\",a:\"a\",ul:\"ul\",li:\"li\",h1:\"h1\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\",h2:\"h2\",ol:\"ol\"},m.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(e.p,{children:[`An HTTP/REST based Kafka client built on top of\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka/rest\",children:\"Upstash REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"It is the only connectionless (HTTP based) Kafka client and designed for:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Cloudflare Workers (see the example)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Fastly Compute@Edge\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Next.js Edge, Remix ...\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Client side web/mobile applications\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:`WebAssembly and other environments where HTTP is preferred over TCP\nconnections.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"installation\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#installation\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Installation\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:223},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:260},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"quickstart\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quickstart\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Quickstart\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"auth\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#auth\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Auth\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ol,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:[\"Go to \",(0,n.jsxDEV)(e.a,{href:\"https://console.upstash.com/kafka\",children:\"upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:10},this),\" and select your database.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[\"Copy the \",(0,n.jsxDEV)(e.code,{children:\"REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:35,columnNumber:13},this),\" secrets at the bottom of the page\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:35,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Kafka } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/kafka\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:270},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:250},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:326},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:367},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:63},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:141},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" username: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:68},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:151},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" password: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:68},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:151},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"produce-a-single-message\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-a-single-message\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Produce a single message\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:47,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:141},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:178},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { hello: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:215},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:314},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// Objects will get serialized using `JSON.stringify`\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:353},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:371},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:408},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", message)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:472},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:371},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:408},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", message, {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:472},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:106},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" timestamp: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"12345\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" key: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:63},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" headers: [{ key: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"traceId\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", value: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:130},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"85a9f12\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" }],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:230},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:49,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"produce-multiple-messages\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-multiple-messages\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Produce multiple messages.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"The same options from the example above can be set for every message.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produceMany\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"([\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:375},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:123},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: { hello: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:76},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:60},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:128},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another message\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:130},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:60},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"])\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"consume\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#consume\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Consume\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:81,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:`The first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:83,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:376},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"group_1\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:130},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"instance_1\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:70},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:128},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"test.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:125},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoOffsetReset: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"earliest\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:131},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[`More examples can be found in the\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265\",children:\"docstring\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:100,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:99,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"commit-manually\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#commit-manually\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Commit manually\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:102,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"While \",(0,n.jsxDEV)(e.code,{children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:104,columnNumber:7},this),` can handle committing automatically, you can also use\n`,(0,n.jsxDEV)(e.code,{children:\"Consumer.commit\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:105,columnNumber:1},this),\" to manually commit.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:104,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"consumerGroupId\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:270},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:307},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"mygroup\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:344},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"instanceId\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:218},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"myinstance\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:255},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"topic\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:250},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:172},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:209},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:252},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:296},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:376},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [topic],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoCommit: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"false\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:70},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:111},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"for\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" (\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:59},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:97},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:218},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"of\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:255},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" messages) {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:293},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// message handling logic\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:58},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:58},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:99},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"commit\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:180},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: message.topic,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: message.partition,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: message.offset,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:22,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:23,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:25,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:107,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"fetch\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#fetch\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Fetch\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:135,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"You can also manage offsets manually by using \",(0,n.jsxDEV)(e.code,{children:\"Consumer.fetch\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:137,columnNumber:47},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:137,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"fetch\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:374},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"greeting\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:65},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:121},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"3\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:106},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"42\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:66},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:104},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" timeout: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1000\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:107},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:139,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"examples\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#examples\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Examples\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:149,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"See \",(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-kafka/tree/main/examples\",children:\"/examples\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:151,columnNumber:5},this),` as\nwell as various examples in the docstrings of each method.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:151,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"contributing\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:154,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"requirements\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#requirements\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Requirements\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:156,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:[(0,n.jsxDEV)(e.a,{href:\"https://nodejs.org\",children:\"nodejs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:3},this),\" v14.x or higher\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:(0,n.jsxDEV)(e.a,{href:\"https://pnpm.io/installation\",children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:159,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:159,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"setup\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#setup\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Setup\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:161,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ol,{start:\"0\",children:[`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Install dependencies using \",(0,n.jsxDEV)(e.code,{children:\"pnpm install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:31},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[`Create a kafka instance on upstash.\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-kafka-cluster\",children:\"docs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:165,columnNumber:4},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:164,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:164,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create the following topics: \",(0,n.jsxDEV)(e.code,{children:\"blue\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:33},this),\", \",(0,n.jsxDEV)(e.code,{children:\"red\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:41},this),\", \",(0,n.jsxDEV)(e.code,{children:\"green\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:48},this),`.\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-topic\",children:\"docs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:167,columnNumber:4},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:4},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"The partitions or retention settings don't matter at this time.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:169,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create \",(0,n.jsxDEV)(e.code,{children:\".env\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:11},this),\" file with your kafka secrets \",(0,n.jsxDEV)(e.code,{children:\"cp .env.example .env\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:47},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"running-tests\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#running-tests\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Running tests\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:173,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"test\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:181},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:175,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(m={}){let{wrapper:e}=m.components||{};return e?(0,n.jsxDEV)(e,Object.assign({},m,{children:(0,n.jsxDEV)(Fe,m,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this):Fe(m)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var u=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),F=(n,e)=>{for(var s in e)a(n,s,{get:e[s],enumerable:!0})},o=(n,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let c of E(e))!m.call(n,c)&&c!==s&&a(n,c,{get:()=>e[c],enumerable:!(r=p(e,c))||r.enumerable});return n};var g=(n,e,s)=>(s=n!=null?h(y(n)):{},o(e||!n||!n.__esModule?a(s,\"default\",{value:n,enumerable:!0}):s,n)),f=n=>o(a({},\"__esModule\",{value:!0}),n);var t=u((v,i)=>{i.exports=_jsx_runtime});var b={};F(b,{default:()=>B,frontmatter:()=>N});var l=g(t()),N={title:\"@upstash/kafka\",description:\"A fully typed Kafka client built for Upstash Kafka and HTTP, perfect for serverless and edge runtimes\",date:\"2022-01-08\",url:\"https://upstash.com/kafka\",repository:\"upstash/upstash-kafka\"};function d(n){let e=Object.assign({p:\"p\",a:\"a\",ul:\"ul\",li:\"li\",h1:\"h1\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\",h2:\"h2\",ol:\"ol\"},n.components);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(e.p,{children:[`An HTTP/REST based Kafka client built on top of\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka/rest\",children:\"Upstash REST API\"}),\".\"]}),`\n`,(0,l.jsx)(e.p,{children:\"It is the only connectionless (HTTP based) Kafka client and designed for:\"}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsx)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"}),`\n`,(0,l.jsx)(e.li,{children:\"Cloudflare Workers (see the example)\"}),`\n`,(0,l.jsx)(e.li,{children:\"Fastly Compute@Edge\"}),`\n`,(0,l.jsx)(e.li,{children:\"Next.js Edge, Remix ...\"}),`\n`,(0,l.jsx)(e.li,{children:\"Client side web/mobile applications\"}),`\n`,(0,l.jsx)(e.li,{children:`WebAssembly and other environments where HTTP is preferred over TCP\nconnections.`}),`\n`]}),`\n`,(0,l.jsxs)(e.h1,{id:\"installation\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#installation\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Installation\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/kafka\"})]})})})}),`\n`,(0,l.jsxs)(e.h1,{id:\"quickstart\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quickstart\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Quickstart\"]}),`\n`,(0,l.jsxs)(e.h2,{id:\"auth\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#auth\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Auth\"]}),`\n`,(0,l.jsxs)(e.ol,{children:[`\n`,(0,l.jsxs)(e.li,{children:[\"Go to \",(0,l.jsx)(e.a,{href:\"https://console.upstash.com/kafka\",children:\"upstash\"}),\" and select your database.\"]}),`\n`,(0,l.jsxs)(e.li,{children:[\"Copy the \",(0,l.jsx)(e.code,{children:\"REST API\"}),\" secrets at the bottom of the page\"]}),`\n`]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Kafka } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/kafka\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"kafka\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Kafka\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" username: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" password: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"produce-a-single-message\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-a-single-message\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Produce a single message\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { hello: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" } \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// Objects will get serialized using `JSON.stringify`\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", message)\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", message, {\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" timestamp: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"12345\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" key: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" headers: [{ key: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"traceId\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", value: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"85a9f12\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }],\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"produce-multiple-messages\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-multiple-messages\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Produce multiple messages.\"]}),`\n`,(0,l.jsx)(e.p,{children:\"The same options from the example above can be set for every message.\"}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produceMany\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"([\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: { hello: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another message\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"])\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"consume\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#consume\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Consume\"]}),`\n`,(0,l.jsx)(e.p,{children:`The first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.`}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"group_1\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"instance_1\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"test.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoOffsetReset: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"earliest\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.p,{children:[`More examples can be found in the\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265\",children:\"docstring\"})]}),`\n`,(0,l.jsxs)(e.h2,{id:\"commit-manually\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#commit-manually\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Commit manually\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"While \",(0,l.jsx)(e.code,{children:\"consume\"}),` can handle committing automatically, you can also use\n`,(0,l.jsx)(e.code,{children:\"Consumer.commit\"}),\" to manually commit.\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"consumerGroupId\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"mygroup\"'})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"instanceId\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"myinstance\"'})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"topic\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [topic],\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoCommit: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"false\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"for\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" (\"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"of\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" messages) {\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// message handling logic\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"commit\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: {\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: message.topic,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: message.partition,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: message.offset,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"fetch\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#fetch\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Fetch\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"You can also manage offsets manually by using \",(0,l.jsx)(e.code,{children:\"Consumer.fetch\"})]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"fetch\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"greeting\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"3\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"42\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" timeout: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1000\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"examples\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#examples\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Examples\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"See \",(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-kafka/tree/main/examples\",children:\"/examples\"}),` as\nwell as various examples in the docstrings of each method.`]}),`\n`,(0,l.jsxs)(e.h1,{id:\"contributing\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Contributing\"]}),`\n`,(0,l.jsxs)(e.h2,{id:\"requirements\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#requirements\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Requirements\"]}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsxs)(e.li,{children:[(0,l.jsx)(e.a,{href:\"https://nodejs.org\",children:\"nodejs\"}),\" v14.x or higher\"]}),`\n`,(0,l.jsx)(e.li,{children:(0,l.jsx)(e.a,{href:\"https://pnpm.io/installation\",children:\"pnpm\"})}),`\n`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"setup\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#setup\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Setup\"]}),`\n`,(0,l.jsxs)(e.ol,{start:\"0\",children:[`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Install dependencies using \",(0,l.jsx)(e.code,{children:\"pnpm install\"})]}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[`Create a kafka instance on upstash.\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-kafka-cluster\",children:\"docs\"})]}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Create the following topics: \",(0,l.jsx)(e.code,{children:\"blue\"}),\", \",(0,l.jsx)(e.code,{children:\"red\"}),\", \",(0,l.jsx)(e.code,{children:\"green\"}),`.\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-topic\",children:\"docs\"})]}),`\n`,(0,l.jsx)(e.p,{children:\"The partitions or retention settings don't matter at this time.\"}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Create \",(0,l.jsx)(e.code,{children:\".env\"}),\" file with your kafka secrets \",(0,l.jsx)(e.code,{children:\"cp .env.example .env\"})]}),`\n`]}),`\n`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"running-tests\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#running-tests\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Running tests\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"pnpm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"test\"})]})})})})]})}function k(n={}){let{wrapper:e}=n.components||{};return e?(0,l.jsx)(e,Object.assign({},n,{children:(0,l.jsx)(d,n)})):d(n)}var B=k;return f(b);})();\n;return Component;" }, "_id": "projects/upstash-kafka.mdx", "_raw": { @@ -262,7 +262,7 @@ "path": "/projects/upstash-kafka", "slug": "upstash-kafka" }, - "documentHash": "1679526092640", + "documentHash": "1679527360060", "hasWarnings": false, "documentTypeName": "Project" }, @@ -356,7 +356,7 @@ "repository": "upstash/upstash-redis", "body": { "raw": "\n\n`@upstash/redis` is an HTTP/REST based Redis client for typescript, built on top\nof [Upstash REST API](https://docs.upstash.com/features/restapi).\n\nIt is the only connectionless (HTTP based) Redis client and designed for:\n\n- Serverless functions (AWS Lambda ...)\n- Cloudflare Workers (see\n [the example](https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers))\n- Fastly Compute@Edge (see\n [the example](https://github.com/upstash/upstash-redis/tree/main/examples/fastly))\n- Next.js, Jamstack ...\n- Client side web/mobile applications\n- WebAssembly\n- and other environments where HTTP is preferred over TCP.\n\nSee\n[the list of APIs](https://docs.upstash.com/features/restapi#rest---redis-api-compatibility)\nsupported.\n\n## Quick Start\n\n### Install\n\n#### Node.js\n\n```bash\nnpm install @upstash/redis\n```\n\n#### Deno\n\n```ts\nimport { Redis } from \"https://deno.land/x/upstash_redis/mod.ts\";\n```\n\n### Create database\n\nCreate a new redis database on [upstash](https://console.upstash.com/)\n\n## Basic Usage:\n\n```ts\nimport { Redis } from \"@upstash/redis\"\n\nconst redis = new Redis({\n url: ,\n token: ,\n})\n\n// string\nawait redis.set('key', 'value');\nlet data = await redis.get('key');\nconsole.log(data)\n\nawait redis.set('key2', 'value2', {ex: 1});\n\n// sorted set\nawait redis.zadd('scores', { score: 1, member: 'team1' })\ndata = await redis.zrange('scores', 0, 100 )\nconsole.log(data)\n\n// list\nawait redis.lpush('elements', 'magnesium')\ndata = await redis.lrange('elements', 0, 100 )\nconsole.log(data)\n\n// hash\nawait redis.hset('people', {name: 'joe'})\ndata = await redis.hget('people', 'name' )\nconsole.log(data)\n\n// sets\nawait redis.sadd('animals', 'cat')\ndata = await redis.spop('animals', 1)\nconsole.log(data)\n```\n", - "code": "var Component=(()=>{var dn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var mn=Object.getOwnPropertyNames;var un=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var q=(l,e)=>()=>(e||l((e={exports:{}}).exports,e),e.exports),fn=(l,e)=>{for(var _ in e)O(l,_,{get:e[_],enumerable:!0})},ye=(l,e,_,x)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let k of mn(e))!bn.call(l,k)&&k!==_&&O(l,k,{get:()=>e[k],enumerable:!(x=ln(e,k))||x.enumerable});return l};var hn=(l,e,_)=>(_=l!=null?dn(un(l)):{},ye(e||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var Ee=q((gn,ge)=>{ge.exports=React});var je=q(z=>{\"use strict\";(function(){\"use strict\";var l=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),G=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),X=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),B=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),R=Symbol.for(\"react.memo\"),A=Symbol.for(\"react.lazy\"),Re=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Ce=\"@@iterator\";function Te(r){if(r===null||typeof r!=\"object\")return null;var a=J&&r[J]||r[Ce];return typeof a==\"function\"?a:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function b(r){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&u>=0&&s[m]!==f[u];)u--;for(;m>=1&&u>=0;m--,u--)if(s[m]!==f[u]){if(m!==1||u!==1)do if(m--,u--,u<0||s[m]!==f[u]){var h=`\n`+s[m].replace(\" at new \",\" at \");return r.displayName&&h.includes(\"\")&&(h=h.replace(\"\",r.displayName)),typeof r==\"function\"&&T.set(r,h),h}while(m>=1&&u>=0);break}}}finally{W=!1,I.current=i,We(),Error.prepareStackTrace=d}var j=r?r.displayName||r.name:\"\",xe=j?C(j):\"\";return typeof r==\"function\"&&T.set(r,xe),xe}function $e(r,a,t){return de(r,!1)}function Me(r){var a=r.prototype;return!!(a&&a.isReactComponent)}function w(r,a,t){if(r==null)return\"\";if(typeof r==\"function\")return de(r,Me(r));if(typeof r==\"string\")return C(r);switch(r){case B:return C(\"Suspense\");case D:return C(\"SuspenseList\")}if(typeof r==\"object\")switch(r.$$typeof){case F:return $e(r.render);case R:return w(r.type,a,t);case A:{var o=r,d=o._payload,i=o._init;try{return w(i(d),a,t)}catch{}}}return\"\"}var S=Object.prototype.hasOwnProperty,ie={},le=g.ReactDebugCurrentFrame;function P(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function Ve(r,a,t,o,d){{var i=Function.call.bind(S);for(var c in r)if(i(r,c)){var s=void 0;try{if(typeof r[c]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+c+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof r[c]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=r[c](a,c,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(m){s=m}s&&!(s instanceof Error)&&(P(d),b(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,c,typeof s),P(null)),s instanceof Error&&!(s.message in ie)&&(ie[s.message]=!0,P(d),b(\"Failed %s type: %s\",t,s.message),P(null))}}}var He=Array.isArray;function Y(r){return He(r)}function qe(r){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&r[Symbol.toStringTag]||r.constructor.name||\"Object\";return t}}function ze(r){try{return me(r),!1}catch{return!0}}function me(r){return\"\"+r}function ue(r){if(ze(r))return b(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",qe(r)),me(r)}var v=g.ReactCurrentOwner,Ge={key:!0,ref:!0,__self:!0,__source:!0},be,fe,$;$={};function Ke(r){if(S.call(r,\"ref\")){var a=Object.getOwnPropertyDescriptor(r,\"ref\").get;if(a&&a.isReactWarning)return!1}return r.ref!==void 0}function Xe(r){if(S.call(r,\"key\")){var a=Object.getOwnPropertyDescriptor(r,\"key\").get;if(a&&a.isReactWarning)return!1}return r.key!==void 0}function Je(r,a){if(typeof r.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);$[t]||(b('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),r.ref),$[t]=!0)}}function Qe(r,a){{var t=function(){be||(be=!0,b(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"key\",{get:t,configurable:!0})}}function Ze(r,a){{var t=function(){fe||(fe=!0,b(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"ref\",{get:t,configurable:!0})}}var en=function(r,a,t,o,d,i,c){var s={$$typeof:e,type:r,key:a,ref:t,props:c,_owner:i};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:d}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(r,a,t,o,d){{var i,c={},s=null,f=null;t!==void 0&&(ue(t),s=\"\"+t),Xe(a)&&(ue(a.key),s=\"\"+a.key),Ke(a)&&(f=a.ref,Je(a,d));for(i in a)S.call(a,i)&&!Ge.hasOwnProperty(i)&&(c[i]=a[i]);if(r&&r.defaultProps){var m=r.defaultProps;for(i in m)c[i]===void 0&&(c[i]=m[i])}if(s||f){var u=typeof r==\"function\"?r.displayName||r.name||\"Unknown\":r;s&&Qe(c,u),f&&Ze(c,u)}return en(r,s,f,d,o,v.current,c)}}var M=g.ReactCurrentOwner,he=g.ReactDebugCurrentFrame;function E(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);he.setExtraStackFrame(t)}else he.setExtraStackFrame(null)}var V;V=!1;function H(r){return typeof r==\"object\"&&r!==null&&r.$$typeof===e}function _e(){{if(M.current){var r=p(M.current.type);if(r)return`\n\nCheck the render method of \\``+r+\"`.\"}return\"\"}}function rn(r){{if(r!==void 0){var a=r.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=r.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(r){{var a=_e();if(!a){var t=typeof r==\"string\"?r:r.displayName||r.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(r,a){{if(!r._store||r._store.validated||r.key!=null)return;r._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";r&&r._owner&&r._owner!==M.current&&(o=\" It was passed a child from \"+p(r._owner.type)+\".\"),E(r),b('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ke(r,a){{if(typeof r!=\"object\")return;if(Y(r))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):m=typeof r,b(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",m,s)}var u=nn(r,a,t,d,i);if(u==null)return u;if(c){var h=a.children;if(h!==void 0)if(o)if(Y(h)){for(var j=0;j{\"use strict\";Ue.exports=je()});var xn={};fn(xn,{default:()=>kn,frontmatter:()=>pn});var n=hn(ve()),pn={title:\"@upstash/redis\",description:\"A fully typed Redis client built for Upstash Redis and HTTP, perfect for serverless and edge runtimes.\",date:\"2022-03-14\",url:\"https://upstash.com/redis\",repository:\"upstash/upstash-redis\"};function Fe(l){let e=Object.assign({p:\"p\",code:\"code\",a:\"a\",ul:\"ul\",li:\"li\",h2:\"h2\",span:\"span\",h3:\"h3\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(e.p,{children:[(0,n.jsxDEV)(e.code,{children:\"@upstash/redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),` is an HTTP/REST based Redis client for typescript, built on top\nof `,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/features/restapi\",children:\"Upstash REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:12,columnNumber:4},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"It is the only connectionless (HTTP based) Redis client and designed for:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`Cloudflare Workers (see\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers\",children:\"the example\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:3},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`Fastly Compute@Edge (see\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/fastly\",children:\"the example\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:3},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Next.js, Jamstack ...\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Client side web/mobile applications\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"WebAssembly\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"and other environments where HTTP is preferred over TCP.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:24,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[`See\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/features/restapi#rest---redis-api-compatibility\",children:\"the list of APIs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:1},this),`\nsupported.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"quick-start\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quick-start\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Quick Start\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h3,{id:\"install\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Install\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h4,{id:\"nodejs\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#nodejs\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Node.js\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:223},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:260},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:36,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h4,{id:\"deno\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deno\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Deno\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:40,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"https://deno.land/x/upstash_redis/mod.ts\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:270},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:358},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h3,{id:\"create-database\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#create-database\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Create database\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create a new redis database on \",(0,n.jsxDEV)(e.a,{href:\"https://console.upstash.com/\",children:\"upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:48,columnNumber:32},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"basic-usage\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#basic-usage\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Basic Usage:\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/redis\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:270},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:250},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:326},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:367},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: <\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_URL\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:125},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" token: <\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_TOKEN\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// string\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:229},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:267},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:318},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"let\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:59},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:101},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"get\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:259},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:335},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:384},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key2'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:230},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value2'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:268},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", {ex: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:320},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:363},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:400},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// sorted set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:15,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"zadd\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", { score: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:280},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", member: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:317},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'team1'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:363},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:414},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"zrange\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:350},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:388},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:425},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:463},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:502},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// list\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"lpush\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:236},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'magnesium'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:274},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:329},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"lrange\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:352},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:390},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:427},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:465},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:504},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// hash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"hset\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", {name: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'joe'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:278},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:327},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"hget\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:259},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:296},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:348},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'name'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:386},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:436},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:29,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// sets\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"sadd\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:234},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'cat'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:272},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:321},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:62},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:99},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:136},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:177},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"spop\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:220},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:260},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:297},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:350},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:388},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:425},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:52,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:e}=l.components||{};return e?(0,n.jsxDEV)(e,Object.assign({},l,{children:(0,n.jsxDEV)(Fe,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this):Fe(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var c=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,F=Object.prototype.hasOwnProperty;var m=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),u=(n,e)=>{for(var s in e)c(n,s,{get:e[s],enumerable:!0})},o=(n,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of E(e))!F.call(n,a)&&a!==s&&c(n,a,{get:()=>e[a],enumerable:!(r=p(e,a))||r.enumerable});return n};var B=(n,e,s)=>(s=n!=null?h(y(n)):{},o(e||!n||!n.__esModule?c(s,\"default\",{value:n,enumerable:!0}):s,n)),N=n=>o(c({},\"__esModule\",{value:!0}),n);var t=m((w,i)=>{i.exports=_jsx_runtime});var C={};u(C,{default:()=>b,frontmatter:()=>g});var l=B(t()),g={title:\"@upstash/redis\",description:\"A fully typed Redis client built for Upstash Redis and HTTP, perfect for serverless and edge runtimes.\",date:\"2022-03-14\",url:\"https://upstash.com/redis\",repository:\"upstash/upstash-redis\"};function d(n){let e=Object.assign({p:\"p\",code:\"code\",a:\"a\",ul:\"ul\",li:\"li\",h2:\"h2\",span:\"span\",h3:\"h3\",h4:\"h4\",div:\"div\",pre:\"pre\"},n.components);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(e.p,{children:[(0,l.jsx)(e.code,{children:\"@upstash/redis\"}),` is an HTTP/REST based Redis client for typescript, built on top\nof `,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/features/restapi\",children:\"Upstash REST API\"}),\".\"]}),`\n`,(0,l.jsx)(e.p,{children:\"It is the only connectionless (HTTP based) Redis client and designed for:\"}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsx)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"}),`\n`,(0,l.jsxs)(e.li,{children:[`Cloudflare Workers (see\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers\",children:\"the example\"}),\")\"]}),`\n`,(0,l.jsxs)(e.li,{children:[`Fastly Compute@Edge (see\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/fastly\",children:\"the example\"}),\")\"]}),`\n`,(0,l.jsx)(e.li,{children:\"Next.js, Jamstack ...\"}),`\n`,(0,l.jsx)(e.li,{children:\"Client side web/mobile applications\"}),`\n`,(0,l.jsx)(e.li,{children:\"WebAssembly\"}),`\n`,(0,l.jsx)(e.li,{children:\"and other environments where HTTP is preferred over TCP.\"}),`\n`]}),`\n`,(0,l.jsxs)(e.p,{children:[`See\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/features/restapi#rest---redis-api-compatibility\",children:\"the list of APIs\"}),`\nsupported.`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"quick-start\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quick-start\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Quick Start\"]}),`\n`,(0,l.jsxs)(e.h3,{id:\"install\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Install\"]}),`\n`,(0,l.jsxs)(e.h4,{id:\"nodejs\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#nodejs\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Node.js\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/redis\"})]})})})}),`\n`,(0,l.jsxs)(e.h4,{id:\"deno\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deno\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Deno\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"https://deno.land/x/upstash_redis/mod.ts\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"})]})})})}),`\n`,(0,l.jsxs)(e.h3,{id:\"create-database\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#create-database\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Create database\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"Create a new redis database on \",(0,l.jsx)(e.a,{href:\"https://console.upstash.com/\",children:\"upstash\"})]}),`\n`,(0,l.jsxs)(e.h2,{id:\"basic-usage\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#basic-usage\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Basic Usage:\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/redis\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"redis\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Redis\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: <\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_URL\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" token: <\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_TOKEN\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// string\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"set\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"let\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"get\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"set\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key2'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value2'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", {ex: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// sorted set\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"zadd\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", { score: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", member: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'team1'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"zrange\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// list\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"lpush\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'magnesium'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"lrange\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// hash\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"hset\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", {name: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'joe'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"hget\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'name'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// sets\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"sadd\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'cat'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"spop\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]})]})})})]})}function f(n={}){let{wrapper:e}=n.components||{};return e?(0,l.jsx)(e,Object.assign({},n,{children:(0,l.jsx)(d,n)})):d(n)}var b=f;return N(C);})();\n;return Component;" }, "_id": "projects/upstash-redis.mdx", "_raw": { @@ -370,7 +370,7 @@ "path": "/projects/upstash-redis", "slug": "upstash-redis" }, - "documentHash": "1679526095656", + "documentHash": "1679527812878", "hasWarnings": false, "documentTypeName": "Project" } diff --git a/.contentlayer/generated/Project/_index.json b/.contentlayer/generated/Project/_index.json index 5de9d3a..a0c35f1 100644 --- a/.contentlayer/generated/Project/_index.json +++ b/.contentlayer/generated/Project/_index.json @@ -6,7 +6,7 @@ "repository": "chronark/access", "body": { "raw": "A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\n\n- Fully typed\n- Zero dependencies\n- Serializable to store in a database\n\n## Install\n\n```sh-session\nnpm i @chronark/access\n```\n\n## Usage\n\n```ts\nimport { AccessControl, Role } from \"@chronark/access\";\n\n/**\n * Define all your resources and their access patterns\n *\n * key => resource\n * value => array of access types\n */\ntype Statements = {\n user: [\"read\", \"write\", \"dance\"];\n team: [\"read\", \"write\"];\n};\n\n/**\n * Create an access control instance and pass the Statements type to enjoy full\n * type safety\n */\nconst ac = new AccessControl();\n\n/**\n * Now you can define one or more roles by specifying the access permissions\n *\n * This is already fully typed and typescript will let you know if you try to\n * use anything, that is not defined in the Statements type.\n */\nconst role = ac.newRole({\n user: [\"read\", \"write\"],\n team: [\"read\"],\n});\n\n/**\n * Simulate storing and retrieving the role in a database\n *\n * The idea here is, that you can store permissions alongside an API token.\n * Now, when you verify the token, you can also verify the access permissions.\n */\nconst serialized = role.toString();\n\n/**\n * Note how you can pass in the Statements type again, to get full type safety\n */\nconst recovered = Role.fromString(serialized);\n\n/**\n * Validate the role by specifying the resource and the required access\n *\n * everything is fully typed\n */\nconst res = recovered.authorize({\"team\", [\"read\"]});\n\n// res.success => boolean\n// res.error => string | undefined provides a reason for failure\n```", - "code": "var Component=(()=>{var cn=Object.create;var S=Object.defineProperty;var bn=Object.getOwnPropertyDescriptor;var ln=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,un=Object.prototype.hasOwnProperty;var z=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),fn=(i,e)=>{for(var _ in e)S(i,_,{get:e[_],enumerable:!0})},xe=(i,e,_,k)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let y of ln(e))!un.call(i,y)&&y!==_&&S(i,y,{get:()=>e[y],enumerable:!(k=bn(e,y))||k.enumerable});return i};var hn=(i,e,_)=>(_=i!=null?cn(mn(i)):{},xe(e||!i||!i.__esModule?S(_,\"default\",{value:i,enumerable:!0}):_,i)),_n=i=>xe(S({},\"__esModule\",{value:!0}),i);var Ee=z((gn,ge)=>{ge.exports=React});var je=z(G=>{\"use strict\";(function(){\"use strict\";var i=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),k=Symbol.for(\"react.fragment\"),y=Symbol.for(\"react.strict_mode\"),X=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),O=Symbol.for(\"react.suspense\"),P=Symbol.for(\"react.suspense_list\"),R=Symbol.for(\"react.memo\"),B=Symbol.for(\"react.lazy\"),Re=Symbol.for(\"react.offscreen\"),Z=Symbol.iterator,Ce=\"@@iterator\";function De(n){if(n===null||typeof n!=\"object\")return null;var a=Z&&n[Z]||n[Ce];return typeof a==\"function\"?a:null}var g=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function u(n){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&m>=0&&s[l]!==f[m];)m--;for(;l>=1&&m>=0;l--,m--)if(s[l]!==f[m]){if(l!==1||m!==1)do if(l--,m--,m<0||s[l]!==f[m]){var h=`\n`+s[l].replace(\" at new \",\" at \");return n.displayName&&h.includes(\"\")&&(h=h.replace(\"\",n.displayName)),typeof n==\"function\"&&D.set(n,h),h}while(l>=1&&m>=0);break}}}finally{$=!1,I.current=b,$e(),Error.prepareStackTrace=c}var j=n?n.displayName||n.name:\"\",ke=j?C(j):\"\";return typeof n==\"function\"&&D.set(n,ke),ke}function Ve(n,a,t){return ce(n,!1)}function Me(n){var a=n.prototype;return!!(a&&a.isReactComponent)}function w(n,a,t){if(n==null)return\"\";if(typeof n==\"function\")return ce(n,Me(n));if(typeof n==\"string\")return C(n);switch(n){case O:return C(\"Suspense\");case P:return C(\"SuspenseList\")}if(typeof n==\"object\")switch(n.$$typeof){case F:return Ve(n.render);case R:return w(n.type,a,t);case B:{var o=n,c=o._payload,b=o._init;try{return w(b(c),a,t)}catch{}}}return\"\"}var T=Object.prototype.hasOwnProperty,be={},ie=g.ReactDebugCurrentFrame;function A(n){if(n){var a=n._owner,t=w(n.type,n._source,a?a.type:null);ie.setExtraStackFrame(t)}else ie.setExtraStackFrame(null)}function Le(n,a,t,o,c){{var b=Function.call.bind(T);for(var d in n)if(b(n,d)){var s=void 0;try{if(typeof n[d]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof n[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=n[d](a,d,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(l){s=l}s&&!(s instanceof Error)&&(A(c),u(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,d,typeof s),A(null)),s instanceof Error&&!(s.message in be)&&(be[s.message]=!0,A(c),u(\"Failed %s type: %s\",t,s.message),A(null))}}}var qe=Array.isArray;function W(n){return qe(n)}function ze(n){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&n[Symbol.toStringTag]||n.constructor.name||\"Object\";return t}}function Ge(n){try{return le(n),!1}catch{return!0}}function le(n){return\"\"+n}function me(n){if(Ge(n))return u(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",ze(n)),le(n)}var v=g.ReactCurrentOwner,Xe={key:!0,ref:!0,__self:!0,__source:!0},ue,fe,V;V={};function Ke(n){if(T.call(n,\"ref\")){var a=Object.getOwnPropertyDescriptor(n,\"ref\").get;if(a&&a.isReactWarning)return!1}return n.ref!==void 0}function He(n){if(T.call(n,\"key\")){var a=Object.getOwnPropertyDescriptor(n,\"key\").get;if(a&&a.isReactWarning)return!1}return n.key!==void 0}function Ze(n,a){if(typeof n.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);V[t]||(u('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),n.ref),V[t]=!0)}}function Je(n,a){{var t=function(){ue||(ue=!0,u(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(n,\"key\",{get:t,configurable:!0})}}function Qe(n,a){{var t=function(){fe||(fe=!0,u(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(n,\"ref\",{get:t,configurable:!0})}}var en=function(n,a,t,o,c,b,d){var s={$$typeof:e,type:n,key:a,ref:t,props:d,_owner:b};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:c}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(n,a,t,o,c){{var b,d={},s=null,f=null;t!==void 0&&(me(t),s=\"\"+t),He(a)&&(me(a.key),s=\"\"+a.key),Ke(a)&&(f=a.ref,Ze(a,c));for(b in a)T.call(a,b)&&!Xe.hasOwnProperty(b)&&(d[b]=a[b]);if(n&&n.defaultProps){var l=n.defaultProps;for(b in l)d[b]===void 0&&(d[b]=l[b])}if(s||f){var m=typeof n==\"function\"?n.displayName||n.name||\"Unknown\":n;s&&Je(d,m),f&&Qe(d,m)}return en(n,s,f,c,o,v.current,d)}}var M=g.ReactCurrentOwner,he=g.ReactDebugCurrentFrame;function E(n){if(n){var a=n._owner,t=w(n.type,n._source,a?a.type:null);he.setExtraStackFrame(t)}else he.setExtraStackFrame(null)}var L;L=!1;function q(n){return typeof n==\"object\"&&n!==null&&n.$$typeof===e}function _e(){{if(M.current){var n=p(M.current.type);if(n)return`\n\nCheck the render method of \\``+n+\"`.\"}return\"\"}}function rn(n){{if(n!==void 0){var a=n.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=n.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(n){{var a=_e();if(!a){var t=typeof n==\"string\"?n:n.displayName||n.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(n,a){{if(!n._store||n._store.validated||n.key!=null)return;n._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";n&&n._owner&&n._owner!==M.current&&(o=\" It was passed a child from \"+p(n._owner.type)+\".\"),E(n),u('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ye(n,a){{if(typeof n!=\"object\")return;if(W(n))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):l=typeof n,u(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",l,s)}var m=nn(n,a,t,c,b);if(m==null)return m;if(d){var h=a.children;if(h!==void 0)if(o)if(W(h)){for(var j=0;j{\"use strict\";Ue.exports=je()});var kn={};fn(kn,{default:()=>yn,frontmatter:()=>pn});var r=hn(ve()),pn={title:\"@chronark/access\",description:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\",repository:\"chronark/access\",date:\"2022-11-13\"};function Fe(i){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",h2:\"h2\",a:\"a\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\"},i.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(e.p,{children:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.ul,{children:[`\n`,(0,r.jsxDEV)(e.li,{children:\"Fully typed\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.li,{children:\"Zero dependencies\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.li,{children:\"Serializable to store in a database\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.h2,{id:\"install\",children:[(0,r.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,r.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this),\"Install\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(e.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#e1e4e8\"},children:\"npm i @chronark/access\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.h2,{id:\"usage\",children:[(0,r.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#usage\",children:(0,r.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this),\"Usage\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:104},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { AccessControl, Role } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:146},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:207},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:247},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@chronark/access\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:284},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:348},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:3,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Define all your resources and their access patterns\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:4,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * key => resource\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * value => array of access types\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"type\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:60},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:97},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:143},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:180},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:217},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#FFAB70\"},children:\"user\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:58},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\":\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:135},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:225},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:263},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:316},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"dance\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:354},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:407},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#FFAB70\"},children:\"team\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:58},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\":\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:135},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:225},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:263},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:316},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"};\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Create an access control instance and pass the Statements type to enjoy full\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:15,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * type safety\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:17,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"ac\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:136},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:210},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:247},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:286},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"AccessControl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:323},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:372},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:412},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">();\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:458},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Now you can define one or more roles by specifying the access permissions\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:21,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * This is already fully typed and typescript will let you know if you try to\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:23,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * use anything, that is not defined in the Statements type.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:24,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"role\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:138},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:175},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" ac.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:212},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"newRole\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:252},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:295},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" user: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:65},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:117},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:155},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:208},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" team: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:65},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:117},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:29,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:29,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:31,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Simulate storing and retrieving the role in a database\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:32,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:33,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:33,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * The idea here is, that you can store permissions alongside an API token.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:34,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Now, when you verify the token, you can also verify the access permissions.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:35,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:36,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:36,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"serialized\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:144},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:181},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" role.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:218},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"toString\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:260},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"();\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:304},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:38,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:39,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Note how you can pass in the Statements type again, to get full type safety\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:40,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:40,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:41,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:41,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"recovered\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:143},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:180},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" Role.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:217},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"fromString\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:259},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:305},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:345},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">(serialized);\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:391},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:43,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:44,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:44,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Validate the role by specifying the resource and the required access\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:45,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:45,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:46,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * everything is fully typed\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:47,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:47,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:48,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:137},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:174},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" recovered.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:211},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"authorize\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:258},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:303},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"team\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:341},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:393},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:432},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"]});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:484},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// res.success => boolean\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:51,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:51,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// res.error => string | undefined provides a reason for failure\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:52,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:52,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(i={}){let{wrapper:e}=i.components||{};return e?(0,r.jsxDEV)(e,Object.assign({},i,{children:(0,r.jsxDEV)(Fe,i,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this):Fe(i)}var yn=Nn;return _n(kn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var F=(l,e)=>()=>(e||l((e={exports:{}}).exports,e),e.exports),N=(l,e)=>{for(var s in e)a(l,s,{get:e[s],enumerable:!0})},o=(l,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let c of y(e))!m.call(l,c)&&c!==s&&a(l,c,{get:()=>e[c],enumerable:!(r=p(e,c))||r.enumerable});return l};var u=(l,e,s)=>(s=l!=null?h(E(l)):{},o(e||!l||!l.__esModule?a(s,\"default\",{value:l,enumerable:!0}):s,l)),f=l=>o(a({},\"__esModule\",{value:!0}),l);var t=F((v,i)=>{i.exports=_jsx_runtime});var B={};N(B,{default:()=>D,frontmatter:()=>g});var n=u(t()),g={title:\"@chronark/access\",description:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\",repository:\"chronark/access\",date:\"2022-11-13\"};function d(l){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",h2:\"h2\",a:\"a\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\"},l.components);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(e.p,{children:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\"}),`\n`,(0,n.jsxs)(e.ul,{children:[`\n`,(0,n.jsx)(e.li,{children:\"Fully typed\"}),`\n`,(0,n.jsx)(e.li,{children:\"Zero dependencies\"}),`\n`,(0,n.jsx)(e.li,{children:\"Serializable to store in a database\"}),`\n`]}),`\n`,(0,n.jsxs)(e.h2,{id:\"install\",children:[(0,n.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,n.jsx)(e.span,{className:\"icon icon-link\"})}),\"Install\"]}),`\n`,(0,n.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsx)(e.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,n.jsx)(e.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#e1e4e8\"},children:\"npm i @chronark/access\"})})})})}),`\n`,(0,n.jsxs)(e.h2,{id:\"usage\",children:[(0,n.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#usage\",children:(0,n.jsx)(e.span,{className:\"icon icon-link\"})}),\"Usage\"]}),`\n`,(0,n.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxs)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { AccessControl, Role } \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@chronark/access\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Define all your resources and their access patterns\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * key => resource\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * value => array of access types\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"type\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\"user\"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\":\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"dance\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\"team\"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\":\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"};\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Create an access control instance and pass the Statements type to enjoy full\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * type safety\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"ac\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"AccessControl\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">();\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Now you can define one or more roles by specifying the access permissions\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * This is already fully typed and typescript will let you know if you try to\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * use anything, that is not defined in the Statements type.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"role\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" ac.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"newRole\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" user: [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" team: [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Simulate storing and retrieving the role in a database\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * The idea here is, that you can store permissions alongside an API token.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Now, when you verify the token, you can also verify the access permissions.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"serialized\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" role.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"toString\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"();\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Note how you can pass in the Statements type again, to get full type safety\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"recovered\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" Role.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"fromString\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">(serialized);\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Validate the role by specifying the resource and the required access\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * everything is fully typed\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" recovered.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"authorize\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"team\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"]});\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// res.success => boolean\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// res.error => string | undefined provides a reason for failure\"})})]})})})]})}function A(l={}){let{wrapper:e}=l.components||{};return e?(0,n.jsx)(e,Object.assign({},l,{children:(0,n.jsx)(d,l)})):d(l)}var D=A;return f(B);})();\n;return Component;" }, "_id": "projects/access.mdx", "_raw": { @@ -27,8 +27,8 @@ "url": "https://envshare.dev", "repository": "chronark/envshare", "body": { - "raw": "\nEnvShare is a simple tool to share environment variables securely. It uses\n**AES-GCM** to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.\n\n## Features\n\n- **Shareable Links:** Share your environment variables securely by sending a\n link\n- **End-to-End Encryption:** AES-GCM encryption is used to encrypt your data\n before sending it to the server\n- **Limit number of reads:** Limit the number of times a link can be read\n- **Auto Expire:** Automatically expire links and delete data after a certain\n time\n\n\n\n![](img/envshare.png)\n\n## Built with\n\n- [Next.js](https://nextjs.org)\n- [tailwindcss](https://tailwindcss.com)\n- Deployed on [Vercel](https://vercel.com?utm_source=envshare)\n- Data stored on [Upstash](https://upstash.com?utm_source=envshare)\n\n## Deploy your own\n\nDetailed instructions can be found [here](https://envshare.dev/deploy)\n\nAll you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17)\n\n\n\n## Configuration\n\n### Environment Variables\n\n`ENABLE_VERCEL_ANALYTICS` Any truthy value will enable Vercel Analytics. This is turned off by default\n\n## Contributing\n\nThis repository uses `pnpm` to manage dependencies. Install it using\n`npm install -g pnpm`\n\nPlease run `pnpm fmt` before committing to format the code.\n\n## Docs\n\nDocs in the README are temporary and will be moved to the website soon.\n\n### API\n\n#### Store a secret\n\n**PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.**\n\nThis endpoint is only meant to store **already encrypted** secrets. The\nencrypted secrets are stored in plain text.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"\n```\n\nYou can add optional headers to configure the ttl and number of reads.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"\n```\n\n- Omitting the `envshare-ttl` header will set a default of 30 days. Disable the\n ttl by setting it to 0. (`envshare-ttl: 0`)\n- Omitting the `envshare-reads` header will simply disable it and allow reading\n for an unlimited number of times.\n\nThis endpoint returns a JSON response with the secret id:\n\n```json\n{\n \"data\": {\n \"id\": \"HdPbXgpvUvNk43oxSdK97u\",\n \"ttl\": 86400,\n \"reads\": 2,\n \"expiresAt\": \"2023-01-19T20:47:28.383Z\",\n \"url\": \"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"\n }\n}\n```\n\n#### Retrieve a secret\n\nYou need an id to retrieve a secret. The id is returned when you store a secret.\n\n```sh-session\n$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\n```\n\n```json\n{\n \"data\": {\n \"secret\": \"Hello\",\n \"remainingReads\": 1\n }\n}\n```", - "code": "var Component=(()=>{var sn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var un=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var X=(l,n)=>()=>(n||l((n={exports:{}}).exports,n),n.exports),hn=(l,n)=>{for(var _ in n)O(l,_,{get:n[_],enumerable:!0})},ye=(l,n,_,x)=>{if(n&&typeof n==\"object\"||typeof n==\"function\")for(let k of un(n))!bn.call(l,k)&&k!==_&&O(l,k,{get:()=>n[k],enumerable:!(x=ln(n,k))||x.enumerable});return l};var fn=(l,n,_)=>(_=l!=null?sn(mn(l)):{},ye(n||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var ve=X((gn,ge)=>{ge.exports=React});var Ee=X(H=>{\"use strict\";(function(){\"use strict\";var l=ve(),n=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),q=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),z=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),L=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var t=J&&e[J]||e[Te];return typeof t==\"function\"?t:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function b(e){{for(var t=arguments.length,c=new Array(t>1?t-1:0),a=1;a=1&&m>=0&&o[u]!==h[m];)m--;for(;u>=1&&m>=0;u--,m--)if(o[u]!==h[m]){if(u!==1||m!==1)do if(u--,m--,m<0||o[u]!==h[m]){var f=`\n`+o[u].replace(\" at new \",\" at \");return e.displayName&&f.includes(\"\")&&(f=f.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,f),f}while(u>=1&&m>=0);break}}}finally{V=!1,I.current=i,Ve(),Error.prepareStackTrace=s}var E=e?e.displayName||e.name:\"\",xe=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,xe),xe}function $e(e,t,c){return se(e,!1)}function Me(e){var t=e.prototype;return!!(t&&t.isReactComponent)}function S(e,t,c){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return $e(e.render);case F:return S(e.type,t,c);case L:{var a=e,s=a._payload,i=a._init;try{return S(i(s),t,c)}catch{}}}return\"\"}var C=Object.prototype.hasOwnProperty,ie={},le=g.ReactDebugCurrentFrame;function P(e){if(e){var t=e._owner,c=S(e.type,e._source,t?t.type:null);le.setExtraStackFrame(c)}else le.setExtraStackFrame(null)}function We(e,t,c,a,s){{var i=Function.call.bind(C);for(var d in e)if(i(e,d)){var o=void 0;try{if(typeof e[d]!=\"function\"){var h=Error((a||\"React class\")+\": \"+c+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}o=e[d](t,d,a,c,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){o=u}o&&!(o instanceof Error)&&(P(s),b(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",a||\"React class\",c,d,typeof o),P(null)),o instanceof Error&&!(o.message in ie)&&(ie[o.message]=!0,P(s),b(\"Failed %s type: %s\",c,o.message),P(null))}}}var Ge=Array.isArray;function Y(e){return Ge(e)}function Xe(e){{var t=typeof Symbol==\"function\"&&Symbol.toStringTag,c=t&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return c}}function He(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(He(e))return b(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Xe(e)),ue(e)}var U=g.ReactCurrentOwner,qe={key:!0,ref:!0,__self:!0,__source:!0},be,he,$;$={};function Ke(e){if(C.call(e,\"ref\")){var t=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(t&&t.isReactWarning)return!1}return e.ref!==void 0}function ze(e){if(C.call(e,\"key\")){var t=Object.getOwnPropertyDescriptor(e,\"key\").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function Je(e,t){if(typeof e.ref==\"string\"&&U.current&&t&&U.current.stateNode!==t){var c=p(U.current.type);$[c]||(b('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),$[c]=!0)}}function Ze(e,t){{var c=function(){be||(be=!0,b(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",t))};c.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:c,configurable:!0})}}function Qe(e,t){{var c=function(){he||(he=!0,b(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",t))};c.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:c,configurable:!0})}}var en=function(e,t,c,a,s,i,d){var o={$$typeof:n,type:e,key:t,ref:c,props:d,_owner:i};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function nn(e,t,c,a,s){{var i,d={},o=null,h=null;c!==void 0&&(me(c),o=\"\"+c),ze(t)&&(me(t.key),o=\"\"+t.key),Ke(t)&&(h=t.ref,Je(t,s));for(i in t)C.call(t,i)&&!qe.hasOwnProperty(i)&&(d[i]=t[i]);if(e&&e.defaultProps){var u=e.defaultProps;for(i in u)d[i]===void 0&&(d[i]=u[i])}if(o||h){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Ze(d,m),h&&Qe(d,m)}return en(e,o,h,s,a,U.current,d)}}var M=g.ReactCurrentOwner,fe=g.ReactDebugCurrentFrame;function v(e){if(e){var t=e._owner,c=S(e.type,e._source,t?t.type:null);fe.setExtraStackFrame(c)}else fe.setExtraStackFrame(null)}var W;W=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===n}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function rn(e){{if(e!==void 0){var t=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),c=e.lineNumber;return`\n\nCheck your code at `+t+\":\"+c+\".\"}return\"\"}}var pe={};function tn(e){{var t=_e();if(!t){var c=typeof e==\"string\"?e:e.displayName||e.name;c&&(t=`\n\nCheck the top-level render call using <`+c+\">.\")}return t}}function Ne(e,t){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var c=tn(t);if(pe[c])return;pe[c]=!0;var a=\"\";e&&e._owner&&e._owner!==M.current&&(a=\" It was passed a child from \"+p(e._owner.type)+\".\"),v(e),b('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',c,a),v(null)}}function ke(e,t){{if(typeof e!=\"object\")return;if(Y(e))for(var c=0;c\",o=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,b(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,o)}var m=nn(e,t,c,s,i);if(m==null)return m;if(d){var f=t.children;if(f!==void 0)if(a)if(Y(f)){for(var E=0;E{\"use strict\";je.exports=Ee()});var xn={};hn(xn,{default:()=>kn,frontmatter:()=>pn});var r=fn(Ue()),pn={title:\"envshare.dev\",description:\"EnvShare is a simple tool to share environment variables securely. It uses AES-GCM to encrypt your data before sending it to the server. The encryption key never leaves your browser.\",date:\"2023-01-16\",url:\"https://envshare.dev\",repository:\"chronark/envshare\"};function Re(l){let n=Object.assign({p:\"p\",strong:\"strong\",h2:\"h2\",a:\"a\",span:\"span\",ul:\"ul\",li:\"li\",img:\"img\",h3:\"h3\",code:\"code\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(n.p,{children:[`EnvShare is a simple tool to share environment variables securely. It uses\n`,(0,r.jsxDEV)(n.strong,{children:\"AES-GCM\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:11,columnNumber:1},this),` to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"features\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#features\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Features\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Shareable Links:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:3},this),` Share your environment variables securely by sending a\nlink`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"End-to-End Encryption:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:18,columnNumber:3},this),` AES-GCM encryption is used to encrypt your data\nbefore sending it to the server`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Limit number of reads:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:20,columnNumber:3},this),\" Limit the number of times a link can be read\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Auto Expire:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:21,columnNumber:3},this),` Automatically expire links and delete data after a certain\ntime`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.img,{src:\"img/envshare.png\",alt:\"\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:26,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"built-with\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#built-with\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Built with\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://nextjs.org\",children:\"Next.js\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://tailwindcss.com\",children:\"tailwindcss\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:31,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Deployed on \",(0,r.jsxDEV)(n.a,{href:\"https://vercel.com?utm_source=envshare\",children:\"Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:32,columnNumber:15},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Data stored on \",(0,r.jsxDEV)(n.a,{href:\"https://upstash.com?utm_source=envshare\",children:\"Upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:33,columnNumber:18},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:33,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"deploy-your-own\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deploy-your-own\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Deploy your own\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Detailed instructions can be found \",(0,r.jsxDEV)(n.a,{href:\"https://envshare.dev/deploy\",children:\"here\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:37,columnNumber:36},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:`All you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.a,{href:\"https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17\",children:(0,r.jsxDEV)(n.img,{src:\"https://vercel.com/button\",alt:\"Deploy with Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:2},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"configuration\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#configuration\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Configuration\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"environment-variables\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#environment-variables\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Environment Variables\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[(0,r.jsxDEV)(n.code,{children:\"ENABLE_VERCEL_ANALYTICS\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:50,columnNumber:1},this),\" Any truthy value will enable Vercel Analytics. This is turned off by default\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"contributing\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:52,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This repository uses \",(0,r.jsxDEV)(n.code,{children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:54,columnNumber:22},this),` to manage dependencies. Install it using\n`,(0,r.jsxDEV)(n.code,{children:\"npm install -g pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:55,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:54,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Please run \",(0,r.jsxDEV)(n.code,{children:\"pnpm fmt\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:57,columnNumber:12},this),\" before committing to format the code.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:57,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"docs\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#docs\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Docs\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:59,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"Docs in the README are temporary and will be moved to the website soon.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"api\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#api\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"API\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"store-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#store-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Store a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.strong,{children:\"PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:67,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:67,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This endpoint is only meant to store \",(0,r.jsxDEV)(n.strong,{children:\"already encrypted\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:69,columnNumber:38},this),` secrets. The\nencrypted secrets are stored in plain text.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:69,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:72,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You can add optional headers to configure the ttl and number of reads.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:76,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:78,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-ttl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:16},this),` header will set a default of 30 days. Disable the\nttl by setting it to 0. (`,(0,r.jsxDEV)(n.code,{children:\"envshare-ttl: 0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:83,columnNumber:28},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-reads\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:84,columnNumber:16},this),` header will simply disable it and allow reading\nfor an unlimited number of times.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:84,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"This endpoint returns a JSON response with the secret id:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:87,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"id\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:110},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:148},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:218},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"ttl\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"86400\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:149},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:190},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"reads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:113},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"2\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:151},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:188},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"expiresAt\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:117},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"2023-01-19T20:47:28.383Z\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:155},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:227},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"url\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"retrieve-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#retrieve-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Retrieve a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:101,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You need an id to retrieve a secret. The id is returned when you store a secret.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:103,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:\"$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:105,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:114},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"Hello\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:152},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:205},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"remainingReads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:122},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:160},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:109,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:n}=l.components||{};return n?(0,r.jsxDEV)(n,Object.assign({},l,{children:(0,r.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this):Re(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "raw": "\nEnvShare is a simple tool to share environment variables securely. It uses\n**AES-GCM** to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.\n\n## Features\n\n- **Shareable Links:** Share your environment variables securely by sending a\n link\n- **End-to-End Encryption:** AES-GCM encryption is used to encrypt your data\n before sending it to the server\n- **Limit number of reads:** Limit the number of times a link can be read\n- **Auto Expire:** Automatically expire links and delete data after a certain\n time\n\n\n\n![](https://github.com/chronark/envshare/raw/main/img/envshare.png)\n\n## Built with\n\n- [Next.js](https://nextjs.org)\n- [tailwindcss](https://tailwindcss.com)\n- Deployed on [Vercel](https://vercel.com?utm_source=envshare)\n- Data stored on [Upstash](https://upstash.com?utm_source=envshare)\n\n## Deploy your own\n\nDetailed instructions can be found [here](https://envshare.dev/deploy)\n\nAll you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17)\n\n\n\n## Configuration\n\n### Environment Variables\n\n`ENABLE_VERCEL_ANALYTICS` Any truthy value will enable Vercel Analytics. This is turned off by default\n\n## Contributing\n\nThis repository uses `pnpm` to manage dependencies. Install it using\n`npm install -g pnpm`\n\nPlease run `pnpm fmt` before committing to format the code.\n\n## Docs\n\nDocs in the README are temporary and will be moved to the website soon.\n\n### API\n\n#### Store a secret\n\n**PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.**\n\nThis endpoint is only meant to store **already encrypted** secrets. The\nencrypted secrets are stored in plain text.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"\n```\n\nYou can add optional headers to configure the ttl and number of reads.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"\n```\n\n- Omitting the `envshare-ttl` header will set a default of 30 days. Disable the\n ttl by setting it to 0. (`envshare-ttl: 0`)\n- Omitting the `envshare-reads` header will simply disable it and allow reading\n for an unlimited number of times.\n\nThis endpoint returns a JSON response with the secret id:\n\n```json\n{\n \"data\": {\n \"id\": \"HdPbXgpvUvNk43oxSdK97u\",\n \"ttl\": 86400,\n \"reads\": 2,\n \"expiresAt\": \"2023-01-19T20:47:28.383Z\",\n \"url\": \"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"\n }\n}\n```\n\n#### Retrieve a secret\n\nYou need an id to retrieve a secret. The id is returned when you store a secret.\n\n```sh-session\n$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\n```\n\n```json\n{\n \"data\": {\n \"secret\": \"Hello\",\n \"remainingReads\": 1\n }\n}\n```", + "code": "var Component=(()=>{var dn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var un=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,hn=Object.prototype.hasOwnProperty;var X=(l,n)=>()=>(n||l((n={exports:{}}).exports,n),n.exports),bn=(l,n)=>{for(var _ in n)O(l,_,{get:n[_],enumerable:!0})},ye=(l,n,_,x)=>{if(n&&typeof n==\"object\"||typeof n==\"function\")for(let k of un(n))!hn.call(l,k)&&k!==_&&O(l,k,{get:()=>n[k],enumerable:!(x=ln(n,k))||x.enumerable});return l};var fn=(l,n,_)=>(_=l!=null?dn(mn(l)):{},ye(n||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var ve=X((gn,ge)=>{ge.exports=React});var Ee=X(H=>{\"use strict\";(function(){\"use strict\";var l=ve(),n=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),q=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),z=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),L=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var a=J&&e[J]||e[Te];return typeof a==\"function\"?a:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function h(e){{for(var a=arguments.length,t=new Array(a>1?a-1:0),c=1;c=1&&m>=0&&o[u]!==b[m];)m--;for(;u>=1&&m>=0;u--,m--)if(o[u]!==b[m]){if(u!==1||m!==1)do if(u--,m--,m<0||o[u]!==b[m]){var f=`\n`+o[u].replace(\" at new \",\" at \");return e.displayName&&f.includes(\"\")&&(f=f.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,f),f}while(u>=1&&m>=0);break}}}finally{V=!1,I.current=d,Ve(),Error.prepareStackTrace=i}var E=e?e.displayName||e.name:\"\",xe=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,xe),xe}function $e(e,a,t){return ie(e,!1)}function Me(e){var a=e.prototype;return!!(a&&a.isReactComponent)}function S(e,a,t){if(e==null)return\"\";if(typeof e==\"function\")return ie(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return $e(e.render);case F:return S(e.type,a,t);case L:{var c=e,i=c._payload,d=c._init;try{return S(d(i),a,t)}catch{}}}return\"\"}var C=Object.prototype.hasOwnProperty,de={},le=g.ReactDebugCurrentFrame;function P(e){if(e){var a=e._owner,t=S(e.type,e._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function We(e,a,t,c,i){{var d=Function.call.bind(C);for(var s in e)if(d(e,s)){var o=void 0;try{if(typeof e[s]!=\"function\"){var b=Error((c||\"React class\")+\": \"+t+\" type `\"+s+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[s]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw b.name=\"Invariant Violation\",b}o=e[s](a,s,c,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){o=u}o&&!(o instanceof Error)&&(P(i),h(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",c||\"React class\",t,s,typeof o),P(null)),o instanceof Error&&!(o.message in de)&&(de[o.message]=!0,P(i),h(\"Failed %s type: %s\",t,o.message),P(null))}}}var Ge=Array.isArray;function Y(e){return Ge(e)}function Xe(e){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function He(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(He(e))return h(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Xe(e)),ue(e)}var U=g.ReactCurrentOwner,qe={key:!0,ref:!0,__self:!0,__source:!0},he,be,$;$={};function Ke(e){if(C.call(e,\"ref\")){var a=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(a&&a.isReactWarning)return!1}return e.ref!==void 0}function ze(e){if(C.call(e,\"key\")){var a=Object.getOwnPropertyDescriptor(e,\"key\").get;if(a&&a.isReactWarning)return!1}return e.key!==void 0}function Je(e,a){if(typeof e.ref==\"string\"&&U.current&&a&&U.current.stateNode!==a){var t=p(U.current.type);$[t]||(h('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),$[t]=!0)}}function Ze(e,a){{var t=function(){he||(he=!0,h(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,a){{var t=function(){be||(be=!0,h(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var en=function(e,a,t,c,i,d,s){var o={$$typeof:n,type:e,key:a,ref:t,props:s,_owner:d};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:c}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function nn(e,a,t,c,i){{var d,s={},o=null,b=null;t!==void 0&&(me(t),o=\"\"+t),ze(a)&&(me(a.key),o=\"\"+a.key),Ke(a)&&(b=a.ref,Je(a,i));for(d in a)C.call(a,d)&&!qe.hasOwnProperty(d)&&(s[d]=a[d]);if(e&&e.defaultProps){var u=e.defaultProps;for(d in u)s[d]===void 0&&(s[d]=u[d])}if(o||b){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Ze(s,m),b&&Qe(s,m)}return en(e,o,b,i,c,U.current,s)}}var M=g.ReactCurrentOwner,fe=g.ReactDebugCurrentFrame;function v(e){if(e){var a=e._owner,t=S(e.type,e._source,a?a.type:null);fe.setExtraStackFrame(t)}else fe.setExtraStackFrame(null)}var W;W=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===n}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function rn(e){{if(e!==void 0){var a=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(e){{var a=_e();if(!a){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(e,a){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var c=\"\";e&&e._owner&&e._owner!==M.current&&(c=\" It was passed a child from \"+p(e._owner.type)+\".\"),v(e),h('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,c),v(null)}}function ke(e,a){{if(typeof e!=\"object\")return;if(Y(e))for(var t=0;t\",o=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,h(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,o)}var m=nn(e,a,t,i,d);if(m==null)return m;if(s){var f=a.children;if(f!==void 0)if(c)if(Y(f)){for(var E=0;E{\"use strict\";je.exports=Ee()});var xn={};bn(xn,{default:()=>kn,frontmatter:()=>pn});var r=fn(Ue()),pn={title:\"envshare.dev\",description:\"EnvShare is a simple tool to share environment variables securely. It uses AES-GCM to encrypt your data before sending it to the server. The encryption key never leaves your browser.\",date:\"2023-01-16\",url:\"https://envshare.dev\",repository:\"chronark/envshare\"};function Re(l){let n=Object.assign({p:\"p\",strong:\"strong\",h2:\"h2\",a:\"a\",span:\"span\",ul:\"ul\",li:\"li\",img:\"img\",h3:\"h3\",code:\"code\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(n.p,{children:[`EnvShare is a simple tool to share environment variables securely. It uses\n`,(0,r.jsxDEV)(n.strong,{children:\"AES-GCM\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:11,columnNumber:1},this),` to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"features\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#features\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Features\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Shareable Links:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:3},this),` Share your environment variables securely by sending a\nlink`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"End-to-End Encryption:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:18,columnNumber:3},this),` AES-GCM encryption is used to encrypt your data\nbefore sending it to the server`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Limit number of reads:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:20,columnNumber:3},this),\" Limit the number of times a link can be read\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Auto Expire:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:21,columnNumber:3},this),` Automatically expire links and delete data after a certain\ntime`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.img,{src:\"https://github.com/chronark/envshare/raw/main/img/envshare.png\",alt:\"\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:26,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"built-with\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#built-with\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Built with\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://nextjs.org\",children:\"Next.js\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://tailwindcss.com\",children:\"tailwindcss\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:31,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Deployed on \",(0,r.jsxDEV)(n.a,{href:\"https://vercel.com?utm_source=envshare\",children:\"Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:32,columnNumber:15},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Data stored on \",(0,r.jsxDEV)(n.a,{href:\"https://upstash.com?utm_source=envshare\",children:\"Upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:33,columnNumber:18},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:33,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"deploy-your-own\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deploy-your-own\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Deploy your own\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Detailed instructions can be found \",(0,r.jsxDEV)(n.a,{href:\"https://envshare.dev/deploy\",children:\"here\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:37,columnNumber:36},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:`All you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.a,{href:\"https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17\",children:(0,r.jsxDEV)(n.img,{src:\"https://vercel.com/button\",alt:\"Deploy with Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:2},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"configuration\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#configuration\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Configuration\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"environment-variables\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#environment-variables\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Environment Variables\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[(0,r.jsxDEV)(n.code,{children:\"ENABLE_VERCEL_ANALYTICS\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:50,columnNumber:1},this),\" Any truthy value will enable Vercel Analytics. This is turned off by default\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"contributing\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:52,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This repository uses \",(0,r.jsxDEV)(n.code,{children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:54,columnNumber:22},this),` to manage dependencies. Install it using\n`,(0,r.jsxDEV)(n.code,{children:\"npm install -g pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:55,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:54,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Please run \",(0,r.jsxDEV)(n.code,{children:\"pnpm fmt\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:57,columnNumber:12},this),\" before committing to format the code.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:57,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"docs\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#docs\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Docs\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:59,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"Docs in the README are temporary and will be moved to the website soon.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"api\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#api\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"API\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"store-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#store-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Store a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.strong,{children:\"PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:67,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:67,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This endpoint is only meant to store \",(0,r.jsxDEV)(n.strong,{children:\"already encrypted\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:69,columnNumber:38},this),` secrets. The\nencrypted secrets are stored in plain text.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:69,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:72,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You can add optional headers to configure the ttl and number of reads.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:76,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:78,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-ttl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:16},this),` header will set a default of 30 days. Disable the\nttl by setting it to 0. (`,(0,r.jsxDEV)(n.code,{children:\"envshare-ttl: 0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:83,columnNumber:28},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-reads\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:84,columnNumber:16},this),` header will simply disable it and allow reading\nfor an unlimited number of times.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:84,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"This endpoint returns a JSON response with the secret id:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:87,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"id\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:110},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:148},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:218},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"ttl\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"86400\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:149},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:190},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"reads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:113},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"2\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:151},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:188},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"expiresAt\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:117},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"2023-01-19T20:47:28.383Z\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:155},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:227},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"url\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"retrieve-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#retrieve-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Retrieve a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:101,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You need an id to retrieve a secret. The id is returned when you store a secret.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:103,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:\"$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:105,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:114},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"Hello\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:152},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:205},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"remainingReads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:122},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:160},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:109,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:n}=l.components||{};return n?(0,r.jsxDEV)(n,Object.assign({},l,{children:(0,r.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this):Re(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" }, "_id": "projects/envshare.mdx", "_raw": { @@ -49,7 +49,7 @@ "url": "https://planetfall.io", "body": { "raw": "\n\nI'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.", - "code": "var Component=(()=>{var sr=Object.create;var D=Object.defineProperty;var lr=Object.getOwnPropertyDescriptor;var fr=Object.getOwnPropertyNames;var cr=Object.getPrototypeOf,dr=Object.prototype.hasOwnProperty;var q=(s,l)=>()=>(l||s((l={exports:{}}).exports,l),l.exports),vr=(s,l)=>{for(var b in l)D(s,b,{get:l[b],enumerable:!0})},_e=(s,l,b,y)=>{if(l&&typeof l==\"object\"||typeof l==\"function\")for(let m of fr(l))!dr.call(s,m)&&m!==b&&D(s,m,{get:()=>l[m],enumerable:!(y=lr(l,m))||y.enumerable});return s};var pr=(s,l,b)=>(b=s!=null?sr(cr(s)):{},_e(l||!s||!s.__esModule?D(b,\"default\",{value:s,enumerable:!0}):b,s)),br=s=>_e(D({},\"__esModule\",{value:!0}),s);var Te=q((_r,Re)=>{Re.exports=React});var we=q(z=>{\"use strict\";(function(){\"use strict\";var s=Te(),l=Symbol.for(\"react.element\"),b=Symbol.for(\"react.portal\"),y=Symbol.for(\"react.fragment\"),m=Symbol.for(\"react.strict_mode\"),H=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),K=Symbol.for(\"react.context\"),C=Symbol.for(\"react.forward_ref\"),I=Symbol.for(\"react.suspense\"),Y=Symbol.for(\"react.suspense_list\"),O=Symbol.for(\"react.memo\"),$=Symbol.for(\"react.lazy\"),Se=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,je=\"@@iterator\";function xe(e){if(e===null||typeof e!=\"object\")return null;var r=J&&e[J]||e[je];return typeof r==\"function\"?r:null}var _=s.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function d(e){{for(var r=arguments.length,t=new Array(r>1?r-1:0),n=1;n=1&&c>=0&&a[f]!==v[c];)c--;for(;f>=1&&c>=0;f--,c--)if(a[f]!==v[c]){if(f!==1||c!==1)do if(f--,c--,c<0||a[f]!==v[c]){var p=`\n`+a[f].replace(\" at new \",\" at \");return e.displayName&&p.includes(\"\")&&(p=p.replace(\"\",e.displayName)),typeof e==\"function\"&&j.set(e,p),p}while(f>=1&&c>=0);break}}}finally{M=!1,W.current=u,Me(),Error.prepareStackTrace=i}var T=e?e.displayName||e.name:\"\",Ee=T?S(T):\"\";return typeof e==\"function\"&&j.set(e,Ee),Ee}function Ue(e,r,t){return se(e,!1)}function Le(e){var r=e.prototype;return!!(r&&r.isReactComponent)}function x(e,r,t){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Le(e));if(typeof e==\"string\")return S(e);switch(e){case I:return S(\"Suspense\");case Y:return S(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case C:return Ue(e.render);case O:return x(e.type,r,t);case $:{var n=e,i=n._payload,u=n._init;try{return x(u(i),r,t)}catch{}}}return\"\"}var k=Object.prototype.hasOwnProperty,le={},fe=_.ReactDebugCurrentFrame;function A(e){if(e){var r=e._owner,t=x(e.type,e._source,r?r.type:null);fe.setExtraStackFrame(t)}else fe.setExtraStackFrame(null)}function Be(e,r,t,n,i){{var u=Function.call.bind(k);for(var o in e)if(u(e,o)){var a=void 0;try{if(typeof e[o]!=\"function\"){var v=Error((n||\"React class\")+\": \"+t+\" type `\"+o+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[o]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw v.name=\"Invariant Violation\",v}a=e[o](r,o,n,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(f){a=f}a&&!(a instanceof Error)&&(A(i),d(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",n||\"React class\",t,o,typeof a),A(null)),a instanceof Error&&!(a.message in le)&&(le[a.message]=!0,A(i),d(\"Failed %s type: %s\",t,a.message),A(null))}}}var Ge=Array.isArray;function V(e){return Ge(e)}function qe(e){{var r=typeof Symbol==\"function\"&&Symbol.toStringTag,t=r&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function ze(e){try{return ce(e),!1}catch{return!0}}function ce(e){return\"\"+e}function de(e){if(ze(e))return d(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",qe(e)),ce(e)}var P=_.ReactCurrentOwner,He={key:!0,ref:!0,__self:!0,__source:!0},ve,pe,U;U={};function Xe(e){if(k.call(e,\"ref\")){var r=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(r&&r.isReactWarning)return!1}return e.ref!==void 0}function Ke(e){if(k.call(e,\"key\")){var r=Object.getOwnPropertyDescriptor(e,\"key\").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function Je(e,r){if(typeof e.ref==\"string\"&&P.current&&r&&P.current.stateNode!==r){var t=h(P.current.type);U[t]||(d('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',h(P.current.type),e.ref),U[t]=!0)}}function Ze(e,r){{var t=function(){ve||(ve=!0,d(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,r){{var t=function(){pe||(pe=!0,d(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var er=function(e,r,t,n,i,u,o){var a={$$typeof:l,type:e,key:r,ref:t,props:o,_owner:u};return a._store={},Object.defineProperty(a._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(a,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:n}),Object.defineProperty(a,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(a.props),Object.freeze(a)),a};function rr(e,r,t,n,i){{var u,o={},a=null,v=null;t!==void 0&&(de(t),a=\"\"+t),Ke(r)&&(de(r.key),a=\"\"+r.key),Xe(r)&&(v=r.ref,Je(r,i));for(u in r)k.call(r,u)&&!He.hasOwnProperty(u)&&(o[u]=r[u]);if(e&&e.defaultProps){var f=e.defaultProps;for(u in f)o[u]===void 0&&(o[u]=f[u])}if(a||v){var c=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;a&&Ze(o,c),v&&Qe(o,c)}return er(e,a,v,i,n,P.current,o)}}var L=_.ReactCurrentOwner,be=_.ReactDebugCurrentFrame;function R(e){if(e){var r=e._owner,t=x(e.type,e._source,r?r.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var B;B=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===l}function he(){{if(L.current){var e=h(L.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function tr(e){{if(e!==void 0){var r=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+r+\":\"+t+\".\"}return\"\"}}var ge={};function nr(e){{var r=he();if(!r){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(r=`\n\nCheck the top-level render call using <`+t+\">.\")}return r}}function me(e,r){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=nr(r);if(ge[t])return;ge[t]=!0;var n=\"\";e&&e._owner&&e._owner!==L.current&&(n=\" It was passed a child from \"+h(e._owner.type)+\".\"),R(e),d('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,n),R(null)}}function ye(e,r){{if(typeof e!=\"object\")return;if(V(e))for(var t=0;t\",a=\" Did you accidentally export a JSX literal instead of a component?\"):f=typeof e,d(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",f,a)}var c=rr(e,r,t,i,u);if(c==null)return c;if(o){var p=r.children;if(p!==void 0)if(n)if(V(p)){for(var T=0;T{\"use strict\";Pe.exports=we()});var yr={};vr(yr,{default:()=>mr,frontmatter:()=>hr});var F=pr(Ce()),hr={title:\"planetfall.io\",description:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\",date:\"2023-04-01\",url:\"https://planetfall.io\"};function Oe(s){let l=Object.assign({p:\"p\"},s.components);return(0,F.jsxDEV)(l.p,{children:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\",lineNumber:10,columnNumber:1},this)}function gr(s={}){let{wrapper:l}=s.components||{};return l?(0,F.jsxDEV)(l,Object.assign({},s,{children:(0,F.jsxDEV)(Oe,s,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\"},this):Oe(s)}var mr=gr;return br(yr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var c=Object.create;var a=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var w=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports),h=(o,t)=>{for(var n in t)a(o,n,{get:t[n],enumerable:!0})},l=(o,t,n,i)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let e of m(t))!p.call(o,e)&&e!==n&&a(o,e,{get:()=>t[e],enumerable:!(i=f(t,e))||i.enumerable});return o};var g=(o,t,n)=>(n=o!=null?c(y(o)):{},l(t||!o||!o.__esModule?a(n,\"default\",{value:o,enumerable:!0}):n,o)),b=o=>l(a({},\"__esModule\",{value:!0}),o);var d=w((j,s)=>{s.exports=_jsx_runtime});var I={};h(I,{default:()=>v,frontmatter:()=>A});var r=g(d()),A={title:\"planetfall.io\",description:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\",date:\"2023-04-01\",url:\"https://planetfall.io\"};function u(o){let t=Object.assign({p:\"p\"},o.components);return(0,r.jsx)(t.p,{children:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\"})}function x(o={}){let{wrapper:t}=o.components||{};return t?(0,r.jsx)(t,Object.assign({},o,{children:(0,r.jsx)(u,o)})):u(o)}var v=x;return b(I);})();\n;return Component;" }, "_id": "projects/planetfall.mdx", "_raw": { @@ -70,7 +70,7 @@ "url": "https://upstash.com/qstash", "body": { "raw": "\nQStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\n\n- 100% serverless, no stateful connections required. Messages are pushed to your API.\n- At-least-once delivery guaranteed to any public API\n- Pubsub via topics\n- Delay message delivery\n- Message deduplication\n- Scheduling via CRON\n\n\nFormally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\n\nThere was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\n\n- Works anywhere including serverless and edge.\n- Messaging as a service with no backend for users to run.\n- Lightweight, easy to understand, requires nothing to learn.\n- Price scales to zero.\n\nLet's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\n\nIf you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\n\nWith QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\n\n\nTo learn more about QStash, visit [upstash.com/qstash](upstash.com/qstash).", - "code": "var Component=(()=>{var cr=Object.create;var F=Object.defineProperty;var ur=Object.getOwnPropertyDescriptor;var lr=Object.getOwnPropertyNames;var dr=Object.getPrototypeOf,fr=Object.prototype.hasOwnProperty;var B=(l,t)=>()=>(t||l((t={exports:{}}).exports,t),t.exports),mr=(l,t)=>{for(var v in t)F(l,v,{get:t[v],enumerable:!0})},Ee=(l,t,v,y)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let g of lr(t))!fr.call(l,g)&&g!==v&&F(l,g,{get:()=>t[g],enumerable:!(y=ur(t,g))||y.enumerable});return l};var hr=(l,t,v)=>(v=l!=null?cr(dr(l)):{},Ee(t||!l||!l.__esModule?F(v,\"default\",{value:l,enumerable:!0}):v,l)),br=l=>Ee(F({},\"__esModule\",{value:!0}),l);var we=B((Er,ke)=>{ke.exports=React});var xe=B(z=>{\"use strict\";(function(){\"use strict\";var l=we(),t=Symbol.for(\"react.element\"),v=Symbol.for(\"react.portal\"),y=Symbol.for(\"react.fragment\"),g=Symbol.for(\"react.strict_mode\"),G=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),T=Symbol.for(\"react.forward_ref\"),U=Symbol.for(\"react.suspense\"),A=Symbol.for(\"react.suspense_list\"),j=Symbol.for(\"react.memo\"),I=Symbol.for(\"react.lazy\"),je=Symbol.for(\"react.offscreen\"),K=Symbol.iterator,Pe=\"@@iterator\";function Se(e){if(e===null||typeof e!=\"object\")return null;var r=K&&e[K]||e[Pe];return typeof r==\"function\"?r:null}var k=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function m(e){{for(var r=arguments.length,n=new Array(r>1?r-1:0),a=1;a=1&&f>=0&&o[d]!==h[f];)f--;for(;d>=1&&f>=0;d--,f--)if(o[d]!==h[f]){if(d!==1||f!==1)do if(d--,f--,f<0||o[d]!==h[f]){var b=`\n`+o[d].replace(\" at new \",\" at \");return e.displayName&&b.includes(\"\")&&(b=b.replace(\"\",e.displayName)),typeof e==\"function\"&&S.set(e,b),b}while(d>=1&&f>=0);break}}}finally{M=!1,W.current=c,Me(),Error.prepareStackTrace=s}var x=e?e.displayName||e.name:\"\",ye=x?P(x):\"\";return typeof e==\"function\"&&S.set(e,ye),ye}function Ve(e,r,n){return ce(e,!1)}function Le(e){var r=e.prototype;return!!(r&&r.isReactComponent)}function C(e,r,n){if(e==null)return\"\";if(typeof e==\"function\")return ce(e,Le(e));if(typeof e==\"string\")return P(e);switch(e){case U:return P(\"Suspense\");case A:return P(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case T:return Ve(e.render);case j:return C(e.type,r,n);case I:{var a=e,s=a._payload,c=a._init;try{return C(c(s),r,n)}catch{}}}return\"\"}var O=Object.prototype.hasOwnProperty,ue={},le=k.ReactDebugCurrentFrame;function D(e){if(e){var r=e._owner,n=C(e.type,e._source,r?r.type:null);le.setExtraStackFrame(n)}else le.setExtraStackFrame(null)}function qe(e,r,n,a,s){{var c=Function.call.bind(O);for(var i in e)if(c(e,i)){var o=void 0;try{if(typeof e[i]!=\"function\"){var h=Error((a||\"React class\")+\": \"+n+\" type `\"+i+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[i]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}o=e[i](r,i,a,n,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(d){o=d}o&&!(o instanceof Error)&&(D(s),m(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",a||\"React class\",n,i,typeof o),D(null)),o instanceof Error&&!(o.message in ue)&&(ue[o.message]=!0,D(s),m(\"Failed %s type: %s\",n,o.message),D(null))}}}var Qe=Array.isArray;function $(e){return Qe(e)}function Be(e){{var r=typeof Symbol==\"function\"&&Symbol.toStringTag,n=r&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return n}}function ze(e){try{return de(e),!1}catch{return!0}}function de(e){return\"\"+e}function fe(e){if(ze(e))return m(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Be(e)),de(e)}var N=k.ReactCurrentOwner,Ge={key:!0,ref:!0,__self:!0,__source:!0},me,he,V;V={};function Xe(e){if(O.call(e,\"ref\")){var r=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(r&&r.isReactWarning)return!1}return e.ref!==void 0}function He(e){if(O.call(e,\"key\")){var r=Object.getOwnPropertyDescriptor(e,\"key\").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function Ke(e,r){if(typeof e.ref==\"string\"&&N.current&&r&&N.current.stateNode!==r){var n=p(N.current.type);V[n]||(m('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(N.current.type),e.ref),V[n]=!0)}}function Je(e,r){{var n=function(){me||(me=!0,m(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};n.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:n,configurable:!0})}}function Ze(e,r){{var n=function(){he||(he=!0,m(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};n.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:n,configurable:!0})}}var er=function(e,r,n,a,s,c,i){var o={$$typeof:t,type:e,key:r,ref:n,props:i,_owner:c};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function rr(e,r,n,a,s){{var c,i={},o=null,h=null;n!==void 0&&(fe(n),o=\"\"+n),He(r)&&(fe(r.key),o=\"\"+r.key),Xe(r)&&(h=r.ref,Ke(r,s));for(c in r)O.call(r,c)&&!Ge.hasOwnProperty(c)&&(i[c]=r[c]);if(e&&e.defaultProps){var d=e.defaultProps;for(c in d)i[c]===void 0&&(i[c]=d[c])}if(o||h){var f=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Je(i,f),h&&Ze(i,f)}return er(e,o,h,s,a,N.current,i)}}var L=k.ReactCurrentOwner,be=k.ReactDebugCurrentFrame;function w(e){if(e){var r=e._owner,n=C(e.type,e._source,r?r.type:null);be.setExtraStackFrame(n)}else be.setExtraStackFrame(null)}var q;q=!1;function Q(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===t}function ve(){{if(L.current){var e=p(L.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function nr(e){{if(e!==void 0){var r=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),n=e.lineNumber;return`\n\nCheck your code at `+r+\":\"+n+\".\"}return\"\"}}var pe={};function ar(e){{var r=ve();if(!r){var n=typeof e==\"string\"?e:e.displayName||e.name;n&&(r=`\n\nCheck the top-level render call using <`+n+\">.\")}return r}}function _e(e,r){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var n=ar(r);if(pe[n])return;pe[n]=!0;var a=\"\";e&&e._owner&&e._owner!==L.current&&(a=\" It was passed a child from \"+p(e._owner.type)+\".\"),w(e),m('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',n,a),w(null)}}function ge(e,r){{if(typeof e!=\"object\")return;if($(e))for(var n=0;n\",o=\" Did you accidentally export a JSX literal instead of a component?\"):d=typeof e,m(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",d,o)}var f=rr(e,r,n,s,c);if(f==null)return f;if(i){var b=r.children;if(b!==void 0)if(a)if($(b)){for(var x=0;x{\"use strict\";Re.exports=xe()});var gr={};mr(gr,{default:()=>_r,frontmatter:()=>vr});var u=hr(Ne()),vr={title:\"QStash\",description:\"QStash is a fully managed serverless queue and messaging service designed for the serverless era.\",date:\"2022-07-18\",url:\"https://upstash.com/qstash\"};function Te(l){let t=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",a:\"a\"},l.components);return(0,u.jsxDEV)(u.Fragment,{children:[(0,u.jsxDEV)(t.p,{children:\"QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.ul,{children:[`\n`,(0,u.jsxDEV)(t.li,{children:\"100% serverless, no stateful connections required. Messages are pushed to your API.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"At-least-once delivery guaranteed to any public API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Pubsub via topics\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Delay message delivery\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Message deduplication\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Scheduling via CRON\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:16,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"Formally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"There was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.ul,{children:[`\n`,(0,u.jsxDEV)(t.li,{children:\"Works anywhere including serverless and edge.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Messaging as a service with no backend for users to run.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Lightweight, easy to understand, requires nothing to learn.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Price scales to zero.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:26,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"Let's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"If you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"With QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:[\"To learn more about QStash, visit \",(0,u.jsxDEV)(t.a,{href:\"upstash.com/qstash\",children:\"upstash.com/qstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:35,columnNumber:35},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:35,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:1,columnNumber:1},this)}function pr(l={}){let{wrapper:t}=l.components||{};return t?(0,u.jsxDEV)(t,Object.assign({},l,{children:(0,u.jsxDEV)(Te,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\"},this):Te(l)}var _r=pr;return br(gr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var d=Object.create;var r=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var p=Object.getPrototypeOf,f=Object.prototype.hasOwnProperty;var g=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),v=(n,e)=>{for(var t in e)r(n,t,{get:e[t],enumerable:!0})},o=(n,e,t,i)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of m(e))!f.call(n,a)&&a!==t&&r(n,a,{get:()=>e[a],enumerable:!(i=u(e,a))||i.enumerable});return n};var w=(n,e,t)=>(t=n!=null?d(p(n)):{},o(e||!n||!n.__esModule?r(t,\"default\",{value:n,enumerable:!0}):t,n)),y=n=>o(r({},\"__esModule\",{value:!0}),n);var c=g((Q,l)=>{l.exports=_jsx_runtime});var x={};v(x,{default:()=>P,frontmatter:()=>b});var s=w(c()),b={title:\"QStash\",description:\"QStash is a fully managed serverless queue and messaging service designed for the serverless era.\",date:\"2022-07-18\",url:\"https://upstash.com/qstash\"};function h(n){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",a:\"a\"},n.components);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(e.p,{children:\"QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\"}),`\n`,(0,s.jsxs)(e.ul,{children:[`\n`,(0,s.jsx)(e.li,{children:\"100% serverless, no stateful connections required. Messages are pushed to your API.\"}),`\n`,(0,s.jsx)(e.li,{children:\"At-least-once delivery guaranteed to any public API\"}),`\n`,(0,s.jsx)(e.li,{children:\"Pubsub via topics\"}),`\n`,(0,s.jsx)(e.li,{children:\"Delay message delivery\"}),`\n`,(0,s.jsx)(e.li,{children:\"Message deduplication\"}),`\n`,(0,s.jsx)(e.li,{children:\"Scheduling via CRON\"}),`\n`]}),`\n`,(0,s.jsx)(e.p,{children:\"Formally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\"}),`\n`,(0,s.jsx)(e.p,{children:\"There was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\"}),`\n`,(0,s.jsxs)(e.ul,{children:[`\n`,(0,s.jsx)(e.li,{children:\"Works anywhere including serverless and edge.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Messaging as a service with no backend for users to run.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Lightweight, easy to understand, requires nothing to learn.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Price scales to zero.\"}),`\n`]}),`\n`,(0,s.jsx)(e.p,{children:\"Let's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\"}),`\n`,(0,s.jsx)(e.p,{children:\"If you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\"}),`\n`,(0,s.jsx)(e.p,{children:\"With QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\"}),`\n`,(0,s.jsxs)(e.p,{children:[\"To learn more about QStash, visit \",(0,s.jsx)(e.a,{href:\"upstash.com/qstash\",children:\"upstash.com/qstash\"}),\".\"]})]})}function S(n={}){let{wrapper:e}=n.components||{};return e?(0,s.jsx)(e,Object.assign({},n,{children:(0,s.jsx)(h,n)})):h(n)}var P=S;return y(x);})();\n;return Component;" }, "_id": "projects/qstash.mdx", "_raw": { @@ -92,7 +92,7 @@ "repository": "chronark/terraform-provider-vercel", "body": { "raw": "\n\n\nBack in the day when Vercel didn't have an official Terraform provider, I wrote one. \nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.\n\n```hcl\nterraform {\n required_providers {\n vercel = {\n source = \"registry.terraform.io/chronark/vercel\"\n version = \">=0.10.3\"\n }\n }\n}\n\nprovider \"vercel\" {\n token = \"\"\n}\n\nresource \"vercel_project\" \"my_project\" {\n name = \"project-via-terraform\"\n git_repository {\n type = \"github\"\n repo = \"chronark/terraform-provider-vercel\"\n }\n}\n```\n\nIt was a fun project and I learned a lot about Terraform and Vercel's API. \nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.\n\nThere have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\n\nNow that Vercel have stepped in, I have decided to [deprecate](https://twitter.com/chronark_/status/1517759708983177218) this one on April 23rd 2022. \n\nPlease use the [official provider](https://registry.terraform.io/providers/vercel/vercel/latest) instead.", - "code": "var Component=(()=>{var sr=Object.create;var S=Object.defineProperty;var ir=Object.getOwnPropertyDescriptor;var lr=Object.getOwnPropertyNames;var ur=Object.getPrototypeOf,mr=Object.prototype.hasOwnProperty;var G=(l,r)=>()=>(r||l((r={exports:{}}).exports,r),r.exports),fr=(l,r)=>{for(var _ in r)S(l,_,{get:r[_],enumerable:!0})},ve=(l,r,_,k)=>{if(r&&typeof r==\"object\"||typeof r==\"function\")for(let y of lr(r))!mr.call(l,y)&&y!==_&&S(l,y,{get:()=>r[y],enumerable:!(k=ir(r,y))||k.enumerable});return l};var hr=(l,r,_)=>(_=l!=null?sr(ur(l)):{},ve(r||!l||!l.__esModule?S(_,\"default\",{value:l,enumerable:!0}):_,l)),br=l=>ve(S({},\"__esModule\",{value:!0}),l);var ge=G((vr,xe)=>{xe.exports=React});var Ee=G(z=>{\"use strict\";(function(){\"use strict\";var l=ge(),r=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),k=Symbol.for(\"react.fragment\"),y=Symbol.for(\"react.strict_mode\"),K=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),B=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var a=J&&e[J]||e[Te];return typeof a==\"function\"?a:null}var x=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function f(e){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&m>=0&&c[u]!==h[m];)m--;for(;u>=1&&m>=0;u--,m--)if(c[u]!==h[m]){if(u!==1||m!==1)do if(u--,m--,m<0||c[u]!==h[m]){var b=`\n`+c[u].replace(\" at new \",\" at \");return e.displayName&&b.includes(\"\")&&(b=b.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,b),b}while(u>=1&&m>=0);break}}}finally{Y=!1,I.current=i,Ye(),Error.prepareStackTrace=s}var E=e?e.displayName||e.name:\"\",ke=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,ke),ke}function We(e,a,t){return se(e,!1)}function Me(e){var a=e.prototype;return!!(a&&a.isReactComponent)}function C(e,a,t){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return We(e.render);case F:return C(e.type,a,t);case B:{var o=e,s=o._payload,i=o._init;try{return C(i(s),a,t)}catch{}}}return\"\"}var O=Object.prototype.hasOwnProperty,ie={},le=x.ReactDebugCurrentFrame;function P(e){if(e){var a=e._owner,t=C(e.type,e._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function Le(e,a,t,o,s){{var i=Function.call.bind(O);for(var d in e)if(i(e,d)){var c=void 0;try{if(typeof e[d]!=\"function\"){var h=Error((o||\"React class\")+\": \"+t+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}c=e[d](a,d,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){c=u}c&&!(c instanceof Error)&&(P(s),f(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,d,typeof c),P(null)),c instanceof Error&&!(c.message in ie)&&(ie[c.message]=!0,P(s),f(\"Failed %s type: %s\",t,c.message),P(null))}}}var qe=Array.isArray;function $(e){return qe(e)}function Ge(e){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function ze(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(ze(e))return f(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Ge(e)),ue(e)}var U=x.ReactCurrentOwner,Ke={key:!0,ref:!0,__self:!0,__source:!0},fe,he,W;W={};function Xe(e){if(O.call(e,\"ref\")){var a=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(a&&a.isReactWarning)return!1}return e.ref!==void 0}function He(e){if(O.call(e,\"key\")){var a=Object.getOwnPropertyDescriptor(e,\"key\").get;if(a&&a.isReactWarning)return!1}return e.key!==void 0}function Je(e,a){if(typeof e.ref==\"string\"&&U.current&&a&&U.current.stateNode!==a){var t=p(U.current.type);W[t]||(f('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),W[t]=!0)}}function Ze(e,a){{var t=function(){fe||(fe=!0,f(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,a){{var t=function(){he||(he=!0,f(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var er=function(e,a,t,o,s,i,d){var c={$$typeof:r,type:e,key:a,ref:t,props:d,_owner:i};return c._store={},Object.defineProperty(c._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(c,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(c,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c};function rr(e,a,t,o,s){{var i,d={},c=null,h=null;t!==void 0&&(me(t),c=\"\"+t),He(a)&&(me(a.key),c=\"\"+a.key),Xe(a)&&(h=a.ref,Je(a,s));for(i in a)O.call(a,i)&&!Ke.hasOwnProperty(i)&&(d[i]=a[i]);if(e&&e.defaultProps){var u=e.defaultProps;for(i in u)d[i]===void 0&&(d[i]=u[i])}if(c||h){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;c&&Ze(d,m),h&&Qe(d,m)}return er(e,c,h,s,o,U.current,d)}}var M=x.ReactCurrentOwner,be=x.ReactDebugCurrentFrame;function g(e){if(e){var a=e._owner,t=C(e.type,e._source,a?a.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var L;L=!1;function q(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===r}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function nr(e){{if(e!==void 0){var a=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function ar(e){{var a=_e();if(!a){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(e,a){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=ar(a);if(pe[t])return;pe[t]=!0;var o=\"\";e&&e._owner&&e._owner!==M.current&&(o=\" It was passed a child from \"+p(e._owner.type)+\".\"),g(e),f('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),g(null)}}function ye(e,a){{if(typeof e!=\"object\")return;if($(e))for(var t=0;t\",c=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,f(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,c)}var m=rr(e,a,t,s,i);if(m==null)return m;if(d){var b=a.children;if(b!==void 0)if(o)if($(b)){for(var E=0;E{\"use strict\";je.exports=Ee()});var yr={};fr(yr,{default:()=>Nr,frontmatter:()=>_r});var n=hr(Ue()),_r={title:\"Vercel Terraform Provider\",description:\"A Terraform provider for Vercel. It has been deprecated it when Vercel rolled out their official provider.\",date:\"2021-03-16\",repository:\"chronark/terraform-provider-vercel\",url:\"https://registry.terraform.io/providers/chronark/vercel/latest\"};function Re(l){let r=Object.assign({p:\"p\",div:\"div\",pre:\"pre\",code:\"code\",span:\"span\",a:\"a\"},l.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(r.p,{children:`Back in the day when Vercel didn't have an official Terraform provider, I wrote one.\nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(r.pre,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(r.code,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"terraform\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"required_providers\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:58},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:112},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:66},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:103},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:140},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:177},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" source \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:70},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:107},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"registry.terraform.io/chronark/vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:144},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" version \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:70},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:107},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\">=0.10.3\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:144},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"provider\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:155},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" token\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:63},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:100},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:137},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:174},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"resource\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"vercel_project\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:163},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"my_project\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:200},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:258},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" name\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:62},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:99},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:136},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"project-via-terraform\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:173},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"git_repository\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:58},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:108},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" type\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:138},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"github\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:175},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" repo\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:138},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"chronark/terraform-provider-vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:175},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:19,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:20,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:`It was a fun project and I learned a lot about Terraform and Vercel's API.\nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:38,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:\"There have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:41,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:[\"Now that Vercel have stepped in, I have decided to \",(0,n.jsxDEV)(r.a,{href:\"https://twitter.com/chronark_/status/1517759708983177218\",children:\"deprecate\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:43,columnNumber:52},this),\" this one on April 23rd 2022.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:43,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:[\"Please use the \",(0,n.jsxDEV)(r.a,{href:\"https://registry.terraform.io/providers/vercel/vercel/latest\",children:\"official provider\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:45,columnNumber:16},this),\" instead.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:45,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:1},this)}function pr(l={}){let{wrapper:r}=l.components||{};return r?(0,n.jsxDEV)(r,Object.assign({},l,{children:(0,n.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\"},this):Re(l)}var Nr=pr;return br(yr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var p=Object.create;var a=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var F=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),f=(n,e)=>{for(var l in e)a(n,l,{get:e[l],enumerable:!0})},o=(n,e,l,c)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let s of E(e))!m.call(n,s)&&s!==l&&a(n,s,{get:()=>e[s],enumerable:!(c=h(e,s))||c.enumerable});return n};var v=(n,e,l)=>(l=n!=null?p(y(n)):{},o(e||!n||!n.__esModule?a(l,\"default\",{value:n,enumerable:!0}):l,n)),u=n=>o(a({},\"__esModule\",{value:!0}),n);var i=F((_,t)=>{t.exports=_jsx_runtime});var w={};f(w,{default:()=>g,frontmatter:()=>B});var r=v(i()),B={title:\"Vercel Terraform Provider\",description:\"A Terraform provider for Vercel. It has been deprecated it when Vercel rolled out their official provider.\",date:\"2021-03-16\",repository:\"chronark/terraform-provider-vercel\",url:\"https://registry.terraform.io/providers/chronark/vercel/latest\"};function d(n){let e=Object.assign({p:\"p\",div:\"div\",pre:\"pre\",code:\"code\",span:\"span\",a:\"a\"},n.components);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(e.p,{children:`Back in the day when Vercel didn't have an official Terraform provider, I wrote one.\nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.`}),`\n`,(0,r.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsx)(e.pre,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:(0,r.jsxs)(e.code,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:[(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"terraform\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"required_providers\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" vercel\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"{\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" source \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"registry.terraform.io/chronark/vercel\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" version \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\">=0.10.3\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"provider\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"vercel\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" token\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"resource\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"vercel_project\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"my_project\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" name\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"project-via-terraform\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"git_repository\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" type\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"github\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" repo\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"chronark/terraform-provider-vercel\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})})]})})}),`\n`,(0,r.jsx)(e.p,{children:`It was a fun project and I learned a lot about Terraform and Vercel's API.\nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.`}),`\n`,(0,r.jsx)(e.p,{children:\"There have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\"}),`\n`,(0,r.jsxs)(e.p,{children:[\"Now that Vercel have stepped in, I have decided to \",(0,r.jsx)(e.a,{href:\"https://twitter.com/chronark_/status/1517759708983177218\",children:\"deprecate\"}),\" this one on April 23rd 2022.\"]}),`\n`,(0,r.jsxs)(e.p,{children:[\"Please use the \",(0,r.jsx)(e.a,{href:\"https://registry.terraform.io/providers/vercel/vercel/latest\",children:\"official provider\"}),\" instead.\"]})]})}function N(n={}){let{wrapper:e}=n.components||{};return e?(0,r.jsx)(e,Object.assign({},n,{children:(0,r.jsx)(d,n)})):d(n)}var g=N;return u(w);})();\n;return Component;" }, "_id": "projects/terraform-provider-vercel.mdx", "_raw": { @@ -201,7 +201,7 @@ "repository": "upstash/upstash-kafka", "body": { "raw": "\n\nAn HTTP/REST based Kafka client built on top of\n[Upstash REST API](https://docs.upstash.com/kafka/rest).\n\nIt is the only connectionless (HTTP based) Kafka client and designed for:\n\n- Serverless functions (AWS Lambda ...)\n- Cloudflare Workers (see the example)\n- Fastly Compute@Edge\n- Next.js Edge, Remix ...\n- Client side web/mobile applications\n- WebAssembly and other environments where HTTP is preferred over TCP\n connections.\n\n# Installation\n\n```bash\nnpm install @upstash/kafka\n```\n\n# Quickstart\n\n## Auth\n\n1. Go to [upstash](https://console.upstash.com/kafka) and select your database.\n2. Copy the `REST API` secrets at the bottom of the page\n\n```typescript\nimport { Kafka } from \"@upstash/kafka\"\n\nconst kafka = new Kafka({\n url: \"\",\n username: \"\",\n password: \"\",\n})\n```\n\n## Produce a single message\n\n```typescript\nconst p = kafka.producer()\nconst message = { hello: \"world\" } // Objects will get serialized using `JSON.stringify`\nconst res = await p.produce(\"\", message)\nconst res = await p.produce(\"\", message, {\n partition: 1,\n timestamp: 12345,\n key: \"\",\n headers: [{ key: \"traceId\", value: \"85a9f12\" }],\n})\n```\n\n## Produce multiple messages.\n\nThe same options from the example above can be set for every message.\n\n```typescript\nconst p = kafka.producer()\nconst res = await p.produceMany([\n {\n topic: \"my.topic\",\n value: { hello: \"world\" },\n // ...options\n },\n {\n topic: \"another.topic\",\n value: \"another message\",\n // ...options\n },\n])\n```\n\n## Consume\n\nThe first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.\n\n```typescript\nconst c = kafka.consumer()\nconst messages = await c.consume({\n consumerGroupId: \"group_1\",\n instanceId: \"instance_1\",\n topics: [\"test.topic\"],\n autoOffsetReset: \"earliest\",\n})\n```\n\nMore examples can be found in the\n[docstring](https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265)\n\n## Commit manually\n\nWhile `consume` can handle committing automatically, you can also use\n`Consumer.commit` to manually commit.\n\n```typescript\nconst consumerGroupId = \"mygroup\"\nconst instanceId = \"myinstance\"\nconst topic = \"my.topic\"\n\nconst c = kafka.consumer()\nconst messages = await c.consume({\n consumerGroupId,\n instanceId,\n topics: [topic],\n autoCommit: false,\n})\n\nfor (const message of messages) {\n // message handling logic\n\n await c.commit({\n consumerGroupId,\n instanceId,\n offset: {\n topic: message.topic,\n partition: message.partition,\n offset: message.offset,\n },\n })\n}\n```\n\n## Fetch\n\nYou can also manage offsets manually by using `Consumer.fetch`\n\n```typescript\nconst c = kafka.consumer()\nconst messages = await c.fetch({\n topic: \"greeting\",\n partition: 3,\n offset: 42,\n timeout: 1000,\n})\n```\n\n## Examples\n\nSee [/examples](https://github.com/upstash/upstash-kafka/tree/main/examples) as\nwell as various examples in the docstrings of each method.\n\n# Contributing\n\n## Requirements\n\n- [nodejs](https://nodejs.org) v14.x or higher\n- [pnpm](https://pnpm.io/installation)\n\n## Setup\n\n0. Install dependencies using `pnpm install`\n1. Create a kafka instance on upstash.\n [docs](https://docs.upstash.com/kafka#create-a-kafka-cluster)\n2. Create the following topics: `blue`, `red`, `green`.\n [docs](https://docs.upstash.com/kafka#create-a-topic)\n\n The partitions or retention settings don't matter at this time.\n\n3. Create `.env` file with your kafka secrets `cp .env.example .env`\n\n## Running tests\n\n```bash\npnpm test\n```\n", - "code": "var Component=(()=>{var dn=Object.create;var P=Object.defineProperty;var mn=Object.getOwnPropertyDescriptor;var ln=Object.getOwnPropertyNames;var un=Object.getPrototypeOf,hn=Object.prototype.hasOwnProperty;var G=(m,e)=>()=>(e||m((e={exports:{}}).exports,e),e.exports),fn=(m,e)=>{for(var _ in e)P(m,_,{get:e[_],enumerable:!0})},ye=(m,e,_,x)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let k of ln(e))!hn.call(m,k)&&k!==_&&P(m,k,{get:()=>e[k],enumerable:!(x=mn(e,k))||x.enumerable});return m};var bn=(m,e,_)=>(_=m!=null?dn(un(m)):{},ye(e||!m||!m.__esModule?P(_,\"default\",{value:m,enumerable:!0}):_,m)),_n=m=>ye(P({},\"__esModule\",{value:!0}),m);var Ee=G((gn,ge)=>{ge.exports=React});var je=G(q=>{\"use strict\";(function(){\"use strict\";var m=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),H=Symbol.for(\"react.profiler\"),z=Symbol.for(\"react.provider\"),X=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),O=Symbol.for(\"react.suspense\"),A=Symbol.for(\"react.suspense_list\"),C=Symbol.for(\"react.memo\"),D=Symbol.for(\"react.lazy\"),Ce=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Re=\"@@iterator\";function Te(r){if(r===null||typeof r!=\"object\")return null;var a=J&&r[J]||r[Re];return typeof a==\"function\"?a:null}var g=m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function h(r){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&u>=0&&s[l]!==f[u];)u--;for(;l>=1&&u>=0;l--,u--)if(s[l]!==f[u]){if(l!==1||u!==1)do if(l--,u--,u<0||s[l]!==f[u]){var b=`\n`+s[l].replace(\" at new \",\" at \");return r.displayName&&b.includes(\"\")&&(b=b.replace(\"\",r.displayName)),typeof r==\"function\"&&T.set(r,b),b}while(l>=1&&u>=0);break}}}finally{W=!1,I.current=i,We(),Error.prepareStackTrace=d}var j=r?r.displayName||r.name:\"\",xe=j?R(j):\"\";return typeof r==\"function\"&&T.set(r,xe),xe}function Me(r,a,t){return de(r,!1)}function $e(r){var a=r.prototype;return!!(a&&a.isReactComponent)}function w(r,a,t){if(r==null)return\"\";if(typeof r==\"function\")return de(r,$e(r));if(typeof r==\"string\")return R(r);switch(r){case O:return R(\"Suspense\");case A:return R(\"SuspenseList\")}if(typeof r==\"object\")switch(r.$$typeof){case F:return Me(r.render);case C:return w(r.type,a,t);case D:{var o=r,d=o._payload,i=o._init;try{return w(i(d),a,t)}catch{}}}return\"\"}var S=Object.prototype.hasOwnProperty,ie={},me=g.ReactDebugCurrentFrame;function B(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);me.setExtraStackFrame(t)}else me.setExtraStackFrame(null)}function Ve(r,a,t,o,d){{var i=Function.call.bind(S);for(var c in r)if(i(r,c)){var s=void 0;try{if(typeof r[c]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+c+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof r[c]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=r[c](a,c,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(l){s=l}s&&!(s instanceof Error)&&(B(d),h(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,c,typeof s),B(null)),s instanceof Error&&!(s.message in ie)&&(ie[s.message]=!0,B(d),h(\"Failed %s type: %s\",t,s.message),B(null))}}}var Ke=Array.isArray;function Y(r){return Ke(r)}function Ge(r){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&r[Symbol.toStringTag]||r.constructor.name||\"Object\";return t}}function qe(r){try{return le(r),!1}catch{return!0}}function le(r){return\"\"+r}function ue(r){if(qe(r))return h(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Ge(r)),le(r)}var v=g.ReactCurrentOwner,He={key:!0,ref:!0,__self:!0,__source:!0},he,fe,M;M={};function ze(r){if(S.call(r,\"ref\")){var a=Object.getOwnPropertyDescriptor(r,\"ref\").get;if(a&&a.isReactWarning)return!1}return r.ref!==void 0}function Xe(r){if(S.call(r,\"key\")){var a=Object.getOwnPropertyDescriptor(r,\"key\").get;if(a&&a.isReactWarning)return!1}return r.key!==void 0}function Je(r,a){if(typeof r.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);M[t]||(h('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),r.ref),M[t]=!0)}}function Qe(r,a){{var t=function(){he||(he=!0,h(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"key\",{get:t,configurable:!0})}}function Ze(r,a){{var t=function(){fe||(fe=!0,h(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"ref\",{get:t,configurable:!0})}}var en=function(r,a,t,o,d,i,c){var s={$$typeof:e,type:r,key:a,ref:t,props:c,_owner:i};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:d}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(r,a,t,o,d){{var i,c={},s=null,f=null;t!==void 0&&(ue(t),s=\"\"+t),Xe(a)&&(ue(a.key),s=\"\"+a.key),ze(a)&&(f=a.ref,Je(a,d));for(i in a)S.call(a,i)&&!He.hasOwnProperty(i)&&(c[i]=a[i]);if(r&&r.defaultProps){var l=r.defaultProps;for(i in l)c[i]===void 0&&(c[i]=l[i])}if(s||f){var u=typeof r==\"function\"?r.displayName||r.name||\"Unknown\":r;s&&Qe(c,u),f&&Ze(c,u)}return en(r,s,f,d,o,v.current,c)}}var $=g.ReactCurrentOwner,be=g.ReactDebugCurrentFrame;function E(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var V;V=!1;function K(r){return typeof r==\"object\"&&r!==null&&r.$$typeof===e}function _e(){{if($.current){var r=p($.current.type);if(r)return`\n\nCheck the render method of \\``+r+\"`.\"}return\"\"}}function rn(r){{if(r!==void 0){var a=r.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=r.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(r){{var a=_e();if(!a){var t=typeof r==\"string\"?r:r.displayName||r.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(r,a){{if(!r._store||r._store.validated||r.key!=null)return;r._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";r&&r._owner&&r._owner!==$.current&&(o=\" It was passed a child from \"+p(r._owner.type)+\".\"),E(r),h('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ke(r,a){{if(typeof r!=\"object\")return;if(Y(r))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):l=typeof r,h(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",l,s)}var u=nn(r,a,t,d,i);if(u==null)return u;if(c){var b=a.children;if(b!==void 0)if(o)if(Y(b)){for(var j=0;j{\"use strict\";Ue.exports=je()});var xn={};fn(xn,{default:()=>kn,frontmatter:()=>pn});var n=bn(ve()),pn={title:\"@upstash/kafka\",description:\"A fully typed Kafka client built for Upstash Kafka and HTTP, perfect for serverless and edge runtimes\",date:\"2022-01-08\",url:\"https://upstash.com/kafka\",repository:\"upstash/upstash-kafka\"};function Fe(m){let e=Object.assign({p:\"p\",a:\"a\",ul:\"ul\",li:\"li\",h1:\"h1\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\",h2:\"h2\",ol:\"ol\"},m.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(e.p,{children:[`An HTTP/REST based Kafka client built on top of\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka/rest\",children:\"Upstash REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"It is the only connectionless (HTTP based) Kafka client and designed for:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Cloudflare Workers (see the example)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Fastly Compute@Edge\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Next.js Edge, Remix ...\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Client side web/mobile applications\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:`WebAssembly and other environments where HTTP is preferred over TCP\nconnections.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"installation\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#installation\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Installation\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:223},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:260},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"quickstart\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quickstart\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Quickstart\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"auth\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#auth\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Auth\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ol,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:[\"Go to \",(0,n.jsxDEV)(e.a,{href:\"https://console.upstash.com/kafka\",children:\"upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:10},this),\" and select your database.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[\"Copy the \",(0,n.jsxDEV)(e.code,{children:\"REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:35,columnNumber:13},this),\" secrets at the bottom of the page\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:35,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Kafka } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/kafka\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:270},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:250},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:326},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:367},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:63},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:141},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" username: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:68},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:151},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" password: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:68},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:151},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"produce-a-single-message\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-a-single-message\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Produce a single message\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:47,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:141},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:178},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { hello: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:215},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:314},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// Objects will get serialized using `JSON.stringify`\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:353},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:371},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:408},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", message)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:472},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:371},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:408},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", message, {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:472},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:106},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" timestamp: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"12345\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" key: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:63},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" headers: [{ key: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"traceId\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", value: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:130},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"85a9f12\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" }],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:230},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:49,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"produce-multiple-messages\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-multiple-messages\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Produce multiple messages.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"The same options from the example above can be set for every message.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produceMany\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"([\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:375},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:123},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: { hello: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:76},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:60},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:128},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another message\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:130},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:60},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"])\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"consume\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#consume\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Consume\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:81,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:`The first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:83,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:376},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"group_1\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:130},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"instance_1\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:70},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:128},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"test.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:125},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoOffsetReset: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"earliest\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:131},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[`More examples can be found in the\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265\",children:\"docstring\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:100,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:99,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"commit-manually\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#commit-manually\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Commit manually\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:102,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"While \",(0,n.jsxDEV)(e.code,{children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:104,columnNumber:7},this),` can handle committing automatically, you can also use\n`,(0,n.jsxDEV)(e.code,{children:\"Consumer.commit\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:105,columnNumber:1},this),\" to manually commit.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:104,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"consumerGroupId\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:270},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:307},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"mygroup\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:344},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"instanceId\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:218},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"myinstance\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:255},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"topic\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:250},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:172},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:209},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:252},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:296},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:376},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [topic],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoCommit: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"false\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:70},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:111},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"for\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" (\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:59},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:97},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:218},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"of\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:255},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" messages) {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:293},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// message handling logic\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:58},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:58},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:99},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"commit\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:180},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: message.topic,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: message.partition,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: message.offset,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:22,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:23,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:25,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:107,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"fetch\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#fetch\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Fetch\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:135,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"You can also manage offsets manually by using \",(0,n.jsxDEV)(e.code,{children:\"Consumer.fetch\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:137,columnNumber:47},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:137,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"fetch\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:374},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"greeting\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:65},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:121},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"3\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:106},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"42\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:66},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:104},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" timeout: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1000\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:107},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:139,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"examples\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#examples\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Examples\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:149,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"See \",(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-kafka/tree/main/examples\",children:\"/examples\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:151,columnNumber:5},this),` as\nwell as various examples in the docstrings of each method.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:151,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"contributing\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:154,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"requirements\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#requirements\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Requirements\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:156,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:[(0,n.jsxDEV)(e.a,{href:\"https://nodejs.org\",children:\"nodejs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:3},this),\" v14.x or higher\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:(0,n.jsxDEV)(e.a,{href:\"https://pnpm.io/installation\",children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:159,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:159,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"setup\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#setup\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Setup\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:161,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ol,{start:\"0\",children:[`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Install dependencies using \",(0,n.jsxDEV)(e.code,{children:\"pnpm install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:31},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[`Create a kafka instance on upstash.\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-kafka-cluster\",children:\"docs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:165,columnNumber:4},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:164,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:164,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create the following topics: \",(0,n.jsxDEV)(e.code,{children:\"blue\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:33},this),\", \",(0,n.jsxDEV)(e.code,{children:\"red\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:41},this),\", \",(0,n.jsxDEV)(e.code,{children:\"green\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:48},this),`.\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-topic\",children:\"docs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:167,columnNumber:4},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:4},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"The partitions or retention settings don't matter at this time.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:169,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create \",(0,n.jsxDEV)(e.code,{children:\".env\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:11},this),\" file with your kafka secrets \",(0,n.jsxDEV)(e.code,{children:\"cp .env.example .env\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:47},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"running-tests\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#running-tests\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Running tests\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:173,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"test\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:181},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:175,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(m={}){let{wrapper:e}=m.components||{};return e?(0,n.jsxDEV)(e,Object.assign({},m,{children:(0,n.jsxDEV)(Fe,m,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this):Fe(m)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var u=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),F=(n,e)=>{for(var s in e)a(n,s,{get:e[s],enumerable:!0})},o=(n,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let c of E(e))!m.call(n,c)&&c!==s&&a(n,c,{get:()=>e[c],enumerable:!(r=p(e,c))||r.enumerable});return n};var g=(n,e,s)=>(s=n!=null?h(y(n)):{},o(e||!n||!n.__esModule?a(s,\"default\",{value:n,enumerable:!0}):s,n)),f=n=>o(a({},\"__esModule\",{value:!0}),n);var t=u((v,i)=>{i.exports=_jsx_runtime});var b={};F(b,{default:()=>B,frontmatter:()=>N});var l=g(t()),N={title:\"@upstash/kafka\",description:\"A fully typed Kafka client built for Upstash Kafka and HTTP, perfect for serverless and edge runtimes\",date:\"2022-01-08\",url:\"https://upstash.com/kafka\",repository:\"upstash/upstash-kafka\"};function d(n){let e=Object.assign({p:\"p\",a:\"a\",ul:\"ul\",li:\"li\",h1:\"h1\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\",h2:\"h2\",ol:\"ol\"},n.components);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(e.p,{children:[`An HTTP/REST based Kafka client built on top of\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka/rest\",children:\"Upstash REST API\"}),\".\"]}),`\n`,(0,l.jsx)(e.p,{children:\"It is the only connectionless (HTTP based) Kafka client and designed for:\"}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsx)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"}),`\n`,(0,l.jsx)(e.li,{children:\"Cloudflare Workers (see the example)\"}),`\n`,(0,l.jsx)(e.li,{children:\"Fastly Compute@Edge\"}),`\n`,(0,l.jsx)(e.li,{children:\"Next.js Edge, Remix ...\"}),`\n`,(0,l.jsx)(e.li,{children:\"Client side web/mobile applications\"}),`\n`,(0,l.jsx)(e.li,{children:`WebAssembly and other environments where HTTP is preferred over TCP\nconnections.`}),`\n`]}),`\n`,(0,l.jsxs)(e.h1,{id:\"installation\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#installation\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Installation\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/kafka\"})]})})})}),`\n`,(0,l.jsxs)(e.h1,{id:\"quickstart\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quickstart\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Quickstart\"]}),`\n`,(0,l.jsxs)(e.h2,{id:\"auth\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#auth\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Auth\"]}),`\n`,(0,l.jsxs)(e.ol,{children:[`\n`,(0,l.jsxs)(e.li,{children:[\"Go to \",(0,l.jsx)(e.a,{href:\"https://console.upstash.com/kafka\",children:\"upstash\"}),\" and select your database.\"]}),`\n`,(0,l.jsxs)(e.li,{children:[\"Copy the \",(0,l.jsx)(e.code,{children:\"REST API\"}),\" secrets at the bottom of the page\"]}),`\n`]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Kafka } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/kafka\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"kafka\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Kafka\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" username: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" password: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"produce-a-single-message\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-a-single-message\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Produce a single message\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { hello: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" } \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// Objects will get serialized using `JSON.stringify`\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", message)\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", message, {\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" timestamp: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"12345\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" key: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" headers: [{ key: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"traceId\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", value: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"85a9f12\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }],\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"produce-multiple-messages\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-multiple-messages\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Produce multiple messages.\"]}),`\n`,(0,l.jsx)(e.p,{children:\"The same options from the example above can be set for every message.\"}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produceMany\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"([\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: { hello: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another message\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"])\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"consume\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#consume\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Consume\"]}),`\n`,(0,l.jsx)(e.p,{children:`The first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.`}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"group_1\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"instance_1\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"test.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoOffsetReset: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"earliest\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.p,{children:[`More examples can be found in the\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265\",children:\"docstring\"})]}),`\n`,(0,l.jsxs)(e.h2,{id:\"commit-manually\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#commit-manually\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Commit manually\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"While \",(0,l.jsx)(e.code,{children:\"consume\"}),` can handle committing automatically, you can also use\n`,(0,l.jsx)(e.code,{children:\"Consumer.commit\"}),\" to manually commit.\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"consumerGroupId\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"mygroup\"'})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"instanceId\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"myinstance\"'})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"topic\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [topic],\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoCommit: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"false\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"for\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" (\"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"of\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" messages) {\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// message handling logic\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"commit\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: {\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: message.topic,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: message.partition,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: message.offset,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"fetch\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#fetch\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Fetch\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"You can also manage offsets manually by using \",(0,l.jsx)(e.code,{children:\"Consumer.fetch\"})]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"fetch\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"greeting\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"3\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"42\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" timeout: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1000\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"examples\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#examples\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Examples\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"See \",(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-kafka/tree/main/examples\",children:\"/examples\"}),` as\nwell as various examples in the docstrings of each method.`]}),`\n`,(0,l.jsxs)(e.h1,{id:\"contributing\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Contributing\"]}),`\n`,(0,l.jsxs)(e.h2,{id:\"requirements\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#requirements\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Requirements\"]}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsxs)(e.li,{children:[(0,l.jsx)(e.a,{href:\"https://nodejs.org\",children:\"nodejs\"}),\" v14.x or higher\"]}),`\n`,(0,l.jsx)(e.li,{children:(0,l.jsx)(e.a,{href:\"https://pnpm.io/installation\",children:\"pnpm\"})}),`\n`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"setup\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#setup\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Setup\"]}),`\n`,(0,l.jsxs)(e.ol,{start:\"0\",children:[`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Install dependencies using \",(0,l.jsx)(e.code,{children:\"pnpm install\"})]}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[`Create a kafka instance on upstash.\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-kafka-cluster\",children:\"docs\"})]}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Create the following topics: \",(0,l.jsx)(e.code,{children:\"blue\"}),\", \",(0,l.jsx)(e.code,{children:\"red\"}),\", \",(0,l.jsx)(e.code,{children:\"green\"}),`.\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-topic\",children:\"docs\"})]}),`\n`,(0,l.jsx)(e.p,{children:\"The partitions or retention settings don't matter at this time.\"}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Create \",(0,l.jsx)(e.code,{children:\".env\"}),\" file with your kafka secrets \",(0,l.jsx)(e.code,{children:\"cp .env.example .env\"})]}),`\n`]}),`\n`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"running-tests\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#running-tests\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Running tests\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"pnpm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"test\"})]})})})})]})}function k(n={}){let{wrapper:e}=n.components||{};return e?(0,l.jsx)(e,Object.assign({},n,{children:(0,l.jsx)(d,n)})):d(n)}var B=k;return f(b);})();\n;return Component;" }, "_id": "projects/upstash-kafka.mdx", "_raw": { @@ -289,7 +289,7 @@ "repository": "upstash/upstash-redis", "body": { "raw": "\n\n`@upstash/redis` is an HTTP/REST based Redis client for typescript, built on top\nof [Upstash REST API](https://docs.upstash.com/features/restapi).\n\nIt is the only connectionless (HTTP based) Redis client and designed for:\n\n- Serverless functions (AWS Lambda ...)\n- Cloudflare Workers (see\n [the example](https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers))\n- Fastly Compute@Edge (see\n [the example](https://github.com/upstash/upstash-redis/tree/main/examples/fastly))\n- Next.js, Jamstack ...\n- Client side web/mobile applications\n- WebAssembly\n- and other environments where HTTP is preferred over TCP.\n\nSee\n[the list of APIs](https://docs.upstash.com/features/restapi#rest---redis-api-compatibility)\nsupported.\n\n## Quick Start\n\n### Install\n\n#### Node.js\n\n```bash\nnpm install @upstash/redis\n```\n\n#### Deno\n\n```ts\nimport { Redis } from \"https://deno.land/x/upstash_redis/mod.ts\";\n```\n\n### Create database\n\nCreate a new redis database on [upstash](https://console.upstash.com/)\n\n## Basic Usage:\n\n```ts\nimport { Redis } from \"@upstash/redis\"\n\nconst redis = new Redis({\n url: ,\n token: ,\n})\n\n// string\nawait redis.set('key', 'value');\nlet data = await redis.get('key');\nconsole.log(data)\n\nawait redis.set('key2', 'value2', {ex: 1});\n\n// sorted set\nawait redis.zadd('scores', { score: 1, member: 'team1' })\ndata = await redis.zrange('scores', 0, 100 )\nconsole.log(data)\n\n// list\nawait redis.lpush('elements', 'magnesium')\ndata = await redis.lrange('elements', 0, 100 )\nconsole.log(data)\n\n// hash\nawait redis.hset('people', {name: 'joe'})\ndata = await redis.hget('people', 'name' )\nconsole.log(data)\n\n// sets\nawait redis.sadd('animals', 'cat')\ndata = await redis.spop('animals', 1)\nconsole.log(data)\n```\n", - "code": "var Component=(()=>{var dn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var mn=Object.getOwnPropertyNames;var un=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var q=(l,e)=>()=>(e||l((e={exports:{}}).exports,e),e.exports),fn=(l,e)=>{for(var _ in e)O(l,_,{get:e[_],enumerable:!0})},ye=(l,e,_,x)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let k of mn(e))!bn.call(l,k)&&k!==_&&O(l,k,{get:()=>e[k],enumerable:!(x=ln(e,k))||x.enumerable});return l};var hn=(l,e,_)=>(_=l!=null?dn(un(l)):{},ye(e||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var Ee=q((gn,ge)=>{ge.exports=React});var je=q(z=>{\"use strict\";(function(){\"use strict\";var l=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),G=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),X=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),B=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),R=Symbol.for(\"react.memo\"),A=Symbol.for(\"react.lazy\"),Re=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Ce=\"@@iterator\";function Te(r){if(r===null||typeof r!=\"object\")return null;var a=J&&r[J]||r[Ce];return typeof a==\"function\"?a:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function b(r){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&u>=0&&s[m]!==f[u];)u--;for(;m>=1&&u>=0;m--,u--)if(s[m]!==f[u]){if(m!==1||u!==1)do if(m--,u--,u<0||s[m]!==f[u]){var h=`\n`+s[m].replace(\" at new \",\" at \");return r.displayName&&h.includes(\"\")&&(h=h.replace(\"\",r.displayName)),typeof r==\"function\"&&T.set(r,h),h}while(m>=1&&u>=0);break}}}finally{W=!1,I.current=i,We(),Error.prepareStackTrace=d}var j=r?r.displayName||r.name:\"\",xe=j?C(j):\"\";return typeof r==\"function\"&&T.set(r,xe),xe}function $e(r,a,t){return de(r,!1)}function Me(r){var a=r.prototype;return!!(a&&a.isReactComponent)}function w(r,a,t){if(r==null)return\"\";if(typeof r==\"function\")return de(r,Me(r));if(typeof r==\"string\")return C(r);switch(r){case B:return C(\"Suspense\");case D:return C(\"SuspenseList\")}if(typeof r==\"object\")switch(r.$$typeof){case F:return $e(r.render);case R:return w(r.type,a,t);case A:{var o=r,d=o._payload,i=o._init;try{return w(i(d),a,t)}catch{}}}return\"\"}var S=Object.prototype.hasOwnProperty,ie={},le=g.ReactDebugCurrentFrame;function P(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function Ve(r,a,t,o,d){{var i=Function.call.bind(S);for(var c in r)if(i(r,c)){var s=void 0;try{if(typeof r[c]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+c+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof r[c]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=r[c](a,c,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(m){s=m}s&&!(s instanceof Error)&&(P(d),b(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,c,typeof s),P(null)),s instanceof Error&&!(s.message in ie)&&(ie[s.message]=!0,P(d),b(\"Failed %s type: %s\",t,s.message),P(null))}}}var He=Array.isArray;function Y(r){return He(r)}function qe(r){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&r[Symbol.toStringTag]||r.constructor.name||\"Object\";return t}}function ze(r){try{return me(r),!1}catch{return!0}}function me(r){return\"\"+r}function ue(r){if(ze(r))return b(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",qe(r)),me(r)}var v=g.ReactCurrentOwner,Ge={key:!0,ref:!0,__self:!0,__source:!0},be,fe,$;$={};function Ke(r){if(S.call(r,\"ref\")){var a=Object.getOwnPropertyDescriptor(r,\"ref\").get;if(a&&a.isReactWarning)return!1}return r.ref!==void 0}function Xe(r){if(S.call(r,\"key\")){var a=Object.getOwnPropertyDescriptor(r,\"key\").get;if(a&&a.isReactWarning)return!1}return r.key!==void 0}function Je(r,a){if(typeof r.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);$[t]||(b('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),r.ref),$[t]=!0)}}function Qe(r,a){{var t=function(){be||(be=!0,b(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"key\",{get:t,configurable:!0})}}function Ze(r,a){{var t=function(){fe||(fe=!0,b(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"ref\",{get:t,configurable:!0})}}var en=function(r,a,t,o,d,i,c){var s={$$typeof:e,type:r,key:a,ref:t,props:c,_owner:i};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:d}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(r,a,t,o,d){{var i,c={},s=null,f=null;t!==void 0&&(ue(t),s=\"\"+t),Xe(a)&&(ue(a.key),s=\"\"+a.key),Ke(a)&&(f=a.ref,Je(a,d));for(i in a)S.call(a,i)&&!Ge.hasOwnProperty(i)&&(c[i]=a[i]);if(r&&r.defaultProps){var m=r.defaultProps;for(i in m)c[i]===void 0&&(c[i]=m[i])}if(s||f){var u=typeof r==\"function\"?r.displayName||r.name||\"Unknown\":r;s&&Qe(c,u),f&&Ze(c,u)}return en(r,s,f,d,o,v.current,c)}}var M=g.ReactCurrentOwner,he=g.ReactDebugCurrentFrame;function E(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);he.setExtraStackFrame(t)}else he.setExtraStackFrame(null)}var V;V=!1;function H(r){return typeof r==\"object\"&&r!==null&&r.$$typeof===e}function _e(){{if(M.current){var r=p(M.current.type);if(r)return`\n\nCheck the render method of \\``+r+\"`.\"}return\"\"}}function rn(r){{if(r!==void 0){var a=r.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=r.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(r){{var a=_e();if(!a){var t=typeof r==\"string\"?r:r.displayName||r.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(r,a){{if(!r._store||r._store.validated||r.key!=null)return;r._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";r&&r._owner&&r._owner!==M.current&&(o=\" It was passed a child from \"+p(r._owner.type)+\".\"),E(r),b('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ke(r,a){{if(typeof r!=\"object\")return;if(Y(r))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):m=typeof r,b(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",m,s)}var u=nn(r,a,t,d,i);if(u==null)return u;if(c){var h=a.children;if(h!==void 0)if(o)if(Y(h)){for(var j=0;j{\"use strict\";Ue.exports=je()});var xn={};fn(xn,{default:()=>kn,frontmatter:()=>pn});var n=hn(ve()),pn={title:\"@upstash/redis\",description:\"A fully typed Redis client built for Upstash Redis and HTTP, perfect for serverless and edge runtimes.\",date:\"2022-03-14\",url:\"https://upstash.com/redis\",repository:\"upstash/upstash-redis\"};function Fe(l){let e=Object.assign({p:\"p\",code:\"code\",a:\"a\",ul:\"ul\",li:\"li\",h2:\"h2\",span:\"span\",h3:\"h3\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(e.p,{children:[(0,n.jsxDEV)(e.code,{children:\"@upstash/redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),` is an HTTP/REST based Redis client for typescript, built on top\nof `,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/features/restapi\",children:\"Upstash REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:12,columnNumber:4},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"It is the only connectionless (HTTP based) Redis client and designed for:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`Cloudflare Workers (see\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers\",children:\"the example\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:3},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`Fastly Compute@Edge (see\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/fastly\",children:\"the example\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:3},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Next.js, Jamstack ...\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Client side web/mobile applications\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"WebAssembly\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"and other environments where HTTP is preferred over TCP.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:24,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[`See\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/features/restapi#rest---redis-api-compatibility\",children:\"the list of APIs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:1},this),`\nsupported.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"quick-start\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quick-start\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Quick Start\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h3,{id:\"install\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Install\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h4,{id:\"nodejs\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#nodejs\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Node.js\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:223},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:260},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:36,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h4,{id:\"deno\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deno\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Deno\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:40,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"https://deno.land/x/upstash_redis/mod.ts\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:270},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:358},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h3,{id:\"create-database\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#create-database\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Create database\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create a new redis database on \",(0,n.jsxDEV)(e.a,{href:\"https://console.upstash.com/\",children:\"upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:48,columnNumber:32},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"basic-usage\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#basic-usage\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Basic Usage:\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/redis\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:270},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:250},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:326},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:367},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: <\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_URL\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:125},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" token: <\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_TOKEN\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// string\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:229},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:267},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:318},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"let\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:59},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:101},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"get\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:259},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:335},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:384},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key2'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:230},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value2'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:268},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", {ex: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:320},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:363},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:400},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// sorted set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:15,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"zadd\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", { score: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:280},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", member: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:317},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'team1'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:363},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:414},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"zrange\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:350},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:388},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:425},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:463},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:502},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// list\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"lpush\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:236},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'magnesium'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:274},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:329},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"lrange\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:352},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:390},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:427},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:465},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:504},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// hash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"hset\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", {name: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'joe'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:278},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:327},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"hget\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:259},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:296},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:348},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'name'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:386},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:436},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:29,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// sets\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"sadd\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:234},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'cat'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:272},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:321},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:62},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:99},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:136},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:177},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"spop\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:220},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:260},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:297},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:350},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:388},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:425},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:52,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:e}=l.components||{};return e?(0,n.jsxDEV)(e,Object.assign({},l,{children:(0,n.jsxDEV)(Fe,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this):Fe(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var c=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,F=Object.prototype.hasOwnProperty;var m=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),u=(n,e)=>{for(var s in e)c(n,s,{get:e[s],enumerable:!0})},o=(n,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of E(e))!F.call(n,a)&&a!==s&&c(n,a,{get:()=>e[a],enumerable:!(r=p(e,a))||r.enumerable});return n};var B=(n,e,s)=>(s=n!=null?h(y(n)):{},o(e||!n||!n.__esModule?c(s,\"default\",{value:n,enumerable:!0}):s,n)),N=n=>o(c({},\"__esModule\",{value:!0}),n);var t=m((w,i)=>{i.exports=_jsx_runtime});var C={};u(C,{default:()=>b,frontmatter:()=>g});var l=B(t()),g={title:\"@upstash/redis\",description:\"A fully typed Redis client built for Upstash Redis and HTTP, perfect for serverless and edge runtimes.\",date:\"2022-03-14\",url:\"https://upstash.com/redis\",repository:\"upstash/upstash-redis\"};function d(n){let e=Object.assign({p:\"p\",code:\"code\",a:\"a\",ul:\"ul\",li:\"li\",h2:\"h2\",span:\"span\",h3:\"h3\",h4:\"h4\",div:\"div\",pre:\"pre\"},n.components);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(e.p,{children:[(0,l.jsx)(e.code,{children:\"@upstash/redis\"}),` is an HTTP/REST based Redis client for typescript, built on top\nof `,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/features/restapi\",children:\"Upstash REST API\"}),\".\"]}),`\n`,(0,l.jsx)(e.p,{children:\"It is the only connectionless (HTTP based) Redis client and designed for:\"}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsx)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"}),`\n`,(0,l.jsxs)(e.li,{children:[`Cloudflare Workers (see\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers\",children:\"the example\"}),\")\"]}),`\n`,(0,l.jsxs)(e.li,{children:[`Fastly Compute@Edge (see\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/fastly\",children:\"the example\"}),\")\"]}),`\n`,(0,l.jsx)(e.li,{children:\"Next.js, Jamstack ...\"}),`\n`,(0,l.jsx)(e.li,{children:\"Client side web/mobile applications\"}),`\n`,(0,l.jsx)(e.li,{children:\"WebAssembly\"}),`\n`,(0,l.jsx)(e.li,{children:\"and other environments where HTTP is preferred over TCP.\"}),`\n`]}),`\n`,(0,l.jsxs)(e.p,{children:[`See\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/features/restapi#rest---redis-api-compatibility\",children:\"the list of APIs\"}),`\nsupported.`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"quick-start\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quick-start\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Quick Start\"]}),`\n`,(0,l.jsxs)(e.h3,{id:\"install\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Install\"]}),`\n`,(0,l.jsxs)(e.h4,{id:\"nodejs\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#nodejs\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Node.js\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/redis\"})]})})})}),`\n`,(0,l.jsxs)(e.h4,{id:\"deno\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deno\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Deno\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"https://deno.land/x/upstash_redis/mod.ts\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"})]})})})}),`\n`,(0,l.jsxs)(e.h3,{id:\"create-database\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#create-database\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Create database\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"Create a new redis database on \",(0,l.jsx)(e.a,{href:\"https://console.upstash.com/\",children:\"upstash\"})]}),`\n`,(0,l.jsxs)(e.h2,{id:\"basic-usage\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#basic-usage\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Basic Usage:\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/redis\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"redis\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Redis\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: <\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_URL\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" token: <\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_TOKEN\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// string\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"set\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"let\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"get\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"set\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key2'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value2'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", {ex: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// sorted set\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"zadd\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", { score: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", member: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'team1'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"zrange\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// list\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"lpush\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'magnesium'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"lrange\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// hash\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"hset\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", {name: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'joe'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"hget\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'name'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// sets\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"sadd\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'cat'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"spop\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]})]})})})]})}function f(n={}){let{wrapper:e}=n.components||{};return e?(0,l.jsx)(e,Object.assign({},n,{children:(0,l.jsx)(d,n)})):d(n)}var b=f;return N(C);})();\n;return Component;" }, "_id": "projects/upstash-redis.mdx", "_raw": { diff --git a/.contentlayer/generated/Project/projects__access.mdx.json b/.contentlayer/generated/Project/projects__access.mdx.json index b692401..36a06e7 100644 --- a/.contentlayer/generated/Project/projects__access.mdx.json +++ b/.contentlayer/generated/Project/projects__access.mdx.json @@ -5,7 +5,7 @@ "repository": "chronark/access", "body": { "raw": "A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\n\n- Fully typed\n- Zero dependencies\n- Serializable to store in a database\n\n## Install\n\n```sh-session\nnpm i @chronark/access\n```\n\n## Usage\n\n```ts\nimport { AccessControl, Role } from \"@chronark/access\";\n\n/**\n * Define all your resources and their access patterns\n *\n * key => resource\n * value => array of access types\n */\ntype Statements = {\n user: [\"read\", \"write\", \"dance\"];\n team: [\"read\", \"write\"];\n};\n\n/**\n * Create an access control instance and pass the Statements type to enjoy full\n * type safety\n */\nconst ac = new AccessControl();\n\n/**\n * Now you can define one or more roles by specifying the access permissions\n *\n * This is already fully typed and typescript will let you know if you try to\n * use anything, that is not defined in the Statements type.\n */\nconst role = ac.newRole({\n user: [\"read\", \"write\"],\n team: [\"read\"],\n});\n\n/**\n * Simulate storing and retrieving the role in a database\n *\n * The idea here is, that you can store permissions alongside an API token.\n * Now, when you verify the token, you can also verify the access permissions.\n */\nconst serialized = role.toString();\n\n/**\n * Note how you can pass in the Statements type again, to get full type safety\n */\nconst recovered = Role.fromString(serialized);\n\n/**\n * Validate the role by specifying the resource and the required access\n *\n * everything is fully typed\n */\nconst res = recovered.authorize({\"team\", [\"read\"]});\n\n// res.success => boolean\n// res.error => string | undefined provides a reason for failure\n```", - "code": "var Component=(()=>{var cn=Object.create;var S=Object.defineProperty;var bn=Object.getOwnPropertyDescriptor;var ln=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,un=Object.prototype.hasOwnProperty;var z=(i,e)=>()=>(e||i((e={exports:{}}).exports,e),e.exports),fn=(i,e)=>{for(var _ in e)S(i,_,{get:e[_],enumerable:!0})},xe=(i,e,_,k)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let y of ln(e))!un.call(i,y)&&y!==_&&S(i,y,{get:()=>e[y],enumerable:!(k=bn(e,y))||k.enumerable});return i};var hn=(i,e,_)=>(_=i!=null?cn(mn(i)):{},xe(e||!i||!i.__esModule?S(_,\"default\",{value:i,enumerable:!0}):_,i)),_n=i=>xe(S({},\"__esModule\",{value:!0}),i);var Ee=z((gn,ge)=>{ge.exports=React});var je=z(G=>{\"use strict\";(function(){\"use strict\";var i=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),k=Symbol.for(\"react.fragment\"),y=Symbol.for(\"react.strict_mode\"),X=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),O=Symbol.for(\"react.suspense\"),P=Symbol.for(\"react.suspense_list\"),R=Symbol.for(\"react.memo\"),B=Symbol.for(\"react.lazy\"),Re=Symbol.for(\"react.offscreen\"),Z=Symbol.iterator,Ce=\"@@iterator\";function De(n){if(n===null||typeof n!=\"object\")return null;var a=Z&&n[Z]||n[Ce];return typeof a==\"function\"?a:null}var g=i.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function u(n){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&m>=0&&s[l]!==f[m];)m--;for(;l>=1&&m>=0;l--,m--)if(s[l]!==f[m]){if(l!==1||m!==1)do if(l--,m--,m<0||s[l]!==f[m]){var h=`\n`+s[l].replace(\" at new \",\" at \");return n.displayName&&h.includes(\"\")&&(h=h.replace(\"\",n.displayName)),typeof n==\"function\"&&D.set(n,h),h}while(l>=1&&m>=0);break}}}finally{$=!1,I.current=b,$e(),Error.prepareStackTrace=c}var j=n?n.displayName||n.name:\"\",ke=j?C(j):\"\";return typeof n==\"function\"&&D.set(n,ke),ke}function Ve(n,a,t){return ce(n,!1)}function Me(n){var a=n.prototype;return!!(a&&a.isReactComponent)}function w(n,a,t){if(n==null)return\"\";if(typeof n==\"function\")return ce(n,Me(n));if(typeof n==\"string\")return C(n);switch(n){case O:return C(\"Suspense\");case P:return C(\"SuspenseList\")}if(typeof n==\"object\")switch(n.$$typeof){case F:return Ve(n.render);case R:return w(n.type,a,t);case B:{var o=n,c=o._payload,b=o._init;try{return w(b(c),a,t)}catch{}}}return\"\"}var T=Object.prototype.hasOwnProperty,be={},ie=g.ReactDebugCurrentFrame;function A(n){if(n){var a=n._owner,t=w(n.type,n._source,a?a.type:null);ie.setExtraStackFrame(t)}else ie.setExtraStackFrame(null)}function Le(n,a,t,o,c){{var b=Function.call.bind(T);for(var d in n)if(b(n,d)){var s=void 0;try{if(typeof n[d]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof n[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=n[d](a,d,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(l){s=l}s&&!(s instanceof Error)&&(A(c),u(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,d,typeof s),A(null)),s instanceof Error&&!(s.message in be)&&(be[s.message]=!0,A(c),u(\"Failed %s type: %s\",t,s.message),A(null))}}}var qe=Array.isArray;function W(n){return qe(n)}function ze(n){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&n[Symbol.toStringTag]||n.constructor.name||\"Object\";return t}}function Ge(n){try{return le(n),!1}catch{return!0}}function le(n){return\"\"+n}function me(n){if(Ge(n))return u(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",ze(n)),le(n)}var v=g.ReactCurrentOwner,Xe={key:!0,ref:!0,__self:!0,__source:!0},ue,fe,V;V={};function Ke(n){if(T.call(n,\"ref\")){var a=Object.getOwnPropertyDescriptor(n,\"ref\").get;if(a&&a.isReactWarning)return!1}return n.ref!==void 0}function He(n){if(T.call(n,\"key\")){var a=Object.getOwnPropertyDescriptor(n,\"key\").get;if(a&&a.isReactWarning)return!1}return n.key!==void 0}function Ze(n,a){if(typeof n.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);V[t]||(u('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),n.ref),V[t]=!0)}}function Je(n,a){{var t=function(){ue||(ue=!0,u(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(n,\"key\",{get:t,configurable:!0})}}function Qe(n,a){{var t=function(){fe||(fe=!0,u(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(n,\"ref\",{get:t,configurable:!0})}}var en=function(n,a,t,o,c,b,d){var s={$$typeof:e,type:n,key:a,ref:t,props:d,_owner:b};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:c}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(n,a,t,o,c){{var b,d={},s=null,f=null;t!==void 0&&(me(t),s=\"\"+t),He(a)&&(me(a.key),s=\"\"+a.key),Ke(a)&&(f=a.ref,Ze(a,c));for(b in a)T.call(a,b)&&!Xe.hasOwnProperty(b)&&(d[b]=a[b]);if(n&&n.defaultProps){var l=n.defaultProps;for(b in l)d[b]===void 0&&(d[b]=l[b])}if(s||f){var m=typeof n==\"function\"?n.displayName||n.name||\"Unknown\":n;s&&Je(d,m),f&&Qe(d,m)}return en(n,s,f,c,o,v.current,d)}}var M=g.ReactCurrentOwner,he=g.ReactDebugCurrentFrame;function E(n){if(n){var a=n._owner,t=w(n.type,n._source,a?a.type:null);he.setExtraStackFrame(t)}else he.setExtraStackFrame(null)}var L;L=!1;function q(n){return typeof n==\"object\"&&n!==null&&n.$$typeof===e}function _e(){{if(M.current){var n=p(M.current.type);if(n)return`\n\nCheck the render method of \\``+n+\"`.\"}return\"\"}}function rn(n){{if(n!==void 0){var a=n.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=n.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(n){{var a=_e();if(!a){var t=typeof n==\"string\"?n:n.displayName||n.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(n,a){{if(!n._store||n._store.validated||n.key!=null)return;n._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";n&&n._owner&&n._owner!==M.current&&(o=\" It was passed a child from \"+p(n._owner.type)+\".\"),E(n),u('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ye(n,a){{if(typeof n!=\"object\")return;if(W(n))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):l=typeof n,u(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",l,s)}var m=nn(n,a,t,c,b);if(m==null)return m;if(d){var h=a.children;if(h!==void 0)if(o)if(W(h)){for(var j=0;j{\"use strict\";Ue.exports=je()});var kn={};fn(kn,{default:()=>yn,frontmatter:()=>pn});var r=hn(ve()),pn={title:\"@chronark/access\",description:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\",repository:\"chronark/access\",date:\"2022-11-13\"};function Fe(i){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",h2:\"h2\",a:\"a\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\"},i.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(e.p,{children:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.ul,{children:[`\n`,(0,r.jsxDEV)(e.li,{children:\"Fully typed\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.li,{children:\"Zero dependencies\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.li,{children:\"Serializable to store in a database\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.h2,{id:\"install\",children:[(0,r.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,r.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this),\"Install\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(e.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#e1e4e8\"},children:\"npm i @chronark/access\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.h2,{id:\"usage\",children:[(0,r.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#usage\",children:(0,r.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this),\"Usage\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:104},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { AccessControl, Role } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:146},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:207},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:247},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@chronark/access\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:284},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:348},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:3,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Define all your resources and their access patterns\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:4,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * key => resource\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * value => array of access types\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"type\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:60},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:97},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:143},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:180},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:217},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#FFAB70\"},children:\"user\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:58},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\":\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:135},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:225},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:263},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:316},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"dance\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:354},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:407},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#FFAB70\"},children:\"team\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:58},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\":\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:135},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:225},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:263},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:316},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"};\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Create an access control instance and pass the Statements type to enjoy full\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:15,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * type safety\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:17,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"ac\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:136},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:173},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:210},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:247},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:286},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"AccessControl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:323},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:372},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:412},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">();\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:458},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Now you can define one or more roles by specifying the access permissions\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:21,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * This is already fully typed and typescript will let you know if you try to\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:23,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * use anything, that is not defined in the Statements type.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:24,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"role\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:138},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:175},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" ac.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:212},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"newRole\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:252},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:295},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" user: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:65},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:117},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:155},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:208},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:27,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" team: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:65},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:117},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:29,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:29,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:31,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Simulate storing and retrieving the role in a database\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:32,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:33,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:33,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * The idea here is, that you can store permissions alongside an API token.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:34,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Now, when you verify the token, you can also verify the access permissions.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:35,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:36,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:36,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"serialized\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:144},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:181},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" role.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:218},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"toString\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:260},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"();\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:304},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:38,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:39,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Note how you can pass in the Statements type again, to get full type safety\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:40,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:40,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:41,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:41,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"recovered\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:143},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:180},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" Role.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:217},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"fromString\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:259},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:305},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:345},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">(serialized);\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:391},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:43,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:44,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:44,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * Validate the role by specifying the resource and the required access\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:45,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:45,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" *\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:46,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" * everything is fully typed\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:47,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:47,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\" */\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:48,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:[(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:20},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:61},this),(0,r.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:98},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:137},this),(0,r.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:174},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" recovered.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:211},this),(0,r.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"authorize\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:258},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:303},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"team\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:341},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:393},this),(0,r.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:432},this),(0,r.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"]});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:484},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:49,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// res.success => boolean\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:51,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:51,columnNumber:1},this),`\n`,(0,r.jsxDEV)(e.span,{className:\"line\",children:(0,r.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// res.error => string | undefined provides a reason for failure\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:52,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:52,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:22,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(i={}){let{wrapper:e}=i.components||{};return e?(0,r.jsxDEV)(e,Object.assign({},i,{children:(0,r.jsxDEV)(Fe,i,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-6ad71b92-85b6-42db-903f-a6ab9fb0c9bd.mdx\"},this):Fe(i)}var yn=Nn;return _n(kn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var y=Object.getOwnPropertyNames;var E=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var F=(l,e)=>()=>(e||l((e={exports:{}}).exports,e),e.exports),N=(l,e)=>{for(var s in e)a(l,s,{get:e[s],enumerable:!0})},o=(l,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let c of y(e))!m.call(l,c)&&c!==s&&a(l,c,{get:()=>e[c],enumerable:!(r=p(e,c))||r.enumerable});return l};var u=(l,e,s)=>(s=l!=null?h(E(l)):{},o(e||!l||!l.__esModule?a(s,\"default\",{value:l,enumerable:!0}):s,l)),f=l=>o(a({},\"__esModule\",{value:!0}),l);var t=F((v,i)=>{i.exports=_jsx_runtime});var B={};N(B,{default:()=>D,frontmatter:()=>g});var n=u(t()),g={title:\"@chronark/access\",description:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\",repository:\"chronark/access\",date:\"2022-11-13\"};function d(l){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",h2:\"h2\",a:\"a\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\"},l.components);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(e.p,{children:\"A minimal library for access control. It is designed to be used together with opaque access tokens by providing a simple interface to define roles with different access permissions and verifying requests to resources.\"}),`\n`,(0,n.jsxs)(e.ul,{children:[`\n`,(0,n.jsx)(e.li,{children:\"Fully typed\"}),`\n`,(0,n.jsx)(e.li,{children:\"Zero dependencies\"}),`\n`,(0,n.jsx)(e.li,{children:\"Serializable to store in a database\"}),`\n`]}),`\n`,(0,n.jsxs)(e.h2,{id:\"install\",children:[(0,n.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,n.jsx)(e.span,{className:\"icon icon-link\"})}),\"Install\"]}),`\n`,(0,n.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsx)(e.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,n.jsx)(e.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#e1e4e8\"},children:\"npm i @chronark/access\"})})})})}),`\n`,(0,n.jsxs)(e.h2,{id:\"usage\",children:[(0,n.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#usage\",children:(0,n.jsx)(e.span,{className:\"icon icon-link\"})}),\"Usage\"]}),`\n`,(0,n.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxs)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { AccessControl, Role } \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@chronark/access\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Define all your resources and their access patterns\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * key => resource\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * value => array of access types\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"type\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\"user\"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\":\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"dance\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\"team\"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\":\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"];\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"};\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Create an access control instance and pass the Statements type to enjoy full\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * type safety\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"ac\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"AccessControl\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">();\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Now you can define one or more roles by specifying the access permissions\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * This is already fully typed and typescript will let you know if you try to\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * use anything, that is not defined in the Statements type.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"role\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" ac.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"newRole\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" user: [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"write\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" team: [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Simulate storing and retrieving the role in a database\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * The idea here is, that you can store permissions alongside an API token.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Now, when you verify the token, you can also verify the access permissions.\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"serialized\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" role.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"toString\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"();\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Note how you can pass in the Statements type again, to get full type safety\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"recovered\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" Role.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"fromString\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"<\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Statements\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">(serialized);\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"/**\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * Validate the role by specifying the resource and the required access\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" *\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" * everything is fully typed\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\" */\"})}),`\n`,(0,n.jsxs)(e.span,{className:\"line\",children:[(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,n.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" recovered.\"}),(0,n.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"authorize\"}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"team\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", [\"}),(0,n.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"read\"'}),(0,n.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"]});\"})]}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// res.success => boolean\"})}),`\n`,(0,n.jsx)(e.span,{className:\"line\",children:(0,n.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// res.error => string | undefined provides a reason for failure\"})})]})})})]})}function A(l={}){let{wrapper:e}=l.components||{};return e?(0,n.jsx)(e,Object.assign({},l,{children:(0,n.jsx)(d,l)})):d(l)}var D=A;return f(B);})();\n;return Component;" }, "_id": "projects/access.mdx", "_raw": { diff --git a/.contentlayer/generated/Project/projects__envshare.mdx.json b/.contentlayer/generated/Project/projects__envshare.mdx.json index c8adbe8..acb0b08 100644 --- a/.contentlayer/generated/Project/projects__envshare.mdx.json +++ b/.contentlayer/generated/Project/projects__envshare.mdx.json @@ -5,8 +5,8 @@ "url": "https://envshare.dev", "repository": "chronark/envshare", "body": { - "raw": "\nEnvShare is a simple tool to share environment variables securely. It uses\n**AES-GCM** to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.\n\n## Features\n\n- **Shareable Links:** Share your environment variables securely by sending a\n link\n- **End-to-End Encryption:** AES-GCM encryption is used to encrypt your data\n before sending it to the server\n- **Limit number of reads:** Limit the number of times a link can be read\n- **Auto Expire:** Automatically expire links and delete data after a certain\n time\n\n\n\n![](img/envshare.png)\n\n## Built with\n\n- [Next.js](https://nextjs.org)\n- [tailwindcss](https://tailwindcss.com)\n- Deployed on [Vercel](https://vercel.com?utm_source=envshare)\n- Data stored on [Upstash](https://upstash.com?utm_source=envshare)\n\n## Deploy your own\n\nDetailed instructions can be found [here](https://envshare.dev/deploy)\n\nAll you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17)\n\n\n\n## Configuration\n\n### Environment Variables\n\n`ENABLE_VERCEL_ANALYTICS` Any truthy value will enable Vercel Analytics. This is turned off by default\n\n## Contributing\n\nThis repository uses `pnpm` to manage dependencies. Install it using\n`npm install -g pnpm`\n\nPlease run `pnpm fmt` before committing to format the code.\n\n## Docs\n\nDocs in the README are temporary and will be moved to the website soon.\n\n### API\n\n#### Store a secret\n\n**PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.**\n\nThis endpoint is only meant to store **already encrypted** secrets. The\nencrypted secrets are stored in plain text.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"\n```\n\nYou can add optional headers to configure the ttl and number of reads.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"\n```\n\n- Omitting the `envshare-ttl` header will set a default of 30 days. Disable the\n ttl by setting it to 0. (`envshare-ttl: 0`)\n- Omitting the `envshare-reads` header will simply disable it and allow reading\n for an unlimited number of times.\n\nThis endpoint returns a JSON response with the secret id:\n\n```json\n{\n \"data\": {\n \"id\": \"HdPbXgpvUvNk43oxSdK97u\",\n \"ttl\": 86400,\n \"reads\": 2,\n \"expiresAt\": \"2023-01-19T20:47:28.383Z\",\n \"url\": \"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"\n }\n}\n```\n\n#### Retrieve a secret\n\nYou need an id to retrieve a secret. The id is returned when you store a secret.\n\n```sh-session\n$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\n```\n\n```json\n{\n \"data\": {\n \"secret\": \"Hello\",\n \"remainingReads\": 1\n }\n}\n```", - "code": "var Component=(()=>{var sn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var un=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var X=(l,n)=>()=>(n||l((n={exports:{}}).exports,n),n.exports),hn=(l,n)=>{for(var _ in n)O(l,_,{get:n[_],enumerable:!0})},ye=(l,n,_,x)=>{if(n&&typeof n==\"object\"||typeof n==\"function\")for(let k of un(n))!bn.call(l,k)&&k!==_&&O(l,k,{get:()=>n[k],enumerable:!(x=ln(n,k))||x.enumerable});return l};var fn=(l,n,_)=>(_=l!=null?sn(mn(l)):{},ye(n||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var ve=X((gn,ge)=>{ge.exports=React});var Ee=X(H=>{\"use strict\";(function(){\"use strict\";var l=ve(),n=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),q=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),z=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),L=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var t=J&&e[J]||e[Te];return typeof t==\"function\"?t:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function b(e){{for(var t=arguments.length,c=new Array(t>1?t-1:0),a=1;a=1&&m>=0&&o[u]!==h[m];)m--;for(;u>=1&&m>=0;u--,m--)if(o[u]!==h[m]){if(u!==1||m!==1)do if(u--,m--,m<0||o[u]!==h[m]){var f=`\n`+o[u].replace(\" at new \",\" at \");return e.displayName&&f.includes(\"\")&&(f=f.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,f),f}while(u>=1&&m>=0);break}}}finally{V=!1,I.current=i,Ve(),Error.prepareStackTrace=s}var E=e?e.displayName||e.name:\"\",xe=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,xe),xe}function $e(e,t,c){return se(e,!1)}function Me(e){var t=e.prototype;return!!(t&&t.isReactComponent)}function S(e,t,c){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return $e(e.render);case F:return S(e.type,t,c);case L:{var a=e,s=a._payload,i=a._init;try{return S(i(s),t,c)}catch{}}}return\"\"}var C=Object.prototype.hasOwnProperty,ie={},le=g.ReactDebugCurrentFrame;function P(e){if(e){var t=e._owner,c=S(e.type,e._source,t?t.type:null);le.setExtraStackFrame(c)}else le.setExtraStackFrame(null)}function We(e,t,c,a,s){{var i=Function.call.bind(C);for(var d in e)if(i(e,d)){var o=void 0;try{if(typeof e[d]!=\"function\"){var h=Error((a||\"React class\")+\": \"+c+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}o=e[d](t,d,a,c,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){o=u}o&&!(o instanceof Error)&&(P(s),b(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",a||\"React class\",c,d,typeof o),P(null)),o instanceof Error&&!(o.message in ie)&&(ie[o.message]=!0,P(s),b(\"Failed %s type: %s\",c,o.message),P(null))}}}var Ge=Array.isArray;function Y(e){return Ge(e)}function Xe(e){{var t=typeof Symbol==\"function\"&&Symbol.toStringTag,c=t&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return c}}function He(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(He(e))return b(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Xe(e)),ue(e)}var U=g.ReactCurrentOwner,qe={key:!0,ref:!0,__self:!0,__source:!0},be,he,$;$={};function Ke(e){if(C.call(e,\"ref\")){var t=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(t&&t.isReactWarning)return!1}return e.ref!==void 0}function ze(e){if(C.call(e,\"key\")){var t=Object.getOwnPropertyDescriptor(e,\"key\").get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function Je(e,t){if(typeof e.ref==\"string\"&&U.current&&t&&U.current.stateNode!==t){var c=p(U.current.type);$[c]||(b('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),$[c]=!0)}}function Ze(e,t){{var c=function(){be||(be=!0,b(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",t))};c.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:c,configurable:!0})}}function Qe(e,t){{var c=function(){he||(he=!0,b(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",t))};c.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:c,configurable:!0})}}var en=function(e,t,c,a,s,i,d){var o={$$typeof:n,type:e,key:t,ref:c,props:d,_owner:i};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function nn(e,t,c,a,s){{var i,d={},o=null,h=null;c!==void 0&&(me(c),o=\"\"+c),ze(t)&&(me(t.key),o=\"\"+t.key),Ke(t)&&(h=t.ref,Je(t,s));for(i in t)C.call(t,i)&&!qe.hasOwnProperty(i)&&(d[i]=t[i]);if(e&&e.defaultProps){var u=e.defaultProps;for(i in u)d[i]===void 0&&(d[i]=u[i])}if(o||h){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Ze(d,m),h&&Qe(d,m)}return en(e,o,h,s,a,U.current,d)}}var M=g.ReactCurrentOwner,fe=g.ReactDebugCurrentFrame;function v(e){if(e){var t=e._owner,c=S(e.type,e._source,t?t.type:null);fe.setExtraStackFrame(c)}else fe.setExtraStackFrame(null)}var W;W=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===n}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function rn(e){{if(e!==void 0){var t=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),c=e.lineNumber;return`\n\nCheck your code at `+t+\":\"+c+\".\"}return\"\"}}var pe={};function tn(e){{var t=_e();if(!t){var c=typeof e==\"string\"?e:e.displayName||e.name;c&&(t=`\n\nCheck the top-level render call using <`+c+\">.\")}return t}}function Ne(e,t){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var c=tn(t);if(pe[c])return;pe[c]=!0;var a=\"\";e&&e._owner&&e._owner!==M.current&&(a=\" It was passed a child from \"+p(e._owner.type)+\".\"),v(e),b('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',c,a),v(null)}}function ke(e,t){{if(typeof e!=\"object\")return;if(Y(e))for(var c=0;c\",o=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,b(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,o)}var m=nn(e,t,c,s,i);if(m==null)return m;if(d){var f=t.children;if(f!==void 0)if(a)if(Y(f)){for(var E=0;E{\"use strict\";je.exports=Ee()});var xn={};hn(xn,{default:()=>kn,frontmatter:()=>pn});var r=fn(Ue()),pn={title:\"envshare.dev\",description:\"EnvShare is a simple tool to share environment variables securely. It uses AES-GCM to encrypt your data before sending it to the server. The encryption key never leaves your browser.\",date:\"2023-01-16\",url:\"https://envshare.dev\",repository:\"chronark/envshare\"};function Re(l){let n=Object.assign({p:\"p\",strong:\"strong\",h2:\"h2\",a:\"a\",span:\"span\",ul:\"ul\",li:\"li\",img:\"img\",h3:\"h3\",code:\"code\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(n.p,{children:[`EnvShare is a simple tool to share environment variables securely. It uses\n`,(0,r.jsxDEV)(n.strong,{children:\"AES-GCM\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:11,columnNumber:1},this),` to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"features\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#features\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Features\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Shareable Links:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:3},this),` Share your environment variables securely by sending a\nlink`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"End-to-End Encryption:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:18,columnNumber:3},this),` AES-GCM encryption is used to encrypt your data\nbefore sending it to the server`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Limit number of reads:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:20,columnNumber:3},this),\" Limit the number of times a link can be read\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Auto Expire:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:21,columnNumber:3},this),` Automatically expire links and delete data after a certain\ntime`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.img,{src:\"img/envshare.png\",alt:\"\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:26,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"built-with\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#built-with\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Built with\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://nextjs.org\",children:\"Next.js\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://tailwindcss.com\",children:\"tailwindcss\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:31,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Deployed on \",(0,r.jsxDEV)(n.a,{href:\"https://vercel.com?utm_source=envshare\",children:\"Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:32,columnNumber:15},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Data stored on \",(0,r.jsxDEV)(n.a,{href:\"https://upstash.com?utm_source=envshare\",children:\"Upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:33,columnNumber:18},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:33,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"deploy-your-own\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deploy-your-own\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Deploy your own\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Detailed instructions can be found \",(0,r.jsxDEV)(n.a,{href:\"https://envshare.dev/deploy\",children:\"here\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:37,columnNumber:36},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:`All you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.a,{href:\"https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17\",children:(0,r.jsxDEV)(n.img,{src:\"https://vercel.com/button\",alt:\"Deploy with Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:2},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"configuration\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#configuration\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Configuration\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"environment-variables\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#environment-variables\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Environment Variables\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[(0,r.jsxDEV)(n.code,{children:\"ENABLE_VERCEL_ANALYTICS\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:50,columnNumber:1},this),\" Any truthy value will enable Vercel Analytics. This is turned off by default\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"contributing\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:52,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This repository uses \",(0,r.jsxDEV)(n.code,{children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:54,columnNumber:22},this),` to manage dependencies. Install it using\n`,(0,r.jsxDEV)(n.code,{children:\"npm install -g pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:55,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:54,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Please run \",(0,r.jsxDEV)(n.code,{children:\"pnpm fmt\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:57,columnNumber:12},this),\" before committing to format the code.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:57,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"docs\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#docs\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Docs\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:59,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"Docs in the README are temporary and will be moved to the website soon.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"api\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#api\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"API\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"store-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#store-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Store a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.strong,{children:\"PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:67,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:67,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This endpoint is only meant to store \",(0,r.jsxDEV)(n.strong,{children:\"already encrypted\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:69,columnNumber:38},this),` secrets. The\nencrypted secrets are stored in plain text.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:69,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:72,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You can add optional headers to configure the ttl and number of reads.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:76,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:78,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-ttl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:16},this),` header will set a default of 30 days. Disable the\nttl by setting it to 0. (`,(0,r.jsxDEV)(n.code,{children:\"envshare-ttl: 0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:83,columnNumber:28},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-reads\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:84,columnNumber:16},this),` header will simply disable it and allow reading\nfor an unlimited number of times.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:84,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"This endpoint returns a JSON response with the secret id:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:87,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"id\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:110},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:148},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:218},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"ttl\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"86400\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:149},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:190},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"reads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:113},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"2\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:151},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:188},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"expiresAt\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:117},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"2023-01-19T20:47:28.383Z\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:155},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:227},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"url\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"retrieve-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#retrieve-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this),\"Retrieve a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:101,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You need an id to retrieve a secret. The id is returned when you store a secret.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:103,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:\"$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:105,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:114},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"Hello\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:152},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:205},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"remainingReads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:122},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:160},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:6,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:109,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:n}=l.components||{};return n?(0,r.jsxDEV)(n,Object.assign({},l,{children:(0,r.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-d4d2d8fb-41c5-4256-b52f-0c01563ce72b.mdx\"},this):Re(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "raw": "\nEnvShare is a simple tool to share environment variables securely. It uses\n**AES-GCM** to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.\n\n## Features\n\n- **Shareable Links:** Share your environment variables securely by sending a\n link\n- **End-to-End Encryption:** AES-GCM encryption is used to encrypt your data\n before sending it to the server\n- **Limit number of reads:** Limit the number of times a link can be read\n- **Auto Expire:** Automatically expire links and delete data after a certain\n time\n\n\n\n![](https://github.com/chronark/envshare/raw/main/img/envshare.png)\n\n## Built with\n\n- [Next.js](https://nextjs.org)\n- [tailwindcss](https://tailwindcss.com)\n- Deployed on [Vercel](https://vercel.com?utm_source=envshare)\n- Data stored on [Upstash](https://upstash.com?utm_source=envshare)\n\n## Deploy your own\n\nDetailed instructions can be found [here](https://envshare.dev/deploy)\n\nAll you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17)\n\n\n\n## Configuration\n\n### Environment Variables\n\n`ENABLE_VERCEL_ANALYTICS` Any truthy value will enable Vercel Analytics. This is turned off by default\n\n## Contributing\n\nThis repository uses `pnpm` to manage dependencies. Install it using\n`npm install -g pnpm`\n\nPlease run `pnpm fmt` before committing to format the code.\n\n## Docs\n\nDocs in the README are temporary and will be moved to the website soon.\n\n### API\n\n#### Store a secret\n\n**PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.**\n\nThis endpoint is only meant to store **already encrypted** secrets. The\nencrypted secrets are stored in plain text.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"\n```\n\nYou can add optional headers to configure the ttl and number of reads.\n\n```sh-session\n$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"\n```\n\n- Omitting the `envshare-ttl` header will set a default of 30 days. Disable the\n ttl by setting it to 0. (`envshare-ttl: 0`)\n- Omitting the `envshare-reads` header will simply disable it and allow reading\n for an unlimited number of times.\n\nThis endpoint returns a JSON response with the secret id:\n\n```json\n{\n \"data\": {\n \"id\": \"HdPbXgpvUvNk43oxSdK97u\",\n \"ttl\": 86400,\n \"reads\": 2,\n \"expiresAt\": \"2023-01-19T20:47:28.383Z\",\n \"url\": \"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"\n }\n}\n```\n\n#### Retrieve a secret\n\nYou need an id to retrieve a secret. The id is returned when you store a secret.\n\n```sh-session\n$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\n```\n\n```json\n{\n \"data\": {\n \"secret\": \"Hello\",\n \"remainingReads\": 1\n }\n}\n```", + "code": "var Component=(()=>{var dn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var un=Object.getOwnPropertyNames;var mn=Object.getPrototypeOf,hn=Object.prototype.hasOwnProperty;var X=(l,n)=>()=>(n||l((n={exports:{}}).exports,n),n.exports),bn=(l,n)=>{for(var _ in n)O(l,_,{get:n[_],enumerable:!0})},ye=(l,n,_,x)=>{if(n&&typeof n==\"object\"||typeof n==\"function\")for(let k of un(n))!hn.call(l,k)&&k!==_&&O(l,k,{get:()=>n[k],enumerable:!(x=ln(n,k))||x.enumerable});return l};var fn=(l,n,_)=>(_=l!=null?dn(mn(l)):{},ye(n||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var ve=X((gn,ge)=>{ge.exports=React});var Ee=X(H=>{\"use strict\";(function(){\"use strict\";var l=ve(),n=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),q=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),z=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),L=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var a=J&&e[J]||e[Te];return typeof a==\"function\"?a:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function h(e){{for(var a=arguments.length,t=new Array(a>1?a-1:0),c=1;c=1&&m>=0&&o[u]!==b[m];)m--;for(;u>=1&&m>=0;u--,m--)if(o[u]!==b[m]){if(u!==1||m!==1)do if(u--,m--,m<0||o[u]!==b[m]){var f=`\n`+o[u].replace(\" at new \",\" at \");return e.displayName&&f.includes(\"\")&&(f=f.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,f),f}while(u>=1&&m>=0);break}}}finally{V=!1,I.current=d,Ve(),Error.prepareStackTrace=i}var E=e?e.displayName||e.name:\"\",xe=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,xe),xe}function $e(e,a,t){return ie(e,!1)}function Me(e){var a=e.prototype;return!!(a&&a.isReactComponent)}function S(e,a,t){if(e==null)return\"\";if(typeof e==\"function\")return ie(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return $e(e.render);case F:return S(e.type,a,t);case L:{var c=e,i=c._payload,d=c._init;try{return S(d(i),a,t)}catch{}}}return\"\"}var C=Object.prototype.hasOwnProperty,de={},le=g.ReactDebugCurrentFrame;function P(e){if(e){var a=e._owner,t=S(e.type,e._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function We(e,a,t,c,i){{var d=Function.call.bind(C);for(var s in e)if(d(e,s)){var o=void 0;try{if(typeof e[s]!=\"function\"){var b=Error((c||\"React class\")+\": \"+t+\" type `\"+s+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[s]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw b.name=\"Invariant Violation\",b}o=e[s](a,s,c,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){o=u}o&&!(o instanceof Error)&&(P(i),h(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",c||\"React class\",t,s,typeof o),P(null)),o instanceof Error&&!(o.message in de)&&(de[o.message]=!0,P(i),h(\"Failed %s type: %s\",t,o.message),P(null))}}}var Ge=Array.isArray;function Y(e){return Ge(e)}function Xe(e){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function He(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(He(e))return h(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Xe(e)),ue(e)}var U=g.ReactCurrentOwner,qe={key:!0,ref:!0,__self:!0,__source:!0},he,be,$;$={};function Ke(e){if(C.call(e,\"ref\")){var a=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(a&&a.isReactWarning)return!1}return e.ref!==void 0}function ze(e){if(C.call(e,\"key\")){var a=Object.getOwnPropertyDescriptor(e,\"key\").get;if(a&&a.isReactWarning)return!1}return e.key!==void 0}function Je(e,a){if(typeof e.ref==\"string\"&&U.current&&a&&U.current.stateNode!==a){var t=p(U.current.type);$[t]||(h('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),$[t]=!0)}}function Ze(e,a){{var t=function(){he||(he=!0,h(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,a){{var t=function(){be||(be=!0,h(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var en=function(e,a,t,c,i,d,s){var o={$$typeof:n,type:e,key:a,ref:t,props:s,_owner:d};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:c}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function nn(e,a,t,c,i){{var d,s={},o=null,b=null;t!==void 0&&(me(t),o=\"\"+t),ze(a)&&(me(a.key),o=\"\"+a.key),Ke(a)&&(b=a.ref,Je(a,i));for(d in a)C.call(a,d)&&!qe.hasOwnProperty(d)&&(s[d]=a[d]);if(e&&e.defaultProps){var u=e.defaultProps;for(d in u)s[d]===void 0&&(s[d]=u[d])}if(o||b){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Ze(s,m),b&&Qe(s,m)}return en(e,o,b,i,c,U.current,s)}}var M=g.ReactCurrentOwner,fe=g.ReactDebugCurrentFrame;function v(e){if(e){var a=e._owner,t=S(e.type,e._source,a?a.type:null);fe.setExtraStackFrame(t)}else fe.setExtraStackFrame(null)}var W;W=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===n}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function rn(e){{if(e!==void 0){var a=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(e){{var a=_e();if(!a){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(e,a){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var c=\"\";e&&e._owner&&e._owner!==M.current&&(c=\" It was passed a child from \"+p(e._owner.type)+\".\"),v(e),h('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,c),v(null)}}function ke(e,a){{if(typeof e!=\"object\")return;if(Y(e))for(var t=0;t\",o=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,h(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,o)}var m=nn(e,a,t,i,d);if(m==null)return m;if(s){var f=a.children;if(f!==void 0)if(c)if(Y(f)){for(var E=0;E{\"use strict\";je.exports=Ee()});var xn={};bn(xn,{default:()=>kn,frontmatter:()=>pn});var r=fn(Ue()),pn={title:\"envshare.dev\",description:\"EnvShare is a simple tool to share environment variables securely. It uses AES-GCM to encrypt your data before sending it to the server. The encryption key never leaves your browser.\",date:\"2023-01-16\",url:\"https://envshare.dev\",repository:\"chronark/envshare\"};function Re(l){let n=Object.assign({p:\"p\",strong:\"strong\",h2:\"h2\",a:\"a\",span:\"span\",ul:\"ul\",li:\"li\",img:\"img\",h3:\"h3\",code:\"code\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)(n.p,{children:[`EnvShare is a simple tool to share environment variables securely. It uses\n`,(0,r.jsxDEV)(n.strong,{children:\"AES-GCM\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:11,columnNumber:1},this),` to encrypt your data before sending it to the server. The encryption\nkey never leaves your browser.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"features\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#features\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Features\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Shareable Links:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:3},this),` Share your environment variables securely by sending a\nlink`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"End-to-End Encryption:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:18,columnNumber:3},this),` AES-GCM encryption is used to encrypt your data\nbefore sending it to the server`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Limit number of reads:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:20,columnNumber:3},this),\" Limit the number of times a link can be read\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[(0,r.jsxDEV)(n.strong,{children:\"Auto Expire:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:21,columnNumber:3},this),` Automatically expire links and delete data after a certain\ntime`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.img,{src:\"https://github.com/chronark/envshare/raw/main/img/envshare.png\",alt:\"\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:26,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"built-with\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#built-with\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Built with\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://nextjs.org\",children:\"Next.js\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:(0,r.jsxDEV)(n.a,{href:\"https://tailwindcss.com\",children:\"tailwindcss\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:31,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Deployed on \",(0,r.jsxDEV)(n.a,{href:\"https://vercel.com?utm_source=envshare\",children:\"Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:32,columnNumber:15},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Data stored on \",(0,r.jsxDEV)(n.a,{href:\"https://upstash.com?utm_source=envshare\",children:\"Upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:33,columnNumber:18},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:33,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"deploy-your-own\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deploy-your-own\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Deploy your own\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:35,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Detailed instructions can be found \",(0,r.jsxDEV)(n.a,{href:\"https://envshare.dev/deploy\",children:\"here\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:37,columnNumber:36},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:`All you need is a Redis database on Upstash and a Vercel account. Click the\nbutton below to clone and deploy:`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:39,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.a,{href:\"https://vercel.com/new/clone?demo-title=EnvShare&demo-description=Simple%20Next.js%20%2B%20Upstash%20app%20to%20share%20environment%20variables%20securely%20using%20AES-GCM%20encryption.&demo-url=https%3A%2F%2Fenvshare.dev%2F&demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F5SaFBHXp5FBFJbsTzVqIJ3%2Ff0f8382369b7642fd8103debb9025c11%2Fenvshare.png&project-name=EnvShare&repository-name=envshare&repository-url=https%3A%2F%2Fgithub.com%2Fchronark%2Fenvshare&from=templates&integration-ids=oac_V3R1GIpkoJorr6fqyiwdhl17\",children:(0,r.jsxDEV)(n.img,{src:\"https://vercel.com/button\",alt:\"Deploy with Vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:2},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"configuration\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#configuration\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Configuration\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"environment-variables\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#environment-variables\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Environment Variables\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[(0,r.jsxDEV)(n.code,{children:\"ENABLE_VERCEL_ANALYTICS\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:50,columnNumber:1},this),\" Any truthy value will enable Vercel Analytics. This is turned off by default\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"contributing\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:52,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This repository uses \",(0,r.jsxDEV)(n.code,{children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:54,columnNumber:22},this),` to manage dependencies. Install it using\n`,(0,r.jsxDEV)(n.code,{children:\"npm install -g pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:55,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:54,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"Please run \",(0,r.jsxDEV)(n.code,{children:\"pnpm fmt\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:57,columnNumber:12},this),\" before committing to format the code.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:57,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h2,{id:\"docs\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#docs\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Docs\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:59,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"Docs in the README are temporary and will be moved to the website soon.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h3,{id:\"api\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#api\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"API\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"store-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#store-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Store a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:(0,r.jsxDEV)(n.strong,{children:\"PLEASE NEVER EVER UPLOAD UNENCRYPTED SECRETS.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:67,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:67,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:[\"This endpoint is only meant to store \",(0,r.jsxDEV)(n.strong,{children:\"already encrypted\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:69,columnNumber:38},this),` secrets. The\nencrypted secrets are stored in plain text.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:69,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:72,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You can add optional headers to configure the ttl and number of reads.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:76,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:'$ curl -XPOST -s https://envshare.dev/api/v1/secret -d \"already-encrypted-secret\" -H \"envshare-ttl: 3600\" -H \"envshare-reads: 10\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:78,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.ul,{children:[`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-ttl\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:16},this),` header will set a default of 30 days. Disable the\nttl by setting it to 0. (`,(0,r.jsxDEV)(n.code,{children:\"envshare-ttl: 0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:83,columnNumber:28},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.li,{children:[\"Omitting the \",(0,r.jsxDEV)(n.code,{children:\"envshare-reads\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:84,columnNumber:16},this),` header will simply disable it and allow reading\nfor an unlimited number of times.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:84,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:82,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"This endpoint returns a JSON response with the secret id:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:87,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"id\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:110},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:148},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:218},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"ttl\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"86400\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:149},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:190},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"reads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:113},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"2\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:151},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:188},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"expiresAt\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:117},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"2023-01-19T20:47:28.383Z\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:155},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:227},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"url\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:111},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"http://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.h4,{id:\"retrieve-a-secret\",children:[(0,r.jsxDEV)(n.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#retrieve-a-secret\",children:(0,r.jsxDEV)(n.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this),\"Retrieve a secret\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:101,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.p,{children:\"You need an id to retrieve a secret. The id is returned when you store a secret.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:103,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"sh-session\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#e1e4e8\"},children:\"$ curl -s https://envshare.dev/api/v1/secret/HdPbXgpvUvNk43oxSdK97u\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:105,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsxDEV)(n.pre,{\"data-language\":\"json\",\"data-theme\":\"default\",children:(0,r.jsxDEV)(n.code,{\"data-language\":\"json\",\"data-theme\":\"default\",children:[(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:104},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"data\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:58},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"secret\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:114},this),(0,r.jsxDEV)(n.span,{style:{color:\"#9ECBFF\"},children:'\"Hello\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:152},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:205},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:[(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:20},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:'\"remainingReads\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:60},this),(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\": \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:122},this),(0,r.jsxDEV)(n.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:160},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,r.jsxDEV)(n.span,{className:\"line\",children:(0,r.jsxDEV)(n.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:6,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:109,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:n}=l.components||{};return n?(0,r.jsxDEV)(n,Object.assign({},l,{children:(0,r.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-04a4d33c-3d27-4256-810b-385bc2834cac.mdx\"},this):Re(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" }, "_id": "projects/envshare.mdx", "_raw": { diff --git a/.contentlayer/generated/Project/projects__planetfall.mdx.json b/.contentlayer/generated/Project/projects__planetfall.mdx.json index fa03c82..a9816b1 100644 --- a/.contentlayer/generated/Project/projects__planetfall.mdx.json +++ b/.contentlayer/generated/Project/projects__planetfall.mdx.json @@ -5,7 +5,7 @@ "url": "https://planetfall.io", "body": { "raw": "\n\nI'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.", - "code": "var Component=(()=>{var sr=Object.create;var D=Object.defineProperty;var lr=Object.getOwnPropertyDescriptor;var fr=Object.getOwnPropertyNames;var cr=Object.getPrototypeOf,dr=Object.prototype.hasOwnProperty;var q=(s,l)=>()=>(l||s((l={exports:{}}).exports,l),l.exports),vr=(s,l)=>{for(var b in l)D(s,b,{get:l[b],enumerable:!0})},_e=(s,l,b,y)=>{if(l&&typeof l==\"object\"||typeof l==\"function\")for(let m of fr(l))!dr.call(s,m)&&m!==b&&D(s,m,{get:()=>l[m],enumerable:!(y=lr(l,m))||y.enumerable});return s};var pr=(s,l,b)=>(b=s!=null?sr(cr(s)):{},_e(l||!s||!s.__esModule?D(b,\"default\",{value:s,enumerable:!0}):b,s)),br=s=>_e(D({},\"__esModule\",{value:!0}),s);var Te=q((_r,Re)=>{Re.exports=React});var we=q(z=>{\"use strict\";(function(){\"use strict\";var s=Te(),l=Symbol.for(\"react.element\"),b=Symbol.for(\"react.portal\"),y=Symbol.for(\"react.fragment\"),m=Symbol.for(\"react.strict_mode\"),H=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),K=Symbol.for(\"react.context\"),C=Symbol.for(\"react.forward_ref\"),I=Symbol.for(\"react.suspense\"),Y=Symbol.for(\"react.suspense_list\"),O=Symbol.for(\"react.memo\"),$=Symbol.for(\"react.lazy\"),Se=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,je=\"@@iterator\";function xe(e){if(e===null||typeof e!=\"object\")return null;var r=J&&e[J]||e[je];return typeof r==\"function\"?r:null}var _=s.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function d(e){{for(var r=arguments.length,t=new Array(r>1?r-1:0),n=1;n=1&&c>=0&&a[f]!==v[c];)c--;for(;f>=1&&c>=0;f--,c--)if(a[f]!==v[c]){if(f!==1||c!==1)do if(f--,c--,c<0||a[f]!==v[c]){var p=`\n`+a[f].replace(\" at new \",\" at \");return e.displayName&&p.includes(\"\")&&(p=p.replace(\"\",e.displayName)),typeof e==\"function\"&&j.set(e,p),p}while(f>=1&&c>=0);break}}}finally{M=!1,W.current=u,Me(),Error.prepareStackTrace=i}var T=e?e.displayName||e.name:\"\",Ee=T?S(T):\"\";return typeof e==\"function\"&&j.set(e,Ee),Ee}function Ue(e,r,t){return se(e,!1)}function Le(e){var r=e.prototype;return!!(r&&r.isReactComponent)}function x(e,r,t){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Le(e));if(typeof e==\"string\")return S(e);switch(e){case I:return S(\"Suspense\");case Y:return S(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case C:return Ue(e.render);case O:return x(e.type,r,t);case $:{var n=e,i=n._payload,u=n._init;try{return x(u(i),r,t)}catch{}}}return\"\"}var k=Object.prototype.hasOwnProperty,le={},fe=_.ReactDebugCurrentFrame;function A(e){if(e){var r=e._owner,t=x(e.type,e._source,r?r.type:null);fe.setExtraStackFrame(t)}else fe.setExtraStackFrame(null)}function Be(e,r,t,n,i){{var u=Function.call.bind(k);for(var o in e)if(u(e,o)){var a=void 0;try{if(typeof e[o]!=\"function\"){var v=Error((n||\"React class\")+\": \"+t+\" type `\"+o+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[o]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw v.name=\"Invariant Violation\",v}a=e[o](r,o,n,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(f){a=f}a&&!(a instanceof Error)&&(A(i),d(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",n||\"React class\",t,o,typeof a),A(null)),a instanceof Error&&!(a.message in le)&&(le[a.message]=!0,A(i),d(\"Failed %s type: %s\",t,a.message),A(null))}}}var Ge=Array.isArray;function V(e){return Ge(e)}function qe(e){{var r=typeof Symbol==\"function\"&&Symbol.toStringTag,t=r&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function ze(e){try{return ce(e),!1}catch{return!0}}function ce(e){return\"\"+e}function de(e){if(ze(e))return d(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",qe(e)),ce(e)}var P=_.ReactCurrentOwner,He={key:!0,ref:!0,__self:!0,__source:!0},ve,pe,U;U={};function Xe(e){if(k.call(e,\"ref\")){var r=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(r&&r.isReactWarning)return!1}return e.ref!==void 0}function Ke(e){if(k.call(e,\"key\")){var r=Object.getOwnPropertyDescriptor(e,\"key\").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function Je(e,r){if(typeof e.ref==\"string\"&&P.current&&r&&P.current.stateNode!==r){var t=h(P.current.type);U[t]||(d('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',h(P.current.type),e.ref),U[t]=!0)}}function Ze(e,r){{var t=function(){ve||(ve=!0,d(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,r){{var t=function(){pe||(pe=!0,d(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var er=function(e,r,t,n,i,u,o){var a={$$typeof:l,type:e,key:r,ref:t,props:o,_owner:u};return a._store={},Object.defineProperty(a._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(a,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:n}),Object.defineProperty(a,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:i}),Object.freeze&&(Object.freeze(a.props),Object.freeze(a)),a};function rr(e,r,t,n,i){{var u,o={},a=null,v=null;t!==void 0&&(de(t),a=\"\"+t),Ke(r)&&(de(r.key),a=\"\"+r.key),Xe(r)&&(v=r.ref,Je(r,i));for(u in r)k.call(r,u)&&!He.hasOwnProperty(u)&&(o[u]=r[u]);if(e&&e.defaultProps){var f=e.defaultProps;for(u in f)o[u]===void 0&&(o[u]=f[u])}if(a||v){var c=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;a&&Ze(o,c),v&&Qe(o,c)}return er(e,a,v,i,n,P.current,o)}}var L=_.ReactCurrentOwner,be=_.ReactDebugCurrentFrame;function R(e){if(e){var r=e._owner,t=x(e.type,e._source,r?r.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var B;B=!1;function G(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===l}function he(){{if(L.current){var e=h(L.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function tr(e){{if(e!==void 0){var r=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+r+\":\"+t+\".\"}return\"\"}}var ge={};function nr(e){{var r=he();if(!r){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(r=`\n\nCheck the top-level render call using <`+t+\">.\")}return r}}function me(e,r){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=nr(r);if(ge[t])return;ge[t]=!0;var n=\"\";e&&e._owner&&e._owner!==L.current&&(n=\" It was passed a child from \"+h(e._owner.type)+\".\"),R(e),d('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,n),R(null)}}function ye(e,r){{if(typeof e!=\"object\")return;if(V(e))for(var t=0;t\",a=\" Did you accidentally export a JSX literal instead of a component?\"):f=typeof e,d(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",f,a)}var c=rr(e,r,t,i,u);if(c==null)return c;if(o){var p=r.children;if(p!==void 0)if(n)if(V(p)){for(var T=0;T{\"use strict\";Pe.exports=we()});var yr={};vr(yr,{default:()=>mr,frontmatter:()=>hr});var F=pr(Ce()),hr={title:\"planetfall.io\",description:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\",date:\"2023-04-01\",url:\"https://planetfall.io\"};function Oe(s){let l=Object.assign({p:\"p\"},s.components);return(0,F.jsxDEV)(l.p,{children:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\",lineNumber:10,columnNumber:1},this)}function gr(s={}){let{wrapper:l}=s.components||{};return l?(0,F.jsxDEV)(l,Object.assign({},s,{children:(0,F.jsxDEV)(Oe,s,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-8b013955-b8c3-42ff-8c00-73efc2ac31ac.mdx\"},this):Oe(s)}var mr=gr;return br(yr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var c=Object.create;var a=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var w=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports),h=(o,t)=>{for(var n in t)a(o,n,{get:t[n],enumerable:!0})},l=(o,t,n,i)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let e of m(t))!p.call(o,e)&&e!==n&&a(o,e,{get:()=>t[e],enumerable:!(i=f(t,e))||i.enumerable});return o};var g=(o,t,n)=>(n=o!=null?c(y(o)):{},l(t||!o||!o.__esModule?a(n,\"default\",{value:o,enumerable:!0}):n,o)),b=o=>l(a({},\"__esModule\",{value:!0}),o);var d=w((j,s)=>{s.exports=_jsx_runtime});var I={};h(I,{default:()=>v,frontmatter:()=>A});var r=g(d()),A={title:\"planetfall.io\",description:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\",date:\"2023-04-01\",url:\"https://planetfall.io\"};function u(o){let t=Object.assign({p:\"p\"},o.components);return(0,r.jsx)(t.p,{children:\"I'm building a SAAS, that provides global latency monitoring for your APIs and websites from edge locations around the world. Have you ever wondered how fast your API is in any part of the world? Planetfall allows you to find out and monitor it continuously.\"})}function x(o={}){let{wrapper:t}=o.components||{};return t?(0,r.jsx)(t,Object.assign({},o,{children:(0,r.jsx)(u,o)})):u(o)}var v=x;return b(I);})();\n;return Component;" }, "_id": "projects/planetfall.mdx", "_raw": { diff --git a/.contentlayer/generated/Project/projects__qstash.mdx.json b/.contentlayer/generated/Project/projects__qstash.mdx.json index a4bb7db..4c8d125 100644 --- a/.contentlayer/generated/Project/projects__qstash.mdx.json +++ b/.contentlayer/generated/Project/projects__qstash.mdx.json @@ -5,7 +5,7 @@ "url": "https://upstash.com/qstash", "body": { "raw": "\nQStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\n\n- 100% serverless, no stateful connections required. Messages are pushed to your API.\n- At-least-once delivery guaranteed to any public API\n- Pubsub via topics\n- Delay message delivery\n- Message deduplication\n- Scheduling via CRON\n\n\nFormally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\n\nThere was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\n\n- Works anywhere including serverless and edge.\n- Messaging as a service with no backend for users to run.\n- Lightweight, easy to understand, requires nothing to learn.\n- Price scales to zero.\n\nLet's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\n\nIf you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\n\nWith QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\n\n\nTo learn more about QStash, visit [upstash.com/qstash](upstash.com/qstash).", - "code": "var Component=(()=>{var cr=Object.create;var F=Object.defineProperty;var ur=Object.getOwnPropertyDescriptor;var lr=Object.getOwnPropertyNames;var dr=Object.getPrototypeOf,fr=Object.prototype.hasOwnProperty;var B=(l,t)=>()=>(t||l((t={exports:{}}).exports,t),t.exports),mr=(l,t)=>{for(var v in t)F(l,v,{get:t[v],enumerable:!0})},Ee=(l,t,v,y)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let g of lr(t))!fr.call(l,g)&&g!==v&&F(l,g,{get:()=>t[g],enumerable:!(y=ur(t,g))||y.enumerable});return l};var hr=(l,t,v)=>(v=l!=null?cr(dr(l)):{},Ee(t||!l||!l.__esModule?F(v,\"default\",{value:l,enumerable:!0}):v,l)),br=l=>Ee(F({},\"__esModule\",{value:!0}),l);var we=B((Er,ke)=>{ke.exports=React});var xe=B(z=>{\"use strict\";(function(){\"use strict\";var l=we(),t=Symbol.for(\"react.element\"),v=Symbol.for(\"react.portal\"),y=Symbol.for(\"react.fragment\"),g=Symbol.for(\"react.strict_mode\"),G=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),T=Symbol.for(\"react.forward_ref\"),U=Symbol.for(\"react.suspense\"),A=Symbol.for(\"react.suspense_list\"),j=Symbol.for(\"react.memo\"),I=Symbol.for(\"react.lazy\"),je=Symbol.for(\"react.offscreen\"),K=Symbol.iterator,Pe=\"@@iterator\";function Se(e){if(e===null||typeof e!=\"object\")return null;var r=K&&e[K]||e[Pe];return typeof r==\"function\"?r:null}var k=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function m(e){{for(var r=arguments.length,n=new Array(r>1?r-1:0),a=1;a=1&&f>=0&&o[d]!==h[f];)f--;for(;d>=1&&f>=0;d--,f--)if(o[d]!==h[f]){if(d!==1||f!==1)do if(d--,f--,f<0||o[d]!==h[f]){var b=`\n`+o[d].replace(\" at new \",\" at \");return e.displayName&&b.includes(\"\")&&(b=b.replace(\"\",e.displayName)),typeof e==\"function\"&&S.set(e,b),b}while(d>=1&&f>=0);break}}}finally{M=!1,W.current=c,Me(),Error.prepareStackTrace=s}var x=e?e.displayName||e.name:\"\",ye=x?P(x):\"\";return typeof e==\"function\"&&S.set(e,ye),ye}function Ve(e,r,n){return ce(e,!1)}function Le(e){var r=e.prototype;return!!(r&&r.isReactComponent)}function C(e,r,n){if(e==null)return\"\";if(typeof e==\"function\")return ce(e,Le(e));if(typeof e==\"string\")return P(e);switch(e){case U:return P(\"Suspense\");case A:return P(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case T:return Ve(e.render);case j:return C(e.type,r,n);case I:{var a=e,s=a._payload,c=a._init;try{return C(c(s),r,n)}catch{}}}return\"\"}var O=Object.prototype.hasOwnProperty,ue={},le=k.ReactDebugCurrentFrame;function D(e){if(e){var r=e._owner,n=C(e.type,e._source,r?r.type:null);le.setExtraStackFrame(n)}else le.setExtraStackFrame(null)}function qe(e,r,n,a,s){{var c=Function.call.bind(O);for(var i in e)if(c(e,i)){var o=void 0;try{if(typeof e[i]!=\"function\"){var h=Error((a||\"React class\")+\": \"+n+\" type `\"+i+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[i]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}o=e[i](r,i,a,n,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(d){o=d}o&&!(o instanceof Error)&&(D(s),m(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",a||\"React class\",n,i,typeof o),D(null)),o instanceof Error&&!(o.message in ue)&&(ue[o.message]=!0,D(s),m(\"Failed %s type: %s\",n,o.message),D(null))}}}var Qe=Array.isArray;function $(e){return Qe(e)}function Be(e){{var r=typeof Symbol==\"function\"&&Symbol.toStringTag,n=r&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return n}}function ze(e){try{return de(e),!1}catch{return!0}}function de(e){return\"\"+e}function fe(e){if(ze(e))return m(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Be(e)),de(e)}var N=k.ReactCurrentOwner,Ge={key:!0,ref:!0,__self:!0,__source:!0},me,he,V;V={};function Xe(e){if(O.call(e,\"ref\")){var r=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(r&&r.isReactWarning)return!1}return e.ref!==void 0}function He(e){if(O.call(e,\"key\")){var r=Object.getOwnPropertyDescriptor(e,\"key\").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function Ke(e,r){if(typeof e.ref==\"string\"&&N.current&&r&&N.current.stateNode!==r){var n=p(N.current.type);V[n]||(m('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(N.current.type),e.ref),V[n]=!0)}}function Je(e,r){{var n=function(){me||(me=!0,m(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};n.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:n,configurable:!0})}}function Ze(e,r){{var n=function(){he||(he=!0,m(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",r))};n.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:n,configurable:!0})}}var er=function(e,r,n,a,s,c,i){var o={$$typeof:t,type:e,key:r,ref:n,props:i,_owner:c};return o._store={},Object.defineProperty(o._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(o,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:a}),Object.defineProperty(o,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(o.props),Object.freeze(o)),o};function rr(e,r,n,a,s){{var c,i={},o=null,h=null;n!==void 0&&(fe(n),o=\"\"+n),He(r)&&(fe(r.key),o=\"\"+r.key),Xe(r)&&(h=r.ref,Ke(r,s));for(c in r)O.call(r,c)&&!Ge.hasOwnProperty(c)&&(i[c]=r[c]);if(e&&e.defaultProps){var d=e.defaultProps;for(c in d)i[c]===void 0&&(i[c]=d[c])}if(o||h){var f=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;o&&Je(i,f),h&&Ze(i,f)}return er(e,o,h,s,a,N.current,i)}}var L=k.ReactCurrentOwner,be=k.ReactDebugCurrentFrame;function w(e){if(e){var r=e._owner,n=C(e.type,e._source,r?r.type:null);be.setExtraStackFrame(n)}else be.setExtraStackFrame(null)}var q;q=!1;function Q(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===t}function ve(){{if(L.current){var e=p(L.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function nr(e){{if(e!==void 0){var r=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),n=e.lineNumber;return`\n\nCheck your code at `+r+\":\"+n+\".\"}return\"\"}}var pe={};function ar(e){{var r=ve();if(!r){var n=typeof e==\"string\"?e:e.displayName||e.name;n&&(r=`\n\nCheck the top-level render call using <`+n+\">.\")}return r}}function _e(e,r){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var n=ar(r);if(pe[n])return;pe[n]=!0;var a=\"\";e&&e._owner&&e._owner!==L.current&&(a=\" It was passed a child from \"+p(e._owner.type)+\".\"),w(e),m('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',n,a),w(null)}}function ge(e,r){{if(typeof e!=\"object\")return;if($(e))for(var n=0;n\",o=\" Did you accidentally export a JSX literal instead of a component?\"):d=typeof e,m(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",d,o)}var f=rr(e,r,n,s,c);if(f==null)return f;if(i){var b=r.children;if(b!==void 0)if(a)if($(b)){for(var x=0;x{\"use strict\";Re.exports=xe()});var gr={};mr(gr,{default:()=>_r,frontmatter:()=>vr});var u=hr(Ne()),vr={title:\"QStash\",description:\"QStash is a fully managed serverless queue and messaging service designed for the serverless era.\",date:\"2022-07-18\",url:\"https://upstash.com/qstash\"};function Te(l){let t=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",a:\"a\"},l.components);return(0,u.jsxDEV)(u.Fragment,{children:[(0,u.jsxDEV)(t.p,{children:\"QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.ul,{children:[`\n`,(0,u.jsxDEV)(t.li,{children:\"100% serverless, no stateful connections required. Messages are pushed to your API.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"At-least-once delivery guaranteed to any public API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Pubsub via topics\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Delay message delivery\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Message deduplication\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Scheduling via CRON\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:16,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"Formally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"There was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.ul,{children:[`\n`,(0,u.jsxDEV)(t.li,{children:\"Works anywhere including serverless and edge.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Messaging as a service with no backend for users to run.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Lightweight, easy to understand, requires nothing to learn.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.li,{children:\"Price scales to zero.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:26,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"Let's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"If you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:\"With QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,u.jsxDEV)(t.p,{children:[\"To learn more about QStash, visit \",(0,u.jsxDEV)(t.a,{href:\"upstash.com/qstash\",children:\"upstash.com/qstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:35,columnNumber:35},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:35,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\",lineNumber:1,columnNumber:1},this)}function pr(l={}){let{wrapper:t}=l.components||{};return t?(0,u.jsxDEV)(t,Object.assign({},l,{children:(0,u.jsxDEV)(Te,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-bf5d5ea4-ad36-4222-9010-4c12fdd3ac3b.mdx\"},this):Te(l)}var _r=pr;return br(gr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var d=Object.create;var r=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var p=Object.getPrototypeOf,f=Object.prototype.hasOwnProperty;var g=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),v=(n,e)=>{for(var t in e)r(n,t,{get:e[t],enumerable:!0})},o=(n,e,t,i)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of m(e))!f.call(n,a)&&a!==t&&r(n,a,{get:()=>e[a],enumerable:!(i=u(e,a))||i.enumerable});return n};var w=(n,e,t)=>(t=n!=null?d(p(n)):{},o(e||!n||!n.__esModule?r(t,\"default\",{value:n,enumerable:!0}):t,n)),y=n=>o(r({},\"__esModule\",{value:!0}),n);var c=g((Q,l)=>{l.exports=_jsx_runtime});var x={};v(x,{default:()=>P,frontmatter:()=>b});var s=w(c()),b={title:\"QStash\",description:\"QStash is a fully managed serverless queue and messaging service designed for the serverless era.\",date:\"2022-07-18\",url:\"https://upstash.com/qstash\"};function h(n){let e=Object.assign({p:\"p\",ul:\"ul\",li:\"li\",a:\"a\"},n.components);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(e.p,{children:\"QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.\"}),`\n`,(0,s.jsxs)(e.ul,{children:[`\n`,(0,s.jsx)(e.li,{children:\"100% serverless, no stateful connections required. Messages are pushed to your API.\"}),`\n`,(0,s.jsx)(e.li,{children:\"At-least-once delivery guaranteed to any public API\"}),`\n`,(0,s.jsx)(e.li,{children:\"Pubsub via topics\"}),`\n`,(0,s.jsx)(e.li,{children:\"Delay message delivery\"}),`\n`,(0,s.jsx)(e.li,{children:\"Message deduplication\"}),`\n`,(0,s.jsx)(e.li,{children:\"Scheduling via CRON\"}),`\n`]}),`\n`,(0,s.jsx)(e.p,{children:\"Formally, QStash is a message queue and task scheduler designed for serverless runtimes. Informally, QStash is a glue for your serverless functions.\"}),`\n`,(0,s.jsx)(e.p,{children:\"There was a perception serverless was only good for simple tasks. Not anymore. People build powerful systems with serverless stack. Powerful systems are composed of multiple components. Communication among those components is a big engineering problem. There are already great solutions for this problem. But we think existing solutions do not fit in serverless space. Either they are too complex or not designed to work with stateless runtimes. So we want a solution which (is):\"}),`\n`,(0,s.jsxs)(e.ul,{children:[`\n`,(0,s.jsx)(e.li,{children:\"Works anywhere including serverless and edge.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Messaging as a service with no backend for users to run.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Lightweight, easy to understand, requires nothing to learn.\"}),`\n`,(0,s.jsx)(e.li,{children:\"Price scales to zero.\"}),`\n`]}),`\n`,(0,s.jsx)(e.p,{children:\"Let's talk about a real world example. We have an e-commerce app and we want to send an informational email after each purchase. We have a service (an API route) for new purchases (newPurchase) and a second service for sending emails and notifications (sendEmail). We can call the sendEmail service from the newPurchase service. But what if the call fails? Should we wait for the response and retry? What if too many calls congest the sendEmail service and the service does not respond on time? You need to handle all these cases in your newPurchase service. Moreover, when you change the contract of sendEmail service; you have to update your newPurchase service too.\"}),`\n`,(0,s.jsx)(e.p,{children:\"If you use QStash in the above example, you simply send a request to QStash from the newPurchase service. QStash will queue the request and call the sendEmail service. If the service does not respond, QStash will retry with a backoff strategy. The latency of sendEmail service will not affect the newPurchase service, because it will not wait for a response from the sendEmail service. QStash decouples the newPurchase and sendEmail services. You can update both services independently as long as you keep the message format compatible.\"}),`\n`,(0,s.jsx)(e.p,{children:\"With QStash, you can add delays to the requests. Send an email 3 days after the shipment to remind the customer to add a review. You can also schedule tasks. You can send the requests with a CRON expression, so it will be run repetitively.\"}),`\n`,(0,s.jsxs)(e.p,{children:[\"To learn more about QStash, visit \",(0,s.jsx)(e.a,{href:\"upstash.com/qstash\",children:\"upstash.com/qstash\"}),\".\"]})]})}function S(n={}){let{wrapper:e}=n.components||{};return e?(0,s.jsx)(e,Object.assign({},n,{children:(0,s.jsx)(h,n)})):h(n)}var P=S;return y(x);})();\n;return Component;" }, "_id": "projects/qstash.mdx", "_raw": { diff --git a/.contentlayer/generated/Project/projects__terraform-provider-vercel.mdx.json b/.contentlayer/generated/Project/projects__terraform-provider-vercel.mdx.json index ea44a9c..b88f594 100644 --- a/.contentlayer/generated/Project/projects__terraform-provider-vercel.mdx.json +++ b/.contentlayer/generated/Project/projects__terraform-provider-vercel.mdx.json @@ -6,7 +6,7 @@ "repository": "chronark/terraform-provider-vercel", "body": { "raw": "\n\n\nBack in the day when Vercel didn't have an official Terraform provider, I wrote one. \nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.\n\n```hcl\nterraform {\n required_providers {\n vercel = {\n source = \"registry.terraform.io/chronark/vercel\"\n version = \">=0.10.3\"\n }\n }\n}\n\nprovider \"vercel\" {\n token = \"\"\n}\n\nresource \"vercel_project\" \"my_project\" {\n name = \"project-via-terraform\"\n git_repository {\n type = \"github\"\n repo = \"chronark/terraform-provider-vercel\"\n }\n}\n```\n\nIt was a fun project and I learned a lot about Terraform and Vercel's API. \nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.\n\nThere have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\n\nNow that Vercel have stepped in, I have decided to [deprecate](https://twitter.com/chronark_/status/1517759708983177218) this one on April 23rd 2022. \n\nPlease use the [official provider](https://registry.terraform.io/providers/vercel/vercel/latest) instead.", - "code": "var Component=(()=>{var sr=Object.create;var S=Object.defineProperty;var ir=Object.getOwnPropertyDescriptor;var lr=Object.getOwnPropertyNames;var ur=Object.getPrototypeOf,mr=Object.prototype.hasOwnProperty;var G=(l,r)=>()=>(r||l((r={exports:{}}).exports,r),r.exports),fr=(l,r)=>{for(var _ in r)S(l,_,{get:r[_],enumerable:!0})},ve=(l,r,_,k)=>{if(r&&typeof r==\"object\"||typeof r==\"function\")for(let y of lr(r))!mr.call(l,y)&&y!==_&&S(l,y,{get:()=>r[y],enumerable:!(k=ir(r,y))||k.enumerable});return l};var hr=(l,r,_)=>(_=l!=null?sr(ur(l)):{},ve(r||!l||!l.__esModule?S(_,\"default\",{value:l,enumerable:!0}):_,l)),br=l=>ve(S({},\"__esModule\",{value:!0}),l);var ge=G((vr,xe)=>{xe.exports=React});var Ee=G(z=>{\"use strict\";(function(){\"use strict\";var l=ge(),r=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),k=Symbol.for(\"react.fragment\"),y=Symbol.for(\"react.strict_mode\"),K=Symbol.for(\"react.profiler\"),X=Symbol.for(\"react.provider\"),H=Symbol.for(\"react.context\"),R=Symbol.for(\"react.forward_ref\"),A=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),F=Symbol.for(\"react.memo\"),B=Symbol.for(\"react.lazy\"),Fe=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Te=\"@@iterator\";function we(e){if(e===null||typeof e!=\"object\")return null;var a=J&&e[J]||e[Te];return typeof a==\"function\"?a:null}var x=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function f(e){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&m>=0&&c[u]!==h[m];)m--;for(;u>=1&&m>=0;u--,m--)if(c[u]!==h[m]){if(u!==1||m!==1)do if(u--,m--,m<0||c[u]!==h[m]){var b=`\n`+c[u].replace(\" at new \",\" at \");return e.displayName&&b.includes(\"\")&&(b=b.replace(\"\",e.displayName)),typeof e==\"function\"&&w.set(e,b),b}while(u>=1&&m>=0);break}}}finally{Y=!1,I.current=i,Ye(),Error.prepareStackTrace=s}var E=e?e.displayName||e.name:\"\",ke=E?T(E):\"\";return typeof e==\"function\"&&w.set(e,ke),ke}function We(e,a,t){return se(e,!1)}function Me(e){var a=e.prototype;return!!(a&&a.isReactComponent)}function C(e,a,t){if(e==null)return\"\";if(typeof e==\"function\")return se(e,Me(e));if(typeof e==\"string\")return T(e);switch(e){case A:return T(\"Suspense\");case D:return T(\"SuspenseList\")}if(typeof e==\"object\")switch(e.$$typeof){case R:return We(e.render);case F:return C(e.type,a,t);case B:{var o=e,s=o._payload,i=o._init;try{return C(i(s),a,t)}catch{}}}return\"\"}var O=Object.prototype.hasOwnProperty,ie={},le=x.ReactDebugCurrentFrame;function P(e){if(e){var a=e._owner,t=C(e.type,e._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function Le(e,a,t,o,s){{var i=Function.call.bind(O);for(var d in e)if(i(e,d)){var c=void 0;try{if(typeof e[d]!=\"function\"){var h=Error((o||\"React class\")+\": \"+t+\" type `\"+d+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof e[d]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw h.name=\"Invariant Violation\",h}c=e[d](a,d,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(u){c=u}c&&!(c instanceof Error)&&(P(s),f(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,d,typeof c),P(null)),c instanceof Error&&!(c.message in ie)&&(ie[c.message]=!0,P(s),f(\"Failed %s type: %s\",t,c.message),P(null))}}}var qe=Array.isArray;function $(e){return qe(e)}function Ge(e){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&e[Symbol.toStringTag]||e.constructor.name||\"Object\";return t}}function ze(e){try{return ue(e),!1}catch{return!0}}function ue(e){return\"\"+e}function me(e){if(ze(e))return f(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Ge(e)),ue(e)}var U=x.ReactCurrentOwner,Ke={key:!0,ref:!0,__self:!0,__source:!0},fe,he,W;W={};function Xe(e){if(O.call(e,\"ref\")){var a=Object.getOwnPropertyDescriptor(e,\"ref\").get;if(a&&a.isReactWarning)return!1}return e.ref!==void 0}function He(e){if(O.call(e,\"key\")){var a=Object.getOwnPropertyDescriptor(e,\"key\").get;if(a&&a.isReactWarning)return!1}return e.key!==void 0}function Je(e,a){if(typeof e.ref==\"string\"&&U.current&&a&&U.current.stateNode!==a){var t=p(U.current.type);W[t]||(f('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(U.current.type),e.ref),W[t]=!0)}}function Ze(e,a){{var t=function(){fe||(fe=!0,f(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"key\",{get:t,configurable:!0})}}function Qe(e,a){{var t=function(){he||(he=!0,f(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(e,\"ref\",{get:t,configurable:!0})}}var er=function(e,a,t,o,s,i,d){var c={$$typeof:r,type:e,key:a,ref:t,props:d,_owner:i};return c._store={},Object.defineProperty(c._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(c,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(c,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:s}),Object.freeze&&(Object.freeze(c.props),Object.freeze(c)),c};function rr(e,a,t,o,s){{var i,d={},c=null,h=null;t!==void 0&&(me(t),c=\"\"+t),He(a)&&(me(a.key),c=\"\"+a.key),Xe(a)&&(h=a.ref,Je(a,s));for(i in a)O.call(a,i)&&!Ke.hasOwnProperty(i)&&(d[i]=a[i]);if(e&&e.defaultProps){var u=e.defaultProps;for(i in u)d[i]===void 0&&(d[i]=u[i])}if(c||h){var m=typeof e==\"function\"?e.displayName||e.name||\"Unknown\":e;c&&Ze(d,m),h&&Qe(d,m)}return er(e,c,h,s,o,U.current,d)}}var M=x.ReactCurrentOwner,be=x.ReactDebugCurrentFrame;function g(e){if(e){var a=e._owner,t=C(e.type,e._source,a?a.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var L;L=!1;function q(e){return typeof e==\"object\"&&e!==null&&e.$$typeof===r}function _e(){{if(M.current){var e=p(M.current.type);if(e)return`\n\nCheck the render method of \\``+e+\"`.\"}return\"\"}}function nr(e){{if(e!==void 0){var a=e.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=e.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function ar(e){{var a=_e();if(!a){var t=typeof e==\"string\"?e:e.displayName||e.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(e,a){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var t=ar(a);if(pe[t])return;pe[t]=!0;var o=\"\";e&&e._owner&&e._owner!==M.current&&(o=\" It was passed a child from \"+p(e._owner.type)+\".\"),g(e),f('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),g(null)}}function ye(e,a){{if(typeof e!=\"object\")return;if($(e))for(var t=0;t\",c=\" Did you accidentally export a JSX literal instead of a component?\"):u=typeof e,f(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",u,c)}var m=rr(e,a,t,s,i);if(m==null)return m;if(d){var b=a.children;if(b!==void 0)if(o)if($(b)){for(var E=0;E{\"use strict\";je.exports=Ee()});var yr={};fr(yr,{default:()=>Nr,frontmatter:()=>_r});var n=hr(Ue()),_r={title:\"Vercel Terraform Provider\",description:\"A Terraform provider for Vercel. It has been deprecated it when Vercel rolled out their official provider.\",date:\"2021-03-16\",repository:\"chronark/terraform-provider-vercel\",url:\"https://registry.terraform.io/providers/chronark/vercel/latest\"};function Re(l){let r=Object.assign({p:\"p\",div:\"div\",pre:\"pre\",code:\"code\",span:\"span\",a:\"a\"},l.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(r.p,{children:`Back in the day when Vercel didn't have an official Terraform provider, I wrote one.\nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(r.pre,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(r.code,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"terraform\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:149},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"required_providers\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:58},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:112},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" vercel\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:66},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:103},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:140},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"{\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:177},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" source \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:70},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:107},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"registry.terraform.io/chronark/vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:144},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" version \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:70},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:107},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\">=0.10.3\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:144},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"provider\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:155},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" token\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:63},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:100},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:137},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:174},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"resource\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"vercel_project\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:163},this),(0,n.jsxDEV)(r.span,{style:{color:\"#79B8FF\"},children:'\"my_project\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:200},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:258},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" name\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:62},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:99},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:136},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"project-via-terraform\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:173},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#B392F0\"},children:\"git_repository\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:58},this),(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:108},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" type\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:138},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"github\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:175},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:[(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" repo\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:20},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:64},this),(0,n.jsxDEV)(r.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:101},this),(0,n.jsxDEV)(r.span,{style:{color:\"#FFAB70\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:138},this),(0,n.jsxDEV)(r.span,{style:{color:\"#9ECBFF\"},children:'\"chronark/terraform-provider-vercel\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:175},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\" }\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:19,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.span,{className:\"line\",children:(0,n.jsxDEV)(r.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:20,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:`It was a fun project and I learned a lot about Terraform and Vercel's API.\nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:38,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:\"There have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:41,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:[\"Now that Vercel have stepped in, I have decided to \",(0,n.jsxDEV)(r.a,{href:\"https://twitter.com/chronark_/status/1517759708983177218\",children:\"deprecate\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:43,columnNumber:52},this),\" this one on April 23rd 2022.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:43,columnNumber:1},this),`\n`,(0,n.jsxDEV)(r.p,{children:[\"Please use the \",(0,n.jsxDEV)(r.a,{href:\"https://registry.terraform.io/providers/vercel/vercel/latest\",children:\"official provider\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:45,columnNumber:16},this),\" instead.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:45,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\",lineNumber:1,columnNumber:1},this)}function pr(l={}){let{wrapper:r}=l.components||{};return r?(0,n.jsxDEV)(r,Object.assign({},l,{children:(0,n.jsxDEV)(Re,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-dc2636e0-fc29-44c4-adf0-6019d02e96da.mdx\"},this):Re(l)}var Nr=pr;return br(yr);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var p=Object.create;var a=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var F=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),f=(n,e)=>{for(var l in e)a(n,l,{get:e[l],enumerable:!0})},o=(n,e,l,c)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let s of E(e))!m.call(n,s)&&s!==l&&a(n,s,{get:()=>e[s],enumerable:!(c=h(e,s))||c.enumerable});return n};var v=(n,e,l)=>(l=n!=null?p(y(n)):{},o(e||!n||!n.__esModule?a(l,\"default\",{value:n,enumerable:!0}):l,n)),u=n=>o(a({},\"__esModule\",{value:!0}),n);var i=F((_,t)=>{t.exports=_jsx_runtime});var w={};f(w,{default:()=>g,frontmatter:()=>B});var r=v(i()),B={title:\"Vercel Terraform Provider\",description:\"A Terraform provider for Vercel. It has been deprecated it when Vercel rolled out their official provider.\",date:\"2021-03-16\",repository:\"chronark/terraform-provider-vercel\",url:\"https://registry.terraform.io/providers/chronark/vercel/latest\"};function d(n){let e=Object.assign({p:\"p\",div:\"div\",pre:\"pre\",code:\"code\",span:\"span\",a:\"a\"},n.components);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(e.p,{children:`Back in the day when Vercel didn't have an official Terraform provider, I wrote one.\nI needed to manage my Vercel projects and especially sync environment variables from different cloud providers.\nTerraform was great to provision some postgres databases on digital ocean, but there was no way to sync the credentials with Vercel.`}),`\n`,(0,r.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,r.jsx)(e.pre,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:(0,r.jsxs)(e.code,{\"data-language\":\"hcl\",\"data-theme\":\"default\",children:[(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"terraform\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"required_providers\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" vercel\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"{\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" source \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"registry.terraform.io/chronark/vercel\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" version \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\">=0.10.3\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"provider\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"vercel\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" token\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"resource\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"vercel_project\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#79B8FF\"},children:'\"my_project\"'}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" name\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"project-via-terraform\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"git_repository\"}),(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" type\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"github\"'})]}),`\n`,(0,r.jsxs)(e.span,{className:\"line\",children:[(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" repo\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,r.jsx)(e.span,{style:{color:\"#FFAB70\"},children:\" \"}),(0,r.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"chronark/terraform-provider-vercel\"'})]}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }\"})}),`\n`,(0,r.jsx)(e.span,{className:\"line\",children:(0,r.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})})]})})}),`\n`,(0,r.jsx)(e.p,{children:`It was a fun project and I learned a lot about Terraform and Vercel's API.\nIt gave me the opportunity to contribute to the Terraform ecosystem and my appreciation for the work that the Terraform team does is immense.`}),`\n`,(0,r.jsx)(e.p,{children:\"There have been quite a few individuals and teams that have used this provider and I am happy that it has been useful to you.\"}),`\n`,(0,r.jsxs)(e.p,{children:[\"Now that Vercel have stepped in, I have decided to \",(0,r.jsx)(e.a,{href:\"https://twitter.com/chronark_/status/1517759708983177218\",children:\"deprecate\"}),\" this one on April 23rd 2022.\"]}),`\n`,(0,r.jsxs)(e.p,{children:[\"Please use the \",(0,r.jsx)(e.a,{href:\"https://registry.terraform.io/providers/vercel/vercel/latest\",children:\"official provider\"}),\" instead.\"]})]})}function N(n={}){let{wrapper:e}=n.components||{};return e?(0,r.jsx)(e,Object.assign({},n,{children:(0,r.jsx)(d,n)})):d(n)}var g=N;return u(w);})();\n;return Component;" }, "_id": "projects/terraform-provider-vercel.mdx", "_raw": { diff --git a/.contentlayer/generated/Project/projects__upstash-kafka.mdx.json b/.contentlayer/generated/Project/projects__upstash-kafka.mdx.json index 829e058..9181a8e 100644 --- a/.contentlayer/generated/Project/projects__upstash-kafka.mdx.json +++ b/.contentlayer/generated/Project/projects__upstash-kafka.mdx.json @@ -6,7 +6,7 @@ "repository": "upstash/upstash-kafka", "body": { "raw": "\n\nAn HTTP/REST based Kafka client built on top of\n[Upstash REST API](https://docs.upstash.com/kafka/rest).\n\nIt is the only connectionless (HTTP based) Kafka client and designed for:\n\n- Serverless functions (AWS Lambda ...)\n- Cloudflare Workers (see the example)\n- Fastly Compute@Edge\n- Next.js Edge, Remix ...\n- Client side web/mobile applications\n- WebAssembly and other environments where HTTP is preferred over TCP\n connections.\n\n# Installation\n\n```bash\nnpm install @upstash/kafka\n```\n\n# Quickstart\n\n## Auth\n\n1. Go to [upstash](https://console.upstash.com/kafka) and select your database.\n2. Copy the `REST API` secrets at the bottom of the page\n\n```typescript\nimport { Kafka } from \"@upstash/kafka\"\n\nconst kafka = new Kafka({\n url: \"\",\n username: \"\",\n password: \"\",\n})\n```\n\n## Produce a single message\n\n```typescript\nconst p = kafka.producer()\nconst message = { hello: \"world\" } // Objects will get serialized using `JSON.stringify`\nconst res = await p.produce(\"\", message)\nconst res = await p.produce(\"\", message, {\n partition: 1,\n timestamp: 12345,\n key: \"\",\n headers: [{ key: \"traceId\", value: \"85a9f12\" }],\n})\n```\n\n## Produce multiple messages.\n\nThe same options from the example above can be set for every message.\n\n```typescript\nconst p = kafka.producer()\nconst res = await p.produceMany([\n {\n topic: \"my.topic\",\n value: { hello: \"world\" },\n // ...options\n },\n {\n topic: \"another.topic\",\n value: \"another message\",\n // ...options\n },\n])\n```\n\n## Consume\n\nThe first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.\n\n```typescript\nconst c = kafka.consumer()\nconst messages = await c.consume({\n consumerGroupId: \"group_1\",\n instanceId: \"instance_1\",\n topics: [\"test.topic\"],\n autoOffsetReset: \"earliest\",\n})\n```\n\nMore examples can be found in the\n[docstring](https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265)\n\n## Commit manually\n\nWhile `consume` can handle committing automatically, you can also use\n`Consumer.commit` to manually commit.\n\n```typescript\nconst consumerGroupId = \"mygroup\"\nconst instanceId = \"myinstance\"\nconst topic = \"my.topic\"\n\nconst c = kafka.consumer()\nconst messages = await c.consume({\n consumerGroupId,\n instanceId,\n topics: [topic],\n autoCommit: false,\n})\n\nfor (const message of messages) {\n // message handling logic\n\n await c.commit({\n consumerGroupId,\n instanceId,\n offset: {\n topic: message.topic,\n partition: message.partition,\n offset: message.offset,\n },\n })\n}\n```\n\n## Fetch\n\nYou can also manage offsets manually by using `Consumer.fetch`\n\n```typescript\nconst c = kafka.consumer()\nconst messages = await c.fetch({\n topic: \"greeting\",\n partition: 3,\n offset: 42,\n timeout: 1000,\n})\n```\n\n## Examples\n\nSee [/examples](https://github.com/upstash/upstash-kafka/tree/main/examples) as\nwell as various examples in the docstrings of each method.\n\n# Contributing\n\n## Requirements\n\n- [nodejs](https://nodejs.org) v14.x or higher\n- [pnpm](https://pnpm.io/installation)\n\n## Setup\n\n0. Install dependencies using `pnpm install`\n1. Create a kafka instance on upstash.\n [docs](https://docs.upstash.com/kafka#create-a-kafka-cluster)\n2. Create the following topics: `blue`, `red`, `green`.\n [docs](https://docs.upstash.com/kafka#create-a-topic)\n\n The partitions or retention settings don't matter at this time.\n\n3. Create `.env` file with your kafka secrets `cp .env.example .env`\n\n## Running tests\n\n```bash\npnpm test\n```\n", - "code": "var Component=(()=>{var dn=Object.create;var P=Object.defineProperty;var mn=Object.getOwnPropertyDescriptor;var ln=Object.getOwnPropertyNames;var un=Object.getPrototypeOf,hn=Object.prototype.hasOwnProperty;var G=(m,e)=>()=>(e||m((e={exports:{}}).exports,e),e.exports),fn=(m,e)=>{for(var _ in e)P(m,_,{get:e[_],enumerable:!0})},ye=(m,e,_,x)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let k of ln(e))!hn.call(m,k)&&k!==_&&P(m,k,{get:()=>e[k],enumerable:!(x=mn(e,k))||x.enumerable});return m};var bn=(m,e,_)=>(_=m!=null?dn(un(m)):{},ye(e||!m||!m.__esModule?P(_,\"default\",{value:m,enumerable:!0}):_,m)),_n=m=>ye(P({},\"__esModule\",{value:!0}),m);var Ee=G((gn,ge)=>{ge.exports=React});var je=G(q=>{\"use strict\";(function(){\"use strict\";var m=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),H=Symbol.for(\"react.profiler\"),z=Symbol.for(\"react.provider\"),X=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),O=Symbol.for(\"react.suspense\"),A=Symbol.for(\"react.suspense_list\"),C=Symbol.for(\"react.memo\"),D=Symbol.for(\"react.lazy\"),Ce=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Re=\"@@iterator\";function Te(r){if(r===null||typeof r!=\"object\")return null;var a=J&&r[J]||r[Re];return typeof a==\"function\"?a:null}var g=m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function h(r){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&u>=0&&s[l]!==f[u];)u--;for(;l>=1&&u>=0;l--,u--)if(s[l]!==f[u]){if(l!==1||u!==1)do if(l--,u--,u<0||s[l]!==f[u]){var b=`\n`+s[l].replace(\" at new \",\" at \");return r.displayName&&b.includes(\"\")&&(b=b.replace(\"\",r.displayName)),typeof r==\"function\"&&T.set(r,b),b}while(l>=1&&u>=0);break}}}finally{W=!1,I.current=i,We(),Error.prepareStackTrace=d}var j=r?r.displayName||r.name:\"\",xe=j?R(j):\"\";return typeof r==\"function\"&&T.set(r,xe),xe}function Me(r,a,t){return de(r,!1)}function $e(r){var a=r.prototype;return!!(a&&a.isReactComponent)}function w(r,a,t){if(r==null)return\"\";if(typeof r==\"function\")return de(r,$e(r));if(typeof r==\"string\")return R(r);switch(r){case O:return R(\"Suspense\");case A:return R(\"SuspenseList\")}if(typeof r==\"object\")switch(r.$$typeof){case F:return Me(r.render);case C:return w(r.type,a,t);case D:{var o=r,d=o._payload,i=o._init;try{return w(i(d),a,t)}catch{}}}return\"\"}var S=Object.prototype.hasOwnProperty,ie={},me=g.ReactDebugCurrentFrame;function B(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);me.setExtraStackFrame(t)}else me.setExtraStackFrame(null)}function Ve(r,a,t,o,d){{var i=Function.call.bind(S);for(var c in r)if(i(r,c)){var s=void 0;try{if(typeof r[c]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+c+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof r[c]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=r[c](a,c,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(l){s=l}s&&!(s instanceof Error)&&(B(d),h(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,c,typeof s),B(null)),s instanceof Error&&!(s.message in ie)&&(ie[s.message]=!0,B(d),h(\"Failed %s type: %s\",t,s.message),B(null))}}}var Ke=Array.isArray;function Y(r){return Ke(r)}function Ge(r){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&r[Symbol.toStringTag]||r.constructor.name||\"Object\";return t}}function qe(r){try{return le(r),!1}catch{return!0}}function le(r){return\"\"+r}function ue(r){if(qe(r))return h(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",Ge(r)),le(r)}var v=g.ReactCurrentOwner,He={key:!0,ref:!0,__self:!0,__source:!0},he,fe,M;M={};function ze(r){if(S.call(r,\"ref\")){var a=Object.getOwnPropertyDescriptor(r,\"ref\").get;if(a&&a.isReactWarning)return!1}return r.ref!==void 0}function Xe(r){if(S.call(r,\"key\")){var a=Object.getOwnPropertyDescriptor(r,\"key\").get;if(a&&a.isReactWarning)return!1}return r.key!==void 0}function Je(r,a){if(typeof r.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);M[t]||(h('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),r.ref),M[t]=!0)}}function Qe(r,a){{var t=function(){he||(he=!0,h(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"key\",{get:t,configurable:!0})}}function Ze(r,a){{var t=function(){fe||(fe=!0,h(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"ref\",{get:t,configurable:!0})}}var en=function(r,a,t,o,d,i,c){var s={$$typeof:e,type:r,key:a,ref:t,props:c,_owner:i};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:d}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(r,a,t,o,d){{var i,c={},s=null,f=null;t!==void 0&&(ue(t),s=\"\"+t),Xe(a)&&(ue(a.key),s=\"\"+a.key),ze(a)&&(f=a.ref,Je(a,d));for(i in a)S.call(a,i)&&!He.hasOwnProperty(i)&&(c[i]=a[i]);if(r&&r.defaultProps){var l=r.defaultProps;for(i in l)c[i]===void 0&&(c[i]=l[i])}if(s||f){var u=typeof r==\"function\"?r.displayName||r.name||\"Unknown\":r;s&&Qe(c,u),f&&Ze(c,u)}return en(r,s,f,d,o,v.current,c)}}var $=g.ReactCurrentOwner,be=g.ReactDebugCurrentFrame;function E(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);be.setExtraStackFrame(t)}else be.setExtraStackFrame(null)}var V;V=!1;function K(r){return typeof r==\"object\"&&r!==null&&r.$$typeof===e}function _e(){{if($.current){var r=p($.current.type);if(r)return`\n\nCheck the render method of \\``+r+\"`.\"}return\"\"}}function rn(r){{if(r!==void 0){var a=r.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=r.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(r){{var a=_e();if(!a){var t=typeof r==\"string\"?r:r.displayName||r.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(r,a){{if(!r._store||r._store.validated||r.key!=null)return;r._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";r&&r._owner&&r._owner!==$.current&&(o=\" It was passed a child from \"+p(r._owner.type)+\".\"),E(r),h('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ke(r,a){{if(typeof r!=\"object\")return;if(Y(r))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):l=typeof r,h(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",l,s)}var u=nn(r,a,t,d,i);if(u==null)return u;if(c){var b=a.children;if(b!==void 0)if(o)if(Y(b)){for(var j=0;j{\"use strict\";Ue.exports=je()});var xn={};fn(xn,{default:()=>kn,frontmatter:()=>pn});var n=bn(ve()),pn={title:\"@upstash/kafka\",description:\"A fully typed Kafka client built for Upstash Kafka and HTTP, perfect for serverless and edge runtimes\",date:\"2022-01-08\",url:\"https://upstash.com/kafka\",repository:\"upstash/upstash-kafka\"};function Fe(m){let e=Object.assign({p:\"p\",a:\"a\",ul:\"ul\",li:\"li\",h1:\"h1\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\",h2:\"h2\",ol:\"ol\"},m.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(e.p,{children:[`An HTTP/REST based Kafka client built on top of\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka/rest\",children:\"Upstash REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"It is the only connectionless (HTTP based) Kafka client and designed for:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Cloudflare Workers (see the example)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Fastly Compute@Edge\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Next.js Edge, Remix ...\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Client side web/mobile applications\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:`WebAssembly and other environments where HTTP is preferred over TCP\nconnections.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"installation\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#installation\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Installation\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:223},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:260},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"quickstart\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quickstart\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Quickstart\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"auth\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#auth\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Auth\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ol,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:[\"Go to \",(0,n.jsxDEV)(e.a,{href:\"https://console.upstash.com/kafka\",children:\"upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:10},this),\" and select your database.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[\"Copy the \",(0,n.jsxDEV)(e.code,{children:\"REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:35,columnNumber:13},this),\" secrets at the bottom of the page\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:35,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Kafka } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/kafka\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:270},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:250},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Kafka\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:326},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:367},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:63},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:141},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" username: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:68},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:151},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" password: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:68},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:151},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:37,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"produce-a-single-message\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-a-single-message\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Produce a single message\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:47,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:141},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:178},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { hello: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:215},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:314},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// Objects will get serialized using `JSON.stringify`\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:353},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:371},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:408},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", message)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:472},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:371},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:408},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", message, {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:472},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:106},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" timestamp: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"12345\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:110},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" key: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:63},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" headers: [{ key: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"traceId\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", value: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:130},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"85a9f12\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" }],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:230},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:49,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"produce-multiple-messages\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-multiple-messages\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Produce multiple messages.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:61,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"The same options from the example above can be set for every message.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:63,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:137},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:174},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:211},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:248},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"produceMany\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:328},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"([\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:375},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:123},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: { hello: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:76},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:60},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:128},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another message\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:130},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:60},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"])\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:65,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"consume\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#consume\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Consume\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:81,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:`The first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.`},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:83,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:376},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"group_1\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:130},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"instance_1\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:70},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:128},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"test.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:125},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoOffsetReset: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"earliest\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:75},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:131},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:89,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[`More examples can be found in the\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265\",children:\"docstring\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:100,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:99,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"commit-manually\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#commit-manually\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Commit manually\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:102,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"While \",(0,n.jsxDEV)(e.code,{children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:104,columnNumber:7},this),` can handle committing automatically, you can also use\n`,(0,n.jsxDEV)(e.code,{children:\"Consumer.commit\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:105,columnNumber:1},this),\" to manually commit.\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:104,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"consumerGroupId\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:270},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:307},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"mygroup\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:344},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"instanceId\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:218},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"myinstance\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:255},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"topic\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:250},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:172},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:209},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:252},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:296},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:376},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [topic],\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoCommit: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"false\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:70},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:111},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"for\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" (\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:59},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:97},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:218},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"of\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:255},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" messages) {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:293},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// message handling logic\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:58},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:58},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:99},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"commit\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:180},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: {\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: message.topic,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: message.partition,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: message.offset,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:22,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:23,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:25,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:107,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"fetch\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#fetch\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Fetch\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:135,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"You can also manage offsets manually by using \",(0,n.jsxDEV)(e.code,{children:\"Consumer.fetch\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:137,columnNumber:47},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:137,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:256},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:293},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:336},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:380},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:142},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:179},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:253},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:294},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"fetch\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:333},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:374},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"greeting\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:65},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:121},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"3\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:106},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"42\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:66},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:104},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" timeout: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1000\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:107},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:7,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:139,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"examples\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#examples\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Examples\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:149,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"See \",(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-kafka/tree/main/examples\",children:\"/examples\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:151,columnNumber:5},this),` as\nwell as various examples in the docstrings of each method.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:151,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h1,{id:\"contributing\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Contributing\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:154,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"requirements\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#requirements\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Requirements\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:156,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:[(0,n.jsxDEV)(e.a,{href:\"https://nodejs.org\",children:\"nodejs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:3},this),\" v14.x or higher\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:(0,n.jsxDEV)(e.a,{href:\"https://pnpm.io/installation\",children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:159,columnNumber:3},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:159,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:158,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"setup\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#setup\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Setup\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:161,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ol,{start:\"0\",children:[`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Install dependencies using \",(0,n.jsxDEV)(e.code,{children:\"pnpm install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:31},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[`Create a kafka instance on upstash.\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-kafka-cluster\",children:\"docs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:165,columnNumber:4},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:164,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:164,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create the following topics: \",(0,n.jsxDEV)(e.code,{children:\"blue\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:33},this),\", \",(0,n.jsxDEV)(e.code,{children:\"red\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:41},this),\", \",(0,n.jsxDEV)(e.code,{children:\"green\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:48},this),`.\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-topic\",children:\"docs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:167,columnNumber:4},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:4},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"The partitions or retention settings don't matter at this time.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:169,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:166,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create \",(0,n.jsxDEV)(e.code,{children:\".env\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:11},this),\" file with your kafka secrets \",(0,n.jsxDEV)(e.code,{children:\"cp .env.example .env\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:47},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:4},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:171,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:163,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"running-tests\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#running-tests\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this),\"Running tests\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:173,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"pnpm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"test\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:181},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:175,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(m={}){let{wrapper:e}=m.components||{};return e?(0,n.jsxDEV)(e,Object.assign({},m,{children:(0,n.jsxDEV)(Fe,m,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-5e269ef8-6826-490c-bd49-efe8111a9163.mdx\"},this):Fe(m)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var a=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,m=Object.prototype.hasOwnProperty;var u=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),F=(n,e)=>{for(var s in e)a(n,s,{get:e[s],enumerable:!0})},o=(n,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let c of E(e))!m.call(n,c)&&c!==s&&a(n,c,{get:()=>e[c],enumerable:!(r=p(e,c))||r.enumerable});return n};var g=(n,e,s)=>(s=n!=null?h(y(n)):{},o(e||!n||!n.__esModule?a(s,\"default\",{value:n,enumerable:!0}):s,n)),f=n=>o(a({},\"__esModule\",{value:!0}),n);var t=u((v,i)=>{i.exports=_jsx_runtime});var b={};F(b,{default:()=>B,frontmatter:()=>N});var l=g(t()),N={title:\"@upstash/kafka\",description:\"A fully typed Kafka client built for Upstash Kafka and HTTP, perfect for serverless and edge runtimes\",date:\"2022-01-08\",url:\"https://upstash.com/kafka\",repository:\"upstash/upstash-kafka\"};function d(n){let e=Object.assign({p:\"p\",a:\"a\",ul:\"ul\",li:\"li\",h1:\"h1\",span:\"span\",div:\"div\",pre:\"pre\",code:\"code\",h2:\"h2\",ol:\"ol\"},n.components);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(e.p,{children:[`An HTTP/REST based Kafka client built on top of\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka/rest\",children:\"Upstash REST API\"}),\".\"]}),`\n`,(0,l.jsx)(e.p,{children:\"It is the only connectionless (HTTP based) Kafka client and designed for:\"}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsx)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"}),`\n`,(0,l.jsx)(e.li,{children:\"Cloudflare Workers (see the example)\"}),`\n`,(0,l.jsx)(e.li,{children:\"Fastly Compute@Edge\"}),`\n`,(0,l.jsx)(e.li,{children:\"Next.js Edge, Remix ...\"}),`\n`,(0,l.jsx)(e.li,{children:\"Client side web/mobile applications\"}),`\n`,(0,l.jsx)(e.li,{children:`WebAssembly and other environments where HTTP is preferred over TCP\nconnections.`}),`\n`]}),`\n`,(0,l.jsxs)(e.h1,{id:\"installation\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#installation\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Installation\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/kafka\"})]})})})}),`\n`,(0,l.jsxs)(e.h1,{id:\"quickstart\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quickstart\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Quickstart\"]}),`\n`,(0,l.jsxs)(e.h2,{id:\"auth\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#auth\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Auth\"]}),`\n`,(0,l.jsxs)(e.ol,{children:[`\n`,(0,l.jsxs)(e.li,{children:[\"Go to \",(0,l.jsx)(e.a,{href:\"https://console.upstash.com/kafka\",children:\"upstash\"}),\" and select your database.\"]}),`\n`,(0,l.jsxs)(e.li,{children:[\"Copy the \",(0,l.jsx)(e.code,{children:\"REST API\"}),\" secrets at the bottom of the page\"]}),`\n`]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Kafka } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/kafka\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"kafka\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Kafka\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" username: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" password: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"produce-a-single-message\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-a-single-message\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Produce a single message\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { hello: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" } \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// Objects will get serialized using `JSON.stringify`\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", message)\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produce\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", message, {\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" timestamp: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"12345\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" key: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" headers: [{ key: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"traceId\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", value: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"85a9f12\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" }],\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"produce-multiple-messages\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#produce-multiple-messages\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Produce multiple messages.\"]}),`\n`,(0,l.jsx)(e.p,{children:\"The same options from the example above can be set for every message.\"}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"p\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"producer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"res\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" p.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"produceMany\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"([\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: { hello: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"world\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" {\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" value: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"another message\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// ...options\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"])\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"consume\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#consume\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Consume\"]}),`\n`,(0,l.jsx)(e.p,{children:`The first time a consumer is created, it needs to figure out the group\ncoordinator by asking the Kafka brokers and joins the consumer group. This\nprocess takes some time to complete. That's why when a consumer instance is\ncreated first time, it may return empty messages until consumer group\ncoordination is completed.`}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"group_1\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"instance_1\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"test.topic\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"],\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoOffsetReset: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"earliest\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.p,{children:[`More examples can be found in the\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-kafka/blob/main/pkg/consumer.ts#L265\",children:\"docstring\"})]}),`\n`,(0,l.jsxs)(e.h2,{id:\"commit-manually\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#commit-manually\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Commit manually\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"While \",(0,l.jsx)(e.code,{children:\"consume\"}),` can handle committing automatically, you can also use\n`,(0,l.jsx)(e.code,{children:\"Consumer.commit\"}),\" to manually commit.\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"consumerGroupId\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"mygroup\"'})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"instanceId\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"myinstance\"'})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"topic\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"my.topic\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consume\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topics: [topic],\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" autoCommit: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"false\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"for\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" (\"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"message\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"of\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" messages) {\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// message handling logic\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"commit\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" consumerGroupId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" instanceId,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: {\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: message.topic,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: message.partition,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: message.offset,\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" },\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"}\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"fetch\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#fetch\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Fetch\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"You can also manage offsets manually by using \",(0,l.jsx)(e.code,{children:\"Consumer.fetch\"})]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"typescript\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"c\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" kafka.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"consumer\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"()\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"messages\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" c.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"fetch\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" topic: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"greeting\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" partition: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"3\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" offset: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"42\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" timeout: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1000\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\",\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})})]})})}),`\n`,(0,l.jsxs)(e.h2,{id:\"examples\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#examples\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Examples\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"See \",(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-kafka/tree/main/examples\",children:\"/examples\"}),` as\nwell as various examples in the docstrings of each method.`]}),`\n`,(0,l.jsxs)(e.h1,{id:\"contributing\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#contributing\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Contributing\"]}),`\n`,(0,l.jsxs)(e.h2,{id:\"requirements\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#requirements\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Requirements\"]}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsxs)(e.li,{children:[(0,l.jsx)(e.a,{href:\"https://nodejs.org\",children:\"nodejs\"}),\" v14.x or higher\"]}),`\n`,(0,l.jsx)(e.li,{children:(0,l.jsx)(e.a,{href:\"https://pnpm.io/installation\",children:\"pnpm\"})}),`\n`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"setup\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#setup\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Setup\"]}),`\n`,(0,l.jsxs)(e.ol,{start:\"0\",children:[`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Install dependencies using \",(0,l.jsx)(e.code,{children:\"pnpm install\"})]}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[`Create a kafka instance on upstash.\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-kafka-cluster\",children:\"docs\"})]}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Create the following topics: \",(0,l.jsx)(e.code,{children:\"blue\"}),\", \",(0,l.jsx)(e.code,{children:\"red\"}),\", \",(0,l.jsx)(e.code,{children:\"green\"}),`.\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/kafka#create-a-topic\",children:\"docs\"})]}),`\n`,(0,l.jsx)(e.p,{children:\"The partitions or retention settings don't matter at this time.\"}),`\n`]}),`\n`,(0,l.jsxs)(e.li,{children:[`\n`,(0,l.jsxs)(e.p,{children:[\"Create \",(0,l.jsx)(e.code,{children:\".env\"}),\" file with your kafka secrets \",(0,l.jsx)(e.code,{children:\"cp .env.example .env\"})]}),`\n`]}),`\n`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"running-tests\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#running-tests\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Running tests\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"pnpm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"test\"})]})})})})]})}function k(n={}){let{wrapper:e}=n.components||{};return e?(0,l.jsx)(e,Object.assign({},n,{children:(0,l.jsx)(d,n)})):d(n)}var B=k;return f(b);})();\n;return Component;" }, "_id": "projects/upstash-kafka.mdx", "_raw": { diff --git a/.contentlayer/generated/Project/projects__upstash-redis.mdx.json b/.contentlayer/generated/Project/projects__upstash-redis.mdx.json index 833d3f9..1ead1d5 100644 --- a/.contentlayer/generated/Project/projects__upstash-redis.mdx.json +++ b/.contentlayer/generated/Project/projects__upstash-redis.mdx.json @@ -6,7 +6,7 @@ "repository": "upstash/upstash-redis", "body": { "raw": "\n\n`@upstash/redis` is an HTTP/REST based Redis client for typescript, built on top\nof [Upstash REST API](https://docs.upstash.com/features/restapi).\n\nIt is the only connectionless (HTTP based) Redis client and designed for:\n\n- Serverless functions (AWS Lambda ...)\n- Cloudflare Workers (see\n [the example](https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers))\n- Fastly Compute@Edge (see\n [the example](https://github.com/upstash/upstash-redis/tree/main/examples/fastly))\n- Next.js, Jamstack ...\n- Client side web/mobile applications\n- WebAssembly\n- and other environments where HTTP is preferred over TCP.\n\nSee\n[the list of APIs](https://docs.upstash.com/features/restapi#rest---redis-api-compatibility)\nsupported.\n\n## Quick Start\n\n### Install\n\n#### Node.js\n\n```bash\nnpm install @upstash/redis\n```\n\n#### Deno\n\n```ts\nimport { Redis } from \"https://deno.land/x/upstash_redis/mod.ts\";\n```\n\n### Create database\n\nCreate a new redis database on [upstash](https://console.upstash.com/)\n\n## Basic Usage:\n\n```ts\nimport { Redis } from \"@upstash/redis\"\n\nconst redis = new Redis({\n url: ,\n token: ,\n})\n\n// string\nawait redis.set('key', 'value');\nlet data = await redis.get('key');\nconsole.log(data)\n\nawait redis.set('key2', 'value2', {ex: 1});\n\n// sorted set\nawait redis.zadd('scores', { score: 1, member: 'team1' })\ndata = await redis.zrange('scores', 0, 100 )\nconsole.log(data)\n\n// list\nawait redis.lpush('elements', 'magnesium')\ndata = await redis.lrange('elements', 0, 100 )\nconsole.log(data)\n\n// hash\nawait redis.hset('people', {name: 'joe'})\ndata = await redis.hget('people', 'name' )\nconsole.log(data)\n\n// sets\nawait redis.sadd('animals', 'cat')\ndata = await redis.spop('animals', 1)\nconsole.log(data)\n```\n", - "code": "var Component=(()=>{var dn=Object.create;var O=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var mn=Object.getOwnPropertyNames;var un=Object.getPrototypeOf,bn=Object.prototype.hasOwnProperty;var q=(l,e)=>()=>(e||l((e={exports:{}}).exports,e),e.exports),fn=(l,e)=>{for(var _ in e)O(l,_,{get:e[_],enumerable:!0})},ye=(l,e,_,x)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let k of mn(e))!bn.call(l,k)&&k!==_&&O(l,k,{get:()=>e[k],enumerable:!(x=ln(e,k))||x.enumerable});return l};var hn=(l,e,_)=>(_=l!=null?dn(un(l)):{},ye(e||!l||!l.__esModule?O(_,\"default\",{value:l,enumerable:!0}):_,l)),_n=l=>ye(O({},\"__esModule\",{value:!0}),l);var Ee=q((gn,ge)=>{ge.exports=React});var je=q(z=>{\"use strict\";(function(){\"use strict\";var l=Ee(),e=Symbol.for(\"react.element\"),_=Symbol.for(\"react.portal\"),x=Symbol.for(\"react.fragment\"),k=Symbol.for(\"react.strict_mode\"),G=Symbol.for(\"react.profiler\"),K=Symbol.for(\"react.provider\"),X=Symbol.for(\"react.context\"),F=Symbol.for(\"react.forward_ref\"),B=Symbol.for(\"react.suspense\"),D=Symbol.for(\"react.suspense_list\"),R=Symbol.for(\"react.memo\"),A=Symbol.for(\"react.lazy\"),Re=Symbol.for(\"react.offscreen\"),J=Symbol.iterator,Ce=\"@@iterator\";function Te(r){if(r===null||typeof r!=\"object\")return null;var a=J&&r[J]||r[Ce];return typeof a==\"function\"?a:null}var g=l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function b(r){{for(var a=arguments.length,t=new Array(a>1?a-1:0),o=1;o=1&&u>=0&&s[m]!==f[u];)u--;for(;m>=1&&u>=0;m--,u--)if(s[m]!==f[u]){if(m!==1||u!==1)do if(m--,u--,u<0||s[m]!==f[u]){var h=`\n`+s[m].replace(\" at new \",\" at \");return r.displayName&&h.includes(\"\")&&(h=h.replace(\"\",r.displayName)),typeof r==\"function\"&&T.set(r,h),h}while(m>=1&&u>=0);break}}}finally{W=!1,I.current=i,We(),Error.prepareStackTrace=d}var j=r?r.displayName||r.name:\"\",xe=j?C(j):\"\";return typeof r==\"function\"&&T.set(r,xe),xe}function $e(r,a,t){return de(r,!1)}function Me(r){var a=r.prototype;return!!(a&&a.isReactComponent)}function w(r,a,t){if(r==null)return\"\";if(typeof r==\"function\")return de(r,Me(r));if(typeof r==\"string\")return C(r);switch(r){case B:return C(\"Suspense\");case D:return C(\"SuspenseList\")}if(typeof r==\"object\")switch(r.$$typeof){case F:return $e(r.render);case R:return w(r.type,a,t);case A:{var o=r,d=o._payload,i=o._init;try{return w(i(d),a,t)}catch{}}}return\"\"}var S=Object.prototype.hasOwnProperty,ie={},le=g.ReactDebugCurrentFrame;function P(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);le.setExtraStackFrame(t)}else le.setExtraStackFrame(null)}function Ve(r,a,t,o,d){{var i=Function.call.bind(S);for(var c in r)if(i(r,c)){var s=void 0;try{if(typeof r[c]!=\"function\"){var f=Error((o||\"React class\")+\": \"+t+\" type `\"+c+\"` is invalid; it must be a function, usually from the `prop-types` package, but received `\"+typeof r[c]+\"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.\");throw f.name=\"Invariant Violation\",f}s=r[c](a,c,o,t,null,\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\")}catch(m){s=m}s&&!(s instanceof Error)&&(P(d),b(\"%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).\",o||\"React class\",t,c,typeof s),P(null)),s instanceof Error&&!(s.message in ie)&&(ie[s.message]=!0,P(d),b(\"Failed %s type: %s\",t,s.message),P(null))}}}var He=Array.isArray;function Y(r){return He(r)}function qe(r){{var a=typeof Symbol==\"function\"&&Symbol.toStringTag,t=a&&r[Symbol.toStringTag]||r.constructor.name||\"Object\";return t}}function ze(r){try{return me(r),!1}catch{return!0}}function me(r){return\"\"+r}function ue(r){if(ze(r))return b(\"The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.\",qe(r)),me(r)}var v=g.ReactCurrentOwner,Ge={key:!0,ref:!0,__self:!0,__source:!0},be,fe,$;$={};function Ke(r){if(S.call(r,\"ref\")){var a=Object.getOwnPropertyDescriptor(r,\"ref\").get;if(a&&a.isReactWarning)return!1}return r.ref!==void 0}function Xe(r){if(S.call(r,\"key\")){var a=Object.getOwnPropertyDescriptor(r,\"key\").get;if(a&&a.isReactWarning)return!1}return r.key!==void 0}function Je(r,a){if(typeof r.ref==\"string\"&&v.current&&a&&v.current.stateNode!==a){var t=p(v.current.type);$[t]||(b('Component \"%s\" contains the string ref \"%s\". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',p(v.current.type),r.ref),$[t]=!0)}}function Qe(r,a){{var t=function(){be||(be=!0,b(\"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"key\",{get:t,configurable:!0})}}function Ze(r,a){{var t=function(){fe||(fe=!0,b(\"%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)\",a))};t.isReactWarning=!0,Object.defineProperty(r,\"ref\",{get:t,configurable:!0})}}var en=function(r,a,t,o,d,i,c){var s={$$typeof:e,type:r,key:a,ref:t,props:c,_owner:i};return s._store={},Object.defineProperty(s._store,\"validated\",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(s,\"_self\",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(s,\"_source\",{configurable:!1,enumerable:!1,writable:!1,value:d}),Object.freeze&&(Object.freeze(s.props),Object.freeze(s)),s};function nn(r,a,t,o,d){{var i,c={},s=null,f=null;t!==void 0&&(ue(t),s=\"\"+t),Xe(a)&&(ue(a.key),s=\"\"+a.key),Ke(a)&&(f=a.ref,Je(a,d));for(i in a)S.call(a,i)&&!Ge.hasOwnProperty(i)&&(c[i]=a[i]);if(r&&r.defaultProps){var m=r.defaultProps;for(i in m)c[i]===void 0&&(c[i]=m[i])}if(s||f){var u=typeof r==\"function\"?r.displayName||r.name||\"Unknown\":r;s&&Qe(c,u),f&&Ze(c,u)}return en(r,s,f,d,o,v.current,c)}}var M=g.ReactCurrentOwner,he=g.ReactDebugCurrentFrame;function E(r){if(r){var a=r._owner,t=w(r.type,r._source,a?a.type:null);he.setExtraStackFrame(t)}else he.setExtraStackFrame(null)}var V;V=!1;function H(r){return typeof r==\"object\"&&r!==null&&r.$$typeof===e}function _e(){{if(M.current){var r=p(M.current.type);if(r)return`\n\nCheck the render method of \\``+r+\"`.\"}return\"\"}}function rn(r){{if(r!==void 0){var a=r.fileName.replace(/^.*[\\\\\\/]/,\"\"),t=r.lineNumber;return`\n\nCheck your code at `+a+\":\"+t+\".\"}return\"\"}}var pe={};function an(r){{var a=_e();if(!a){var t=typeof r==\"string\"?r:r.displayName||r.name;t&&(a=`\n\nCheck the top-level render call using <`+t+\">.\")}return a}}function Ne(r,a){{if(!r._store||r._store.validated||r.key!=null)return;r._store.validated=!0;var t=an(a);if(pe[t])return;pe[t]=!0;var o=\"\";r&&r._owner&&r._owner!==M.current&&(o=\" It was passed a child from \"+p(r._owner.type)+\".\"),E(r),b('Each child in a list should have a unique \"key\" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',t,o),E(null)}}function ke(r,a){{if(typeof r!=\"object\")return;if(Y(r))for(var t=0;t\",s=\" Did you accidentally export a JSX literal instead of a component?\"):m=typeof r,b(\"React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s\",m,s)}var u=nn(r,a,t,d,i);if(u==null)return u;if(c){var h=a.children;if(h!==void 0)if(o)if(Y(h)){for(var j=0;j{\"use strict\";Ue.exports=je()});var xn={};fn(xn,{default:()=>kn,frontmatter:()=>pn});var n=hn(ve()),pn={title:\"@upstash/redis\",description:\"A fully typed Redis client built for Upstash Redis and HTTP, perfect for serverless and edge runtimes.\",date:\"2022-03-14\",url:\"https://upstash.com/redis\",repository:\"upstash/upstash-redis\"};function Fe(l){let e=Object.assign({p:\"p\",code:\"code\",a:\"a\",ul:\"ul\",li:\"li\",h2:\"h2\",span:\"span\",h3:\"h3\",h4:\"h4\",div:\"div\",pre:\"pre\"},l.components);return(0,n.jsxDEV)(n.Fragment,{children:[(0,n.jsxDEV)(e.p,{children:[(0,n.jsxDEV)(e.code,{children:\"@upstash/redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),` is an HTTP/REST based Redis client for typescript, built on top\nof `,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/features/restapi\",children:\"Upstash REST API\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:12,columnNumber:4},this),\".\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:\"It is the only connectionless (HTTP based) Redis client and designed for:\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.ul,{children:[`\n`,(0,n.jsxDEV)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`Cloudflare Workers (see\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers\",children:\"the example\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:3},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:[`Fastly Compute@Edge (see\n`,(0,n.jsxDEV)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/fastly\",children:\"the example\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:3},this),\")\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Next.js, Jamstack ...\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"Client side web/mobile applications\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"WebAssembly\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.li,{children:\"and other environments where HTTP is preferred over TCP.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:24,columnNumber:1},this),`\n`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[`See\n`,(0,n.jsxDEV)(e.a,{href:\"https://docs.upstash.com/features/restapi#rest---redis-api-compatibility\",children:\"the list of APIs\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:1},this),`\nsupported.`]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"quick-start\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quick-start\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Quick Start\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h3,{id:\"install\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Install\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h4,{id:\"nodejs\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#nodejs\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Node.js\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:34,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:223},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:260},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:36,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h4,{id:\"deno\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deno\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Deno\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:40,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"https://deno.land/x/upstash_redis/mod.ts\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:270},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:358},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:42,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h3,{id:\"create-database\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#create-database\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Create database\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:46,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.p,{children:[\"Create a new redis database on \",(0,n.jsxDEV)(e.a,{href:\"https://console.upstash.com/\",children:\"upstash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:48,columnNumber:32},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:48,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.h2,{id:\"basic-usage\",children:[(0,n.jsxDEV)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#basic-usage\",children:(0,n.jsxDEV)(e.span,{className:\"icon icon-link\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this),\"Basic Usage:\"]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:50,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,n.jsxDEV)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,n.jsxDEV)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"import\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:146},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"from\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:193},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/redis\"'},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:270},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:85},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:2,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"const\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:139},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:213},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"new\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:250},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:289},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"Redis\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:326},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:367},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:3,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: <\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_URL\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:67},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:125},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:4,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" token: <\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_TOKEN\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:69},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:129},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:5,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:6,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:6,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:7,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// string\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:8,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:8,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:229},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:267},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:318},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:9,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"let\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:59},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:101},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:138},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:175},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:216},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"get\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:259},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:335},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:384},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:10,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:11,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:12,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:143},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key2'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:180},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:230},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value2'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:268},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", {ex: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:320},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:363},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:400},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:13,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:14,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// sorted set\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:15,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:15,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"zadd\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", { score: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:280},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", member: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:317},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'team1'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:363},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:414},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:16,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"zrange\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:350},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:388},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:425},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:463},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:502},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:17,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:18,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:19,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// list\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:20,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"lpush\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:145},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:182},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:236},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'magnesium'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:274},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:329},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:21,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"lrange\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:261},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:298},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:352},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:390},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:427},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:465},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:504},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:22,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:23,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:24,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// hash\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:25,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:25,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"hset\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", {name: \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:233},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'joe'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:278},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:327},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:26,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:98},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:135},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:176},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"hget\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:219},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:259},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:296},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:348},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'name'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:386},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:436},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:27,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:28,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:29,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:(0,n.jsxDEV)(e.span,{style:{color:\"#6A737D\"},children:\"// sets\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:20},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:30,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:61},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"sadd\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:104},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:144},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:181},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:234},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'cat'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:272},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:321},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:31,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"=\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:62},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:99},this),(0,n.jsxDEV)(e.span,{style:{color:\"#F97583\"},children:\"await\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:136},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:177},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"spop\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:220},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:260},this),(0,n.jsxDEV)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:297},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:350},this),(0,n.jsxDEV)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:388},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:425},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:32,columnNumber:1},this),`\n`,(0,n.jsxDEV)(e.span,{className:\"line\",children:[(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:20},this),(0,n.jsxDEV)(e.span,{style:{color:\"#B392F0\"},children:\"log\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:64},this),(0,n.jsxDEV)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:103},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:33,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:79},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)},void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:52,columnNumber:1},this)]},void 0,!0,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\",lineNumber:1,columnNumber:1},this)}function Nn(l={}){let{wrapper:e}=l.components||{};return e?(0,n.jsxDEV)(e,Object.assign({},l,{children:(0,n.jsxDEV)(Fe,l,void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this)}),void 0,!1,{fileName:\"/Users/andreasthomas/github/chronark/chronark.com/content/projects/_mdx_bundler_entry_point-4b838d4f-8e8a-4f55-8e22-bb39693cf2d0.mdx\"},this):Fe(l)}var kn=Nn;return _n(xn);})();\n/*! Bundled license information:\n\nreact/cjs/react-jsx-dev-runtime.development.js:\n (**\n * @license React\n * react-jsx-dev-runtime.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n *)\n*/\n;return Component;" + "code": "var Component=(()=>{var h=Object.create;var c=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,F=Object.prototype.hasOwnProperty;var m=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports),u=(n,e)=>{for(var s in e)c(n,s,{get:e[s],enumerable:!0})},o=(n,e,s,r)=>{if(e&&typeof e==\"object\"||typeof e==\"function\")for(let a of E(e))!F.call(n,a)&&a!==s&&c(n,a,{get:()=>e[a],enumerable:!(r=p(e,a))||r.enumerable});return n};var B=(n,e,s)=>(s=n!=null?h(y(n)):{},o(e||!n||!n.__esModule?c(s,\"default\",{value:n,enumerable:!0}):s,n)),N=n=>o(c({},\"__esModule\",{value:!0}),n);var t=m((w,i)=>{i.exports=_jsx_runtime});var C={};u(C,{default:()=>b,frontmatter:()=>g});var l=B(t()),g={title:\"@upstash/redis\",description:\"A fully typed Redis client built for Upstash Redis and HTTP, perfect for serverless and edge runtimes.\",date:\"2022-03-14\",url:\"https://upstash.com/redis\",repository:\"upstash/upstash-redis\"};function d(n){let e=Object.assign({p:\"p\",code:\"code\",a:\"a\",ul:\"ul\",li:\"li\",h2:\"h2\",span:\"span\",h3:\"h3\",h4:\"h4\",div:\"div\",pre:\"pre\"},n.components);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(e.p,{children:[(0,l.jsx)(e.code,{children:\"@upstash/redis\"}),` is an HTTP/REST based Redis client for typescript, built on top\nof `,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/features/restapi\",children:\"Upstash REST API\"}),\".\"]}),`\n`,(0,l.jsx)(e.p,{children:\"It is the only connectionless (HTTP based) Redis client and designed for:\"}),`\n`,(0,l.jsxs)(e.ul,{children:[`\n`,(0,l.jsx)(e.li,{children:\"Serverless functions (AWS Lambda ...)\"}),`\n`,(0,l.jsxs)(e.li,{children:[`Cloudflare Workers (see\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/cloudflare-workers\",children:\"the example\"}),\")\"]}),`\n`,(0,l.jsxs)(e.li,{children:[`Fastly Compute@Edge (see\n`,(0,l.jsx)(e.a,{href:\"https://github.com/upstash/upstash-redis/tree/main/examples/fastly\",children:\"the example\"}),\")\"]}),`\n`,(0,l.jsx)(e.li,{children:\"Next.js, Jamstack ...\"}),`\n`,(0,l.jsx)(e.li,{children:\"Client side web/mobile applications\"}),`\n`,(0,l.jsx)(e.li,{children:\"WebAssembly\"}),`\n`,(0,l.jsx)(e.li,{children:\"and other environments where HTTP is preferred over TCP.\"}),`\n`]}),`\n`,(0,l.jsxs)(e.p,{children:[`See\n`,(0,l.jsx)(e.a,{href:\"https://docs.upstash.com/features/restapi#rest---redis-api-compatibility\",children:\"the list of APIs\"}),`\nsupported.`]}),`\n`,(0,l.jsxs)(e.h2,{id:\"quick-start\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#quick-start\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Quick Start\"]}),`\n`,(0,l.jsxs)(e.h3,{id:\"install\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#install\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Install\"]}),`\n`,(0,l.jsxs)(e.h4,{id:\"nodejs\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#nodejs\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Node.js\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"bash\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"npm\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"install\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"@upstash/redis\"})]})})})}),`\n`,(0,l.jsxs)(e.h4,{id:\"deno\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#deno\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Deno\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsx)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"https://deno.land/x/upstash_redis/mod.ts\"'}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\";\"})]})})})}),`\n`,(0,l.jsxs)(e.h3,{id:\"create-database\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#create-database\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Create database\"]}),`\n`,(0,l.jsxs)(e.p,{children:[\"Create a new redis database on \",(0,l.jsx)(e.a,{href:\"https://console.upstash.com/\",children:\"upstash\"})]}),`\n`,(0,l.jsxs)(e.h2,{id:\"basic-usage\",children:[(0,l.jsx)(e.a,{className:\"subheading-anchor\",\"aria-label\":\"Link to section\",href:\"#basic-usage\",children:(0,l.jsx)(e.span,{className:\"icon icon-link\"})}),\"Basic Usage:\"]}),`\n`,(0,l.jsx)(e.div,{\"data-rehype-pretty-code-fragment\":\"\",children:(0,l.jsx)(e.pre,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:(0,l.jsxs)(e.code,{\"data-language\":\"ts\",\"data-theme\":\"default\",children:[(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"import\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" { Redis } \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"from\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:'\"@upstash/redis\"'})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"const\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"redis\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"new\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"Redis\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"({\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" url: <\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_URL\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" token: <\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"UPSTASH_REDIS_REST_TOKEN\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\">,\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// string\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"set\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"let\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"get\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\");\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"set\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'key2'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'value2'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", {ex: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"});\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// sorted set\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"zadd\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", { score: \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", member: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'team1'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" })\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"zrange\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'scores'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// list\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"lpush\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'magnesium'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"lrange\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'elements'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"0\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"100\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// hash\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"hset\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", {name: \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'joe'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"})\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"hget\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'people'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'name'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" )\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:\" \"}),`\n`,(0,l.jsx)(e.span,{className:\"line\",children:(0,l.jsx)(e.span,{style:{color:\"#6A737D\"},children:\"// sets\"})}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"sadd\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'cat'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"data \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"=\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" \"}),(0,l.jsx)(e.span,{style:{color:\"#F97583\"},children:\"await\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\" redis.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"spop\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(\"}),(0,l.jsx)(e.span,{style:{color:\"#9ECBFF\"},children:\"'animals'\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\", \"}),(0,l.jsx)(e.span,{style:{color:\"#79B8FF\"},children:\"1\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\")\"})]}),`\n`,(0,l.jsxs)(e.span,{className:\"line\",children:[(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"console.\"}),(0,l.jsx)(e.span,{style:{color:\"#B392F0\"},children:\"log\"}),(0,l.jsx)(e.span,{style:{color:\"#E1E4E8\"},children:\"(data)\"})]})]})})})]})}function f(n={}){let{wrapper:e}=n.components||{};return e?(0,l.jsx)(e,Object.assign({},n,{children:(0,l.jsx)(d,n)})):d(n)}var b=f;return N(C);})();\n;return Component;" }, "_id": "projects/upstash-redis.mdx", "_raw": { diff --git a/app/projects/[slug]/page.tsx b/app/projects/[slug]/page.tsx index 4b11964..085a200 100644 --- a/app/projects/[slug]/page.tsx +++ b/app/projects/[slug]/page.tsx @@ -3,7 +3,6 @@ import { allProjects } from "contentlayer/generated"; import { Mdx } from "@/app/components/mdx"; import { Navigation } from "@/app/components/article-nav"; import "./mdx.css"; -import Link from "next/link"; interface PostPageProps { params: { diff --git a/content/projects/envshare.mdx b/content/projects/envshare.mdx index a9ee9c3..1931134 100644 --- a/content/projects/envshare.mdx +++ b/content/projects/envshare.mdx @@ -23,7 +23,7 @@ key never leaves your browser. -![](img/envshare.png) +![](https://github.com/chronark/envshare/raw/main/img/envshare.png) ## Built with diff --git a/next.config.mjs b/next.config.mjs index 86756d0..f9eba4e 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -6,10 +6,6 @@ const nextConfig = { experimental: { appDir: true, mdxRs: true, - runtime: "edge", - }, - images: { - domains: ["pbs.twimg.com"], }, }; diff --git a/package.json b/package.json index 29d86a5..3699e87 100644 --- a/package.json +++ b/package.json @@ -11,13 +11,13 @@ "dependencies": { "@next/font": "^13.2.1", "@next/mdx": "^13.2.1", - "@types/node": "18.15.0", + "@types/node": "18.15.5", "@types/react": "18.0.28", "@types/react-dom": "18.0.11", "@vercel/analytics": "^0.1.10", "contentlayer": "^0.3.0", "framer-motion": "^10.8.5", - "lucide-react": "^0.125.0", + "lucide-react": "^0.127.0", "markdown-wasm": "^1.2.0", "next": "13.2.4", "next-contentlayer": "^0.3.0", @@ -27,10 +27,10 @@ "rehype-pretty-code": "^0.9.4", "rehype-slug": "^5.1.0", "remark-gfm": "^3.0.1", - "typescript": "4.9.5" + "typescript": "5.0.2" }, "devDependencies": { - "@opentelemetry/api": "^1.1.0", + "@opentelemetry/api": "^1.4.1", "@tailwindcss/line-clamp": "^0.4.2", "@tailwindcss/typography": "^0.5.9", "autoprefixer": "^10.4.13", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7015abc..601f911 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -3,17 +3,17 @@ lockfileVersion: 5.4 specifiers: '@next/font': ^13.2.1 '@next/mdx': ^13.2.1 - '@opentelemetry/api': ^1.1.0 + '@opentelemetry/api': ^1.4.1 '@tailwindcss/line-clamp': ^0.4.2 '@tailwindcss/typography': ^0.5.9 - '@types/node': 18.15.0 + '@types/node': 18.15.5 '@types/react': 18.0.28 '@types/react-dom': 18.0.11 '@vercel/analytics': ^0.1.10 autoprefixer: ^10.4.13 contentlayer: ^0.3.0 framer-motion: ^10.8.5 - lucide-react: ^0.125.0 + lucide-react: ^0.127.0 markdown-wasm: ^1.2.0 next: 13.2.4 next-contentlayer: ^0.3.0 @@ -28,31 +28,31 @@ specifiers: rome: ^11.0.0 tailwindcss: ^3.2.7 tailwindcss-debug-screens: ^2.2.1 - typescript: 4.9.5 + typescript: 5.0.2 dependencies: '@next/font': 13.2.4 '@next/mdx': 13.2.4 - '@types/node': 18.15.0 + '@types/node': 18.15.5 '@types/react': 18.0.28 '@types/react-dom': 18.0.11 '@vercel/analytics': 0.1.11_react@18.2.0 - contentlayer: 0.3.0_lbem3ogs7du3nc6v7afeau4mee + contentlayer: 0.3.0_qmecdceofcvmurqim4ud7myj3a framer-motion: 10.8.5_biqbaboplfbrettd7655fr4n2y - lucide-react: 0.125.0_react@18.2.0 + lucide-react: 0.127.0_react@18.2.0 markdown-wasm: 1.2.0 - next: 13.2.4_iiqxgyfhgb2flqmfjn2la6rgku - next-contentlayer: 0.3.0_2txxxasfjc2y3wz4b3hzs7n7gm + next: 13.2.4_756ubwvsgazzkcxtigvs4yqbci + next-contentlayer: 0.3.0_fwtlsludu3mxobm5kzti3ccmlm react: 18.2.0 react-dom: 18.2.0_react@18.2.0 rehype-autolink-headings: 6.1.1 rehype-pretty-code: 0.9.4_shiki@0.14.1 rehype-slug: 5.1.0 remark-gfm: 3.0.1 - typescript: 4.9.5 + typescript: 5.0.2 devDependencies: - '@opentelemetry/api': 1.4.0 + '@opentelemetry/api': 1.4.1 '@tailwindcss/line-clamp': 0.4.2_tailwindcss@3.2.7 '@tailwindcss/typography': 0.5.9_tailwindcss@3.2.7 autoprefixer: 10.4.14_postcss@8.4.21 @@ -71,10 +71,10 @@ packages: regenerator-runtime: 0.13.11 dev: false - /@contentlayer/cli/0.3.0_lbem3ogs7du3nc6v7afeau4mee: + /@contentlayer/cli/0.3.0_qmecdceofcvmurqim4ud7myj3a: resolution: {integrity: sha512-Mqb6NlIKINt2qsPKft+o8m5tJhJXVgVSd0zP1BH+CQRmvR/zwTT3maz1bDCPHBYGKgGCQKtvgM66IjvH+dmC6Q==} dependencies: - '@contentlayer/core': 0.3.0_lbem3ogs7du3nc6v7afeau4mee + '@contentlayer/core': 0.3.0_qmecdceofcvmurqim4ud7myj3a '@contentlayer/utils': 0.3.0 clipanion: 3.2.0_typanion@3.12.1 typanion: 3.12.1 @@ -85,10 +85,10 @@ packages: - supports-color dev: false - /@contentlayer/client/0.3.0_lbem3ogs7du3nc6v7afeau4mee: + /@contentlayer/client/0.3.0_qmecdceofcvmurqim4ud7myj3a: resolution: {integrity: sha512-yzDYiZtqOJwWrsykieA1LMnhKbaYcJhAy7s8Xs7zU5wFfyBTO258gvmK5dVi4LuzmOOPVMJn6FpEofT/RAKVtg==} dependencies: - '@contentlayer/core': 0.3.0_lbem3ogs7du3nc6v7afeau4mee + '@contentlayer/core': 0.3.0_qmecdceofcvmurqim4ud7myj3a transitivePeerDependencies: - '@effect-ts/otel-node' - esbuild @@ -96,7 +96,7 @@ packages: - supports-color dev: false - /@contentlayer/core/0.3.0_lbem3ogs7du3nc6v7afeau4mee: + /@contentlayer/core/0.3.0_qmecdceofcvmurqim4ud7myj3a: resolution: {integrity: sha512-5cL4W0nK9kNqxgBkIgauUko0SRAHf8oPoxRhdsSPQ7FSCgZGz2crMeSJOFmj3a3govh863/mKhXfkoUJBoDgnA==} peerDependencies: esbuild: 0.17.x @@ -110,10 +110,10 @@ packages: '@contentlayer/utils': 0.3.0 camel-case: 4.1.2 comment-json: 4.2.3 - esbuild: 0.17.11 + esbuild: 0.17.12 gray-matter: 4.0.3 markdown-wasm: 1.2.0 - mdx-bundler: 9.2.1_esbuild@0.17.11 + mdx-bundler: 9.2.1_esbuild@0.17.12 rehype-stringify: 9.0.3 remark-frontmatter: 4.0.1 remark-parse: 10.0.1 @@ -126,10 +126,10 @@ packages: - supports-color dev: false - /@contentlayer/source-files/0.3.0_lbem3ogs7du3nc6v7afeau4mee: + /@contentlayer/source-files/0.3.0_qmecdceofcvmurqim4ud7myj3a: resolution: {integrity: sha512-6crNuRdWGYFec0Kn/DpbrzpOu8bttFmOmOpX1HIYQz4iPisg+8biybLBiNU7Y6aCUjEZLOnM7AaHpMFvhrYWsw==} dependencies: - '@contentlayer/core': 0.3.0_lbem3ogs7du3nc6v7afeau4mee + '@contentlayer/core': 0.3.0_qmecdceofcvmurqim4ud7myj3a '@contentlayer/utils': 0.3.0 chokidar: 3.5.3 fast-glob: 3.2.12 @@ -147,11 +147,11 @@ packages: - supports-color dev: false - /@contentlayer/source-remote-files/0.3.0_lbem3ogs7du3nc6v7afeau4mee: + /@contentlayer/source-remote-files/0.3.0_qmecdceofcvmurqim4ud7myj3a: resolution: {integrity: sha512-4PnaK5cfQiduMUEO6nzqsD4ttD5RG4ffcyeSp5MLhpU0DTEZcfGXFRO777ddEI8PZ0/NJuhfz9MGbdO90QYlsw==} dependencies: - '@contentlayer/core': 0.3.0_lbem3ogs7du3nc6v7afeau4mee - '@contentlayer/source-files': 0.3.0_lbem3ogs7du3nc6v7afeau4mee + '@contentlayer/core': 0.3.0_qmecdceofcvmurqim4ud7myj3a + '@contentlayer/source-files': 0.3.0_qmecdceofcvmurqim4ud7myj3a '@contentlayer/utils': 0.3.0 transitivePeerDependencies: - '@effect-ts/otel-node' @@ -274,22 +274,22 @@ packages: dev: false optional: true - /@esbuild-plugins/node-resolve/0.1.4_esbuild@0.17.11: + /@esbuild-plugins/node-resolve/0.1.4_esbuild@0.17.12: resolution: {integrity: sha512-haFQ0qhxEpqtWWY0kx1Y5oE3sMyO1PcoSiWEPrAw6tm/ZOOLXjSs6Q+v1v9eyuVF0nNt50YEvrcrvENmyoMv5g==} peerDependencies: esbuild: '*' dependencies: '@types/resolve': 1.20.2 debug: 4.3.4 - esbuild: 0.17.11 + esbuild: 0.17.12 escape-string-regexp: 4.0.0 resolve: 1.22.1 transitivePeerDependencies: - supports-color dev: false - /@esbuild/android-arm/0.17.11: - resolution: {integrity: sha512-CdyX6sRVh1NzFCsf5vw3kULwlAhfy9wVt8SZlrhQ7eL2qBjGbFhRBWkkAzuZm9IIEOCKJw4DXA6R85g+qc8RDw==} + /@esbuild/android-arm/0.17.12: + resolution: {integrity: sha512-E/sgkvwoIfj4aMAPL2e35VnUJspzVYl7+M1B2cqeubdBhADV4uPon0KCc8p2G+LqSJ6i8ocYPCqY3A4GGq0zkQ==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -297,8 +297,8 @@ packages: dev: false optional: true - /@esbuild/android-arm64/0.17.11: - resolution: {integrity: sha512-QnK4d/zhVTuV4/pRM4HUjcsbl43POALU2zvBynmrrqZt9LPcLA3x1fTZPBg2RRguBQnJcnU059yKr+bydkntjg==} + /@esbuild/android-arm64/0.17.12: + resolution: {integrity: sha512-WQ9p5oiXXYJ33F2EkE3r0FRDFVpEdcDiwNX3u7Xaibxfx6vQE0Sb8ytrfQsA5WO6kDn6mDfKLh6KrPBjvkk7xA==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -306,8 +306,8 @@ packages: dev: false optional: true - /@esbuild/android-x64/0.17.11: - resolution: {integrity: sha512-3PL3HKtsDIXGQcSCKtWD/dy+mgc4p2Tvo2qKgKHj9Yf+eniwFnuoQ0OUhlSfAEpKAFzF9N21Nwgnap6zy3L3MQ==} + /@esbuild/android-x64/0.17.12: + resolution: {integrity: sha512-m4OsaCr5gT+se25rFPHKQXARMyAehHTQAz4XX1Vk3d27VtqiX0ALMBPoXZsGaB6JYryCLfgGwUslMqTfqeLU0w==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -315,8 +315,8 @@ packages: dev: false optional: true - /@esbuild/darwin-arm64/0.17.11: - resolution: {integrity: sha512-pJ950bNKgzhkGNO3Z9TeHzIFtEyC2GDQL3wxkMApDEghYx5Qers84UTNc1bAxWbRkuJOgmOha5V0WUeh8G+YGw==} + /@esbuild/darwin-arm64/0.17.12: + resolution: {integrity: sha512-O3GCZghRIx+RAN0NDPhyyhRgwa19MoKlzGonIb5hgTj78krqp9XZbYCvFr9N1eUxg0ZQEpiiZ4QvsOQwBpP+lg==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -324,8 +324,8 @@ packages: dev: false optional: true - /@esbuild/darwin-x64/0.17.11: - resolution: {integrity: sha512-iB0dQkIHXyczK3BZtzw1tqegf0F0Ab5texX2TvMQjiJIWXAfM4FQl7D909YfXWnB92OQz4ivBYQ2RlxBJrMJOw==} + /@esbuild/darwin-x64/0.17.12: + resolution: {integrity: sha512-5D48jM3tW27h1qjaD9UNRuN+4v0zvksqZSPZqeSWggfMlsVdAhH3pwSfQIFJwcs9QJ9BRibPS4ViZgs3d2wsCA==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -333,8 +333,8 @@ packages: dev: false optional: true - /@esbuild/freebsd-arm64/0.17.11: - resolution: {integrity: sha512-7EFzUADmI1jCHeDRGKgbnF5sDIceZsQGapoO6dmw7r/ZBEKX7CCDnIz8m9yEclzr7mFsd+DyasHzpjfJnmBB1Q==} + /@esbuild/freebsd-arm64/0.17.12: + resolution: {integrity: sha512-OWvHzmLNTdF1erSvrfoEBGlN94IE6vCEaGEkEH29uo/VoONqPnoDFfShi41Ew+yKimx4vrmmAJEGNoyyP+OgOQ==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -342,8 +342,8 @@ packages: dev: false optional: true - /@esbuild/freebsd-x64/0.17.11: - resolution: {integrity: sha512-iPgenptC8i8pdvkHQvXJFzc1eVMR7W2lBPrTE6GbhR54sLcF42mk3zBOjKPOodezzuAz/KSu8CPyFSjcBMkE9g==} + /@esbuild/freebsd-x64/0.17.12: + resolution: {integrity: sha512-A0Xg5CZv8MU9xh4a+7NUpi5VHBKh1RaGJKqjxe4KG87X+mTjDE6ZvlJqpWoeJxgfXHT7IMP9tDFu7IZ03OtJAw==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -351,8 +351,8 @@ packages: dev: false optional: true - /@esbuild/linux-arm/0.17.11: - resolution: {integrity: sha512-M9iK/d4lgZH0U5M1R2p2gqhPV/7JPJcRz+8O8GBKVgqndTzydQ7B2XGDbxtbvFkvIs53uXTobOhv+RyaqhUiMg==} + /@esbuild/linux-arm/0.17.12: + resolution: {integrity: sha512-WsHyJ7b7vzHdJ1fv67Yf++2dz3D726oO3QCu8iNYik4fb5YuuReOI9OtA+n7Mk0xyQivNTPbl181s+5oZ38gyA==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -360,8 +360,8 @@ packages: dev: false optional: true - /@esbuild/linux-arm64/0.17.11: - resolution: {integrity: sha512-Qxth3gsWWGKz2/qG2d5DsW/57SeA2AmpSMhdg9TSB5Svn2KDob3qxfQSkdnWjSd42kqoxIPy3EJFs+6w1+6Qjg==} + /@esbuild/linux-arm64/0.17.12: + resolution: {integrity: sha512-cK3AjkEc+8v8YG02hYLQIQlOznW+v9N+OI9BAFuyqkfQFR+DnDLhEM5N8QRxAUz99cJTo1rLNXqRrvY15gbQUg==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -369,8 +369,8 @@ packages: dev: false optional: true - /@esbuild/linux-ia32/0.17.11: - resolution: {integrity: sha512-dB1nGaVWtUlb/rRDHmuDQhfqazWE0LMro/AIbT2lWM3CDMHJNpLckH+gCddQyhhcLac2OYw69ikUMO34JLt3wA==} + /@esbuild/linux-ia32/0.17.12: + resolution: {integrity: sha512-jdOBXJqcgHlah/nYHnj3Hrnl9l63RjtQ4vn9+bohjQPI2QafASB5MtHAoEv0JQHVb/xYQTFOeuHnNYE1zF7tYw==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -378,8 +378,8 @@ packages: dev: false optional: true - /@esbuild/linux-loong64/0.17.11: - resolution: {integrity: sha512-aCWlq70Q7Nc9WDnormntGS1ar6ZFvUpqr8gXtO+HRejRYPweAFQN615PcgaSJkZjhHp61+MNLhzyVALSF2/Q0g==} + /@esbuild/linux-loong64/0.17.12: + resolution: {integrity: sha512-GTOEtj8h9qPKXCyiBBnHconSCV9LwFyx/gv3Phw0pa25qPYjVuuGZ4Dk14bGCfGX3qKF0+ceeQvwmtI+aYBbVA==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -387,8 +387,8 @@ packages: dev: false optional: true - /@esbuild/linux-mips64el/0.17.11: - resolution: {integrity: sha512-cGeGNdQxqY8qJwlYH1BP6rjIIiEcrM05H7k3tR7WxOLmD1ZxRMd6/QIOWMb8mD2s2YJFNRuNQ+wjMhgEL2oCEw==} + /@esbuild/linux-mips64el/0.17.12: + resolution: {integrity: sha512-o8CIhfBwKcxmEENOH9RwmUejs5jFiNoDw7YgS0EJTF6kgPgcqLFjgoc5kDey5cMHRVCIWc6kK2ShUePOcc7RbA==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -396,8 +396,8 @@ packages: dev: false optional: true - /@esbuild/linux-ppc64/0.17.11: - resolution: {integrity: sha512-BdlziJQPW/bNe0E8eYsHB40mYOluS+jULPCjlWiHzDgr+ZBRXPtgMV1nkLEGdpjrwgmtkZHEGEPaKdS/8faLDA==} + /@esbuild/linux-ppc64/0.17.12: + resolution: {integrity: sha512-biMLH6NR/GR4z+ap0oJYb877LdBpGac8KfZoEnDiBKd7MD/xt8eaw1SFfYRUeMVx519kVkAOL2GExdFmYnZx3A==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -405,8 +405,8 @@ packages: dev: false optional: true - /@esbuild/linux-riscv64/0.17.11: - resolution: {integrity: sha512-MDLwQbtF+83oJCI1Cixn68Et/ME6gelmhssPebC40RdJaect+IM+l7o/CuG0ZlDs6tZTEIoxUe53H3GmMn8oMA==} + /@esbuild/linux-riscv64/0.17.12: + resolution: {integrity: sha512-jkphYUiO38wZGeWlfIBMB72auOllNA2sLfiZPGDtOBb1ELN8lmqBrlMiucgL8awBw1zBXN69PmZM6g4yTX84TA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -414,8 +414,8 @@ packages: dev: false optional: true - /@esbuild/linux-s390x/0.17.11: - resolution: {integrity: sha512-4N5EMESvws0Ozr2J94VoUD8HIRi7X0uvUv4c0wpTHZyZY9qpaaN7THjosdiW56irQ4qnJ6Lsc+i+5zGWnyqWqQ==} + /@esbuild/linux-s390x/0.17.12: + resolution: {integrity: sha512-j3ucLdeY9HBcvODhCY4b+Ds3hWGO8t+SAidtmWu/ukfLLG/oYDMaA+dnugTVAg5fnUOGNbIYL9TOjhWgQB8W5g==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -423,8 +423,8 @@ packages: dev: false optional: true - /@esbuild/linux-x64/0.17.11: - resolution: {integrity: sha512-rM/v8UlluxpytFSmVdbCe1yyKQd/e+FmIJE2oPJvbBo+D0XVWi1y/NQ4iTNx+436WmDHQBjVLrbnAQLQ6U7wlw==} + /@esbuild/linux-x64/0.17.12: + resolution: {integrity: sha512-uo5JL3cgaEGotaqSaJdRfFNSCUJOIliKLnDGWaVCgIKkHxwhYMm95pfMbWZ9l7GeW9kDg0tSxcy9NYdEtjwwmA==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -432,8 +432,8 @@ packages: dev: false optional: true - /@esbuild/netbsd-x64/0.17.11: - resolution: {integrity: sha512-4WaAhuz5f91h3/g43VBGdto1Q+X7VEZfpcWGtOFXnggEuLvjV+cP6DyLRU15IjiU9fKLLk41OoJfBFN5DhPvag==} + /@esbuild/netbsd-x64/0.17.12: + resolution: {integrity: sha512-DNdoRg8JX+gGsbqt2gPgkgb00mqOgOO27KnrWZtdABl6yWTST30aibGJ6geBq3WM2TIeW6COs5AScnC7GwtGPg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -441,8 +441,8 @@ packages: dev: false optional: true - /@esbuild/openbsd-x64/0.17.11: - resolution: {integrity: sha512-UBj135Nx4FpnvtE+C8TWGp98oUgBcmNmdYgl5ToKc0mBHxVVqVE7FUS5/ELMImOp205qDAittL6Ezhasc2Ev/w==} + /@esbuild/openbsd-x64/0.17.12: + resolution: {integrity: sha512-aVsENlr7B64w8I1lhHShND5o8cW6sB9n9MUtLumFlPhG3elhNWtE7M1TFpj3m7lT3sKQUMkGFjTQBrvDDO1YWA==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -450,8 +450,8 @@ packages: dev: false optional: true - /@esbuild/sunos-x64/0.17.11: - resolution: {integrity: sha512-1/gxTifDC9aXbV2xOfCbOceh5AlIidUrPsMpivgzo8P8zUtczlq1ncFpeN1ZyQJ9lVs2hILy1PG5KPp+w8QPPg==} + /@esbuild/sunos-x64/0.17.12: + resolution: {integrity: sha512-qbHGVQdKSwi0JQJuZznS4SyY27tYXYF0mrgthbxXrZI3AHKuRvU+Eqbg/F0rmLDpW/jkIZBlCO1XfHUBMNJ1pg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -459,8 +459,8 @@ packages: dev: false optional: true - /@esbuild/win32-arm64/0.17.11: - resolution: {integrity: sha512-vtSfyx5yRdpiOW9yp6Ax0zyNOv9HjOAw8WaZg3dF5djEHKKm3UnoohftVvIJtRh0Ec7Hso0RIdTqZvPXJ7FdvQ==} + /@esbuild/win32-arm64/0.17.12: + resolution: {integrity: sha512-zsCp8Ql+96xXTVTmm6ffvoTSZSV2B/LzzkUXAY33F/76EajNw1m+jZ9zPfNJlJ3Rh4EzOszNDHsmG/fZOhtqDg==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -468,8 +468,8 @@ packages: dev: false optional: true - /@esbuild/win32-ia32/0.17.11: - resolution: {integrity: sha512-GFPSLEGQr4wHFTiIUJQrnJKZhZjjq4Sphf+mM76nQR6WkQn73vm7IsacmBRPkALfpOCHsopSvLgqdd4iUW2mYw==} + /@esbuild/win32-ia32/0.17.12: + resolution: {integrity: sha512-FfrFjR4id7wcFYOdqbDfDET3tjxCozUgbqdkOABsSFzoZGFC92UK7mg4JKRc/B3NNEf1s2WHxJ7VfTdVDPN3ng==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -477,8 +477,8 @@ packages: dev: false optional: true - /@esbuild/win32-x64/0.17.11: - resolution: {integrity: sha512-N9vXqLP3eRL8BqSy8yn4Y98cZI2pZ8fyuHx6lKjiG2WABpT2l01TXdzq5Ma2ZUBzfB7tx5dXVhge8X9u0S70ZQ==} + /@esbuild/win32-x64/0.17.12: + resolution: {integrity: sha512-JOOxw49BVZx2/5tW3FqkdjSD/5gXYeVGPDcB0lvap0gLQshkh1Nyel1QazC+wNxus3xPlsYAgqU1BUmrmCvWtw==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -495,7 +495,7 @@ packages: engines: {node: ^8.13.0 || >=10.10.0} dependencies: '@grpc/proto-loader': 0.7.5 - '@types/node': 18.15.0 + '@types/node': 18.15.5 dev: false /@grpc/proto-loader/0.6.13: @@ -530,13 +530,13 @@ packages: tslib: 2.5.0 dev: false - /@mdx-js/esbuild/2.3.0_esbuild@0.17.11: + /@mdx-js/esbuild/2.3.0_esbuild@0.17.12: resolution: {integrity: sha512-r/vsqsM0E+U4Wr0DK+0EfmABE/eg+8ITW4DjvYdh3ve/tK2safaqHArNnaqbOk1DjYGrhxtoXoGaM3BY8fGBTA==} peerDependencies: esbuild: '>=0.11.0' dependencies: '@mdx-js/mdx': 2.3.0 - esbuild: 0.17.11 + esbuild: 0.17.12 node-fetch: 3.3.0 vfile: 5.3.7 transitivePeerDependencies: @@ -729,7 +729,7 @@ packages: engines: {node: '>=14'} deprecated: Please use @opentelemetry/api >= 1.3.0 dependencies: - '@opentelemetry/api': 1.4.0 + '@opentelemetry/api': 1.4.1 dev: false /@opentelemetry/api/1.1.0: @@ -737,8 +737,8 @@ packages: engines: {node: '>=8.0.0'} dev: false - /@opentelemetry/api/1.4.0: - resolution: {integrity: sha512-IgMK9i3sFGNUqPMbjABm0G26g0QCKCUBfglhQ7rQq6WcxbKfEHRcmwsoER4hZcuYqJgkYn2OeuoJIv7Jsftp7g==} + /@opentelemetry/api/1.4.1: + resolution: {integrity: sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==} engines: {node: '>=8.0.0'} /@opentelemetry/context-async-hooks/1.5.0_@opentelemetry+api@1.1.0: @@ -1053,8 +1053,8 @@ packages: resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} dev: false - /@types/node/18.15.0: - resolution: {integrity: sha512-z6nr0TTEOBGkzLGmbypWOGnpSpSIBorEhC4L+4HeQ2iezKCi4f77kyslRwvHeNitymGQ+oFyIWGP96l/DPSV9w==} + /@types/node/18.15.5: + resolution: {integrity: sha512-Ark2WDjjZO7GmvsyFFf81MXuGTA/d6oP38anyxWOL6EREyBKAxKoFHwBhaZxCfLRLpO8JgVXwqOwSwa7jRcjew==} dev: false /@types/parse5/6.0.3: @@ -1317,17 +1317,17 @@ packages: repeat-string: 1.6.1 dev: false - /contentlayer/0.3.0_lbem3ogs7du3nc6v7afeau4mee: + /contentlayer/0.3.0_qmecdceofcvmurqim4ud7myj3a: resolution: {integrity: sha512-3LEF5HMHjSytlT8SErC3U59Pt2LP80a6Z2f/0mSIPeA4xty0LNChyHqzALySSM0osAEz32RY56Fifk5P+2dCIA==} engines: {node: '>=14.18'} hasBin: true requiresBuild: true dependencies: - '@contentlayer/cli': 0.3.0_lbem3ogs7du3nc6v7afeau4mee - '@contentlayer/client': 0.3.0_lbem3ogs7du3nc6v7afeau4mee - '@contentlayer/core': 0.3.0_lbem3ogs7du3nc6v7afeau4mee - '@contentlayer/source-files': 0.3.0_lbem3ogs7du3nc6v7afeau4mee - '@contentlayer/source-remote-files': 0.3.0_lbem3ogs7du3nc6v7afeau4mee + '@contentlayer/cli': 0.3.0_qmecdceofcvmurqim4ud7myj3a + '@contentlayer/client': 0.3.0_qmecdceofcvmurqim4ud7myj3a + '@contentlayer/core': 0.3.0_qmecdceofcvmurqim4ud7myj3a + '@contentlayer/source-files': 0.3.0_qmecdceofcvmurqim4ud7myj3a + '@contentlayer/source-remote-files': 0.3.0_qmecdceofcvmurqim4ud7myj3a '@contentlayer/utils': 0.3.0 transitivePeerDependencies: - '@effect-ts/otel-node' @@ -1413,34 +1413,34 @@ packages: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} dev: false - /esbuild/0.17.11: - resolution: {integrity: sha512-pAMImyokbWDtnA/ufPxjQg0fYo2DDuzAlqwnDvbXqHLphe+m80eF++perYKVm8LeTuj2zUuFXC+xgSVxyoHUdg==} + /esbuild/0.17.12: + resolution: {integrity: sha512-bX/zHl7Gn2CpQwcMtRogTTBf9l1nl+H6R8nUbjk+RuKqAE3+8FDulLA+pHvX7aA7Xe07Iwa+CWvy9I8Y2qqPKQ==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.17.11 - '@esbuild/android-arm64': 0.17.11 - '@esbuild/android-x64': 0.17.11 - '@esbuild/darwin-arm64': 0.17.11 - '@esbuild/darwin-x64': 0.17.11 - '@esbuild/freebsd-arm64': 0.17.11 - '@esbuild/freebsd-x64': 0.17.11 - '@esbuild/linux-arm': 0.17.11 - '@esbuild/linux-arm64': 0.17.11 - '@esbuild/linux-ia32': 0.17.11 - '@esbuild/linux-loong64': 0.17.11 - '@esbuild/linux-mips64el': 0.17.11 - '@esbuild/linux-ppc64': 0.17.11 - '@esbuild/linux-riscv64': 0.17.11 - '@esbuild/linux-s390x': 0.17.11 - '@esbuild/linux-x64': 0.17.11 - '@esbuild/netbsd-x64': 0.17.11 - '@esbuild/openbsd-x64': 0.17.11 - '@esbuild/sunos-x64': 0.17.11 - '@esbuild/win32-arm64': 0.17.11 - '@esbuild/win32-ia32': 0.17.11 - '@esbuild/win32-x64': 0.17.11 + '@esbuild/android-arm': 0.17.12 + '@esbuild/android-arm64': 0.17.12 + '@esbuild/android-x64': 0.17.12 + '@esbuild/darwin-arm64': 0.17.12 + '@esbuild/darwin-x64': 0.17.12 + '@esbuild/freebsd-arm64': 0.17.12 + '@esbuild/freebsd-x64': 0.17.12 + '@esbuild/linux-arm': 0.17.12 + '@esbuild/linux-arm64': 0.17.12 + '@esbuild/linux-ia32': 0.17.12 + '@esbuild/linux-loong64': 0.17.12 + '@esbuild/linux-mips64el': 0.17.12 + '@esbuild/linux-ppc64': 0.17.12 + '@esbuild/linux-riscv64': 0.17.12 + '@esbuild/linux-s390x': 0.17.12 + '@esbuild/linux-x64': 0.17.12 + '@esbuild/netbsd-x64': 0.17.12 + '@esbuild/openbsd-x64': 0.17.12 + '@esbuild/sunos-x64': 0.17.12 + '@esbuild/win32-arm64': 0.17.12 + '@esbuild/win32-ia32': 0.17.12 + '@esbuild/win32-x64': 0.17.12 dev: false /escalade/3.1.1: @@ -1966,8 +1966,8 @@ packages: yallist: 4.0.0 dev: false - /lucide-react/0.125.0_react@18.2.0: - resolution: {integrity: sha512-tadphtB6TPytEitR9vX75hqu9PQT/uz5RcvXMq976nC190eukAM9+cHMgBxfvfEGDXwIhIT9aFxTUGdAjxw9uQ==} + /lucide-react/0.127.0_react@18.2.0: + resolution: {integrity: sha512-9xxwl2FbdwWDjB0L6FEsOSbeOVp7Pj+L3urz+xDJNx1xggmQgGjeKDJQ28i/9ON8rV9HaqwQveBtsYnHqtWLqg==} peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 dependencies: @@ -2181,17 +2181,17 @@ packages: '@types/mdast': 3.0.10 dev: false - /mdx-bundler/9.2.1_esbuild@0.17.11: + /mdx-bundler/9.2.1_esbuild@0.17.12: resolution: {integrity: sha512-hWEEip1KU9MCNqeH2rqwzAZ1pdqPPbfkx9OTJjADqGPQz4t9BO85fhI7AP9gVYrpmfArf9/xJZUN0yBErg/G/Q==} engines: {node: '>=14', npm: '>=6'} peerDependencies: esbuild: 0.* dependencies: '@babel/runtime': 7.21.0 - '@esbuild-plugins/node-resolve': 0.1.4_esbuild@0.17.11 + '@esbuild-plugins/node-resolve': 0.1.4_esbuild@0.17.12 '@fal-works/esbuild-plugin-global-externals': 2.1.2 - '@mdx-js/esbuild': 2.3.0_esbuild@0.17.11 - esbuild: 0.17.11 + '@mdx-js/esbuild': 2.3.0_esbuild@0.17.12 + esbuild: 0.17.12 gray-matter: 4.0.3 remark-frontmatter: 4.0.1 remark-mdx-frontmatter: 1.1.1 @@ -2571,16 +2571,16 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - /next-contentlayer/0.3.0_2txxxasfjc2y3wz4b3hzs7n7gm: + /next-contentlayer/0.3.0_fwtlsludu3mxobm5kzti3ccmlm: resolution: {integrity: sha512-vt+RaD3nIgZ6oXadtZH19a1mpxvGEoiifdtmXqBSz4rHMRcMA1YZCuSWyj+P9uX7MDmIL6JT6QSp+hvTBMaxiw==} peerDependencies: next: ^12 || ^13 react: '*' react-dom: '*' dependencies: - '@contentlayer/core': 0.3.0_lbem3ogs7du3nc6v7afeau4mee + '@contentlayer/core': 0.3.0_qmecdceofcvmurqim4ud7myj3a '@contentlayer/utils': 0.3.0 - next: 13.2.4_iiqxgyfhgb2flqmfjn2la6rgku + next: 13.2.4_756ubwvsgazzkcxtigvs4yqbci react: 18.2.0 react-dom: 18.2.0_react@18.2.0 transitivePeerDependencies: @@ -2590,7 +2590,7 @@ packages: - supports-color dev: false - /next/13.2.4_iiqxgyfhgb2flqmfjn2la6rgku: + /next/13.2.4_756ubwvsgazzkcxtigvs4yqbci: resolution: {integrity: sha512-g1I30317cThkEpvzfXujf0O4wtaQHtDCLhlivwlTJ885Ld+eOgcz7r3TGQzeU+cSRoNHtD8tsJgzxVdYojFssw==} engines: {node: '>=14.6.0'} hasBin: true @@ -2612,7 +2612,7 @@ packages: optional: true dependencies: '@next/env': 13.2.4 - '@opentelemetry/api': 1.4.0 + '@opentelemetry/api': 1.4.1 '@swc/helpers': 0.4.14 caniuse-lite: 1.0.30001464 postcss: 8.4.14 @@ -2851,7 +2851,7 @@ packages: '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 '@types/long': 4.0.2 - '@types/node': 18.15.0 + '@types/node': 18.15.5 long: 4.0.0 dev: false @@ -2870,7 +2870,7 @@ packages: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 18.15.0 + '@types/node': 18.15.5 long: 5.2.1 dev: false @@ -3268,9 +3268,9 @@ packages: engines: {node: '>=14.16'} dev: false - /typescript/4.9.5: - resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} - engines: {node: '>=4.2.0'} + /typescript/5.0.2: + resolution: {integrity: sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw==} + engines: {node: '>=12.20'} hasBin: true dev: false