@remix-run/ui 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/README.md +86 -20
  2. package/dist/animation/demos/drag-release.js +5 -7
  3. package/dist/animation/demos/drag-release.js.map +1 -1
  4. package/dist/index.d.ts +2 -2
  5. package/dist/index.js +1 -1
  6. package/dist/index.js.map +1 -1
  7. package/dist/runtime/component.d.ts +2 -1
  8. package/dist/runtime/component.js.map +1 -1
  9. package/dist/runtime/diff-dom.js +8 -3
  10. package/dist/runtime/diff-dom.js.map +1 -1
  11. package/dist/runtime/dom.d.ts +21 -11
  12. package/dist/runtime/event-types.d.ts +14 -0
  13. package/dist/runtime/event-types.js +2 -0
  14. package/dist/runtime/event-types.js.map +1 -0
  15. package/dist/runtime/frame-resolution.js +8 -0
  16. package/dist/runtime/frame-resolution.js.map +1 -1
  17. package/dist/runtime/frame.d.ts +5 -2
  18. package/dist/runtime/frame.js +107 -49
  19. package/dist/runtime/frame.js.map +1 -1
  20. package/dist/runtime/mixins/link-mixin.js +4 -4
  21. package/dist/runtime/mixins/link-mixin.js.map +1 -1
  22. package/dist/runtime/mixins/mixin.d.ts +9 -3
  23. package/dist/runtime/mixins/mixin.js.map +1 -1
  24. package/dist/runtime/mixins/on-mixin.d.ts +1 -1
  25. package/dist/runtime/module-preloader.js +3 -3
  26. package/dist/runtime/module-preloader.js.map +1 -1
  27. package/dist/runtime/navigation.d.ts +1 -2
  28. package/dist/runtime/navigation.js +115 -36
  29. package/dist/runtime/navigation.js.map +1 -1
  30. package/dist/runtime/reconcile.js +9 -3
  31. package/dist/runtime/reconcile.js.map +1 -1
  32. package/dist/runtime/run.d.ts +3 -3
  33. package/dist/runtime/run.js +43 -3
  34. package/dist/runtime/run.js.map +1 -1
  35. package/dist/runtime/scheduler.js +37 -11
  36. package/dist/runtime/scheduler.js.map +1 -1
  37. package/dist/runtime/spa-response.d.ts +30 -0
  38. package/dist/runtime/spa-response.js +47 -0
  39. package/dist/runtime/spa-response.js.map +1 -0
  40. package/dist/runtime/typed-event-target.d.ts +0 -4
  41. package/dist/runtime/typed-event-target.js.map +1 -1
  42. package/dist/server/stream.js +21 -5
  43. package/dist/server/stream.js.map +1 -1
  44. package/dist/style/stylesheet.js +2 -2
  45. package/dist/style/stylesheet.js.map +1 -1
  46. package/package.json +1 -1
  47. package/src/animation/demos/drag-release.ts +5 -7
  48. package/src/index.ts +2 -2
  49. package/src/runtime/component.ts +2 -1
  50. package/src/runtime/demos/readme.demo.tsx +7 -17
  51. package/src/runtime/diff-dom.ts +6 -3
  52. package/src/runtime/dom.ts +21 -11
  53. package/src/runtime/event-types.ts +27 -0
  54. package/src/runtime/frame-resolution.ts +9 -0
  55. package/src/runtime/frame.ts +112 -50
  56. package/src/runtime/mixins/link-mixin.ts +4 -4
  57. package/src/runtime/mixins/mixin.ts +26 -4
  58. package/src/runtime/mixins/on-mixin.ts +1 -1
  59. package/src/runtime/module-preloader.ts +3 -3
  60. package/src/runtime/navigation.ts +127 -34
  61. package/src/runtime/reconcile.ts +11 -4
  62. package/src/runtime/run.ts +53 -6
  63. package/src/runtime/scheduler.ts +53 -13
  64. package/src/runtime/spa-response.ts +56 -0
  65. package/src/runtime/typed-event-target.ts +1 -6
  66. package/src/server/stream.ts +28 -5
  67. package/src/style/stylesheet.ts +3 -3
  68. package/dist/runtime/event-listeners.d.ts +0 -50
  69. package/dist/runtime/event-listeners.js +0 -31
  70. package/dist/runtime/event-listeners.js.map +0 -1
  71. package/src/runtime/event-listeners.ts +0 -171
