@ultimat3/cli 22.8.0 → 22.8.1
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/package.json +28 -28
- package/src/page-navigation.ts +11 -3
- package/src/runtime-render.ts +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ultimat3/cli",
|
|
3
|
-
"version": "22.8.
|
|
3
|
+
"version": "22.8.1",
|
|
4
4
|
"description": "The `x` binary: new, dev, build, verify, generate, db, mcp, doctor, deploy",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -38,33 +38,33 @@
|
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
40
|
"@babel/core": "^8.0.1",
|
|
41
|
-
"@ultimat3/action": "22.8.
|
|
42
|
-
"@ultimat3/admin": "22.8.
|
|
43
|
-
"@ultimat3/ai": "22.8.
|
|
44
|
-
"@ultimat3/auth": "22.8.
|
|
45
|
-
"@ultimat3/cache": "22.8.
|
|
46
|
-
"@ultimat3/core": "22.8.
|
|
47
|
-
"@ultimat3/db": "22.8.
|
|
48
|
-
"@ultimat3/entity": "22.8.
|
|
49
|
-
"@ultimat3/flags": "22.8.
|
|
50
|
-
"@ultimat3/http": "22.8.
|
|
51
|
-
"@ultimat3/i18n": "22.8.
|
|
52
|
-
"@ultimat3/jobs": "22.8.
|
|
53
|
-
"@ultimat3/mail": "22.8.
|
|
54
|
-
"@ultimat3/manifest": "22.8.
|
|
55
|
-
"@ultimat3/mcp": "22.8.
|
|
56
|
-
"@ultimat3/money": "22.8.
|
|
57
|
-
"@ultimat3/notify": "22.8.
|
|
58
|
-
"@ultimat3/policy": "22.8.
|
|
59
|
-
"@ultimat3/pwa": "22.8.
|
|
60
|
-
"@ultimat3/query": "22.8.
|
|
61
|
-
"@ultimat3/realtime": "22.8.
|
|
62
|
-
"@ultimat3/render": "22.8.
|
|
63
|
-
"@ultimat3/schema": "22.8.
|
|
64
|
-
"@ultimat3/seo": "22.8.
|
|
65
|
-
"@ultimat3/storage": "22.8.
|
|
66
|
-
"@ultimat3/testing": "22.8.
|
|
67
|
-
"@ultimat3/time": "22.8.
|
|
41
|
+
"@ultimat3/action": "22.8.1",
|
|
42
|
+
"@ultimat3/admin": "22.8.1",
|
|
43
|
+
"@ultimat3/ai": "22.8.1",
|
|
44
|
+
"@ultimat3/auth": "22.8.1",
|
|
45
|
+
"@ultimat3/cache": "22.8.1",
|
|
46
|
+
"@ultimat3/core": "22.8.1",
|
|
47
|
+
"@ultimat3/db": "22.8.1",
|
|
48
|
+
"@ultimat3/entity": "22.8.1",
|
|
49
|
+
"@ultimat3/flags": "22.8.1",
|
|
50
|
+
"@ultimat3/http": "22.8.1",
|
|
51
|
+
"@ultimat3/i18n": "22.8.1",
|
|
52
|
+
"@ultimat3/jobs": "22.8.1",
|
|
53
|
+
"@ultimat3/mail": "22.8.1",
|
|
54
|
+
"@ultimat3/manifest": "22.8.1",
|
|
55
|
+
"@ultimat3/mcp": "22.8.1",
|
|
56
|
+
"@ultimat3/money": "22.8.1",
|
|
57
|
+
"@ultimat3/notify": "22.8.1",
|
|
58
|
+
"@ultimat3/policy": "22.8.1",
|
|
59
|
+
"@ultimat3/pwa": "22.8.1",
|
|
60
|
+
"@ultimat3/query": "22.8.1",
|
|
61
|
+
"@ultimat3/realtime": "22.8.1",
|
|
62
|
+
"@ultimat3/render": "22.8.1",
|
|
63
|
+
"@ultimat3/schema": "22.8.1",
|
|
64
|
+
"@ultimat3/seo": "22.8.1",
|
|
65
|
+
"@ultimat3/storage": "22.8.1",
|
|
66
|
+
"@ultimat3/testing": "22.8.1",
|
|
67
|
+
"@ultimat3/time": "22.8.1",
|
|
68
68
|
"babel-preset-solid": "^1.9.15"
|
|
69
69
|
}
|
|
70
70
|
}
|
package/src/page-navigation.ts
CHANGED
|
@@ -142,12 +142,20 @@ export function navigationHeadFor(
|
|
|
142
142
|
return { surface: surfaceKey(head, surface), buildId: head.buildId, scriptUrl: head.scriptUrl };
|
|
143
143
|
}
|
|
144
144
|
|
|
145
|
-
/**
|
|
145
|
+
/**
|
|
146
|
+
* The router's meta, build and script — only on a page of a surface that opted in, and never on a
|
|
147
|
+
* `navigation: 'document'` page. That page is a document by declaration: every link to it is a real
|
|
148
|
+
* load, and it is where an app puts a 0 kB page (a recipient's evidence page, a magic link, an
|
|
149
|
+
* unsubscribe, a payment return — `budget.js: '0b'`, `hydrate: 'never'`). With no router on it, its
|
|
150
|
+
* own links and forms are the browser's, which is what a document page means; `budgets.ts` weighs
|
|
151
|
+
* the emitted document, so a page that names no router is charged none.
|
|
152
|
+
*/
|
|
146
153
|
export function navigationTagsOf(
|
|
147
154
|
head: NavigationDocumentHead | undefined,
|
|
148
|
-
|
|
155
|
+
entry: Pick<RouteEntry, 'surface' | 'config'>,
|
|
149
156
|
): readonly HeadTag[] {
|
|
150
|
-
|
|
157
|
+
if (entry.config.navigation === 'document') return [];
|
|
158
|
+
const tags = navigationHeadFor(head, entry.surface);
|
|
151
159
|
return tags === undefined ? [] : clientNavigationTags(tags);
|
|
152
160
|
}
|
|
153
161
|
|
package/src/runtime-render.ts
CHANGED
|
@@ -177,7 +177,7 @@ const headFor = async (
|
|
|
177
177
|
}),
|
|
178
178
|
[
|
|
179
179
|
...(options.sync === undefined ? [] : clientSyncTags(options.sync)),
|
|
180
|
-
...navigationTagsOf(options.navigation, entry
|
|
180
|
+
...navigationTagsOf(options.navigation, entry),
|
|
181
181
|
// The page boot rides the scope tag: its whole job — restoring a principal's persisted
|
|
182
182
|
// records and replaying its queued writes — is per principal, and a shareable document
|
|
183
183
|
// (no scope tag) has neither. Cheaper than walking the page's islands, and exact.
|