source code was moved into github repository: https://github.com/Svehla/TS_DeepMerge
export const CACHE_STALE_AT_HEADER = 'x-edge-cache-stale-at'; | |
export const CACHE_STATUS_HEADER = 'x-edge-cache-status'; | |
export const CACHE_CONTROL_HEADER = 'Cache-Control'; | |
export const CLIENT_CACHE_CONTROL_HEADER = 'x-client-cache-control'; | |
export const ORIGIN_CACHE_CONTROL_HEADER = 'x-edge-origin-cache-control'; | |
enum CacheStatus { | |
HIT = 'HIT', | |
MISS = 'MISS', | |
REVALIDATING = 'REVALIDATING', |
By Golo Roden, translated from German with the help of DeepL
Every developer knows the challenge of estimating effort for development code. Very few like to do it. Why is estimating so unpopular, why is it even necessary, and what should you look for?
The question of why it's necessary to estimate effort at all is easy to answer. Knowing how long a task is expected to take is essential for planning who in a team can do what and when. Even across team boundaries, a certain amount of time planning is essential; after all, teams have to be coordinated and resources have to be procured. In addition, other departments such as marketing also have an interest in being involved in planning at an early stage.
The package that linked you here is now pure ESM. It cannot be require()
'd from CommonJS.
This means you have the following choices:
- Use ESM yourself. (preferred)
Useimport foo from 'foo'
instead ofconst foo = require('foo')
to import the package. You also need to put"type": "module"
in your package.json and more. Follow the below guide. - If the package is used in an async context, you could use
await import(…)
from CommonJS instead ofrequire(…)
. - Stay on the existing version of the package until you can move to ESM.
/** | |
* Get balanced dash-strokearray and dash-strokeoffset properties for a path of a given length. | |
* @param length The length of the path. | |
* @param strokeWidth The shape's stroke-width property. | |
* @param style The stroke's style: "dashed" or "dotted" (default "dashed"). | |
* @param snap An interval for dashes (e.g. 4 will produce arrays with 4, 8, 16, etc dashes). | |
*/ | |
export function getPerfectDashProps( | |
length: number, |
This is a work in progress. Please don't take this as something that will definitely happen, we all know what happens to well laid plans and I need to present it to the rest of the TypeScript team in order to figure out a lot of feasibility questions.
The examples in this PR assumes [CLI DX] Improve positioning of compiler error messaging info #45717 is merged
In 4.4, all diagnostic messages from TypeScript are treated the same, we have a massive .JSON file of ±2000 diagnostic messages which are used everywhere from compiler messages to CLI help. Aside from some simple string manipulation, these are effectively what we output for all error messages. I'd like to propose that we break this pattern, just for error TS2322.
TS2322 is our 'type x is not assignable to y' error, you'd see it for const str: string = 123
and I expect it is the most seen
Composition of <Route>
elements in React Router is changing in v6 from how it worked in v4/5 and in Reach Router. React Router v6 is the successor of both React Router v5 and Reach Router.
This document explains our rationale for making the change as well as a pattern you will want to avoid in v6 and a note on how you can start preparing your v5 app for v6 today.
In React Router v5, we had an example of how you could create a element](https://github.com/remix-run/react-router/blob/320be7afe44249d5c025659bc00c3276a19f0af9/packages/react-router-dom/examples/Auth.js#L50-L52) to restrict access to certain routes on the page. This element was a simple [wrapper around an actual
element that made a simple decision: is the user authenticated or not? If so, ren
/** | |
* https://github.com/gre/bezier-easing | |
* BezierEasing - use bezier curve for transition easing function | |
* by Gaëtan Renaudeau 2014 - 2015 – MIT License | |
*/ | |
// These values are established by empiricism with tests (tradeoff: performance VS precision) | |
export const NEWTON_ITERATIONS = 4; | |
export const NEWTON_MIN_SLOPE = 0.001; | |
export const SUBDIVISION_PRECISION = 0.0000001; |