@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.
- package/README.md +86 -20
- package/dist/animation/demos/drag-release.js +5 -7
- package/dist/animation/demos/drag-release.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime/component.d.ts +2 -1
- package/dist/runtime/component.js.map +1 -1
- package/dist/runtime/diff-dom.js +8 -3
- package/dist/runtime/diff-dom.js.map +1 -1
- package/dist/runtime/dom.d.ts +21 -11
- package/dist/runtime/event-types.d.ts +14 -0
- package/dist/runtime/event-types.js +2 -0
- package/dist/runtime/event-types.js.map +1 -0
- package/dist/runtime/frame-resolution.js +8 -0
- package/dist/runtime/frame-resolution.js.map +1 -1
- package/dist/runtime/frame.d.ts +5 -2
- package/dist/runtime/frame.js +107 -49
- package/dist/runtime/frame.js.map +1 -1
- package/dist/runtime/mixins/link-mixin.js +4 -4
- package/dist/runtime/mixins/link-mixin.js.map +1 -1
- package/dist/runtime/mixins/mixin.d.ts +9 -3
- package/dist/runtime/mixins/mixin.js.map +1 -1
- package/dist/runtime/mixins/on-mixin.d.ts +1 -1
- package/dist/runtime/module-preloader.js +3 -3
- package/dist/runtime/module-preloader.js.map +1 -1
- package/dist/runtime/navigation.d.ts +1 -2
- package/dist/runtime/navigation.js +115 -36
- package/dist/runtime/navigation.js.map +1 -1
- package/dist/runtime/reconcile.js +9 -3
- package/dist/runtime/reconcile.js.map +1 -1
- package/dist/runtime/run.d.ts +3 -3
- package/dist/runtime/run.js +43 -3
- package/dist/runtime/run.js.map +1 -1
- package/dist/runtime/scheduler.js +37 -11
- package/dist/runtime/scheduler.js.map +1 -1
- package/dist/runtime/spa-response.d.ts +30 -0
- package/dist/runtime/spa-response.js +47 -0
- package/dist/runtime/spa-response.js.map +1 -0
- package/dist/runtime/typed-event-target.d.ts +0 -4
- package/dist/runtime/typed-event-target.js.map +1 -1
- package/dist/server/stream.js +21 -5
- package/dist/server/stream.js.map +1 -1
- package/dist/style/stylesheet.js +2 -2
- package/dist/style/stylesheet.js.map +1 -1
- package/package.json +1 -1
- package/src/animation/demos/drag-release.ts +5 -7
- package/src/index.ts +2 -2
- package/src/runtime/component.ts +2 -1
- package/src/runtime/demos/readme.demo.tsx +7 -17
- package/src/runtime/diff-dom.ts +6 -3
- package/src/runtime/dom.ts +21 -11
- package/src/runtime/event-types.ts +27 -0
- package/src/runtime/frame-resolution.ts +9 -0
- package/src/runtime/frame.ts +112 -50
- package/src/runtime/mixins/link-mixin.ts +4 -4
- package/src/runtime/mixins/mixin.ts +26 -4
- package/src/runtime/mixins/on-mixin.ts +1 -1
- package/src/runtime/module-preloader.ts +3 -3
- package/src/runtime/navigation.ts +127 -34
- package/src/runtime/reconcile.ts +11 -4
- package/src/runtime/run.ts +53 -6
- package/src/runtime/scheduler.ts +53 -13
- package/src/runtime/spa-response.ts +56 -0
- package/src/runtime/typed-event-target.ts +1 -6
- package/src/server/stream.ts +28 -5
- package/src/style/stylesheet.ts +3 -3
- package/dist/runtime/event-listeners.d.ts +0 -50
- package/dist/runtime/event-listeners.js +0 -31
- package/dist/runtime/event-listeners.js.map +0 -1
- 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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
141
|
+
function normalizeLineBreaks(value) {
|
|
142
|
+
return value.replace(/\r\n|\r|\n/g, '\r\n')
|
|
143
|
+
}
|
|
118
144
|
```
|
|
119
145
|
|
|
120
|
-
|
|
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 {
|
|
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
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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,
|
|
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 {
|
|
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;
|
|
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
|
-
*
|
|
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":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"component.js","sourceRoot":"","sources":["../../src/runtime/component.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime/diff-dom.js
CHANGED
|
@@ -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
|
-
|
|
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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"}
|
package/dist/runtime/dom.d.ts
CHANGED
|
@@ -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
|
|
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-
|
|
1536
|
-
'rmx-
|
|
1537
|
-
/** The `rmx-
|
|
1538
|
-
'rmx-
|
|
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 @@
|
|
|
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":"
|
|
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"}
|
package/dist/runtime/frame.d.ts
CHANGED
|
@@ -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
|
-
|
|
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
|
|
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
|
};
|