Skip to content

Instantly share code, notes, and snippets.

@gyfis
Created September 2, 2024 08:44
Show Gist options
  • Save gyfis/82f481bcb22ca365b4905f633a70d9e7 to your computer and use it in GitHub Desktop.
Save gyfis/82f481bcb22ca365b4905f633a70d9e7 to your computer and use it in GitHub Desktop.
async function ddProgress() {
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
function clearAllTimeouts() {
let id = window.setTimeout(function() {}, 0);
while (id--) {
window.clearTimeout(id);
}
}
clearAllTimeouts(); // Disable twitter feed from updating
const headerText = document.querySelector(".status-header__label");
headerText.innerHTML = "DD Status";
const statusText = document.querySelector(".status-page__resource-name");
statusText.childNodes[2].nodeValue = "Creandum x Better Stack DD";
const twitterContainer = document.querySelector(".status-page__twitter");
//twitterContainer.style.display = "none";
const statusSection = document.querySelector(".status-page__section");
statusSection.style.position = "sticky";
statusSection.style.top = "0";
statusSection.style.zIndex = "999";
const twitterIcon = document.querySelector(".status-page__twitter-card a");
//twitterIcon.style.display = "none";
const twitterTitle = document.querySelector(".status-page__twitter-card b");
//twitterTitle.innerHTML = "Portfolio references & DD findings";
const contactButton = document.querySelector(".btn--contact");
contactButton.style.transition = "transform 0.4s ease-in, opacity 0.4s ease-in";
contactButton.style.transform = "scale(0.5)";
contactButton.style.opacity = "0";
contactButton.innerHTML = `Our Term Sheet<span class="hand" style="position: absolute;left: -16px;font-size: 40px;top: -5px; ">👉</span>`;
contactButton.href = "https://www.creandum.com/";
const statusContainer = document.querySelector(".status-page__overview");
statusContainer.style.transition = "all 1s ease-in";
statusContainer.style.opacity = "0";
statusContainer.style.maxHeight = "0px";
document.querySelector(".status-page__overview-icon")?.remove();
const tweetBase = document.createElement("div");
tweetBase.classList.add('tweet');
tweetBase.style.display = "none";
tweetBase.style.maxHeight = "0";
tweetBase.style.opacity = "0";
tweetBase.style.overflow = "hidden";
tweetBase.style.transition = "all 1s ease-in";
const tweetAvatar = document.createElement("div");
tweetAvatar.classList.add('tweet__avatar');
tweetBase.insertAdjacentElement("afterbegin", tweetAvatar);
const avatarImg = document.createElement("img");
avatarImg.src = "https://betteruptime.com/assets/static_assets/logo_used_in_tests_do_not_delete.png";
tweetAvatar.insertAdjacentElement("afterbegin", avatarImg);
const tweetContent = document.createElement("div");
tweetContent.classList.add('tweet__content');
tweetBase.insertAdjacentElement("beforeend", tweetContent);
const tweetText = document.createElement("div");
tweetText.classList.add('tweet__text');
tweetContent.insertAdjacentElement("beforeend", tweetText);
const tweetMeta = document.createElement("div");
tweetMeta.classList.add('tweet_meta');
tweetContent.insertAdjacentElement("beforeend", tweetMeta);
const smallText = document.createElement("small");
smallText.classList.add("text-muted");
tweetMeta.insertAdjacentElement("beforeend", smallText);
statusSection.insertAdjacentElement("afterend", tweetBase);
//const [tweetBase, ...tweets] = document.querySelectorAll('.tweet');
//tweets.forEach((tweet)=>tweet.remove());
const quotes = [
{
//avatarUrl: "",
name: "CTO of a B2B SaaS Startup",
text: "BetterUptime gives me a peace of mind with outstanding UI/UX. Having incident management & status pages built-in is a huge bonus."
},
{
//avatarUrl: "",
name: "Anonymous reference",
text: "Juraj is a rockstar – very capable engineer & product mind with a passion for growth go-to-market and popular amongst engineers – a very rare combo."
},
{
// avatarUrl: "https://s3.amazonaws.com/spoke-profiles-prod-assets/avatars/210x210h/504144ef5a84098b0bc5fc0053709bf578051d08.png",
name: "Bálint Dali, CTO of Seon.io",
text: "Observability is a core to our service offering, but ELK stack is a pain to manage, expensive, and we need a better collaborative experience to solve issues faster."
},
{
//avatarUrl: "data:image/jpeg;base64,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",
name: "CEO & Founder of a unicorn devtools company",
text: "ClickHouse is an amazing feat of engineering. I believe a new ecosystem of devtools will be built around that, and Better Stack seems early to the ball with strong product execution."
},
{
//avatarUrl: "data:image/jpeg;base64,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",
name: "CTO of a Fintech Startup",
text: "We're heavy users of DataDog, but it's bloated with features and has a steep learning curve. If Better Stack can solve wider adoption, collaboration, and performance for us, we will migrate in a heartbeat. But to be honest, in our case, it's not a cost consideration, but how it helps our workflows and how reliable the service is."
},
{
name: "CTO of an Enterprise Saas app",
text: "Mainstream observability tools have arcane configurations... Better Stack seems like a breat of fresh air, I would love to take a closer look."
}
];
const quotesInterval = 100 / quotes.length;
const ticks = [...document.querySelectorAll(".status-page__resource-tick-inner")];
const progress = document.querySelector(".status-page__resource-interval");
// Make ticks grey
for (let i = 0; i < ticks.length; i++) {
const tick = ticks[i];
tick.style.backgroundColor = "#dfe0e1";
tick.style.transition = "background-color 300ms ease-in";
}
progress.innerHTML = `0% conviction`;
await sleep(1000);
// Add love container
const love = document.createElement("div");
love.classList.add("status-page__overview-icon", "status-page__overview-icon--operational");
love.style.fontSize = "80px";
love.style.width = "auto";
love.style.textAlign = "center";
love.style.marginBottom = "20px";
love.innerHTML = "💚";
statusContainer.prepend(love);
// Animate ticks
for (let i = 0; i < ticks.length; i++) {
const tick = ticks[i];
await sleep(50);
const pct = Math.round(i / (ticks.length - 1) * 100);
const prevPct = Math.round((i - 1) / (ticks.length - 1) * 100);
const quoteId = Math.floor(pct / quotesInterval);
const prevQuoteId = Math.floor(prevPct / quotesInterval);
if (quoteId > prevQuoteId) {
const quoteId = Math.floor(pct / quotesInterval);
const quote = quotes[quoteId];
if (quote) {
const tweet = tweetBase.cloneNode(true);
tweet.style.display = "flex";
if (quote.avatarUrl) {
tweet.querySelector("img").src = quote.avatarUrl;
}
tweet.querySelector(".tweet__text").innerHTML = `<p>${quote.text}</p>`;
tweet.querySelector(".text-muted").innerHTML = `${quote.name}`;
document.querySelector('.status-page__footer').insertAdjacentElement('beforebegin', tweet);
await sleep(1);
tweet.style.maxHeight = "500px";
tweet.style.opacity = "1";
tweet.scrollIntoView({behavior: "smooth"});
await sleep(2000);
}
}
progress.innerHTML = `${pct}% conviction`;
tick.style.backgroundColor = "#03A84E";
}
window.scrollTo({top: 0, behavior: 'smooth'});
statusContainer.style.opacity = "1";
statusContainer.style.maxHeight = "500px";
const title = document.querySelector(".status-page__title");
title.innerHTML = "";
const typewriter = new Typewriter(title, { delay: 30 });
typewriter
.typeString("Juraj, our heart is beating for Better Stack.")
.pauseFor(2500)
.deleteAll()
.typeString("We would love to partner up and redefine the observability space together with you!");
typewriter
.start()
.callFunction(async ()=>{
await sleep(1000);
contactButton.style.transform = "scale(1)";
contactButton.style.opacity = "1";
});
};
document.addEventListener('keydown', (e) => {
if (e.key === "c") return ddProgress();
});
if (window.location.hash === "#dd") {
setTimeout(ddProgress, 3000);
}
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("Typewriter",[],t):"object"==typeof exports?exports.Typewriter=t():e.Typewriter=t()}("undefined"!=typeof self?self:this,(function(){return(()=>{var e={75:function(e){(function(){var t,n,r,o,a,s;"undefined"!=typeof performance&&null!==performance&&performance.now?e.exports=function(){return performance.now()}:"undefined"!=typeof process&&null!==process&&process.hrtime?(e.exports=function(){return(t()-a)/1e6},n=process.hrtime,o=(t=function(){var e;return 1e9*(e=n())[0]+e[1]})(),s=1e9*process.uptime(),a=o-s):Date.now?(e.exports=function(){return Date.now()-r},r=Date.now()):(e.exports=function(){return(new Date).getTime()-r},r=(new Date).getTime())}).call(this)},4087:(e,t,n)=>{for(var r=n(75),o="undefined"==typeof window?n.g:window,a=["moz","webkit"],s="AnimationFrame",i=o["request"+s],u=o["cancel"+s]||o["cancelRequest"+s],l=0;!i&&l<a.length;l++)i=o[a[l]+"Request"+s],u=o[a[l]+"Cancel"+s]||o[a[l]+"CancelRequest"+s];if(!i||!u){var c=0,p=0,d=[];i=function(e){if(0===d.length){var t=r(),n=Math.max(0,16.666666666666668-(t-c));c=n+t,setTimeout((function(){var e=d.slice(0);d.length=0;for(var t=0;t<e.length;t++)if(!e[t].cancelled)try{e[t].callback(c)}catch(e){setTimeout((function(){throw e}),0)}}),Math.round(n))}return d.push({handle:++p,callback:e,cancelled:!1}),p},u=function(e){for(var t=0;t<d.length;t++)d[t].handle===e&&(d[t].cancelled=!0)}}e.exports=function(e){return i.call(o,e)},e.exports.cancel=function(){u.apply(o,arguments)},e.exports.polyfill=function(e){e||(e=o),e.requestAnimationFrame=i,e.cancelAnimationFrame=u}}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var a=t[r]={exports:{}};return e[r].call(a.exports,a,a.exports,n),a.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var r={};return(()=>{"use strict";n.d(r,{default:()=>S});var e=n(4087),t=n.n(e);const o=function(e){return new RegExp(/<[a-z][\s\S]*>/i).test(e)},a=function(e){var t=document.createElement("div");return t.innerHTML=e,t.childNodes},s=function(e,t){return Math.floor(Math.random()*(t-e+1))+e};var i="TYPE_CHARACTER",u="REMOVE_CHARACTER",l="REMOVE_ALL",c="REMOVE_LAST_VISIBLE_NODE",p="PAUSE_FOR",d="CALL_FUNCTION",f="ADD_HTML_TAG_ELEMENT",v="CHANGE_DELETE_SPEED",h="CHANGE_DELAY",m="CHANGE_CURSOR",y="PASTE_STRING",g="HTML_TAG";function E(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function w(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?E(Object(n),!0).forEach((function(t){N(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):E(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function T(e){return function(e){if(Array.isArray(e))return b(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?b(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function A(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 N(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}const S=function(){function n(r,E){var b=this;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,n),N(this,"state",{cursorAnimation:null,lastFrameTime:null,pauseUntil:null,eventQueue:[],eventLoop:null,eventLoopPaused:!1,reverseCalledEvents:[],calledEvents:[],visibleNodes:[],initialOptions:null,elements:{container:null,wrapper:document.createElement("span"),cursor:document.createElement("span")}}),N(this,"options",{strings:null,cursor:"|",delay:"natural",pauseFor:1500,deleteSpeed:"natural",loop:!1,autoStart:!1,devMode:!1,skipAddStyles:!1,wrapperClassName:"Typewriter__wrapper",cursorClassName:"Typewriter__cursor",stringSplitter:null,onCreateTextNode:null,onRemoveNode:null}),N(this,"setupWrapperElement",(function(){b.state.elements.container&&(b.state.elements.wrapper.className=b.options.wrapperClassName,b.state.elements.cursor.className=b.options.cursorClassName,b.state.elements.cursor.innerHTML=b.options.cursor,b.state.elements.container.innerHTML="",b.state.elements.container.appendChild(b.state.elements.wrapper),b.state.elements.container.appendChild(b.state.elements.cursor))})),N(this,"start",(function(){return b.state.eventLoopPaused=!1,b.runEventLoop(),b})),N(this,"pause",(function(){return b.state.eventLoopPaused=!0,b})),N(this,"stop",(function(){return b.state.eventLoop&&((0,e.cancel)(b.state.eventLoop),b.state.eventLoop=null),b})),N(this,"pauseFor",(function(e){return b.addEventToQueue(p,{ms:e}),b})),N(this,"typeOutAllStrings",(function(){return"string"==typeof b.options.strings?(b.typeString(b.options.strings).pauseFor(b.options.pauseFor),b):(b.options.strings.forEach((function(e){b.typeString(e).pauseFor(b.options.pauseFor).deleteAll(b.options.deleteSpeed)})),b)})),N(this,"typeString",(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(o(e))return b.typeOutHTMLString(e,t);if(e){var n=b.options||{},r=n.stringSplitter,a="function"==typeof r?r(e):e.split("");b.typeCharacters(a,t)}return b})),N(this,"pasteString",(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return o(e)?b.typeOutHTMLString(e,t,!0):(e&&b.addEventToQueue(y,{character:e,node:t}),b)})),N(this,"typeOutHTMLString",(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2?arguments[2]:void 0,r=a(e);if(r.length>0)for(var o=0;o<r.length;o++){var s=r[o],i=s.innerHTML;s&&3!==s.nodeType?(s.innerHTML="",b.addEventToQueue(f,{node:s,parentNode:t}),n?b.pasteString(i,s):b.typeString(i,s)):s.textContent&&(n?b.pasteString(s.textContent,t):b.typeString(s.textContent,t))}return b})),N(this,"deleteAll",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"natural";return b.addEventToQueue(l,{speed:e}),b})),N(this,"changeDeleteSpeed",(function(e){if(!e)throw new Error("Must provide new delete speed");return b.addEventToQueue(v,{speed:e}),b})),N(this,"changeDelay",(function(e){if(!e)throw new Error("Must provide new delay");return b.addEventToQueue(h,{delay:e}),b})),N(this,"changeCursor",(function(e){if(!e)throw new Error("Must provide new cursor");return b.addEventToQueue(m,{cursor:e}),b})),N(this,"deleteChars",(function(e){if(!e)throw new Error("Must provide amount of characters to delete");for(var t=0;t<e;t++)b.addEventToQueue(u);return b})),N(this,"callFunction",(function(e,t){if(!e||"function"!=typeof e)throw new Error("Callbak must be a function");return b.addEventToQueue(d,{cb:e,thisArg:t}),b})),N(this,"typeCharacters",(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(!e||!Array.isArray(e))throw new Error("Characters must be an array");return e.forEach((function(e){b.addEventToQueue(i,{character:e,node:t})})),b})),N(this,"removeCharacters",(function(e){if(!e||!Array.isArray(e))throw new Error("Characters must be an array");return e.forEach((function(){b.addEventToQueue(u)})),b})),N(this,"addEventToQueue",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return b.addEventToStateProperty(e,t,n,"eventQueue")})),N(this,"addReverseCalledEvent",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=b.options.loop;return r?b.addEventToStateProperty(e,t,n,"reverseCalledEvents"):b})),N(this,"addEventToStateProperty",(function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o={eventName:e,eventArgs:t||{}};return b.state[r]=n?[o].concat(T(b.state[r])):[].concat(T(b.state[r]),[o]),b})),N(this,"runEventLoop",(function(){b.state.lastFrameTime||(b.state.lastFrameTime=Date.now());var e=Date.now(),n=e-b.state.lastFrameTime;if(!b.state.eventQueue.length){if(!b.options.loop)return;b.state.eventQueue=T(b.state.calledEvents),b.state.calledEvents=[],b.options=w({},b.state.initialOptions)}if(b.state.eventLoop=t()(b.runEventLoop),!b.state.eventLoopPaused){if(b.state.pauseUntil){if(e<b.state.pauseUntil)return;b.state.pauseUntil=null}var r,o=T(b.state.eventQueue),a=o.shift();if(!(n<=(r=a.eventName===c||a.eventName===u?"natural"===b.options.deleteSpeed?s(40,80):b.options.deleteSpeed:"natural"===b.options.delay?s(120,160):b.options.delay))){var E=a.eventName,A=a.eventArgs;switch(b.logInDevMode({currentEvent:a,state:b.state,delay:r}),E){case y:case i:var N=A.character,S=A.node,C=document.createTextNode(N),_=C;b.options.onCreateTextNode&&"function"==typeof b.options.onCreateTextNode&&(_=b.options.onCreateTextNode(N,C)),_&&(S?S.appendChild(_):b.state.elements.wrapper.appendChild(_)),b.state.visibleNodes=[].concat(T(b.state.visibleNodes),[{type:"TEXT_NODE",character:N,node:_}]);break;case u:o.unshift({eventName:c,eventArgs:{removingCharacterNode:!0}});break;case p:var O=a.eventArgs.ms;b.state.pauseUntil=Date.now()+parseInt(O);break;case d:var L=a.eventArgs,D=L.cb,M=L.thisArg;D.call(M,{elements:b.state.elements});break;case f:var x=a.eventArgs,P=x.node,R=x.parentNode;R?R.appendChild(P):b.state.elements.wrapper.appendChild(P),b.state.visibleNodes=[].concat(T(b.state.visibleNodes),[{type:g,node:P,parentNode:R||b.state.elements.wrapper}]);break;case l:var j=b.state.visibleNodes,k=A.speed,Q=[];k&&Q.push({eventName:v,eventArgs:{speed:k,temp:!0}});for(var F=0,H=j.length;F<H;F++)Q.push({eventName:c,eventArgs:{removingCharacterNode:!1}});k&&Q.push({eventName:v,eventArgs:{speed:b.options.deleteSpeed,temp:!0}}),o.unshift.apply(o,Q);break;case c:var I=a.eventArgs.removingCharacterNode;if(b.state.visibleNodes.length){var U=b.state.visibleNodes.pop(),q=U.type,G=U.node,Y=U.character;b.options.onRemoveNode&&"function"==typeof b.options.onRemoveNode&&b.options.onRemoveNode({node:G,character:Y}),G&&G.parentNode.removeChild(G),q===g&&I&&o.unshift({eventName:c,eventArgs:{}})}break;case v:b.options.deleteSpeed=a.eventArgs.speed;break;case h:b.options.delay=a.eventArgs.delay;break;case m:b.options.cursor=a.eventArgs.cursor,b.state.elements.cursor.innerHTML=a.eventArgs.cursor}b.options.loop&&(a.eventName===c||a.eventArgs&&a.eventArgs.temp||(b.state.calledEvents=[].concat(T(b.state.calledEvents),[a]))),b.state.eventQueue=o,b.state.lastFrameTime=e}}})),r)if("string"==typeof r){var A=document.querySelector(r);if(!A)throw new Error("Could not find container element");this.state.elements.container=A}else this.state.elements.container=r;E&&(this.options=w(w({},this.options),E)),this.state.initialOptions=w({},this.options),this.init()}var r,E;return r=n,(E=[{key:"init",value:function(){var e,t;this.setupWrapperElement(),this.addEventToQueue(m,{cursor:this.options.cursor},!0),this.addEventToQueue(l,null,!0),!window||window.___TYPEWRITER_JS_STYLES_ADDED___||this.options.skipAddStyles||(e=".Typewriter__cursor{-webkit-animation:Typewriter-cursor 1s infinite;animation:Typewriter-cursor 1s infinite;margin-left:1px}@-webkit-keyframes Typewriter-cursor{0%{opacity:0}50%{opacity:1}100%{opacity:0}}@keyframes Typewriter-cursor{0%{opacity:0}50%{opacity:1}100%{opacity:0}}",(t=document.createElement("style")).appendChild(document.createTextNode(e)),document.head.appendChild(t),window.___TYPEWRITER_JS_STYLES_ADDED___=!0),!0===this.options.autoStart&&this.options.strings&&this.typeOutAllStrings().start()}},{key:"logInDevMode",value:function(e){this.options.devMode&&console.log(e)}}])&&A(r.prototype,E),n}()})(),r.default})()}));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment