@equinor/fusion-framework-module-app 7.4.1 → 7.4.2-next.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/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Change Log
2
2
 
3
+ ## 7.4.2-next.0
4
+
5
+ ### Patch Changes
6
+
7
+ - [#3820](https://github.com/equinor/fusion-framework/pull/3820) [`f647825`](https://github.com/equinor/fusion-framework/commit/f647825cb5712763b09dafda21fd996211c78b78) Thanks [@odinr](https://github.com/odinr)! - relase next
8
+
9
+ - Updated dependencies [[`f647825`](https://github.com/equinor/fusion-framework/commit/f647825cb5712763b09dafda21fd996211c78b78)]:
10
+ - @equinor/fusion-observable@8.5.9-next.0
11
+ - @equinor/fusion-query@6.0.5-next.0
12
+
3
13
  ## 7.4.1
4
14
 
5
15
  ### Patch Changes
@@ -98,20 +108,17 @@
98
108
  ## New Features
99
109
 
100
110
  ### App Tag/Version Support
101
-
102
111
  - **App Client**: Added `getAppBuild` method to fetch build manifests by app key and tag
103
112
  - **App Module Provider**: Enhanced `getAppManifest` to accept optional tag parameter
104
113
  - **App Loading**: Modified `setCurrentApp` to support `AppReference` objects with tag specification
105
114
  - **URL Integration**: Added `getAppTagFromUrl` utility to extract app tags from URL parameters
106
115
 
107
116
  ### Enhanced Type System
108
-
109
117
  - Added `AppReference` type for specifying app key and optional tag
110
118
  - Extended `AppBundleState` to include optional `tag` property
111
119
  - Updated `AppBuildManifest` type definition for build-specific metadata
112
120
 
113
121
  ### API Improvements
114
-
115
122
  - **AppClient**: Updated interface to support tag-based manifest and build fetching
116
123
  - **App Class**: Added `tag` getter property for accessing current app tag
117
124
  - **Action System**: Enhanced `fetchManifest` action to handle tag parameters
@@ -119,7 +126,6 @@
119
126
  ## Changes by Package
120
127
 
121
128
  ### `@equinor/fusion-framework-module-app`
122
-
123
129
  - **AppClient.ts**: Added `getAppBuild` method with tag support and updated `getAppManifest` signature
124
130
  - **AppModuleProvider.ts**: Enhanced `setCurrentApp` method to handle `AppReference` objects with tags
125
131
  - **App.ts**: Added `tag` getter and improved error handling in initialization
@@ -128,7 +134,6 @@
128
134
  - **flows.ts**: Modified manifest fetching flow to handle tag-based requests
129
135
 
130
136
  ### `@equinor/fusion-framework-dev-portal`
131
-
132
137
  - **AppLoader.tsx**: Added `getAppTagFromUrl` utility function and integrated tag-based app loading
133
138
 
134
139
  ## Usage Examples
@@ -161,17 +166,14 @@
161
166
  ## Migration Guide
162
167
 
163
168
  ### For App Consumers
164
-
165
169
  - No breaking changes - existing code continues to work
166
170
  - Optionally use new tag-based loading for version-specific deployments
167
171
 
168
172
  ### For App Developers
169
-
170
173
  - Consider adding `&tag` URL parameter support for testing different versions
171
174
  - Use new `AppReference` type when programmatically setting current apps with tags
172
175
 
173
176
  ## Technical Details
174
-
175
177
  - **Backward Compatibility**: All changes are backward compatible
176
178
  - **Caching**: Tag-based manifests and builds are cached separately
177
179
  - **Error Handling**: Enhanced error handling for build and manifest loading failures
@@ -205,7 +207,6 @@
205
207
  ### Patch Changes
206
208
 
207
209
  - [#3428](https://github.com/equinor/fusion-framework/pull/3428) [`1700ca8`](https://github.com/equinor/fusion-framework/commit/1700ca8851fa108e55e9729fd24f595272766e63) Thanks [@dependabot](https://github.com/apps/dependabot)! - Update zod from 4.1.9 to 4.1.11
208
-
209
210
  - **v4.1.10**: Fixed shape caching issue (#5263) improving validation performance for complex schemas
210
211
  - **v4.1.11**: Maintenance release with general improvements
211
212
 
@@ -224,7 +225,6 @@
224
225
  Updated source code to migrate from zod v3 to v4. Updated zod dependency from v3.25.76 to v4.1.8 and modified schema definitions in the app module to use explicit key and value types for records and updated error message format from `description` to `message` for zod v4 compatibility.
225
226
 
226
227
  Key changes in source code:
227
-
228
228
  - Fixed record schema definitions to use explicit key and value types (`z.record(z.string(), z.any())`)
229
229
  - Updated error message options format (replaced `description` with `message`)
230
230
  - Enhanced `ApiAppConfigSchema` with proper record type definitions for environment and endpoints
@@ -233,7 +233,6 @@
233
233
  Breaking changes: Record schemas must specify both key and value types explicitly. Error message format has changed from zod v3 to v4 format. Function schema definitions now require explicit typing.
234
234
 
235
235
  Links:
236
-
237
236
  - [Zod v4 Migration Guide](https://github.com/colinhacks/zod/releases/tag/v4.0.0)
238
237
  - [Zod v4.1.8 Release Notes](https://github.com/colinhacks/zod/releases/tag/v4.1.8)
239
238
 
@@ -246,19 +245,16 @@
246
245
  - [#3395](https://github.com/equinor/fusion-framework/pull/3395) [`29f6710`](https://github.com/equinor/fusion-framework/commit/29f6710238baf9b29f42394b30cb8b97f25462c3) Thanks [@odinr](https://github.com/odinr)! - Updated immer from 9.0.16 to 10.1.3 across all packages.
247
246
 
248
247
  ### Breaking Changes
249
-
250
248
  - Immer 10.x introduces stricter TypeScript types for draft functions
251
249
  - `ValidRecipeReturnType` type constraints have changed
252
250
  - Promise return types in draft functions are no longer automatically handled
253
251
 
254
252
  ### Fixes Applied
255
-
256
253
  - Updated BookmarkProvider to handle new immer type constraints
257
254
  - Fixed ObservableInput type assignments in mergeScan operations
258
255
  - Removed async/await from immer draft functions to comply with new type requirements
259
256
 
260
257
  ### Links
261
-
262
258
  - [Immer 10.0.0 Release Notes](https://github.com/immerjs/immer/releases/tag/v10.0.0)
263
259
  - [Immer Migration Guide](https://github.com/immerjs/immer/blob/main/MIGRATION.md)
264
260
 
@@ -269,18 +265,15 @@
269
265
  - [#3347](https://github.com/equinor/fusion-framework/pull/3347) [`11143fa`](https://github.com/equinor/fusion-framework/commit/11143fa3002fb8a6c095052a04c7e596c56bafa8) Thanks [@dependabot](https://github.com/apps/dependabot)! - chore: bump uuid from 11.0.3 to 13.0.0
270
266
 
271
267
  ### Breaking Changes
272
-
273
268
  - v13.0.0: Make browser exports the default
274
269
  - v12.0.0: Update to TypeScript 5.2, remove CommonJS support, drop Node 16 support
275
270
 
276
271
  ### New Features
277
-
278
272
  - Improved v4() performance
279
273
  - Added Node 24 to CI matrix
280
274
  - Restored node: prefix support
281
275
 
282
276
  ### Links
283
-
284
277
  - [GitHub releases](https://github.com/uuidjs/uuid/releases/tag/v13.0.0)
285
278
  - [npm changelog](https://www.npmjs.com/package/uuid?activeTab=versions)
286
279
 
@@ -293,7 +286,6 @@
293
286
  ### Patch Changes
294
287
 
295
288
  - [#3315](https://github.com/equinor/fusion-framework/pull/3315) [`2ea9fb6`](https://github.com/equinor/fusion-framework/commit/2ea9fb63bdf967e0d010ddae2af9f6fb32077240) Thanks [@Noggling](https://github.com/Noggling)! - Improve error handling in AppClient
296
-
297
289
  - Add support for HTTP 410 (Gone) status code handling across all error types
298
290
  - Import and use `HttpJsonResponseError` for more specific error handling in `getAppManifest`
299
291
  - Add 'deleted' error type to handle when application resources have been deleted
@@ -311,7 +303,6 @@
311
303
  ### Patch Changes
312
304
 
313
305
  - [#3088](https://github.com/equinor/fusion-framework/pull/3088) [`7441b13`](https://github.com/equinor/fusion-framework/commit/7441b13aa50dd7362d1629086a27b6b4e571575d) Thanks [@eikeland](https://github.com/eikeland)! - chore: update package typesVersions
314
-
315
306
  - Updated package.json typesVersions.
316
307
  - Ensures backward compatibility with older node versions.
317
308
  - Ensured consistency with workspace and repository configuration.
@@ -424,7 +415,6 @@
424
415
  ### Patch Changes
425
416
 
426
417
  - [#2519](https://github.com/equinor/fusion-framework/pull/2519) [`83a7ee9`](https://github.com/equinor/fusion-framework/commit/83a7ee971785343bccedc2d72cc02486193615af) Thanks [@eikeland](https://github.com/eikeland)! - ### Changes:
427
-
428
418
  - Updated `AppClient` class to improve the query for fetching app manifests:
429
419
  - Adjusted the query path manifests method to include `$expand=category,admins,owners,keywords` when `filterByCurrentUser` is not specified.
430
420
  - Minor formatting changes for better readability.
@@ -436,11 +426,9 @@
436
426
  - [#2685](https://github.com/equinor/fusion-framework/pull/2685) [`add2e98`](https://github.com/equinor/fusion-framework/commit/add2e98d23e683a801729e9af543cfa15c574e27) Thanks [@eikeland](https://github.com/eikeland)! - Added versioning support to `AppModuleProvider`.
437
427
 
438
428
  **Modified files:**
439
-
440
429
  - `packages/modules/app/src/AppModuleProvider.ts`
441
430
 
442
431
  **Changes:**
443
-
444
432
  - Imported `SemanticVersion` from `@equinor/fusion-framework-module`.
445
433
  - Imported `version` from `./version`.
446
434
  - Added a `version` getter to `AppModuleProvider` that returns a `SemanticVersion` instance.
@@ -455,11 +443,9 @@
455
443
  - [#2654](https://github.com/equinor/fusion-framework/pull/2654) [`59ab642`](https://github.com/equinor/fusion-framework/commit/59ab6424f3ce80649f42ddb6804b46f6789607ba) Thanks [@eikeland](https://github.com/eikeland)! - Reverting update to the `manifests` call `selector` function in `AppClient` to use `jsonSelector` and parse the response with `ApplicationSchema`.
456
444
 
457
445
  **Modified files:**
458
-
459
446
  - `packages/modules/app/src/AppClient.ts`
460
447
 
461
448
  **Changes:**
462
-
463
449
  - Replaced `res.json()` with `jsonSelector(res)`
464
450
  - Parsed the response using `ApplicationSchema.array().parse(response.value)`
465
451
 
@@ -494,7 +480,6 @@
494
480
  ```
495
481
 
496
482
  - [#2577](https://github.com/equinor/fusion-framework/pull/2577) [`c3ba9f1`](https://github.com/equinor/fusion-framework/commit/c3ba9f109d9f96d6dc6ee2f0ddac00c8b3090982) Thanks [@eikeland](https://github.com/eikeland)! - #### Changes:
497
-
498
483
  1. **AppClient.ts**
499
484
  - Added `updateAppSettings` method to set app settings by appKey.
500
485
  2. **AppModuleProvider.ts**
@@ -555,12 +540,10 @@
555
540
  > This will introduce breaking changes to the configuration of `AppConfigurator.client`.
556
541
 
557
542
  **Added**
558
-
559
543
  - Introduced `AppClient` class to handle application manifest and configuration queries.
560
544
  - Added `zod` to validate the application manifest.
561
545
 
562
546
  **Changed**
563
-
564
547
  - Updated `AppModuleProvider` to use `AppClient` for fetching application manifests and configurations.
565
548
  - Modified `AppConfigurator` to utilize `AppClient` for client configuration.
566
549
  - Updated `useApps` hook with new input parameter for `filterByCurrentUser` in `fusion-framework-react`.
@@ -639,7 +622,6 @@
639
622
  - [#2320](https://github.com/equinor/fusion-framework/pull/2320) [`1dd85f3`](https://github.com/equinor/fusion-framework/commit/1dd85f3a408a73df556d1812a5f280945cc100ee) Thanks [@odinr](https://github.com/odinr)! - Removed the `removeComments` option from the `tsconfig.base.json` file.
640
623
 
641
624
  Removing the `removeComments` option allows TypeScript to preserve comments in the compiled JavaScript output. This can be beneficial for several reasons:
642
-
643
625
  1. Improved debugging: Preserved comments can help developers understand the code better during debugging sessions.
644
626
  2. Documentation: JSDoc comments and other important code documentation will be retained in the compiled output.
645
627
  3. Source map accuracy: Keeping comments can lead to more accurate source maps, which is crucial for debugging and error tracking.
@@ -688,7 +670,6 @@
688
670
  ### Patch Changes
689
671
 
690
672
  - [#2235](https://github.com/equinor/fusion-framework/pull/2235) [`97e41a5`](https://github.com/equinor/fusion-framework/commit/97e41a55d05644b6684c6cb165b65b115bd416eb) Thanks [@odinr](https://github.com/odinr)! - - **Refactored**: The `actionBaseType` function has been renamed to `getBaseType` and its implementation has been updated.
691
-
692
673
  - **Added**: New utility types and functions for handling action types and payloads in a more type-safe manner.
693
674
 
694
675
  - [#2248](https://github.com/equinor/fusion-framework/pull/2248) [`da9dd83`](https://github.com/equinor/fusion-framework/commit/da9dd83c9352def5365b6c962dc8443589ac9526) Thanks [@asbjornhaland](https://github.com/asbjornhaland)! - #2235 renamed a method and changed type. This PR forgot to change to the correct param when using this method. Fixes typo - update to use actions `type` in the reducer.
@@ -764,7 +745,6 @@
764
745
  ### Patch Changes
765
746
 
766
747
  - [#1763](https://github.com/equinor/fusion-framework/pull/1763) [`1ca8264`](https://github.com/equinor/fusion-framework/commit/1ca826489a0d1dd755324344a12bbf6659a3be12) Thanks [@odinr](https://github.com/odinr)! - improve type of current application
767
-
768
748
  - result will be `undefined` if current application has never been set
769
749
  - result will be `IApplication` if current application is set
770
750
  - result will be `null` if current application is cleared
@@ -881,7 +861,6 @@
881
861
  ### Minor Changes
882
862
 
883
863
  - [#927](https://github.com/equinor/fusion-framework/pull/927) [`8bc4c5d6`](https://github.com/equinor/fusion-framework/commit/8bc4c5d6ed900e424efcab5572047c106d7ec04a) Thanks [@odinr](https://github.com/odinr)! - Create and expose interface for App
884
-
885
864
  - deprecate [AppModuleProvider.createApp](https://github.com/equinor/fusion-framework/blob/cf08d5ae3cef473e5025fd973a2a7a45a3b22dee/packages/modules/app/src/AppModuleProvider.ts#L171)
886
865
 
887
866
  this should not create any breaking changes since apps was only created from provider.
@@ -892,7 +871,6 @@
892
871
  ```
893
872
 
894
873
  - [#927](https://github.com/equinor/fusion-framework/pull/927) [`8bc4c5d6`](https://github.com/equinor/fusion-framework/commit/8bc4c5d6ed900e424efcab5572047c106d7ec04a) Thanks [@odinr](https://github.com/odinr)! - Allow updating manifest of application
895
-
896
874
  - add meta data for `setManifest` action to flag if `merge` or `replace`
897
875
  - add method on `App` to update manifest, _default flag `merge`_
898
876
  - check in state reducer if `setManifest` action is `update` or `merge`
@@ -903,7 +881,6 @@
903
881
  ### Patch Changes
904
882
 
905
883
  - [#905](https://github.com/equinor/fusion-framework/pull/905) [`a7858a1c`](https://github.com/equinor/fusion-framework/commit/a7858a1c01542e2dc94370709f122b4b99c3219c) Thanks [@odinr](https://github.com/odinr)! - **🚧 Chore: dedupe packages**
906
-
907
884
  - align all versions of typescript
908
885
  - update types to build
909
886
  - a couple of typecasts did not [satisfies](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-5-0.html#satisfies-support-in-jsdoc) and was recasted as `unknwon`, marked with `TODO`, should be fixed in future
@@ -1,3 +1,3 @@
1
1
  // Generated by genversion.
2
- export const version = '7.4.1';
2
+ export const version = '7.4.2-next.0';
3
3
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,MAAM,CAAC,MAAM,OAAO,GAAG,cAAc,CAAC"}