package/README.md CHANGED
@@ -81,10 +81,10 @@ function Actions() {
81
81
 
82
82
  ## Frame Navigation
83
83
 
84
- Configure `resolveFrame` once to progressively enhance same-origin links and forms. The resolver owns the fetch request and receives native submission metadata for non-GET forms:
84
+ `run()` progressively enhances same-origin links and forms using a default `resolveFrame` that
85
+ fetches the frame source:
85
86
 
86
87
  ```tsx
87
- import type { ResolveFrameOptions } from 'remix/ui'
88
88
  import { run } from 'remix/ui'
89
89
 
90
90
  let app = run({
@@ -92,20 +92,44 @@ let app = run({
92
92
  let mod = await import(moduleUrl)
93
93
  return mod[exportName]
94
94
  },
95
- async resolveFrame(src, options) {
96
- return fetch(src, {
97
- headers: { Accept: 'text/html', 'X-Remix-Frame': 'true' },
98
- method: options?.method,
99
- body: getRequestBody(options),
100
- signal: options?.signal,
101
- })
102
- },
103
95
  })
104
96
 
105
- function getRequestBody(options?: ResolveFrameOptions): BodyInit | undefined {
97
+ await app.ready()
98
+ ```
99
+
100
+ The default resolver is equivalent to:
101
+
102
+ ```js
103
+ async function resolveFrame(src, options) {
104
+ let response = await fetch(src, {
105
+ body: getRequestBody(options),
106
+ headers: { Accept: 'text/html' },
107
+ method: options?.method,
108
+ signal: options?.signal,
109
+ })
110
+
111
+ if (!response.ok) {
112
+ throw new Error(`Failed to resolve frame: ${response.status} ${response.statusText}`.trimEnd())
113
+ }
114
+
115
+ return response
116
+ }
117
+
118
+ function getRequestBody(options) {
106
119
  let formData = options?.formData
107
- if (!formData) return
108
- if (options.encType !== 'application/x-www-form-urlencoded') return formData
120
+ if (!formData || options?.method?.toLowerCase() === 'get') return
121
+
122
+ if (options?.encType === 'text/plain') {
123
+ let body = ''
124
+ for (let [name, value] of formData) {
125
+ name = normalizeLineBreaks(name)
126
+ value = normalizeLineBreaks(typeof value === 'string' ? value : value.name)
127
+ body += `${name}=${value}\r\n`
128
+ }
129
+ return new Blob([body], { type: 'text/plain' })
130
+ }
131
+
132
+ if (options?.encType !== 'application/x-www-form-urlencoded') return formData
109
133
 
110
134
  let body = new URLSearchParams()
111
135
  for (let [name, value] of formData) {
@@ -114,10 +138,24 @@ function getRequestBody(options?: ResolveFrameOptions): BodyInit | undefined {
114
138
  return body
115
139
  }
116
140
 
117
- await app.ready()
141
+ function normalizeLineBreaks(value) {
142
+ return value.replace(/\r\n|\r|\n/g, '\r\n')
143
+ }
118
144
  ```
119
145
 
120
- Forms remain ordinary HTML forms before the runtime starts. Add `rmx-target` to reload a named frame, or `rmx-document` to require a full-document submission:
146
+ The default resolver requests HTML. GET form values are already encoded in `src`;
147
+ `application/x-www-form-urlencoded` submissions use `URLSearchParams`, `text/plain` submissions use
148
+ CRLF-delimited text, and `multipart/form-data` submissions use `FormData`. Pass a custom
149
+ `resolveFrame` when the server requires additional headers, another body encoding, or a different
150
+ response policy.
151
+
152
+ Add `data-rmx-document` to a link or form to leave its navigation to the browser.
153
+
154
+ The default resolver rejects non-OK responses with an error containing their status and status text.
155
+ A custom `resolveFrame` may return a `Response` with any status when it wants Remix UI to render the
156
+ response body.
157
+
158
+ Forms remain ordinary HTML forms before the runtime starts. Add `data-rmx-target` to reload a named frame, or `data-rmx-document` to require a full-document submission:
121
159
 
122
160
  ```tsx
123
161
  import { Frame } from 'remix/ui'
@@ -126,7 +164,7 @@ function AccountPage() {
126
164
  return () => (
127
165
  <>
128
166
  <Frame name="account" src="/account/edit" />
129
- <form action="/account/edit" method="post" rmx-target="account">
167
+ <form action="/account/edit" method="post" data-rmx-target="account">
130
168
  <label for="display-name">Display name</label>
131
169
  <input id="display-name" name="displayName" required />
132
170
  <button type="submit">Save</button>
@@ -138,19 +176,47 @@ function AccountPage() {
138
176
 
139
177
  Native constraint validation and submitter overrides still apply. GET form values arrive in `src`; non-GET forms provide `formData`, `method`, and `encType` to the resolver. See [Frames](https://github.com/remix-run/remix/blob/main/packages/ui/docs/frames.md#form-navigation) for targeting, history behavior, request encoding, opt-outs, and server response guidance.
140
178
 
141
- Use `rmx-history="push|replace"` on an enhanced anchor or form to control how the navigation updates history. This can override the automatic replacement used for non-GET form submissions to the current URL.
179
+ Use `data-rmx-history="push|replace"` on an enhanced anchor or form to control how the navigation updates history. This can override the automatic replacement used for non-GET form submissions to the current URL.
180
+
181
+ ## Single-page Applications
182
+
183
+ Use `render` and `run` from `remix/spa` when every route runs in the browser and returns a Remix UI
184
+ tree instead of an HTTP response body. The render middleware keeps the router's standard `Request`
185
+ to `Response` contract while associating the response with a node for the top frame to render:
186
+
187
+ ```tsx
188
+ import { createRouter } from 'remix/router'
189
+ import { render, run } from 'remix/spa'
190
+
191
+ let router = createRouter({ middleware: [render()] })
192
+
193
+ router.get('/', ({ render }) => render(<h1>Home</h1>))
194
+ router.get('/about', ({ render }) => render(<h1>About</h1>))
195
+
196
+ function LoadingPage() {
197
+ return () => <p role="status">Loading…</p>
198
+ }
199
+
200
+ let app = run(router, { fallback: <LoadingPage /> })
201
+ await app.ready()
202
+ ```
203
+
204
+ The optional `fallback` is a live Remix node displayed while the initial route loads.
205
+ `app.ready()` resolves after the initial URL has replaced it with the routed node. The runtime then
206
+ reuses frame navigation for same-origin links, forms, history traversal, redirects, cancellation,
207
+ and `rmx-target`.
142
208
 
143
209
  ## Preserving Client-Owned DOM
144
210
 
145
- Use `rmx-preserve-dom` on the smallest element whose live DOM should belong to client code after initial render, such as a custom element or third-party widget:
211
+ Use `data-rmx-preserve-dom` on the smallest element whose live DOM should belong to client code after initial render, such as a custom element or third-party widget:
146
212
 
147
213
  ```tsx
148
- <pagefind-ui data-key="search" rmx-preserve-dom>
214
+ <pagefind-ui data-rmx-key="search" data-rmx-preserve-dom>
149
215
  <button type="button">Search</button>
150
216
  </pagefind-ui>
151
217
  ```
152
218
 
153
- Remix UI still renders the element's children during SSR and still hydrates any initial client entries inside it. On later frame reloads, matched `rmx-preserve-dom` elements keep their current attributes and children instead of accepting incoming DOM updates. See [Preserving client-owned DOM](https://github.com/remix-run/remix/blob/main/packages/ui/docs/frames.md#preserving-client-owned-dom) for guidance and caveats.
219
+ Remix UI still renders the element's children during SSR and still hydrates any initial client entries inside it. On later frame reloads, matched `data-rmx-preserve-dom` elements keep their current attributes and children instead of accepting incoming DOM updates. See [Preserving client-owned DOM](https://github.com/remix-run/remix/blob/main/packages/ui/docs/frames.md#preserving-client-owned-dom) for guidance and caveats.
154
220
 
155
221
  ## Cascade Layers
156
222
 
@@ -1,4 +1,4 @@
1
- import { addEventListeners, createMixin } from '@remix-run/ui';
1
+ import { createMixin } from '@remix-run/ui';
2
2
  export const dragVelocityReleaseEventType = 'rmx:drag-velocity-release';
3
3
  export class DragVelocityEvent extends Event {
4
4
  clientX;
@@ -82,12 +82,10 @@ const baseDragVelocityEvents = createMixin((handle) => {
82
82
  };
83
83
  handle.addEventListener('insert', (event) => {
84
84
  target = event.node;
85
- addEventListeners(target, handle.signal, {
86
- pointerdown: onPointerDown,
87
- pointermove: onPointerMove,
88
- pointerup: onPointerUp,
89
- pointercancel: onPointerCancel,
90
- });
85
+ target.addEventListener('pointerdown', onPointerDown, { signal: handle.signal });
86
+ target.addEventListener('pointermove', onPointerMove, { signal: handle.signal });
87
+ target.addEventListener('pointerup', onPointerUp, { signal: handle.signal });
88
+ target.addEventListener('pointercancel', onPointerCancel, { signal: handle.signal });
91
89
  });
92
90
  });
93
91
  export const dragVelocityEvents = Object.assign(baseDragVelocityEvents, {
@@ -1 +1 @@
1
- {"version":3,"file":"drag-release.js","sourceRoot":"","sources":["../../../src/animation/demos/drag-release.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE9D,MAAM,CAAC,MAAM,4BAA4B,GAAG,2BAAoC,CAAA;AAQhF,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C,OAAO,CAAQ;IACf,OAAO,CAAQ;IACf,SAAS,CAAQ,CAAC,OAAO;IACzB,SAAS,CAAQ,CAAC,OAAO;IAEzB,YACE,IAAyC,EACzC,IAAgF;QAEhF,KAAK,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAChD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAA;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;QAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;IACjC,CAAC;CACF;AAED,MAAM,sBAAsB,GAAG,WAAW,CAAc,CAAC,MAAM,EAAE,EAAE;IACjE,IAAI,MAAmB,CAAA;IACvB,IAAI,UAAU,GAAG,KAAK,CAAA;IACtB,IAAI,SAAS,GAAkB,IAAI,CAAA;IACnC,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,IAAI,SAAS,GAAG,CAAC,CAAA;IAEjB,IAAI,aAAa,GAAG,CAAC,KAAmB,EAAE,EAAE;QAC1C,IAAI,CAAC,KAAK,CAAC,SAAS;YAAE,OAAM;QAC5B,UAAU,GAAG,IAAI,CAAA;QACjB,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QAC3B,KAAK,GAAG,KAAK,CAAC,OAAO,CAAA;QACrB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAA;QACrB,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAC5B,SAAS,GAAG,CAAC,CAAA;QACb,SAAS,GAAG,CAAC,CAAA;QACb,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAC3C,CAAC,CAAA;IAED,IAAI,aAAa,GAAG,CAAC,KAAmB,EAAE,EAAE;QAC1C,IAAI,CAAC,UAAU;YAAE,OAAM;QACvB,IAAI,CAAC,KAAK,CAAC,SAAS;YAAE,OAAM;QAC5B,IAAI,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,OAAM;QAE9D,IAAI,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;QAC3B,IAAI,EAAE,GAAG,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAA,CAAC,UAAU;QAE3C,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YACX,uDAAuD;YACvD,IAAI,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;YAC/C,IAAI,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,GAAG,EAAE,CAAA;YAC/C,SAAS,GAAG,SAAS,GAAG,GAAG,GAAG,YAAY,GAAG,GAAG,CAAA;YAChD,SAAS,GAAG,SAAS,GAAG,GAAG,GAAG,YAAY,GAAG,GAAG,CAAA;QAClD,CAAC;QAED,KAAK,GAAG,KAAK,CAAC,OAAO,CAAA;QACrB,KAAK,GAAG,KAAK,CAAC,OAAO,CAAA;QACrB,QAAQ,GAAG,GAAG,CAAA;IAChB,CAAC,CAAA;IAED,IAAI,WAAW,GAAG,CAAC,KAAmB,EAAE,EAAE;QACxC,IAAI,CAAC,UAAU;YAAE,OAAM;QACvB,IAAI,CAAC,KAAK,CAAC,SAAS;YAAE,OAAM;QAC5B,IAAI,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS;YAAE,OAAM;QAC9D,UAAU,GAAG,KAAK,CAAA;QAClB,SAAS,GAAG,IAAI,CAAA;QAEhB,4DAA4D;QAC5D,IAAI,iBAAiB,GAAG,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAA;QAC7D,IAAI,iBAAiB,GAAG,GAAG,EAAE,CAAC;YAC5B,SAAS,GAAG,CAAC,CAAA;YACb,SAAS,GAAG,CAAC,CAAA;QACf,CAAC;QAED,MAAM,CAAC,aAAa,CAClB,IAAI,iBAAiB,CAAC,4BAA4B,EAAE;YAClD,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS;YACT,SAAS;SACV,CAAC,CACH,CAAA;IACH,CAAC,CAAA;IAED,IAAI,eAAe,GAAG,GAAG,EAAE;QACzB,UAAU,GAAG,KAAK,CAAA;QAClB,SAAS,GAAG,IAAI,CAAA;IAClB,CAAC,CAAA;IAED,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QAC1C,MAAM,GAAG,KAAK,CAAC,IAAI,CAAA;QACnB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;YACvC,WAAW,EAAE,aAAa;YAC1B,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,WAAW;YACtB,aAAa,EAAE,eAAe;SAC/B,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAMF,MAAM,CAAC,MAAM,kBAAkB,GAA4B,MAAM,CAAC,MAAM,CAAC,sBAAsB,EAAE;IAC/F,OAAO,EAAE,4BAA4B;CACtC,CAAC,CAAA"}
1
+ {"version":3,"file":"drag-release.js","sourceRoot":"","sources":["../../../src/animation/demos/drag-release.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -9,14 +9,14 @@ export type { SerializablePrimitive, SerializableObject, SerializableArray, Seri
9
9
  export { Fragment, Frame } from './runtime/component.ts';
10
10
  export type { Task, Handle, Context, FrameHandleEventMap, FrameContent, FrameHandle, FrameProps, } from './runtime/component.ts';
11
11
  export type { LoadModule, ResolveFrame, ResolveFrameOptions } from './runtime/frame.ts';
12
+ export { spaResponse } from './runtime/spa-response.ts';
12
13
  export { createElement } from './runtime/create-element.ts';
13
14
  export type { ElementType, ElementProps, RemixElement, Renderable, RemixNode, Props, } from './runtime/jsx.ts';
14
15
  export type { HostProps, LayoutAnimationConfig } from './runtime/dom.ts';
15
16
  export { createMixin } from './runtime/mixins/mixin.ts';
16
17
  export type { MixinDescriptor, MixinFactory, MixinHandle, MixinType, MixInput, MixValue, } from './runtime/mixins/mixin.ts';
17
18
  export { TypedEventTarget } from './runtime/typed-event-target.ts';
18
- export { addEventListeners } from './runtime/event-listeners.ts';
19
- export type { Dispatched } from './runtime/event-listeners.ts';
19
+ export type { Dispatched } from './runtime/event-types.ts';
20
20
  export { on } from './runtime/mixins/on-mixin.ts';
21
21
  export { link } from './runtime/mixins/link-mixin.ts';
22
22
  export { ref } from './runtime/mixins/ref-mixin.ts';
package/dist/index.js CHANGED
@@ -6,11 +6,11 @@ export { createRoot, createRangeRoot, createScheduler } from './runtime/vdom.js'
6
6
  export { clientEntry } from './runtime/client-entries.js';
7
7
  // -- Components --
8
8
  export { Fragment, Frame } from './runtime/component.js';
9
+ export { spaResponse } from './runtime/spa-response.js';
9
10
  // -- Elements/JSX/Props --
10
11
  export { createElement } from './runtime/create-element.js';
11
12
  export { createMixin } from './runtime/mixins/mixin.js';
12
13
  export { TypedEventTarget } from './runtime/typed-event-target.js';
13
- export { addEventListeners } from './runtime/event-listeners.js';
14
14
  export { on } from './runtime/mixins/on-mixin.js';
15
15
  export { link } from './runtime/mixins/link-mixin.js';
16
16
  export { ref } from './runtime/mixins/ref-mixin.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,cAAc;AACd,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAItC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAQhF,uBAAuB;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAUzD,mBAAmB;AACnB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAYxD,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAU3D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AASvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AAEhE,OAAO,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAA;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,+BAA+B,CAAA;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAA;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAG1C,mBAAmB;AACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,cAAc;AACd,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAA;AAItC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAQhF,uBAAuB;AACvB,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAUzD,mBAAmB;AACnB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAWxD,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAEvD,2BAA2B;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAU3D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AASvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAElE,OAAO,EAAE,EAAE,EAAE,MAAM,8BAA8B,CAAA;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAA;AACrD,OAAO,EAAE,GAAG,EAAE,MAAM,+BAA+B,CAAA;AAEnD,OAAO,EAAE,KAAK,EAAE,MAAM,iCAAiC,CAAA;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAA;AAG1C,mBAAmB;AACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAA"}
@@ -120,7 +120,8 @@ export type FrameContent = ReadableStream<Uint8Array> | string | RemixNode;
120
120
  /**
121
121
  * Value returned by a browser frame resolver.
122
122
  *
123
- * A response body is rendered as frame content. When `fetch()` followed a redirect, the response's
123
+ * Response bodies are rendered as frame content regardless of status. The default browser resolver
124
+ * rejects non-OK responses before returning them. When `fetch()` followed a redirect, the response's
124
125
  * final URL updates the frame source and browser URL for a top-frame navigation.
125
126
  */
126
127
  export type FrameResolution = FrameContent | Response;
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/runtime/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/runtime/component.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { invariant } from './invariant.js';
2
2
  import { disposeClientEntryBoundary, getClientEntryBoundaryOwner } from './client-entry-boundary.js';
3
- const REMIX_PRESERVE_DOM_ATTRIBUTE = 'rmx-preserve-dom';
3
+ const REMIX_PRESERVE_DOM_ATTRIBUTE = 'data-rmx-preserve-dom';
4
4
  export function diffNodes(curr, next, context) {
5
5
  let parent = curr[0]?.parentNode ?? context.regionParent ?? null;
6
6
  invariant(parent, 'Parent node not found');
@@ -44,10 +44,15 @@ function diffNode(current, next, context) {
44
44
  if (nextMarkerData.status === 'resolved') {
45
45
  let nextEnd = findFrameEndMarker(next);
46
46
  let nextContent = collectFrameContentFragment(current.ownerDocument, next, nextEnd);
47
- void frame.renderMarkerContent({ ...nextMarkerData, id: getFrameId(next) }, nextContent, {
47
+ let render = frame.renderMarkerContent({ ...nextMarkerData, id: getFrameId(next) }, nextContent, {
48
48
  data: context.data,
49
49
  signal: context.signal,
50
+ reconciliationTracker: context.reconciliationTracker,
50
51
  });
52
+ if (context.reconciliationTracker)
53
+ context.reconciliationTracker.waitFor(render);
54
+ else
55
+ void render;
51
56
  return nextEnd;
52
57
  }
53
58
  if (frame.isDisplayingResolvedContent()) {
@@ -346,7 +351,7 @@ function parseSiblingUnits(nodes) {
346
351
  function getSiblingUnitKey(unit) {
347
352
  if (unit.kind !== 'node' || !isElement(unit.node))
348
353
  return;
349
- return unit.node.getAttribute('data-key') ?? undefined;
354
+ return unit.node.getAttribute('data-rmx-key') ?? undefined;
350
355
  }
351
356
  function siblingUnitsComparable(current, next) {
352
357
  if (current.kind !== next.kind)
@@ -1 +1 @@
1
- {"version":3,"file":"diff-dom.js","sourceRoot":"","sources":["../../src/runtime/diff-dom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff-dom.js","sourceRoot":"","sources":["../../src/runtime/diff-dom.ts"],"names":[],"mappings":"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"}
@@ -1346,10 +1346,10 @@ export interface AllHTMLProps<eventTarget extends EventTarget = EventTarget> ext
1346
1346
  * Preserve the current element attributes and children during frame DOM reconciliation.
1347
1347
  *
1348
1348
  * Server rendering and initial hydration still process this element and its children. On later
1349
- * frame reloads, a matched element with `rmx-preserve-dom` keeps its live DOM so custom elements
1350
- * and imperative widgets can own their subtree.
1349
+ * frame reloads, a matched element with `data-rmx-preserve-dom` keeps its live DOM so custom
1350
+ * elements and imperative widgets can own their subtree.
1351
1351
  */
1352
- 'rmx-preserve-dom'?: Trackable<boolean | '' | undefined>;
1352
+ 'data-rmx-preserve-dom'?: Trackable<boolean | '' | undefined>;
1353
1353
  /** The `about` HTML attribute. */
1354
1354
  about?: Trackable<string | undefined>;
1355
1355
  /** The `datatype` HTML attribute. */
@@ -1532,14 +1532,16 @@ export interface PartialAnchorHTMLProps<eventTarget extends EventTarget> extends
1532
1532
  referrerpolicy?: Trackable<HTMLAttributeReferrerPolicy | undefined>;
1533
1533
  /** The `referrerPolicy` HTML attribute. */
1534
1534
  referrerPolicy?: Trackable<HTMLAttributeReferrerPolicy | undefined>;
1535
- /** The `rmx-target` HTML attribute. */
1536
- 'rmx-target'?: Trackable<string | undefined>;
1537
- /** The `rmx-src` HTML attribute. */
1538
- 'rmx-src'?: Trackable<string | undefined>;
1535
+ /** The `data-rmx-document` HTML attribute. */
1536
+ 'data-rmx-document'?: Trackable<boolean | '' | undefined>;
1537
+ /** The `data-rmx-target` HTML attribute. */
1538
+ 'data-rmx-target'?: Trackable<string | undefined>;
1539
+ /** The `data-rmx-src` HTML attribute. */
1540
+ 'data-rmx-src'?: Trackable<string | undefined>;
1539
1541
  /** Controls how activating this anchor updates the current history entry. */
1540
- 'rmx-history'?: Trackable<'push' | 'replace' | undefined>;
1541
- /** The `rmx-reset-scroll` HTML attribute. */
1542
- 'rmx-reset-scroll'?: Trackable<string | undefined>;
1542
+ 'data-rmx-history'?: Trackable<'push' | 'replace' | undefined>;
1543
+ /** The `data-rmx-reset-scroll` HTML attribute. */
1544
+ 'data-rmx-reset-scroll'?: Trackable<string | undefined>;
1543
1545
  }
1544
1546
  export type AnchorAriaRoles = {
1545
1547
  href: Trackable<string>;
@@ -1885,8 +1887,16 @@ export interface FormHTMLProps<eventTarget extends EventTarget = HTMLFormElement
1885
1887
  role?: Trackable<'form' | 'none' | 'presentation' | 'search' | undefined>;
1886
1888
  /** The `target` HTML attribute. */
1887
1889
  target?: Trackable<string | undefined>;
1890
+ /** The `data-rmx-document` HTML attribute. */
1891
+ 'data-rmx-document'?: Trackable<boolean | '' | undefined>;
1892
+ /** The `data-rmx-target` HTML attribute. */
1893
+ 'data-rmx-target'?: Trackable<string | undefined>;
1894
+ /** The `data-rmx-src` HTML attribute. */
1895
+ 'data-rmx-src'?: Trackable<string | undefined>;
1888
1896
  /** Overrides how submitting this form updates the current history entry. */
1889
- 'rmx-history'?: Trackable<'push' | 'replace' | undefined>;
1897
+ 'data-rmx-history'?: Trackable<'push' | 'replace' | undefined>;
1898
+ /** The `data-rmx-reset-scroll` HTML attribute. */
1899
+ 'data-rmx-reset-scroll'?: Trackable<string | undefined>;
1890
1900
  }
1891
1901
  /**
1892
1902
  * Props accepted by `<heading>` elements.
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Event type with `currentTarget` narrowed to the dispatched target.
3
+ */
4
+ export type Dispatched<event extends Event, target extends EventTarget> = Omit<event, 'currentTarget'> & {
5
+ currentTarget: target;
6
+ };
7
+ /**
8
+ * Narrows non-event values to `never` and preserves dispatched event typing otherwise.
9
+ */
10
+ export type EnsureEvent<event, target extends EventTarget> = event extends Event ? Dispatched<event, target> : never;
11
+ /**
12
+ * Event map resolved for a DOM element.
13
+ */
14
+ export type EventMap<target extends Element> = target extends HTMLElement ? HTMLElementEventMap : target extends SVGSVGElement ? SVGSVGElementEventMap : target extends SVGElement ? SVGElementEventMap : ElementEventMap;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=event-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-types.js","sourceRoot":"","sources":["../../src/runtime/event-types.ts"],"names":[],"mappings":""}
@@ -1,6 +1,14 @@
1
+ import { getSpaResponseData } from './spa-response.js';
1
2
  export async function unwrapFrameResolution(resolution) {
2
3
  if (!(resolution instanceof Response))
3
4
  return { content: resolution };
5
+ let data = getSpaResponseData(resolution);
6
+ if (data) {
7
+ return {
8
+ content: data.node,
9
+ redirectedTo: data.redirectedTo,
10
+ };
11
+ }
4
12
  let content = resolution.body ?? (await resolution.text());
5
13
  return {
6
14
  content,
@@ -1 +1 @@
1
- {"version":3,"file":"frame-resolution.js","sourceRoot":"","sources":["../../src/runtime/frame-resolution.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,UAA2B;IAE3B,IAAI,CAAC,CAAC,UAAU,YAAY,QAAQ,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAA;IAErE,IAAI,OAAO,GAAG,UAAU,CAAC,IAAI,IAAI,CAAC,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC,CAAA;IAC1D,OAAO;QACL,OAAO;QACP,YAAY,EAAE,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;KACnF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"frame-resolution.js","sourceRoot":"","sources":["../../src/runtime/frame-resolution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEtD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,UAA2B;IAE3B,IAAI,CAAC,CAAC,UAAU,YAAY,QAAQ,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAA;IAErE,IAAI,IAAI,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACzC,IAAI,IAAI,EAAE,CAAC;QACT,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,IAAI;YAClB,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAA;IACH,CAAC;IAED,IAAI,OAAO,GAAG,UAAU,CAAC,IAAI,IAAI,CAAC,MAAM,UAAU,CAAC,IAAI,EAAE,CAAC,CAAA;IAC1D,OAAO;QACL,OAAO;QACP,YAAY,EAAE,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;KACnF,CAAA;AACH,CAAC"}
@@ -92,6 +92,7 @@ export type FrameRuntime = {
92
92
  namedFrames: Map<string, FrameHandle>;
93
93
  serverFrameReload: {
94
94
  signal: AbortSignal;
95
+ reconciliationTracker?: ReconciliationTracker;
95
96
  } | undefined;
96
97
  reloadForNavigation?: (options?: FrameReloadOptions) => Promise<FrameReloadResult>;
97
98
  };
@@ -123,6 +124,7 @@ export type FrameContext = {
123
124
  regionParent?: ParentNode | null;
124
125
  signal?: AbortSignal;
125
126
  isActiveModulePreload?: (node: Node) => boolean;
127
+ reconciliationTracker?: ReconciliationTracker;
126
128
  };
127
129
  type FrameInit = {
128
130
  name?: string;
@@ -161,7 +163,7 @@ export type Frame = {
161
163
  };
162
164
  type RenderOptions = {
163
165
  flushKind?: FlushKind;
164
- initialHydrationTracker?: InitialHydrationTracker;
166
+ reconciliationTracker?: ReconciliationTracker;
165
167
  signal?: AbortSignal;
166
168
  contentStatus?: 'pending' | 'resolved';
167
169
  data?: RmxData;
@@ -181,8 +183,9 @@ export declare function createFrameRuntime(init: {
181
183
  namedFrames: Map<string, FrameHandle>;
182
184
  reloadForNavigation?: (options?: FrameReloadOptions) => Promise<FrameReloadResult>;
183
185
  }): FrameRuntime;
184
- type InitialHydrationTracker = {
186
+ export type ReconciliationTracker = {
185
187
  track: () => () => void;
188
+ waitFor: (task: Promise<void>) => void;
186
189
  finalize: () => void;
187
190
  ready: () => Promise<void>;
188
191
  };