@nifrajs/web-vanilla 5.0.0 → 5.2.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 (2) hide show
  1. package/CHANGELOG.md +343 -0
  2. package/package.json +4 -3
package/CHANGELOG.md ADDED
@@ -0,0 +1,343 @@
1
+ # @nifrajs/web-vanilla
2
+
3
+ ## 5.2.0
4
+
5
+ ### Patch Changes
6
+
7
+ - 9498cf8: The package ships its `CHANGELOG.md`, so the installed package has the notes for every version, as the GitHub release does. Before, the tarball held only the code, `README.md`, `LICENSE` and `package.json`.
8
+
9
+ ## 5.1.0
10
+
11
+ No changes in this release.
12
+
13
+ ## 5.0.0
14
+
15
+ ### Patch Changes
16
+
17
+ - Updated dependencies [7169820]
18
+ - Updated dependencies [22e3df7]
19
+ - Updated dependencies [0aed425]
20
+ - Updated dependencies [7de0397]
21
+ - Updated dependencies [674c658]
22
+ - Updated dependencies [de27557]
23
+ - Updated dependencies [2173644]
24
+ - Updated dependencies [4d894b0]
25
+ - Updated dependencies [61901cd]
26
+ - Updated dependencies [5e366e2]
27
+ - Updated dependencies [2938a0d]
28
+ - Updated dependencies [dc8439c]
29
+ - Updated dependencies [b19cb37]
30
+ - Updated dependencies [4330e40]
31
+ - Updated dependencies [412a9ee]
32
+ - Updated dependencies [65883e5]
33
+ - Updated dependencies [0e20529]
34
+ - Updated dependencies [f7e36ec]
35
+ - Updated dependencies [262e46d]
36
+ - Updated dependencies [944623d]
37
+ - Updated dependencies [6d9869d]
38
+ - Updated dependencies [b9cc68c]
39
+ - Updated dependencies [de2cc1d]
40
+ - Updated dependencies [a5963cb]
41
+ - Updated dependencies [3db36b3]
42
+ - Updated dependencies [7775c2b]
43
+ - Updated dependencies [09c47c5]
44
+ - Updated dependencies [326caee]
45
+ - Updated dependencies [f8e0ed5]
46
+ - Updated dependencies [a588c18]
47
+ - Updated dependencies [1cdcfe5]
48
+ - Updated dependencies [e195fe8]
49
+ - Updated dependencies [7775c2b]
50
+ - Updated dependencies [d3e79c4]
51
+ - Updated dependencies [d922f65]
52
+ - Updated dependencies [a1eda0a]
53
+ - Updated dependencies [fc0284a]
54
+ - Updated dependencies [9f58295]
55
+ - Updated dependencies [2f7299a]
56
+ - Updated dependencies [29e62a0]
57
+ - Updated dependencies [c613e7d]
58
+ - Updated dependencies [5975163]
59
+ - Updated dependencies [7a165de]
60
+ - Updated dependencies [d8f11a5]
61
+ - Updated dependencies [e9e02cf]
62
+ - Updated dependencies [b70b18a]
63
+ - Updated dependencies [6f42b38]
64
+ - Updated dependencies [870227d]
65
+ - Updated dependencies [2fbb4f0]
66
+ - Updated dependencies [1d66252]
67
+ - Updated dependencies [a6a6834]
68
+ - Updated dependencies [166a6ff]
69
+ - Updated dependencies [79be5af]
70
+ - Updated dependencies [bf6eeb0]
71
+ - Updated dependencies [5a3c27a]
72
+ - Updated dependencies [15a3a66]
73
+ - Updated dependencies [9b971fc]
74
+ - Updated dependencies [2577fc7]
75
+ - Updated dependencies [9b1acc9]
76
+ - Updated dependencies [391ab3c]
77
+ - Updated dependencies [3bf7d6b]
78
+ - Updated dependencies [7775c2b]
79
+ - Updated dependencies [ab1935b]
80
+ - @nifrajs/web@5.0.0
81
+
82
+ ## 4.0.2
83
+
84
+ ## 4.0.1
85
+
86
+ ## 4.0.0
87
+
88
+ ### Patch Changes
89
+
90
+ - Updated dependencies [22e2af8]
91
+ - Updated dependencies [963694f]
92
+ - Updated dependencies [86e2d0f]
93
+ - Updated dependencies [a0cfffa]
94
+ - Updated dependencies [93e5e7f]
95
+ - Updated dependencies [214d674]
96
+ - Updated dependencies [4936309]
97
+ - Updated dependencies [0e9b167]
98
+ - Updated dependencies [bbdc5a1]
99
+ - Updated dependencies [e8270d9]
100
+ - Updated dependencies [d942c33]
101
+ - Updated dependencies [ef28ef9]
102
+ - Updated dependencies [216fe27]
103
+ - Updated dependencies [8e30090]
104
+ - Updated dependencies [6d20355]
105
+ - Updated dependencies [08250bf]
106
+ - Updated dependencies [4b8d8de]
107
+ - Updated dependencies [ba5dd1c]
108
+ - Updated dependencies [d50f73e]
109
+ - Updated dependencies [8fa902c]
110
+ - Updated dependencies [085e852]
111
+ - Updated dependencies [0dac7ec]
112
+ - Updated dependencies [b64c3ee]
113
+ - Updated dependencies [dc2d4d3]
114
+ - Updated dependencies [81c720e]
115
+ - Updated dependencies [0150ed4]
116
+ - Updated dependencies [ae815ab]
117
+ - Updated dependencies [ea2ee87]
118
+ - Updated dependencies [3442e1c]
119
+ - Updated dependencies [85d636b]
120
+ - Updated dependencies [6c978a1]
121
+ - Updated dependencies [bfe29b6]
122
+ - Updated dependencies [8b99424]
123
+ - Updated dependencies [87783f0]
124
+ - Updated dependencies [135aba4]
125
+ - Updated dependencies [47b0d65]
126
+ - Updated dependencies [e32268d]
127
+ - Updated dependencies [432fec3]
128
+ - Updated dependencies [0e14068]
129
+ - Updated dependencies [8f1b780]
130
+ - Updated dependencies [dcc9ff6]
131
+ - Updated dependencies [5a63dd4]
132
+ - Updated dependencies [c49882f]
133
+ - Updated dependencies [dfd19d8]
134
+ - Updated dependencies [28e091f]
135
+ - Updated dependencies [046e79d]
136
+ - Updated dependencies [6393b1e]
137
+ - Updated dependencies [a158b74]
138
+ - Updated dependencies [ee19d29]
139
+ - Updated dependencies [293d3c8]
140
+ - Updated dependencies [7e1e1c3]
141
+ - Updated dependencies [0cd5f6e]
142
+ - Updated dependencies [2245bee]
143
+ - Updated dependencies [feeec4a]
144
+ - Updated dependencies [3eb6339]
145
+ - Updated dependencies [f784c32]
146
+ - Updated dependencies [e3b2b97]
147
+ - Updated dependencies [5934b5d]
148
+ - Updated dependencies [03a3729]
149
+ - Updated dependencies [bd11269]
150
+ - Updated dependencies [579d9a9]
151
+ - Updated dependencies [3554ad8]
152
+ - Updated dependencies [64e7a42]
153
+ - Updated dependencies [ee19d29]
154
+ - Updated dependencies [d6f806f]
155
+ - Updated dependencies [38cf032]
156
+ - Updated dependencies [b94e5cb]
157
+ - Updated dependencies [0f6babe]
158
+ - Updated dependencies [00f18bf]
159
+ - Updated dependencies [a84f546]
160
+ - Updated dependencies [669b6a2]
161
+ - @nifrajs/web@4.0.0
162
+
163
+ ## 3.5.0
164
+
165
+ ## 3.4.0
166
+
167
+ ## 3.3.0
168
+
169
+ ## 3.2.0
170
+
171
+ ## 3.1.0
172
+
173
+ ## 3.0.0
174
+
175
+ ### Patch Changes
176
+
177
+ - Updated dependencies [6e43c15]
178
+ - Updated dependencies [293a7fe]
179
+ - Updated dependencies [485ae60]
180
+ - Updated dependencies [627b0ba]
181
+ - Updated dependencies [004deee]
182
+ - Updated dependencies [f0fd370]
183
+ - Updated dependencies [36801ae]
184
+ - @nifrajs/web@3.0.0
185
+
186
+ ## 2.14.1
187
+
188
+ ## 2.14.0
189
+
190
+ ## 2.13.0
191
+
192
+ ## 2.12.1
193
+
194
+ ## 2.12.0
195
+
196
+ ## 2.11.0
197
+
198
+ ## 2.10.0
199
+
200
+ ## 2.9.1
201
+
202
+ ## 2.9.0
203
+
204
+ ## 2.8.2
205
+
206
+ ## 2.8.1
207
+
208
+ ## 2.8.0
209
+
210
+ ## 2.7.1
211
+
212
+ ## 2.7.0
213
+
214
+ ## 2.6.1
215
+
216
+ ## 2.6.0
217
+
218
+ ## 2.5.0
219
+
220
+ ## 2.4.0
221
+
222
+ ## 2.3.0
223
+
224
+ ## 2.2.0
225
+
226
+ ### Minor Changes
227
+
228
+ - 1394641: Layout loaders: request data in the component that wraps every page.
229
+
230
+ `routes/_layout.tsx` rendered, but a `loader` it exported never ran, so nothing request-derived could
231
+ reach a layout - host, session, locale, feature flags, tenant. An app hit this and moved its host guard
232
+ out of the component tree into the server entry, where it could not be typechecked with the rest of the
233
+ app. That is the real cost: the gap pushed security-relevant code to the one place nifra's typed-boundary
234
+ promise does not reach. Remix, React Router and SvelteKit all support this; nifra was alone in not.
235
+
236
+ ```tsx
237
+ // routes/orgs/[org]/_layout.tsx
238
+ export const gate = true // optional; see below
239
+ export async function loader({ params, req }) {
240
+ return { org: await findOrg(params.org) } // params is { org } - nothing deeper
241
+ }
242
+ export default function Layout({ data, children }) { … }
243
+ ```
244
+
245
+ **Scoped, not global.** A layout owns the URL prefix it wraps, so it receives only the params inside
246
+ that prefix and its loader is skipped on a navigation that did not change them. Navigating
247
+ `/orgs/acme/a` → `/orgs/acme/b` does not re-run the org layout's loader. Scope is derived at build time
248
+ per `(route, layout)` pair, because one layout can own different params on different expanded patterns:
249
+ `[[lang]]/docs/_layout` owns nothing on `/docs/:slug` and `{lang}` on `/:lang/docs/:slug`. Layouts are
250
+ not router nodes and did not become any - the router is untouched.
251
+
252
+ **Execution order is declared, and this matters for security.** By default a layout loader runs in
253
+ parallel with the page's, which is right for data and wrong for a guard: a page loader running
254
+ concurrently with a guard has already queried by the time the guard says no. `export const gate = true`
255
+ makes a layout blocking - nothing beneath it runs until it resolves, and nothing beneath a rejected gate
256
+ runs at all. **A layout loader without `gate: true` is not an authorization boundary.** Gates also run on
257
+ the data-only request, so a client navigation cannot bypass one by sending the data header, and a gate is
258
+ never skipped by the retention hint.
259
+
260
+ A layout may throw `notFound()` / `gone()` / `redirect()`. Its errors resolve to the `_error` boundary at
261
+ or above its OWN segment, never one below it - rendering there would wrap the boundary in the very layout
262
+ whose loader just failed.
263
+
264
+ Every adapter passes each layout its own data. A layout with no loader receives `null`, and an app where
265
+ no layout has a loader emits byte-identical HTML and unchanged props.
266
+
267
+ The data-mode response becomes a versioned envelope when a chain carries layout data. It is recognised
268
+ by structure, and the bare pre-envelope shape is still accepted - a prerendered `_data.json` is a static
269
+ file that outlives the deploy that wrote it.
270
+
271
+ ## 2.1.0
272
+
273
+ ## 2.0.0
274
+
275
+ ### Patch Changes
276
+
277
+ - Updated dependencies [ade0c7a]
278
+ - Updated dependencies [d91a45b]
279
+ - Updated dependencies [d91a45b]
280
+ - Updated dependencies [e97a92f]
281
+ - Updated dependencies [e8e49d1]
282
+ - Updated dependencies [a7d34e5]
283
+ - @nifrajs/web@2.0.0
284
+
285
+ ## 1.13.0
286
+
287
+ ## 1.12.0
288
+
289
+ ## 1.11.0
290
+
291
+ ## 1.10.0
292
+
293
+ ## 1.9.1
294
+
295
+ ## 1.9.0
296
+
297
+ ## 1.8.0
298
+
299
+ ## 1.7.0
300
+
301
+ ## 1.6.0
302
+
303
+ ## 1.5.0
304
+
305
+ ## 1.4.0
306
+
307
+ ## 1.3.1
308
+
309
+ ## 1.3.0
310
+
311
+ ## 1.2.2
312
+
313
+ ## 1.2.1
314
+
315
+ ## 1.2.0
316
+
317
+ ## 1.1.0
318
+
319
+ ## 1.0.0
320
+
321
+ ### Patch Changes
322
+
323
+ - Updated dependencies [f1f0e18]
324
+ - @nifrajs/web@1.0.0
325
+
326
+ ## 1.0.0-beta.4
327
+
328
+ ### Patch Changes
329
+
330
+ - @nifrajs/web@1.0.0-beta.4
331
+
332
+ ## 1.0.0-beta.3
333
+
334
+ ### Patch Changes
335
+
336
+ - @nifrajs/web@1.0.0-beta.3
337
+
338
+ ## 0.1.0-beta.2
339
+
340
+ ### Patch Changes
341
+
342
+ - Updated dependencies [5018546]
343
+ - @nifrajs/web@0.1.0-beta.2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nifrajs/web-vanilla",
3
- "version": "5.0.0",
3
+ "version": "5.2.0",
4
4
  "description": "Zero-framework render adapter for @nifrajs/web - auto-escaping tagged-template HTML, ~0 KB client JS, interactivity via @nifrajs/web/islands.",
5
5
  "keywords": [
6
6
  "bun",
@@ -29,7 +29,8 @@
29
29
  },
30
30
  "files": [
31
31
  "dist",
32
- "src"
32
+ "src",
33
+ "CHANGELOG.md"
33
34
  ],
34
35
  "sideEffects": false,
35
36
  "scripts": {
@@ -38,7 +39,7 @@
38
39
  "typecheck": "tsc --noEmit"
39
40
  },
40
41
  "peerDependencies": {
41
- "@nifrajs/web": "^5.0.0"
42
+ "@nifrajs/web": "^5.2.0"
42
43
  },
43
44
  "license": "MIT",
44
45
  "publishConfig": {