@equinor/fusion-framework-vite-plugin-spa 4.1.0-next.2 → 4.1.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/CHANGELOG.md DELETED
@@ -1,893 +0,0 @@
1
- # @equinor/fusion-framework-vite-plugin-spa
2
-
3
- ## 4.1.0-next.2
4
-
5
- ### Minor Changes
6
-
7
- - 09a9bcc: Add `FUSION_SPA_MSAL_MOCK` environment variable. When set to `true`, the generated bootstrap
8
- script signs in through `@equinor/fusion-framework-module-msal/mock` instead of the real MSAL
9
- client, so the dev server can run without Entra ID credentials, redirects, or network calls.
10
- Intended for CI and Playwright runs against the dev server. The mock client is lazily
11
- imported, so it is not loaded at runtime unless the flag is enabled.
12
-
13
- Also add `FUSION_SPA_MSAL_MOCK_TOKEN`, an optional companion variable read only when
14
- `FUSION_SPA_MSAL_MOCK` is set. Provide a JWT (e.g. from `createMockToken`, or one issued by a
15
- team's backend mock) and its `name`, `preferred_username`, `oid`, `tid`, and `scp` claims name
16
- the signed-in mock user. The token itself is also sent verbatim as the access/id token, so a
17
- backend mock that validates the token sees exactly what was configured, not a regenerated one.
18
-
19
- ### Patch Changes
20
-
21
- - Updated dependencies [53d5e4c]
22
- - @equinor/fusion-framework-module-msal@11.0.0-next.1
23
-
24
- ## 4.0.17-next.1
25
-
26
- ### Patch Changes
27
-
28
- - @equinor/fusion-framework-module-telemetry@8.0.0-next.1
29
-
30
- ## 4.0.17-next.0
31
-
32
- ### Patch Changes
33
-
34
- - e8aae1f: Internal: publish every package on the `next` pre-release tag so the whole framework can be installed as a coherent set.
35
-
36
- Packages without their own changes are bumped only to receive a `-next.N` version and the `next` dist-tag on npm. Install with:
37
-
38
- ```bash
39
- pnpm add @equinor/fusion-framework-react-app@next
40
- ```
41
-
42
- - Updated dependencies [e8aae1f]
43
- - Updated dependencies [2836e0b]
44
- - Updated dependencies [2836e0b]
45
- - Updated dependencies [2836e0b]
46
- - Updated dependencies [2836e0b]
47
- - Updated dependencies [2836e0b]
48
- - Updated dependencies [2836e0b]
49
- - Updated dependencies [2836e0b]
50
- - Updated dependencies [2836e0b]
51
- - Updated dependencies [2836e0b]
52
- - Updated dependencies [2836e0b]
53
- - Updated dependencies [2836e0b]
54
- - Updated dependencies [2836e0b]
55
- - Updated dependencies [2836e0b]
56
- - Updated dependencies [2836e0b]
57
- - Updated dependencies [2836e0b]
58
- - Updated dependencies [2836e0b]
59
- - @equinor/fusion-framework-module@6.1.3-next.0
60
- - @equinor/fusion-framework-module-http@8.1.0-next.0
61
- - @equinor/fusion-framework-module-msal@11.0.0-next.0
62
- - @equinor/fusion-framework-module-service-discovery@10.1.0-next.0
63
- - @equinor/fusion-framework-module-telemetry@8.0.0-next.0
64
-
65
- ## 4.0.16
66
-
67
- ### Patch Changes
68
-
69
- - Updated dependencies [b92698d]
70
- - @equinor/fusion-framework-module@6.1.2
71
- - @equinor/fusion-framework-module-telemetry@7.0.2
72
-
73
- ## 4.0.15
74
-
75
- ### Patch Changes
76
-
77
- - 6a3080a: Forward the original request's `cache` mode when the service worker re-fetches a proxied request. Previously a caller requesting `cache: 'no-store'` (e.g. a polling endpoint) would silently fall back to the default HTTP cache once passed through the service worker.
78
- - Updated dependencies [de2b4fb]
79
- - @equinor/fusion-framework-module-http@8.0.5
80
-
81
- ## 4.0.14
82
-
83
- ### Patch Changes
84
-
85
- - 80c3e4a: Internal: renamed several source files to align with filename conventions and added a missing intent comment for object-merge logic; no public API changes.
86
- - 80c3e4a: Internal: added intent comments to satisfy `fusion-lint` rules (control-flow, iterator/rxjs chains, TSDoc `@template` tags, and single-export-per-file), and referenced tracking issues (#5065, #5066) for pre-existing TODO comments. `InvalidRouteError` was moved to its own module (`invalid-route-error.ts`) in `api-service` to satisfy `single-export-per-file`. No behavior changes.
87
- - Updated dependencies [80c3e4a]
88
- - Updated dependencies [80c3e4a]
89
- - Updated dependencies [80c3e4a]
90
- - Updated dependencies [80c3e4a]
91
- - Updated dependencies [80c3e4a]
92
- - Updated dependencies [80c3e4a]
93
- - Updated dependencies [80c3e4a]
94
- - Updated dependencies [80c3e4a]
95
- - Updated dependencies [80c3e4a]
96
- - Updated dependencies [80c3e4a]
97
- - Updated dependencies [80c3e4a]
98
- - Updated dependencies [80c3e4a]
99
- - Updated dependencies [80c3e4a]
100
- - Updated dependencies [80c3e4a]
101
- - Updated dependencies [80c3e4a]
102
- - Updated dependencies [80c3e4a]
103
- - @equinor/fusion-framework-module-http@8.0.4
104
- - @equinor/fusion-framework-module-msal@10.0.2
105
- - @equinor/fusion-framework-module-service-discovery@10.0.2
106
- - @equinor/fusion-framework-module@6.1.1
107
- - @equinor/fusion-framework-module-telemetry@7.0.1
108
-
109
- ## 4.0.13
110
-
111
- ### Patch Changes
112
-
113
- - Updated dependencies [7508555]
114
- - @equinor/fusion-framework-module-msal@10.0.1
115
-
116
- ## 4.0.12
117
-
118
- ### Patch Changes
119
-
120
- - 74beb1c: Fix type export paths for `./bootstrap.js` and `./sw.js` so TypeScript resolves the published declarations correctly.
121
- - Prevent broken type resolution when consuming the SPA bootstrap and service worker entrypoints.
122
-
123
- ## 4.0.11
124
-
125
- ### Patch Changes
126
-
127
- - @equinor/fusion-framework-module-telemetry@7.0.0
128
- - @equinor/fusion-framework-module-msal@10.0.0
129
- - @equinor/fusion-framework-module-http@8.0.3
130
-
131
- ## 4.0.10
132
-
133
- ### Patch Changes
134
-
135
- - @equinor/fusion-framework-module-telemetry@6.0.1
136
-
137
- ## 4.0.9
138
-
139
- ### Patch Changes
140
-
141
- - Updated dependencies [b7b1d9a]
142
- - Updated dependencies [b7b1d9a]
143
- - Updated dependencies [b7b1d9a]
144
- - @equinor/fusion-framework-module@6.1.0
145
- - @equinor/fusion-framework-module-telemetry@6.0.0
146
- - @equinor/fusion-framework-module-msal@9.0.0
147
- - @equinor/fusion-framework-module-http@8.0.2
148
-
149
- ## 4.0.8
150
-
151
- ### Patch Changes
152
-
153
- - Updated dependencies [730d51a]
154
- - @equinor/fusion-framework-module-msal@8.0.5
155
-
156
- ## 4.0.7
157
-
158
- ### Patch Changes
159
-
160
- - 5c05455: Forward request method and body to service worker fetch calls
161
-
162
- ## 4.0.6
163
-
164
- ### Patch Changes
165
-
166
- - Updated dependencies [f045ac0]
167
- - Updated dependencies [f045ac0]
168
- - @equinor/fusion-framework-module-msal@8.0.4
169
- - @equinor/fusion-framework-module-http@8.0.1
170
- - @equinor/fusion-framework-module-service-discovery@10.0.1
171
- - @equinor/fusion-framework-module-telemetry@5.0.2
172
-
173
- ## 4.0.5
174
-
175
- ### Patch Changes
176
-
177
- - Updated dependencies [51e6e50]
178
- - @equinor/fusion-framework-module-msal@8.0.3
179
-
180
- ## 4.0.4
181
-
182
- ### Patch Changes
183
-
184
- - 3005189: Fix SPA bootstrap portal template URL construction to normalize slash boundaries between `/portal-proxy`, `assetPath`, and `templateEntry`.
185
-
186
- This avoids malformed entrypoint imports like `/portal-proxy//bundles/...` that can fail with unauthorized dynamic module fetches in dev-server scenarios where `spa.templateEnv.portal.proxy` is enabled.
187
-
188
- ## 4.0.3
189
-
190
- ### Patch Changes
191
-
192
- - @equinor/fusion-framework-module-telemetry@5.0.1
193
-
194
- ## 4.0.2
195
-
196
- ### Patch Changes
197
-
198
- - Updated dependencies [02a5859]
199
- - @equinor/fusion-framework-module-msal@8.0.2
200
-
201
- ## 4.0.1
202
-
203
- ### Patch Changes
204
-
205
- - 8f16c97: Update rollup (4.59.0 → 4.60.1) used to produce the published bundles for both packages.
206
-
207
- rollup 4.60.1 fixes a bug where side-effect imports could be silently dropped during bundling due to a namespace re-export caching issue ([rollup#6274](https://github.com/rollup/rollup/issues/6274)). Both packages use rollup to bundle their published output, so the fix ensures the emitted artifacts are correct.
208
-
209
- No API or behaviour changes for consumers.
210
-
211
- - Updated dependencies [244b995]
212
- - @equinor/fusion-framework-module-msal@8.0.1
213
-
214
- ## 4.0.0
215
-
216
- ### Major Changes
217
-
218
- - abffa53: Major version bump for Fusion Framework React 19 release.
219
-
220
- All packages are bumped to the next major version as part of the React 19 upgrade. This release drops support for React versions below 18 and includes breaking changes across the framework.
221
-
222
- **Breaking changes:**
223
- - Peer dependencies now require React 18 or 19 (`^18.0.0 || ^19.0.0`)
224
- - React Router upgraded from v6 to v7
225
- - Navigation module refactored with new history API
226
- - `renderComponent` and `renderApp` now use `createRoot` API
227
-
228
- **Migration:**
229
- - Update your React version to 18.0.0 or higher before upgrading
230
- - Replace `NavigationProvider.createRouter()` with `@equinor/fusion-framework-react-router`
231
- - See individual package changelogs for package-specific migration steps
232
-
233
- ### Patch Changes
234
-
235
- - 32bcf83: Bump `vite` from `7.3.1` to `8.0.0`.
236
-
237
- Vite 8 replaces Rollup with Rolldown and esbuild with Oxc for faster builds.
238
- No breaking API changes affect this codebase. The `dev-server` peerDependency
239
- is widened to accept both Vite 7 and Vite 8.
240
-
241
- - Updated dependencies [abffa53]
242
- - Updated dependencies [abffa53]
243
- - Updated dependencies [abffa53]
244
- - Updated dependencies [8f30948]
245
- - Updated dependencies [abffa53]
246
- - @equinor/fusion-framework-module@6.0.0
247
- - @equinor/fusion-framework-module-http@8.0.0
248
- - @equinor/fusion-framework-module-msal@8.0.0
249
- - @equinor/fusion-framework-module-service-discovery@10.0.0
250
- - @equinor/fusion-framework-module-telemetry@5.0.0
251
-
252
- ## 3.1.11
253
-
254
- ### Patch Changes
255
-
256
- - [#4100](https://github.com/equinor/fusion-framework/pull/4100) [`9d4d520`](https://github.com/equinor/fusion-framework/commit/9d4d520e9d3c3a3c4ef68a96952fbbc6f6d34720) Thanks [@dependabot](https://github.com/apps/dependabot)! - Internal: rebuild the CLI, dev portal, and SPA plugin with Rollup 4.59.0 to address a security advisory affecting packaged build output. No public API changes.
257
-
258
- - [#4157](https://github.com/equinor/fusion-framework/pull/4157) [`6aa8e1f`](https://github.com/equinor/fusion-framework/commit/6aa8e1f5c9d852b25e97aa7d98a63008c64d4581) Thanks [@Noggling](https://github.com/Noggling)! - Internal: patch release to align TypeScript types across packages for consistent type compatibility.
259
-
260
- - Updated dependencies [[`6aa8e1f`](https://github.com/equinor/fusion-framework/commit/6aa8e1f5c9d852b25e97aa7d98a63008c64d4581), [`db8fa81`](https://github.com/equinor/fusion-framework/commit/db8fa8134b77a628b15e06f7f72b50f04ef97458)]:
261
- - @equinor/fusion-framework-module-http@7.0.8
262
- - @equinor/fusion-framework-module@5.0.6
263
- - @equinor/fusion-framework-module-msal@7.3.1
264
- - @equinor/fusion-framework-module-service-discovery@9.1.1
265
- - @equinor/fusion-framework-module-telemetry@4.6.4
266
-
267
- ## 3.1.10
268
-
269
- ### Patch Changes
270
-
271
- - Updated dependencies [[`ec7d2ce`](https://github.com/equinor/fusion-framework/commit/ec7d2ce0ed3f1d447b8cf410d2ef94fb1b557bbb)]:
272
- - @equinor/fusion-framework-module-msal@7.3.0
273
-
274
- ## 3.1.9
275
-
276
- ### Patch Changes
277
-
278
- - Updated dependencies [[`c8e27eb`](https://github.com/equinor/fusion-framework/commit/c8e27eb3a119b4077effe20a10dfb2dfd3dc865e)]:
279
- - @equinor/fusion-framework-module-msal@7.2.2
280
-
281
- ## 3.1.8
282
-
283
- ### Patch Changes
284
-
285
- - Updated dependencies [[`1594ed8`](https://github.com/equinor/fusion-framework/commit/1594ed879579d0db6e42c5052a33174f7bf9346c), [`1594ed8`](https://github.com/equinor/fusion-framework/commit/1594ed879579d0db6e42c5052a33174f7bf9346c)]:
286
- - @equinor/fusion-framework-module-msal@7.2.1
287
-
288
- ## 3.1.7
289
-
290
- ### Patch Changes
291
-
292
- - Updated dependencies [[`dcf51aa`](https://github.com/equinor/fusion-framework/commit/dcf51aa87ac79200893ec4909632554464e75055)]:
293
- - @equinor/fusion-framework-module-msal@7.2.0
294
-
295
- ## 3.1.6
296
-
297
- ### Patch Changes
298
-
299
- - Updated dependencies [[`0b34d5d`](https://github.com/equinor/fusion-framework/commit/0b34d5d895c740a77fc995abeca910fdca1cf633)]:
300
- - @equinor/fusion-framework-module-msal@7.1.0
301
-
302
- ## 3.1.5
303
-
304
- ### Patch Changes
305
-
306
- - Updated dependencies [[`21458e5`](https://github.com/equinor/fusion-framework/commit/21458e5e7585f0bf266c66d6f4135396fd7c1529)]:
307
- - @equinor/fusion-framework-module-telemetry@4.6.3
308
-
309
- ## 3.1.4
310
-
311
- ### Patch Changes
312
-
313
- - Updated dependencies [[`434ce70`](https://github.com/equinor/fusion-framework/commit/434ce707d237b399f8438eebe742641b2a81b11f)]:
314
- - @equinor/fusion-framework-module-service-discovery@9.1.0
315
-
316
- ## 3.1.3
317
-
318
- ### Patch Changes
319
-
320
- - Updated dependencies []:
321
- - @equinor/fusion-framework-module-telemetry@4.6.2
322
-
323
- ## 3.1.2
324
-
325
- ### Patch Changes
326
-
327
- - Updated dependencies [[`cb37cae`](https://github.com/equinor/fusion-framework/commit/cb37cae45e06778e8d1ea20faed31b582e49fcae)]:
328
- - @equinor/fusion-framework-module-msal@7.0.0
329
- - @equinor/fusion-framework-module-http@7.0.7
330
-
331
- ## 3.1.1
332
-
333
- ### Patch Changes
334
-
335
- - [#3963](https://github.com/equinor/fusion-framework/pull/3963) [`122752b`](https://github.com/equinor/fusion-framework/commit/122752b075113b206583ec2c46240997162329b8) Thanks [@odinr](https://github.com/odinr)! - Remove `lodash.mergewith` from the SPA Vite plugin by switching environment merging to a simple object merge where loaded environment values override plugin defaults.
336
-
337
- Resolves: https://github.com/equinor/fusion-framework/security/dependabot/188
338
- Resolves: https://github.com/equinor/fusion-framework/security/dependabot/189
339
-
340
- ## 3.1.0
341
-
342
- ### Minor Changes
343
-
344
- - [#3922](https://github.com/equinor/fusion-framework/pull/3922) [`d34ebd8`](https://github.com/equinor/fusion-framework/commit/d34ebd82c93acabc88f88e44a725f084af3af5ec) Thanks [@odinr](https://github.com/odinr)! - Enable AG Grid Enterprise license injection for the dev-portal by setting a global window key produced from the SPA template environment. The portal reads `window.FUSION_AG_GRID_KEY` to configure the AG Grid module and silence license warnings when a valid key is present. CLI docs now mention the license key setup.
345
-
346
- **Usage:**
347
- - In your SPA environment file, set `FUSION_SPA_AG_GRID_KEY=your-license-key-here`.
348
- - The SPA HTML template injects `window.FUSION_AG_GRID_KEY` before bootstrap runs, and the dev-portal picks it up automatically.
349
-
350
- Closes: https://github.com/equinor/fusion-core-tasks/issues/93
351
- Resolves: https://github.com/equinor/fusion-core-tasks/issues/92
352
- Solves: https://github.com/equinor/fusion/issues/732
353
-
354
- ### Patch Changes
355
-
356
- - Updated dependencies [[`f70d66f`](https://github.com/equinor/fusion-framework/commit/f70d66f1bc826e614140adb2c6ee052f98e3b3da)]:
357
- - @equinor/fusion-framework-module-http@7.0.6
358
- - @equinor/fusion-framework-module-msal@6.0.5
359
- - @equinor/fusion-framework-module-service-discovery@9.0.5
360
- - @equinor/fusion-framework-module-telemetry@4.6.1
361
-
362
- ## 3.0.7
363
-
364
- ### Patch Changes
365
-
366
- - [#3932](https://github.com/equinor/fusion-framework/pull/3932) [`15aaa87`](https://github.com/equinor/fusion-framework/commit/15aaa87e6a8b391c0672db0dcdca4c1cac3b50a7) Thanks [@dependabot](https://github.com/apps/dependabot)! - Internal: update rollup build dependency from 4.52.5 to 4.55.2.
367
-
368
- This update includes:
369
- - Improved circular dependency handling for manual chunks
370
- - Enhanced tree-shaking for Symbol properties
371
- - Performance improvements via variable name caching
372
- - Multiple bug fixes for build edge cases
373
-
374
- No changes to CLI or plugin functionality or public APIs.
375
-
376
- ## 3.0.6
377
-
378
- ### Patch Changes
379
-
380
- - Updated dependencies [[`244d615`](https://github.com/equinor/fusion-framework/commit/244d615195721541870c98754ee37baca96b8584)]:
381
- - @equinor/fusion-framework-module-msal@6.0.4
382
-
383
- ## 3.0.5
384
-
385
- ### Patch Changes
386
-
387
- - Updated dependencies [[`655ab0e`](https://github.com/equinor/fusion-framework/commit/655ab0ea9568090271225cb51285e78c2d08941e)]:
388
- - @equinor/fusion-framework-module-msal@6.0.3
389
-
390
- ## 3.0.4
391
-
392
- ### Patch Changes
393
-
394
- - Updated dependencies [[`b8c8149`](https://github.com/equinor/fusion-framework/commit/b8c814938be4543d2522566ece10ebc6feefee75)]:
395
- - @equinor/fusion-framework-module-msal@6.0.2
396
-
397
- ## 3.0.3
398
-
399
- ### Patch Changes
400
-
401
- - [#3779](https://github.com/equinor/fusion-framework/pull/3779) [`ee6aa77`](https://github.com/equinor/fusion-framework/commit/ee6aa7764776000edab9233ad9a4716b2d85c4eb) Thanks [@dependabot](https://github.com/apps/dependabot)! - chore: bump vite from 7.1.12 to 7.2.4
402
-
403
- - Updated dependencies [[`e8d6784`](https://github.com/equinor/fusion-framework/commit/e8d67848d53b8e733ddb60335fedeae637131c8d)]:
404
- - @equinor/fusion-framework-module-msal@6.0.1
405
-
406
- ## 3.0.2
407
-
408
- ### Patch Changes
409
-
410
- - Updated dependencies [[`78f3679`](https://github.com/equinor/fusion-framework/commit/78f3679b09716f69b3093edcff9f06ad605092c3)]:
411
- - @equinor/fusion-framework-module-telemetry@4.6.0
412
-
413
- ## 3.0.1
414
-
415
- ### Patch Changes
416
-
417
- - Updated dependencies [[`1827381`](https://github.com/equinor/fusion-framework/commit/182738177dbbf5baaf9732ef3b540b4df80932f6)]:
418
- - @equinor/fusion-framework-module-telemetry@4.5.0
419
-
420
- ## 3.0.0
421
-
422
- ### Patch Changes
423
-
424
- - [#3714](https://github.com/equinor/fusion-framework/pull/3714) [`11fe961`](https://github.com/equinor/fusion-framework/commit/11fe961794e4960ccb987bc320268cc9b263f1f8) Thanks [@odinr](https://github.com/odinr)! - Fix MSAL v4 compatibility issues in SPA plugin.
425
- - Update MSAL client configuration to use nested auth object structure
426
- - Replace deprecated defaultAccount with account property
427
- - Update acquireToken calls to use MSAL v4 request structure
428
-
429
- These changes ensure the SPA plugin works correctly with MSAL v4 while maintaining backward compatibility.
430
-
431
- - Updated dependencies [[`11fe961`](https://github.com/equinor/fusion-framework/commit/11fe961794e4960ccb987bc320268cc9b263f1f8), [`11fe961`](https://github.com/equinor/fusion-framework/commit/11fe961794e4960ccb987bc320268cc9b263f1f8), [`11fe961`](https://github.com/equinor/fusion-framework/commit/11fe961794e4960ccb987bc320268cc9b263f1f8), [`11fe961`](https://github.com/equinor/fusion-framework/commit/11fe961794e4960ccb987bc320268cc9b263f1f8)]:
432
- - @equinor/fusion-framework-module-http@7.0.5
433
- - @equinor/fusion-framework-module-telemetry@4.4.0
434
- - @equinor/fusion-framework-module-msal@6.0.0
435
-
436
- ## 2.0.2
437
-
438
- ### Patch Changes
439
-
440
- - [#3637](https://github.com/equinor/fusion-framework/pull/3637) [`f5b88e7`](https://github.com/equinor/fusion-framework/commit/f5b88e7ff8e896624de67bdf29091ba44bf8a628) Thanks [@dependabot](https://github.com/apps/dependabot)! - Internal: bump rollup from 4.52.4 to 4.52.5 to fix sourcemap debugId generation; no public API changes.
441
-
442
- - [#3679](https://github.com/equinor/fusion-framework/pull/3679) [`1706e4c`](https://github.com/equinor/fusion-framework/commit/1706e4c503d8ef4db46a9572392d23e9c081c82c) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update @rollup/plugin-commonjs from 28.0.6 to 29.0.0, which reverts previous Node.js builtins handling changes and adds requireNodeBuiltins option.
443
-
444
- - [#3646](https://github.com/equinor/fusion-framework/pull/3646) [`581306b`](https://github.com/equinor/fusion-framework/commit/581306bb7ace1646548865ea1711255065e90570) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update @rollup/plugin-typescript from 12.1.4 to 12.3.0 for improved TypeScript processing in watch mode and allowJs support.
445
-
446
- - Updated dependencies [[`7ef76e3`](https://github.com/equinor/fusion-framework/commit/7ef76e36a854f01d1cd7bc1c40b1ca0172a01fc3), [`cd06a8a`](https://github.com/equinor/fusion-framework/commit/cd06a8a8de86a44edf349103fb9da6c8615a1d59), [`443414f`](https://github.com/equinor/fusion-framework/commit/443414fe0351b529cecf0a667383640567d05e74)]:
447
- - @equinor/fusion-framework-module-telemetry@4.3.1
448
- - @equinor/fusion-framework-module@5.0.5
449
- - @equinor/fusion-framework-module-msal@5.1.2
450
- - @equinor/fusion-framework-module-http@7.0.4
451
- - @equinor/fusion-framework-module-service-discovery@9.0.4
452
-
453
- ## 2.0.1
454
-
455
- ### Patch Changes
456
-
457
- - [#3652](https://github.com/equinor/fusion-framework/pull/3652) [`8d50adc`](https://github.com/equinor/fusion-framework/commit/8d50adc17e81fc46da81795125832af8add5f678) Thanks [@dependabot](https://github.com/apps/dependabot)! - **Security:** Update Vite to v7.1.12
458
-
459
- This update addresses a security vulnerability in Vite's development server and includes bug fixes for improved compatibility. The update ensures secure development environments and better plugin ecosystem compatibility.
460
-
461
- **Changes:**
462
- - Updated Vite from v7.1.10 to v7.1.12
463
- - Includes security fix for development server file system checks
464
- - Includes compatibility fix for CommonJS plugin
465
- - No breaking changes or API modifications
466
-
467
- **Security Fix (v7.1.11):**
468
- - **dev**: trim trailing slash before `server.fs.deny` check ([#20968](https://github.com/vitejs/vite/issues/20968))
469
- - Prevents potential path traversal vulnerability in development server
470
- - Only affects development environment, not production builds
471
-
472
- **Bug Fix (v7.1.12):**
473
- - **deps**: downgrade commonjs plugin to 28.0.6 to avoid rollup/plugins issues ([#20990](https://github.com/vitejs/vite/issues/20990))
474
- - Improves compatibility with Rollup plugin ecosystem
475
- - Prevents potential build issues
476
-
477
- All packages using Vite as a development dependency are updated to the latest secure version. This is a patch-level security and bug fix update that maintains full compatibility with existing functionality.
478
-
479
- closes: https://github.com/equinor/fusion/issues/723
480
-
481
- ## 2.0.0
482
-
483
- ### Patch Changes
484
-
485
- - [#3584](https://github.com/equinor/fusion-framework/pull/3584) [`0dd31cd`](https://github.com/equinor/fusion-framework/commit/0dd31cd1078b383ddab4a8cf1bb03d502e214715) Thanks [@dependabot](https://github.com/apps/dependabot)! - chore: bump @rollup/plugin-node-resolve from 16.0.1 to 16.0.3
486
-
487
- Bug fixes:
488
- - fix: resolve bare targets of package "imports" using export maps; avoid fileURLToPath(null)
489
- - fix: error thrown with empty entry
490
-
491
- - [#3604](https://github.com/equinor/fusion-framework/pull/3604) [`31e2581`](https://github.com/equinor/fusion-framework/commit/31e2581fca2765dc7caf54f74db3db51020b53b7) Thanks [@odinr](https://github.com/odinr)! - Update SPA bootstrap telemetry configuration to use proper adapter identifiers.
492
-
493
- **Changes:**
494
- - Refactor console adapter setup for cleaner conditional logic
495
- - Update setAdapter calls to include required identifier parameter
496
-
497
- **Migration:**
498
- - No breaking changes for SPA consumers - internal implementation update only
499
-
500
- - Updated dependencies [[`6900d98`](https://github.com/equinor/fusion-framework/commit/6900d98142c84f4703095f8d03b09af57a1d7d2e), [`e1a94c5`](https://github.com/equinor/fusion-framework/commit/e1a94c5a1df4ac2ec92ed25b75648397a3dbfa7b), [`e1a94c5`](https://github.com/equinor/fusion-framework/commit/e1a94c5a1df4ac2ec92ed25b75648397a3dbfa7b), [`31e2581`](https://github.com/equinor/fusion-framework/commit/31e2581fca2765dc7caf54f74db3db51020b53b7), [`0bc6b38`](https://github.com/equinor/fusion-framework/commit/0bc6b38e61c98a2f9dea7b55fa9983f268f860be), [`a13de68`](https://github.com/equinor/fusion-framework/commit/a13de68b2f196a779ea850af055d8db7926941ce)]:
501
- - @equinor/fusion-framework-module-http@7.0.3
502
- - @equinor/fusion-framework-module@5.0.4
503
- - @equinor/fusion-framework-module-msal@5.1.1
504
- - @equinor/fusion-framework-module-telemetry@4.3.0
505
- - @equinor/fusion-framework-module-service-discovery@9.0.3
506
-
507
- ## 1.2.2
508
-
509
- ### Patch Changes
510
-
511
- - [#3578](https://github.com/equinor/fusion-framework/pull/3578) [`dd560e7`](https://github.com/equinor/fusion-framework/commit/dd560e75683788c875c6ba1e78463ae18d57fce2) Thanks [@Noggling](https://github.com/Noggling)! - Fix Windows compatibility issue in SPA Vite plugin
512
-
513
- Previously, the plugin was using direct `.pathname` access on URL objects which could cause issues on Windows due to path separator differences. This change replaces the direct pathname access with `fileURLToPath()` and `normalizePath()` from Vite to ensure proper cross-platform path handling.
514
-
515
- **Changes:**
516
- - Import `normalizePath` from Vite for consistent path normalization
517
- - Use `fileURLToPath()` to properly convert file URLs to paths
518
- - Apply `normalizePath()` to ensure consistent path separators across platforms
519
-
520
- This fix ensures the CLI and development server work correctly on Windows systems.
521
-
522
- ## 1.2.1
523
-
524
- ### Patch Changes
525
-
526
- - [#3579](https://github.com/equinor/fusion-framework/pull/3579) [`b6a64d9`](https://github.com/equinor/fusion-framework/commit/b6a64d94bad7248c06b3aa7d65d7d698052437c7) Thanks [@Noggling](https://github.com/Noggling)! - Add peer dependencies to SPA Vite plugin
527
-
528
- Added peer dependencies to ensure proper dependency resolution for the SPA Vite plugin. This change declares the Fusion Framework modules that the plugin expects to be available in the consuming application:
529
- - `@equinor/fusion-framework-module`
530
- - `@equinor/fusion-framework-module-http`
531
- - `@equinor/fusion-framework-module-msal`
532
- - `@equinor/fusion-framework-module-service-discovery`
533
- - `@equinor/fusion-framework-module-telemetry`
534
-
535
- This ensures that consumers are aware of the required dependencies and helps prevent runtime errors due to missing modules.
536
-
537
- ## 1.2.0
538
-
539
- ### Minor Changes
540
-
541
- - [#3547](https://github.com/equinor/fusion-framework/pull/3547) [`99a3c26`](https://github.com/equinor/fusion-framework/commit/99a3c26275c2089c3708124f5819ce383d8dc3dc) Thanks [@odinr](https://github.com/odinr)! - Enhanced SPA plugin with portal proxy support for testing apps in real portal environments ([Issue #3546](https://github.com/equinor/fusion-framework/issues/3546)).
542
- - Added `proxy` option to portal configuration to enable `/portal-proxy` routing
543
- - Added `FUSION_SPA_PORTAL_PROXY` environment variable support
544
- - Updated TypeScript types to include portal proxy configuration
545
- - Updated documentation with portal proxy usage examples
546
-
547
- This feature enables developers to load real portal implementations instead of the default developer portal, supporting configuration of portal ID and version tags for targeted testing scenarios.
548
-
549
- **Migration:**
550
- No migration required - the `proxy` option defaults to `false`, maintaining existing behavior.
551
-
552
- **Example usage:**
553
-
554
- ```ts
555
- portal: {
556
- id: 'my-portal',
557
- tag: 'latest',
558
- proxy: true, // Routes through /portal-proxy/
559
- }
560
- ```
561
-
562
- ## 1.1.4
563
-
564
- ### Patch Changes
565
-
566
- - [#3490](https://github.com/equinor/fusion-framework/pull/3490) [`45954e5`](https://github.com/equinor/fusion-framework/commit/45954e5db471a2faa24e88e41fc6d6c18817d6d1) Thanks [@odinr](https://github.com/odinr)! - Remove logger level configuration from bootstrap template.
567
- - Removed `configurator.logger.level` assignment from `bootstrap.ts`
568
- - Logger level configuration should be handled elsewhere or is no longer needed
569
-
570
- This cleans up the bootstrap template by removing unused logger configuration.
571
-
572
- - [#3532](https://github.com/equinor/fusion-framework/pull/3532) [`63ecde5`](https://github.com/equinor/fusion-framework/commit/63ecde5c29e775b341c3fac0c1eeb7123db5e2db) Thanks [@dependabot](https://github.com/apps/dependabot)! - Bump vite from 7.1.8 to 7.1.9 across development tools and plugins.
573
-
574
- This patch update fixes bugs and improves stability in the vite dependency.
575
-
576
- - [#3521](https://github.com/equinor/fusion-framework/pull/3521) [`d1098f7`](https://github.com/equinor/fusion-framework/commit/d1098f7eeff04380c9e05e4a7a7d6b16e1d95884) Thanks [@odinr](https://github.com/odinr)! - Add comprehensive telemetry integration to SPA bootstrap and service worker.
577
- - Enable telemetry in SPA bootstrap with ConsoleAdapter
578
- - Add configurable console logging levels via FUSION_SPA_TELEMETRY_CONSOLE_LEVEL environment variable
579
- - Track bootstrap performance for portal loading operations
580
- - Monitor service worker registration and token acquisition
581
- - Include user metadata and portal configuration in telemetry
582
- - Track exceptions and errors throughout SPA lifecycle
583
- - Fix console level filtering logic to properly respect environment variable settings
584
-
585
- **Implementation Notes:**
586
- - Console level filtering defaults to `TelemetryLevel.Information` (1) when env var not set
587
- - Invalid env var values fallback to logging all telemetry (robust error handling)
588
- - Backward compatible: existing behavior unchanged when no FUSION_SPA_TELEMETRY_CONSOLE_LEVEL specified
589
- - Telemetry level mapping: 0=Debug, 1=Information, 2=Warning, 3=Error, 4=Critical
590
-
591
- resolves: [#3487](https://github.com/equinor/fusion-framework/issues/3487)
592
-
593
- ## 1.1.3
594
-
595
- ### Patch Changes
596
-
597
- - [`56c27ec`](https://github.com/equinor/fusion-framework/commit/56c27ec9de03e07e725eecfdf2c028a1e29b6ece) Thanks [@odinr](https://github.com/odinr)! - Updated workspace dependencies to use exact version specifiers for consistent release behavior.
598
- - Changed workspace dependencies from `workspace:^` to `workspace:*` across CLI, dev-server, and SPA vite plugin packages
599
- - Ensures exact version resolution within the monorepo for predictable builds and releases
600
- - Affects both dependencies and devDependencies where applicable
601
-
602
- ## 1.1.2
603
-
604
- ### Patch Changes
605
-
606
- - [#3470](https://github.com/equinor/fusion-framework/pull/3470) [`0734026`](https://github.com/equinor/fusion-framework/commit/073402682cacae75d82e69068e18b3061228972b) Thanks [@eikeland](https://github.com/eikeland)! - Fixed service worker not intercepting requests during hard refresh in development mode.
607
-
608
- **Problem**: During hard refresh, the service worker would not intercept fetch requests, causing authenticated API requests to fail. The service worker could be stuck in "waiting" state or already active but not controlling the page (`navigator.serviceWorker.controller` was `undefined`).
609
-
610
- **Root Cause**: Two related issues in the service worker lifecycle during hard refresh:
611
- 1. **Waiting state**: When code changes, the new service worker enters "waiting" state, but `skipWaiting()` only runs in the `install` event (which already fired)
612
- 2. **No controller**: Even when active, `clients.claim()` only runs in the `activate` event, which doesn't fire again if the service worker is already active
613
-
614
- **Solution**:
615
- - **Force activation on config receipt**: When receiving `INIT_CONFIG`, immediately call both `skipWaiting()` and `clients.claim()` to ensure the service worker activates and takes control regardless of its current state
616
- - **Wait for controller**: Registration now waits for `navigator.serviceWorker.controller` to be set before proceeding, ensuring fetch interception is ready
617
- - **Disable service worker caching**: Added `updateViaCache: 'none'` to always fetch fresh service worker code during development
618
- - **Comprehensive state handling**: Handle service workers in installing, waiting, and active states
619
-
620
- **Changes**:
621
- 1. **sw.ts**: Call `skipWaiting()` and `clients.claim()` when receiving `INIT_CONFIG` message
622
- 2. **register-service-worker.ts**: Wait for controller with polling and timeout fallback; disable service worker HTTP caching
623
-
624
- This ensures service workers always activate and take control during hard refresh, properly intercepting and authenticating requests in development mode.
625
-
626
- reporter: [v3gard](https://github.com/v3gard)
627
-
628
- resolves: [Force refresh (CTRL+Shift+R) causes app to throw #679
629
- ](https://github.com/equinor/fusion/issues/679)
630
-
631
- ## 1.1.1
632
-
633
- ### Patch Changes
634
-
635
- - [#3432](https://github.com/equinor/fusion-framework/pull/3432) [`528d72c`](https://github.com/equinor/fusion-framework/commit/528d72c04066f93fca1fa6469f33ec8d5383dcdc) Thanks [@dependabot](https://github.com/apps/dependabot)! - Updated vite from 7.1.5 to 7.1.7, including bug fixes for HMR, build system, and glob imports.
636
-
637
- ## 1.1.0
638
-
639
- ### Minor Changes
640
-
641
- - [#3349](https://github.com/equinor/fusion-framework/pull/3349) [`c511123`](https://github.com/equinor/fusion-framework/commit/c511123c835e24e9ddefcc4c47c2455f5df12087) Thanks [@dependabot](https://github.com/apps/dependabot)! - chore: bump vite from 6.x to 7.1.5
642
-
643
- Major version update of Vite build tool across all packages. This update includes:
644
- - Enhanced build performance and caching
645
- - Better error reporting with code frames
646
- - Improved TypeScript integration
647
- - Updated plugin ecosystem compatibility
648
- - New development server features
649
-
650
- ### Links
651
- - [Vite 7.1.5 Release Notes](https://github.com/vitejs/vite/releases/tag/v7.1.5)
652
- - [Vite 7.x Migration Guide](https://vitejs.dev/guide/migration)
653
-
654
- ## 1.0.1
655
-
656
- ### Patch Changes
657
-
658
- - [#3381](https://github.com/equinor/fusion-framework/pull/3381) [`bae9c95`](https://github.com/equinor/fusion-framework/commit/bae9c9554f335d0384b864436874bded47d00ed8) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update rollup from 4.49.0 to 4.50.2
659
- - Updated rollup dependency via vite transitive dependency
660
- - Includes bug fixes for tree-shaking array destructuring patterns
661
- - Performance improvements and platform support updates
662
- - No breaking changes - backward compatible update
663
-
664
- - [#2910](https://github.com/equinor/fusion-framework/pull/2910) [`07cc985`](https://github.com/equinor/fusion-framework/commit/07cc9857e1427b574e011cc319518e701dba784d) Thanks [@dependabot](https://github.com/apps/dependabot)! - Updated vitest from 2.1.9 to 3.2.4 across all packages.
665
-
666
- ## Breaking Changes
667
- - **Node.js Requirements**: Requires Node.js 18+ (already satisfied)
668
- - **Vite Compatibility**: Updated to work with Vite 7.x (already using Vite 7.1.5)
669
- - **Snapshot Format**: Snapshots now use backtick quotes (\`) instead of single quotes
670
- - **Coverage API**: New coverage methods `enableCoverage()` and `disableCoverage()`
671
- - **TypeScript Support**: Enhanced TypeScript integration and type definitions
672
-
673
- ## Security Updates
674
- - CVE-2025-24963: Browser mode serves arbitrary files (fixed in 2.1.9)
675
- - CVE-2025-24964: Remote Code Execution vulnerability (fixed in 2.1.9)
676
-
677
- ## Migration Notes
678
- - Test snapshots may need regeneration due to quote format changes
679
- - Some test configurations might need updates for new TypeScript support
680
- - Peer dependency warnings for @vitest/coverage-v8 are expected and safe to ignore
681
-
682
- ## Links
683
- - [Vitest 3.0 Migration Guide](https://vitest.dev/guide/migration)
684
- - [Vitest 3.2.4 Release Notes](https://github.com/vitest-dev/vitest/releases/tag/v3.2.4)
685
-
686
- ## 1.0.0
687
-
688
- ### Major Changes
689
-
690
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`8fffbfb`](https://github.com/equinor/fusion-framework/commit/8fffbfb12daa9748bf5290e5084cd4d409aed253) Thanks [@odinr](https://github.com/odinr)! - Introducing a powerful new Vite plugin for building Single Page Applications (SPAs) with the Fusion Framework and Vite. This plugin significantly streamlines the development workflow by automating HTML template generation, bootstrapping authentication and service discovery, and enabling seamless portal loading and API proxying.
691
-
692
- **Purpose**:
693
-
694
- This plugin represents a strategic modularization of the Fusion Framework CLI codebase. By extracting the SPA functionality into its own dedicated package, we've simplified the CLI's architecture while enabling greater flexibility. This modular design allows the SPA component to be replaced or reused by third-party developers independently of the CLI. The primary goal is to maintain a cleaner, more maintainable codebase through proper separation of concerns, with the CLI using this plugin rather than containing this functionality directly.
695
-
696
- **Key Features**:
697
- - **Fusion Framework Bootstrap**: Automatically initializes core modules and renders configured portals
698
- - **Service Discovery**: Enables dynamic service routing and eliminates hardcoded service endpoints
699
- - **MSAL Authentication**: Provides seamless Azure AD integration with configurable authentication flows
700
- - **Service Worker**: Intercepts network requests to add authentication tokens and rewrite URLs for proxying
701
- - **Portal Integration**: Loads and renders any portal by ID from local packages or the Fusion Portal Service
702
- - **Environment Configuration**: Supports flexible configuration through code or `.env` files with proper naming conventions
703
- - **Custom Templates**: Allows full control over HTML document structure while maintaining environment variable injection
704
- - **Custom Bootstrap**: Supports advanced customization of the application initialization process
705
- - **API Service Integration**: Works with `@equinor/fusion-framework-vite-plugin-api-service` for enhanced development capabilities
706
-
707
- This plugin is designed for seamless integration with the Fusion Framework CLI and provides flexible configuration for both standard and advanced SPA scenarios.
708
-
709
- > Note: This plugin is intended for use in non-production environments only, primarily as a development and testing tool.
710
-
711
- ## 1.0.0-next.9
712
-
713
- ### Patch Changes
714
-
715
- - [#3137](https://github.com/equinor/fusion-framework/pull/3137) [`7c58c78`](https://github.com/equinor/fusion-framework/commit/7c58c7868c66b1fc0f720b4ed13d39e0fe505461) Thanks [@odinr](https://github.com/odinr)! - updates from main
716
-
717
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`db34d90`](https://github.com/equinor/fusion-framework/commit/db34d9003d64e4c7cb46cf0c95f0c7a0e7587128) Thanks [@odinr](https://github.com/odinr)! - merge with main
718
-
719
- ## 1.0.0-next.8
720
-
721
- ### Patch Changes
722
-
723
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`5973182`](https://github.com/equinor/fusion-framework/commit/5973182b156adb56137f1fc683635ae15274cc57) Thanks [@odinr](https://github.com/odinr)! - Update portal config and manifest API routes and types for consistency:
724
- - Change dev server API route for portal manifest/config from `/portals/portals/...` to `/portal-config/portals/...` for alignment with client usage.
725
- - Make portal config optional in dev server route and type definitions.
726
- - Update SPA bootstrap to use `portal-config` as the service discovery client key.
727
- - Refactor portal manifest/config loading and merging to use `RecursivePartial` and `lodash.mergewith` for deep merge support.
728
- - Remove unused zod import from portal config type.
729
-
730
- These changes improve consistency, flexibility, and correctness in portal manifest/config handling across CLI and SPA plugin.
731
-
732
- ## 1.0.0-next.7
733
-
734
- ### Patch Changes
735
-
736
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`23fdc8a`](https://github.com/equinor/fusion-framework/commit/23fdc8a80d21ff063b17d8c596c0afc0a891305f) Thanks [@odinr](https://github.com/odinr)! - Fix dependency and devDependency declarations for lodash.mergewith:
737
- - Move "lodash.mergewith" to dependencies and ensure correct version for @types/lodash.mergewith in devDependencies.
738
- - Remove duplicate and misplaced entries for lodash.mergewith and its types.
739
- - Remove unused @equinor/fusion-framework-vite-plugin-api-service from devDependencies.
740
- - Update lockfile to match package.json changes.
741
-
742
- This ensures correct dependency management and resolves potential issues with type resolution and package installation.
743
-
744
- ## 1.0.0-next.6
745
-
746
- ### Patch Changes
747
-
748
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`713cb15`](https://github.com/equinor/fusion-framework/commit/713cb15c5f1607e7f7285940a58165d97d8e41df) Thanks [@odinr](https://github.com/odinr)! - Refactor plugin internals for improved Vite compatibility and maintainability:
749
- - Made `resolveId` and `config` hooks async to support dynamic import resolution for virtual modules.
750
- - Improved resource alias resolution for `/@fusion-spa-bootstrap.js` and `/@fusion-spa-sw.js` using `import.meta.resolve` and `fileURLToPath`.
751
- - Enhanced environment variable handling by merging plugin and loaded environments, and defining them on `config.define`.
752
- - Ensured the Vite dev server allows access to the correct `../html` directory for SPA templates.
753
- - Added more robust logging for environment configuration and plugin setup.
754
-
755
- ## 1.0.0-next.5
756
-
757
- ### Minor Changes
758
-
759
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`ea96493`](https://github.com/equinor/fusion-framework/commit/ea96493d95336f682e31a7b63161783ae7c99a63) Thanks [@odinr](https://github.com/odinr)! - Refactor build output and entrypoints for SPA Vite plugin:
760
- - Change main export entrypoint to `./dist/bin/index.js` (was `./dist/esm/index.js`).
761
- - Remove the `./html` export subpath.
762
- - Update Rollup config to bundle from `dist/esm` to `dist/bin` and adjust input/output accordingly.
763
- - Remove `postbuild` script and add `prebuild` script for TypeScript project references build.
764
- - Minor formatting improvements in `package.json`.
765
-
766
- These changes improve the build pipeline and clarify the published entrypoints for consumers.
767
-
768
- ## 1.0.0-next.4
769
-
770
- ### Patch Changes
771
-
772
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`8870e73`](https://github.com/equinor/fusion-framework/commit/8870e73bd6d4141142c69c11c67b5b154bc80023) Thanks [@odinr](https://github.com/odinr)! - Update build system and dependencies:
773
- - Switch build script to use Rollup with a new `rollup.config.js` for ESM output
774
- - Add postbuild script to emit TypeScript declarations
775
- - Move all dependencies to devDependencies for clarity
776
- - Add and update Rollup-related devDependencies (including plugins and types)
777
- - Update `pnpm-lock.yaml` to reflect new and updated dependencies
778
- - Minor formatting and consistency improvements in `package.json` and `tsconfig.json`
779
-
780
- These changes modernize the build process and improve maintainability for the SPA Vite plugin package.
781
-
782
- ## 1.0.0-next.3
783
-
784
- ### Patch Changes
785
-
786
- - Updated dependencies [[`bbda62d`](https://github.com/equinor/fusion-framework/commit/bbda62def35c8e8b742d90459680f7199c4ece0f)]:
787
- - @equinor/fusion-framework-module@4.4.3-next.1
788
- - @equinor/fusion-framework-module-http@6.3.3-next.2
789
- - @equinor/fusion-framework-module-msal@4.0.7-next.1
790
- - @equinor/fusion-framework-module-service-discovery@8.0.15-next.2
791
-
792
- ## 1.0.0-next.2
793
-
794
- ### Patch Changes
795
-
796
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`ca8d6c8`](https://github.com/equinor/fusion-framework/commit/ca8d6c834f9df35041ce8c7e2563c452d8b19276) Thanks [@odinr](https://github.com/odinr)! - Allow the plugin to access the template file by updating the Vite server file system allow list. This ensures the template can be served correctly during development.
797
-
798
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`7878f59`](https://github.com/equinor/fusion-framework/commit/7878f591c528d463bfbe558094c2c31004db8586) Thanks [@odinr](https://github.com/odinr)! - Update bootstrap logic to improve service discovery, authentication, and portal manifest loading. Refactored the initialization sequence and clarified environment variable usage in `bootstrap.ts`. No breaking changes expected.
799
-
800
- - Updated dependencies [[`53ef326`](https://github.com/equinor/fusion-framework/commit/53ef32633ce1c050e20614f1343148327a40b2e6)]:
801
- - @equinor/fusion-framework-module@4.4.3-next.0
802
- - @equinor/fusion-framework-module-http@6.3.3-next.1
803
- - @equinor/fusion-framework-module-msal@4.0.7-next.0
804
- - @equinor/fusion-framework-module-service-discovery@8.0.15-next.1
805
-
806
- ## 1.0.0-next.1
807
-
808
- ### Patch Changes
809
-
810
- - [#3075](https://github.com/equinor/fusion-framework/pull/3075) [`96ad5d3`](https://github.com/equinor/fusion-framework/commit/96ad5d3a3aafe7adf5bd7f8e48e58bb19aa95ba8) Thanks [@odinr](https://github.com/odinr)! - Add prepack script to run build before packaging
811
-
812
- A `prepack` script was added to both the SPA and API service Vite plugin packages. This ensures the build step runs automatically before packaging, improving reliability of published artifacts.
813
-
814
- - Updated dependencies [[`96ad5d3`](https://github.com/equinor/fusion-framework/commit/96ad5d3a3aafe7adf5bd7f8e48e58bb19aa95ba8)]:
815
- - @equinor/fusion-framework-vite-plugin-api-service@1.0.0-next.1
816
-
817
- ## 1.0.0-next.0
818
-
819
- ### Major Changes
820
-
821
- - [#3074](https://github.com/equinor/fusion-framework/pull/3074) [`6b034e5`](https://github.com/equinor/fusion-framework/commit/6b034e5459094cea0c0f2490335eef3092390a13) Thanks [@odinr](https://github.com/odinr)! - ---
822
-
823
- **New Package: Fusion Framework Vite SPA Plugin**
824
-
825
- This plugin enables building single-page applications (SPAs) with Vite. It provides features such as service discovery, MSAL authentication, and service worker configuration.
826
-
827
- **Features**:
828
- - **Service Discovery**: Fetch service discovery configurations and authenticate requests.
829
- - **MSAL Authentication**: Authenticate users with Azure AD.
830
- - **Service Worker**: Intercept fetch requests, apply authentication headers, and rewrite URLs.
831
- - **Custom Templates**: Define custom HTML templates for SPAs.
832
- - **Environment Configuration**: Configure the plugin using `.env` files or programmatically.
833
-
834
- **Usage**:
835
-
836
- ```ts
837
- import { defineConfig } from "vite";
838
- import { plugin as fusionSpaPlugin } from "@equinor/fusion-framework-vite-plugin-spa";
839
-
840
- export default defineConfig({
841
- plugins: [fusionSpaPlugin()],
842
- });
843
- ```
844
-
845
- ```ts
846
- fusionSpaPlugin({
847
- generateTemplateEnv: () => ({
848
- title: "My App",
849
- portal: {
850
- id: "my-portal",
851
- },
852
- serviceDiscovery: {
853
- url: "https://my-server.com/service-discovery",
854
- scopes: ["api://my-app/scope"],
855
- },
856
- msal: {
857
- tenantId: "my-tenant-id",
858
- clientId: "my-client-id",
859
- redirectUri: "https://my-app.com/auth-callback",
860
- requiresAuth: "true",
861
- },
862
- serviceWorker: {
863
- resources: [
864
- {
865
- url: "/app-proxy",
866
- rewrite: "/@fusion-api/app",
867
- scopes: ["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/.default"],
868
- },
869
- ],
870
- },
871
- }),
872
- });
873
- ```
874
-
875
- **Additional Details**:
876
- - **Custom Bootstrap**: Allows defining custom bootloader scripts.
877
- - **Dynamic Proxy**: Supports dynamic proxy services using `@equinor/fusion-framework-vite-plugin-api-service`.
878
- - **Environment Variables**: Automatically maps `.env` variables to `import.meta.env`.
879
-
880
- Refer to the README for detailed documentation.
881
-
882
- ### Patch Changes
883
-
884
- - [#3074](https://github.com/equinor/fusion-framework/pull/3074) [`6b034e5`](https://github.com/equinor/fusion-framework/commit/6b034e5459094cea0c0f2490335eef3092390a13) Thanks [@odinr](https://github.com/odinr)! - Fetch and pass portal config to portal render function in bootstrap.ts
885
- - The SPA bootstrap script now fetches the portal config from `/portals/{portalId}@{portalTag}/config` and passes it as `config` to the portal's render function.
886
- - This enables portals to receive their runtime configuration directly at startup.
887
-
888
- - [#3074](https://github.com/equinor/fusion-framework/pull/3074) [`6b034e5`](https://github.com/equinor/fusion-framework/commit/6b034e5459094cea0c0f2490335eef3092390a13) Thanks [@odinr](https://github.com/odinr)! - update Vite to 6.3.5
889
-
890
- - Updated dependencies [[`6b034e5`](https://github.com/equinor/fusion-framework/commit/6b034e5459094cea0c0f2490335eef3092390a13), [`6b034e5`](https://github.com/equinor/fusion-framework/commit/6b034e5459094cea0c0f2490335eef3092390a13), [`6b034e5`](https://github.com/equinor/fusion-framework/commit/6b034e5459094cea0c0f2490335eef3092390a13)]:
891
- - @equinor/fusion-framework-vite-plugin-api-service@1.0.0-next.0
892
- - @equinor/fusion-framework-module-http@6.3.3-next.0
893
- - @equinor/fusion-framework-module-service-discovery@8.0.15-next.0