1 line
16 KiB
JavaScript
1 line
16 KiB
JavaScript
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[526],{7718:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/[roadmap]/interactive",function(){return n(4498)}])},1524:function(e,t,n){"use strict";n.d(t,{m:function(){return i}});var r=n(5893),o=n(8527);n(7294);function i(e){var t=e.title,n=e.subtitle,i=e.children,a=e.beforeTitle,c=void 0===a?null:a;return(0,r.jsxs)(o.xu,{pt:["25px","20px","45px"],pb:["20px","15px","30px"],borderBottomWidth:1,mb:"30px",children:[(0,r.jsxs)(o.W2,{maxW:"container.md",position:"relative",children:[c,(0,r.jsx)(o.X6,{as:"h1",color:"black",fontSize:["28px","33px","40px"],fontWeight:700,mb:["2px","2px","5px"],children:t}),(0,r.jsx)(o.xv,{fontSize:["13px","14px","15px"],children:n})]}),i&&(0,r.jsx)(o.W2,{maxW:"container.md",children:i})]})}},4866:function(e,t,n){"use strict";n.d(t,{v:function(){return c}});var r=n(5893),o=n(8527),i=n(8641),a=n(5657);n(7294);function c(){return(0,r.jsxs)(o.xv,{_hover:{textDecoration:"none",color:"blue.700","& .new-badge":{bg:"blue.700"}},as:o.rU,href:i.url.youtube,d:"block",target:"_blank",color:"red.700",fontSize:"sm",mb:"10px",fontWeight:500,onClick:function(){return(0,a.B)({category:"Subscription",action:"Clicked the YouTube banner",label:"YouTube Alert on Roadmap"})},children:[(0,r.jsx)(o.Ct,{transition:"all 300ms",className:"new-badge",mr:"7px",colorScheme:"red",variant:"solid",children:"New"}),(0,r.jsx)(o.xv,{textDecoration:"underline",as:"span",d:["none","inline"],children:"Roadmap topics to be covered on our YouTube Channel"}),(0,r.jsx)(o.xv,{textDecoration:"underline",as:"span",d:["inline","none"],children:"Topic videos being made on YouTube"}),(0,r.jsx)(o.xv,{as:"span",ml:"5px",children:"\xbb"})]})}},1177:function(e,t,n){"use strict";n.d(t,{h:function(){return s}});var r=n(5893),o=n(4866),i=n(8527),a=n(5193),c=n(9876),l=n(1524);n(7294);function s(e){var t=e.roadmap;return(0,r.jsx)(l.m,{beforeTitle:(0,r.jsx)(o.v,{}),title:t.title,subtitle:t.description,children:(0,r.jsxs)(i.Kq,{mt:"20px",isInline:!0,children:[(0,r.jsxs)(a.zx,{d:["flex","flex"],as:i.rU,href:"/roadmaps",size:"xs",py:"14px",px:"10px",colorScheme:"teal",variant:"solid",_hover:{textDecoration:"none"},children:["\u2190 ",(0,r.jsx)(i.xv,{as:"span",d:["none","inline"],ml:"5px",children:"All Roadmaps"})]}),t.pdfUrl&&(0,r.jsx)(a.zx,{as:i.rU,href:t.pdfUrl,target:"_blank",size:"xs",py:"14px",px:"10px",leftIcon:(0,r.jsx)(c._8,{}),colorScheme:"yellow",variant:"solid",_hover:{textDecoration:"none"},children:"Download"}),(0,r.jsx)(a.zx,{as:i.rU,href:"/signup",size:"xs",py:"14px",px:"10px",leftIcon:(0,r.jsx)(c.Km,{}),colorScheme:"yellow",variant:"solid",_hover:{textDecoration:"none"},children:"Subscribe"})]})})}},2903:function(e,t,n){"use strict";n.r(t),n.d(t,{__N_SSG:function(){return y},default:function(){return b}});var r=n(5893),o=n(8527),i=n(1739),a=n(2438),c=n(1832),l=n(600),s=n(6673),u=n(2348),d=n(202),p=(n(7294),n(9876)),f=n(8641),x=n(5193);function v(e){var t=e.href;return(0,r.jsxs)(o.xu,{my:"30px",children:[(0,r.jsx)(o.iz,{mb:"15px",orientation:"horizontal"}),(0,r.jsx)(o.xv,{lineHeight:"23px",fontWeight:500,fontSize:"14px",color:"gray.500",mb:"10px",children:"This page is a work in progress. Help us by writing a small introduction to the topic and suggesting a few links to read more about this topic."}),(0,r.jsx)(x.zx,{size:"sm",py:"20px",as:o.rU,href:t,target:"_blank",isFullWidth:!0,colorScheme:"purple",_hover:{textDecoration:"none"},children:"Edit this Page"})]})}function h(e){var t=e.roadmap,i=e.group;if(!t.contentPathsFilePath)return null;var a=t.contentPathsFilePath.replace(/^\//,""),c=(n(9280)("./".concat(a))[i]||"").replace(/^\//,""),l=n(9280)("./".concat(c)).default;return(0,r.jsx)(o.xu,{children:(0,r.jsxs)(u.Z,{children:[(0,r.jsx)(l,{}),(0,r.jsx)(v,{href:"".concat(f.url.repoData,"/").concat(c)})]})})}function m(e){var t=e.roadmap,n=e.group.split(":");return(0,r.jsxs)(i.aG,{fontWeight:"medium",fontSize:"sm",separator:(0,r.jsx)(p.XC,{color:"gray.500"}),children:[(0,r.jsx)(i.gN,{children:(0,r.jsx)(i.At,{color:"blue.500",href:"/".concat(t.id),children:t.featuredTitle})}),n.map((function(e,o){return(0,r.jsx)(i.gN,{isCurrentPage:o===n.length-1,children:(0,r.jsx)(i.At,{textTransform:"capitalize",color:"blue.500",href:"/".concat(t.id,"/").concat(n.slice(0,o+1).join(":")),children:e.split("-").join(" ")})},e)}))]})}var y=!0;function b(e){var t,n,i=e.roadmap,u=e.group,p=e.isOutlet;return void 0!==p&&p?(0,r.jsx)(h,{roadmap:i,group:u}):(0,r.jsxs)(o.xu,{bg:"white",minH:"100vh",children:[(0,r.jsx)(a.e,{}),(0,r.jsx)(d.Z,{title:(null===i||void 0===i||null===(t=i.seo)||void 0===t?void 0:t.title)||i.title,description:(null===i||void 0===i||null===(n=i.seo)||void 0===n?void 0:n.description)||i.description,keywords:(null===i||void 0===i?void 0:i.seo.keywords)||[]}),(0,r.jsxs)(o.W2,{my:"60px",maxW:"container.md",position:"relative",children:[(0,r.jsx)(m,{roadmap:i,group:u}),(0,r.jsx)(h,{roadmap:i,group:u})]}),(0,r.jsx)(c.z,{}),(0,r.jsx)(l.q,{}),(0,r.jsx)(s.$,{})]})}},4498:function(e,t,n){"use strict";n.r(t),n.d(t,{__N_SSG:function(){return D},default:function(){return R}});var r=n(5893),o=n(8527),i=n(9609),a=n(2438),c=n(1832),l=n(600),s=n(6673),u=n(202),d=n(7294),p=n(8520),f=n.n(p);function x(e,t,n){var r=void 0===t?{}:t,o=document.createElementNS("http://www.w3.org/2000/svg",e);for(var i in r)r.hasOwnProperty(i)&&o.setAttribute(i,r[i]);return n&&n.appendChild(o),o}var v=2.7,h={black:["#000"],gray:["#000","#333","#666","#999","#ccc","#ddd","#eee"],white:["#fff"],red:["#cf2a27","#ea9999","#eo6666","#cc0000","#990000","#660000"],orange:["#ff9900","#f9cb9c","#f6b26b","#e69138","#b45f06","#783f04"],yellow:["#ffff00","#ffe599","#ffd966","#f1c232","#bf9000","#7f6000"],green:["#009e0f","#b6d7a8","#93c47d","#6aa84f","#38761d","#274e13"],cyan:["#00ffff","#a2c4c9","#76a5af","#45818e","#134f5c","#0c343d"],blue:["#2b78e4","#9fc5f8","#6fa8dc","#597eaa","#085394","#073763"],purple:["#9900ff","#b4a7d6","#8e7cc3","#674ea7","#351c75","#20124d"],pink:["#ff00ff","#d5a6bd","#c27ba0","#a64d79","#741b47","#4c1130"]};function m(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function y(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function b(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],r=!0,o=!1,i=void 0;try{for(var a,c=e[Symbol.iterator]();!(r=(a=c.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(l){o=!0,i=l}finally{try{r||null==c.return||c.return()}finally{if(o)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}var g=function(){function e(t,n){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.svgRoot=t,this.fontFamily=n,this.canvasRenderingContext2D=document.createElement("canvas").getContext("2d")}var t,n,r;return t=e,(n=[{key:"render",value:function(e,t){var n=e.typeID;n in this?this[n](e,t):console.log("'".concat(n,"' control type not implemented"))}},{key:"parseColor",value:function(e,t){return void 0===e?"rgb(".concat(t,")"):function(e){var t=e>>8&255,n=255&e;return"rgb(".concat(e>>16&255,",").concat(t,",").concat(n,")")}(e)}},{key:"parseFontProperties",value:function(e){var t,n,r;return{style:(null===(t=e.properties)||void 0===t?void 0:t.italic)?"italic":"normal",weight:(null===(n=e.properties)||void 0===n?void 0:n.bold)?"bold":"normal",size:(null===(r=e.properties)||void 0===r?void 0:r.size)?e.properties.size+"px":"13px",family:this.fontFamily}}},{key:"measureText",value:function(e,t){return this.canvasRenderingContext2D.font=t,this.canvasRenderingContext2D.measureText(e)}},{key:"drawRectangle",value:function(e,t){var n,r,o,i,a,c;x("rect",{x:parseInt(e.x)+1.35,y:parseInt(e.y)+1.35,width:parseInt(null!==(i=e.w)&&void 0!==i?i:e.measuredW)-v,height:parseInt(null!==(a=e.h)&&void 0!==a?a:e.measuredH)-v,rx:2,fill:this.parseColor(null===(n=e.properties)||void 0===n?void 0:n.color,"255,255,255"),"fill-opacity":null!==(c=null===(r=e.properties)||void 0===r?void 0:r.backgroundAlpha)&&void 0!==c?c:1,stroke:this.parseColor(null===(o=e.properties)||void 0===o?void 0:o.borderColor,"0,0,0"),"stroke-width":v},t)}},{key:"addText",value:function(e,t,n,r){var o,i,a=null!==(o=e.properties.text)&&void 0!==o?o:"",c=parseInt(e.x),l=parseInt(e.y),s=this.parseFontProperties(e),u=this.measureText(a,"".concat(s.style," ").concat(s.weight," ").concat(s.size," ").concat(s.family)),d=x("text",{x:"center"===r?c+(null!==(i=e.w)&&void 0!==i?i:e.measuredW)/2-u.width/2:c,y:l+e.measuredH/2+u.actualBoundingBoxAscent/2,fill:n,"font-style":s.style,"font-weight":s.weight,"font-size":s.size},t);a.includes("{color:")?a.split(/{color:|{color}/).forEach((function(e){if(e.includes("}")){var t=b(e.split("}"),2),n=t[0],r=t[1];if(!n.startsWith("#")){var o=parseInt(n.slice(-1));n=isNaN(o)?h[n][0]:h[n][o]}x("tspan",{fill:n},d).textContent=r}else x("tspan",{},d).textContent=e})):x("tspan",{},d).textContent=a}},{key:"TextArea",value:function(e,t){this.drawRectangle(e,t)}},{key:"Canvas",value:function(e,t){this.drawRectangle(e,t)}},{key:"Label",value:function(e,t){var n;this.addText(e,t,this.parseColor(null===(n=e.properties)||void 0===n?void 0:n.color,"0,0,0"),"left")}},{key:"TextInput",value:function(e,t){var n;this.drawRectangle(e,t),this.addText(e,t,this.parseColor(null===(n=e.properties)||void 0===n?void 0:n.textColor,"0,0,0"),"center")}},{key:"Arrow",value:function(e,t){var n,r,o,i,a=parseInt(e.x),c=parseInt(e.y),l=e.properties,s=l.p0,u=l.p1,d=l.p2;"dotted"===(null===(n=e.properties)||void 0===n?void 0:n.stroke)?i="0.8 12":"dashed"===(null===(r=e.properties)||void 0===r?void 0:r.stroke)&&(i="28 46");var p=(d.x-s.x)*u.x,f=(d.y-s.y)*u.x;x("path",{d:"M".concat(a+s.x," ").concat(c+s.y,"Q").concat(a+s.x+p+f*u.y*3.6," ").concat(c+s.y+f+-p*u.y*3.6," ").concat(a+d.x," ").concat(c+d.y),fill:"none",stroke:this.parseColor(null===(o=e.properties)||void 0===o?void 0:o.color,"0,0,0"),"stroke-width":4,"stroke-linecap":"round","stroke-linejoin":"round","stroke-dasharray":i},t)}},{key:"Icon",value:function(e,t){var n,r=parseInt(e.x),o=parseInt(e.y),i=10;x("circle",{cx:r+i,cy:o+i,r:i,fill:this.parseColor(null===(n=e.properties)||void 0===n?void 0:n.color,"0,0,0")},t),"check-circle"===e.properties.icon.ID&&x("path",{d:"M".concat(r+4.5," ").concat(o+i,"L").concat(r+8.5," ").concat(o+i+4," ").concat(r+15," ").concat(o+i-2.5),fill:"none",stroke:"#fff","stroke-width":3.5,"stroke-linecap":"round","stroke-linejoin":"round"},t)}},{key:"HRule",value:function(e,t){var n,r,o,i,a,c=parseInt(e.x),l=parseInt(e.y);"dotted"===(null===(n=e.properties)||void 0===n?void 0:n.stroke)?i="0.8, 8":"dashed"===(null===(r=e.properties)||void 0===r?void 0:r.stroke)&&(i="18, 30"),x("path",{d:"M".concat(c," ").concat(l,"L").concat(c+parseInt(null!==(a=e.w)&&void 0!==a?a:e.measuredW)," ").concat(l),fill:"none",stroke:this.parseColor(null===(o=e.properties)||void 0===o?void 0:o.color,"0,0,0"),"stroke-width":v,"stroke-linecap":"round","stroke-linejoin":"round","stroke-dasharray":i},t)}},{key:"__group__",value:function(e,t){var n,r=this,o=null===e||void 0===e||null===(n=e.properties)||void 0===n?void 0:n.controlName,i=x("g",function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"===typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){y(e,t,n[t])}))}return e}({},o?{class:"clickable-group","data-group-id":o}:{}),t);e.children.controls.control.sort((function(e,t){return e.zOrder-t.zOrder})).forEach((function(t){t.x=parseInt(t.x,10)+parseInt(e.x,10),t.y=parseInt(t.y,10)+parseInt(e.y,10),r.render(t,i)}))}}])&&m(t.prototype,n),r&&m(t,r),e}();function w(e,t,n,r,o,i,a){try{var c=e[i](a),l=c.value}catch(s){return void n(s)}c.done?t(l):Promise.resolve(l).then(r,o)}function j(e){return function(){var t=this,n=arguments;return new Promise((function(r,o){var i=e.apply(t,n);function a(e){w(i,r,o,a,c,"next",e)}function c(e){w(i,r,o,a,c,"throw",e)}a(void 0)}))}}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function C(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"===typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter((function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable})))),r.forEach((function(t){k(e,t,n[t])}))}return e}function I(){return(I=j(f().mark((function e(t,n){var r,o,i,a,c,l,s,u,d;return f().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(r=C({padding:5,fontFamily:"balsamiq",fontURL:"/fonts/balsamiq.woff2"},r=void 0===n?{}:n)).fontURL){e.next=7;break}return o=new FontFace(r.fontFamily,"url(".concat(r.fontURL,")")),e.next=6,o.load();case 6:document.fonts.add(o);case 7:return i=t.mockup,a=i.measuredW-i.mockupW-r.padding,c=i.measuredH-i.mockupH-r.padding,l=parseInt(i.mockupW)+2*r.padding,s=parseInt(i.mockupH)+2*r.padding,u=x("svg",{xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",viewBox:"".concat(a," ").concat(c," ").concat(l," ").concat(s),style:"font-family: balsamiq"}),d=new g(u,r.fontFamily),i.controls.control.sort((function(e,t){return e.zOrder-t.zOrder})).forEach((function(e){d.render(e,u)})),e.abrupt("return",u);case 16:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var _=n(1177),z=n(4746),O=n(2779),S=n(2903);function W(e){var t=e.roadmap,n=e.groupId,i=e.onClose,a=void 0===i?function(){return null}:i;return n?(0,r.jsxs)(o.xu,{zIndex:99999,pos:"relative",children:[(0,r.jsx)(o.xu,{onClick:a,pos:"fixed",top:0,left:0,right:0,bottom:0,bg:"black",opacity:.4}),(0,r.jsx)(O.Z,{allowPinchZoom:!0,children:(0,r.jsxs)(o.xu,{p:"0px 30px 30px",position:"fixed",w:["100%","60%","40%"],bg:"white",top:0,right:0,bottom:0,borderLeftWidth:"1px",overflowY:"scroll",children:[(0,r.jsx)(z.P,{onClick:a,pos:"absolute",top:"20px",right:"20px",zIndex:1}),(0,r.jsx)(S.default,{isOutlet:!0,roadmap:t,group:n})]})})]}):null}var P=n(2730);function E(){return(0,r.jsx)(o.W2,{maxW:"container.md",position:"relative",mt:"60px",textAlign:"center",children:(0,r.jsx)(i.$,{thickness:"7px",speed:"0.65s",emptyColor:"gray.200",color:"gray.500",size:"xl"})})}function T(e){var t=e.roadmap,n=(0,P.ib)(),i=n.loading,a=(n.error,n.get),c=(0,d.useRef)(null),l=(0,d.useState)(!1),s=l[0],u=l[1],p=(0,d.useState)(null),f=p[0],x=p[1],v=(0,d.useState)(""),h=v[0],m=v[1],y=(0,d.useState)(!1),b=(y[0],y[1]);return(0,d.useEffect)((function(){a("/project/".concat(t.id,".json")).then((function(e){x(e)})).catch((function(e){console.error(e),b(!0)}))}),[a,t.id]),(0,d.useEffect)((function(){var e=function(e){"escape"===e.key.toLowerCase()&&m("")},t=function(e){var t,n,r=null===(t=null===e||void 0===e?void 0:e.target)||void 0===t?void 0:t.closest("g"),o=null===r||void 0===r||null===(n=r.dataset)||void 0===n?void 0:n.groupId;r&&o&&(o.startsWith("ext_link:")?window.open("https://".concat(o.replace("ext_link:",""))):m(o.replace(/^\d+-/,"")))};return window.addEventListener("keydown",e),window.addEventListener("click",t),function(){window.removeEventListener("keydown",e),window.removeEventListener("click",t)}}),[]),(0,d.useEffect)((function(){f&&(u(!0),function(e){return I.apply(this,arguments)}(f).then((function(e){var t=c.current;t&&(t.firstChild&&t.removeChild(t.firstChild),t.appendChild(e))})).catch((function(e){b(!0)})).finally((function(){u(!1)})))}),[f]),(0,r.jsxs)(o.W2,{maxW:"container.lg",position:"relative",children:[(i||s)&&(0,r.jsx)(E,{}),(0,r.jsx)(W,{roadmap:t,groupId:h,onClose:function(){return m("")}}),(0,r.jsx)("div",{ref:c})]})}var D=!0;function R(e){var t,n,i=e.roadmap;return(0,r.jsxs)(o.xu,{bg:"white",minH:"100vh",children:[(0,r.jsx)(a.e,{}),(0,r.jsx)(u.Z,{title:(null===i||void 0===i||null===(t=i.seo)||void 0===t?void 0:t.title)||i.title,description:(null===i||void 0===i||null===(n=i.seo)||void 0===n?void 0:n.description)||i.description,keywords:(null===i||void 0===i?void 0:i.seo.keywords)||[]}),(0,r.jsxs)(o.xu,{mb:"60px",children:[(0,r.jsx)(_.h,{roadmap:i}),(0,r.jsx)(T,{roadmap:i})]}),(0,r.jsx)(c.z,{}),(0,r.jsx)(l.q,{}),(0,r.jsx)(s.$,{})]})}}},function(e){e.O(0,[760,22,26,515,122,70,636,280,774,888,179],(function(){return t=7718,e(e.s=t);var t}));var t=e.O();_N_E=t}]); |