JavaScript
31.9K subscribers
1.01K photos
9 videos
33 files
695 links
A resourceful newsletter featuring the latest and most important news, articles, books and updates in the world of #javascript πŸš€ Don't miss our Quizzes!

Let's chat: @nairihar
Download Telegram
🀟 How We Migrated Our Rush.js Monorepo to Node Type Stripping

Since v23.6 (and in LTS since v22.18.0), Node has supported running (most) TypeScript code by stripping the types out first. The Calm team was excited about the potential for improving productivity and DX, and set a migration in process. Here’s a look at the challenges encountered and what the end results were.

Stuart Dotson (Calm)
Please open Telegram to view this post
VIEW IN TELEGRAM
πŸ”₯5❀2πŸ‘1
CHALLENGE

const original = { a: 1, b: { c: 2 } };
const shallow = { ...original };
const deep = JSON.parse(JSON.stringify(original));

shallow.a = 10;
shallow.b.c = 20;

deep.a = 100;
deep.b.c = 200;

const frozen = Object.freeze({ x: 1, y: { z: 2 } });
frozen.x = 99;
frozen.y.z = 99;

console.log(original.a, original.b.c, frozen.x, frozen.y.z);
❀2πŸ”₯2
❀4πŸ‘2
Please open Telegram to view this post
VIEW IN TELEGRAM
❀4πŸ”₯2πŸ‘1
CHALLENGE

async function fetchData() {
console.log('1');
return Promise.resolve('data');
}

async function processData() {
console.log('2');
const result = await fetchData();
console.log('3');
return result;
}

console.log('4');
processData().then(() => console.log('5'));
console.log('6');
❀1πŸ‘1πŸ€”1