What if multiple optimistic updates overlap and are possibly entangled? What if a transition triggers one or multiple loading states? What if the user fires two requests and now you have a race-condition?
What if multiple optimistic updates overlap and are possibly entangled? What if a transition triggers one or multiple loading states? What if the user fires two requests and now you have a race-condition?
I'm sticking to the other layout. This wouldn't be the first time Apple backtracks on Safari's design.
I'm sticking to the other layout. This wouldn't be the first time Apple backtracks on Safari's design.
I use the following custom command as a commit action.
Works both from the commit log and when viewing the history for a single file (right click / history).
I use the following custom command as a commit action.
Works both from the commit log and when viewing the history for a single file (right click / history).
For example, when replying to someone named "Lastname, Firstname", Spark will sometimes interpret that as 2 recipients.
For example, when replying to someone named "Lastname, Firstname", Spark will sometimes interpret that as 2 recipients.
You scroll slightly to far, go back up and immediately have a title bar in your face.
You scroll slightly to far, go back up and immediately have a title bar in your face.
My issue isn't with performance, but readability. One of the documented use-cases for Symbols is weak information hiding, so it feels more obvious to me.
My issue isn't with performance, but readability. One of the documented use-cases for Symbols is weak information hiding, so it feels more obvious to me.
const value = Symbol()
class A {
[value]: ... // can't be accessed without the symbol
}
developer.mozilla.org/en-US/docs/W...
const value = Symbol()
class A {
[value]: ... // can't be accessed without the symbol
}
developer.mozilla.org/en-US/docs/W...
<ComboBox>
<TriggerButton loading={...} />
<Content>
<Item onClick={...} />
</Content>
<ComboBox>
<ComboBox>
<TriggerButton loading={...} />
<Content>
<Item onClick={...} />
</Content>
<ComboBox>
```
const [el, setEl] = useState()
return <>
<div ref={setEl} />
{el && createPortal(..., el)}
</>
```
I'd probably accept the rerender, since the only duplicate work is that one portal target.
```
const [el, setEl] = useState()
return <>
<div ref={setEl} />
{el && createPortal(..., el)}
</>
```
I'd probably accept the rerender, since the only duplicate work is that one portal target.
Also, the reduce-motion setting supposedly turns off some of the refractions.
Also, the reduce-motion setting supposedly turns off some of the refractions.
- Scroll edge effects solve the issue of scrollable content just disappearing into a divider, like here on Bsky. Not knowing whether a view is scrollable has been a recurring complaint in the past.
- The toolbar design finally gives all buttons clear shapes again.
- Scroll edge effects solve the issue of scrollable content just disappearing into a divider, like here on Bsky. Not knowing whether a view is scrollable has been a recurring complaint in the past.
- The toolbar design finally gives all buttons clear shapes again.
Interestingly, the examples here have far fewer a11y-issues than the version shown at the keynote.
developer.apple.com/videos/play/...
Interestingly, the examples here have far fewer a11y-issues than the version shown at the keynote.
developer.apple.com/videos/play/...
npmtrends.com/@tanstack/re...
npmtrends.com/@tanstack/re...