@furystack/shades-mfe 1.0.23 → 1.0.25

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,4 +1,15 @@
1
- # Change Log
1
+ # Changelog
2
2
 
3
- All notable changes to this project will be documented in this file.
4
- See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
3
+ ## [1.0.25] - 2026-01-22
4
+
5
+ ### ⬆️ Dependencies
6
+
7
+ - Dependency updates
8
+
9
+ ### 📚 Documentation
10
+
11
+ - Expanded README with detailed micro-frontend setup and configuration examples
12
+
13
+ ### 🔧 Chores
14
+
15
+ - Migrated to centralized changelog management system
package/README.md CHANGED
@@ -1,7 +1,126 @@
1
- # shades-mfe
1
+ # @furystack/shades-mfe
2
2
 
3
- Micro frontend management for Shades.
3
+ Micro-frontend support for FuryStack Shades. This package allows you to dynamically load and render independent micro-frontend modules within your Shades application.
4
4
 
5
- ## Usage Example
5
+ ## Installation
6
6
 
7
- --- TODO ---
7
+ ```bash
8
+ npm install @furystack/shades-mfe
9
+ # or
10
+ yarn add @furystack/shades-mfe
11
+ ```
12
+
13
+ ## Usage
14
+
15
+ ### Creating a Shades Micro-Frontend
16
+
17
+ Use `createShadesMicroFrontend` to wrap a Shades component as a micro-frontend module:
18
+
19
+ ```tsx
20
+ // In your MFE module (e.g., remote-app/index.tsx)
21
+ import { Shade } from '@furystack/shades'
22
+ import { createShadesMicroFrontend } from '@furystack/shades-mfe'
23
+
24
+ type MyMfeApi = {
25
+ greeting: string
26
+ onAction: () => void
27
+ }
28
+
29
+ const MyMfeComponent = Shade<MyMfeApi>({
30
+ shadowDomName: 'my-mfe-component',
31
+ render: ({ props }) => (
32
+ <div>
33
+ <h1>{props.greeting}</h1>
34
+ <button onclick={props.onAction}>Click me</button>
35
+ </div>
36
+ ),
37
+ })
38
+
39
+ export default createShadesMicroFrontend(MyMfeComponent)
40
+ ```
41
+
42
+ ### Loading a Micro-Frontend in the Host App
43
+
44
+ Use the `MicroFrontend` component to load and render your micro-frontend:
45
+
46
+ ```tsx
47
+ import { Shade } from '@furystack/shades'
48
+ import { MicroFrontend } from '@furystack/shades-mfe'
49
+
50
+ type MyMfeApi = {
51
+ greeting: string
52
+ onAction: () => void
53
+ }
54
+
55
+ const HostApp = Shade({
56
+ shadowDomName: 'host-app',
57
+ render: () => (
58
+ <MicroFrontend<MyMfeApi>
59
+ api={{
60
+ greeting: 'Hello from host!',
61
+ onAction: () => console.log('Action triggered'),
62
+ }}
63
+ loaderCallback={() => import('http://localhost:3001/my-mfe.js')}
64
+ loader={<div>Loading...</div>}
65
+ error={(error, retry) => (
66
+ <div>
67
+ <p>Failed to load: {String(error)}</p>
68
+ <button onclick={retry}>Retry</button>
69
+ </div>
70
+ )}
71
+ />
72
+ ),
73
+ })
74
+ ```
75
+
76
+ ### Creating a Custom Micro-Frontend
77
+
78
+ For non-Shades micro-frontends or more control over the lifecycle:
79
+
80
+ ```tsx
81
+ import { createCustomMicroFrontend } from '@furystack/shades-mfe'
82
+
83
+ type MyApi = {
84
+ data: string
85
+ }
86
+
87
+ export default createCustomMicroFrontend<MyApi>({
88
+ onCreate: ({ api, rootElement, injector }) => {
89
+ // Initialize your custom component
90
+ rootElement.innerHTML = `<div>${api.data}</div>`
91
+ },
92
+ onDestroy: ({ api, injector }) => {
93
+ // Cleanup when the MFE is unmounted
94
+ },
95
+ })
96
+ ```
97
+
98
+ ## API Reference
99
+
100
+ ### `MicroFrontend<TApi>`
101
+
102
+ Component for loading and displaying micro-frontends.
103
+
104
+ **Props:**
105
+
106
+ | Prop | Type | Description |
107
+ | ---------------- | ------------------------------------------------------------------------ | ------------------------------------------- |
108
+ | `api` | `TApi` | The API object passed to the micro-frontend |
109
+ | `loaderCallback` | `() => Promise<CreateMicroFrontendService<TApi>>` | Async function to load the MFE module |
110
+ | `loader` | `JSX.Element` (optional) | Element to display while loading |
111
+ | `error` | `(error: unknown, retry: () => Promise<void>) => JSX.Element` (optional) | Error handler with retry capability |
112
+
113
+ ### `createShadesMicroFrontend<TApi>(Component)`
114
+
115
+ Creates a micro-frontend service from a Shades component.
116
+
117
+ ### `createCustomMicroFrontend<TApi>(options)`
118
+
119
+ Creates a micro-frontend service with custom create/destroy callbacks.
120
+
121
+ **Options:**
122
+
123
+ | Option | Type | Description |
124
+ | ----------- | ------------------------------------- | -------------------------------- |
125
+ | `onCreate` | `CreateMfeCallback<TApi>` | Called when the MFE is mounted |
126
+ | `onDestroy` | `DestroyMfeCallback<TApi>` (optional) | Called when the MFE is unmounted |
@@ -1 +1 @@
1
- {"version":3,"file":"micro-frontend.spec.js","sourceRoot":"","sources":["../src/micro-frontend.spec.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"micro-frontend.spec.js","sourceRoot":"","sources":["../src/micro-frontend.spec.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@furystack/shades-mfe",
3
- "version": "1.0.23",
3
+ "version": "1.0.25",
4
4
  "description": "I18n translation package and components for Shades",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -35,13 +35,13 @@
35
35
  },
36
36
  "homepage": "https://github.com/furystack/furystack",
37
37
  "dependencies": {
38
- "@furystack/inject": "^12.0.24",
39
- "@furystack/shades": "^11.0.31"
38
+ "@furystack/inject": "^12.0.26",
39
+ "@furystack/shades": "^11.0.33"
40
40
  },
41
41
  "devDependencies": {
42
- "@types/node": "^25.0.2",
42
+ "@types/node": "^25.0.10",
43
43
  "typescript": "^5.9.3",
44
- "vitest": "^4.0.15"
44
+ "vitest": "^4.0.17"
45
45
  },
46
46
  "gitHead": "1045d854bfd8c475b7035471d130d401417a2321"
47
47
  }
@@ -151,7 +151,7 @@ describe('<MicroFrontend /> component', () => {
151
151
  )
152
152
  document.querySelector('button')!.click()
153
153
  await sleepAsync(10)
154
- expect(destroy).toHaveBeenCalledWith({ api: { value }, injector: expect.any(Injector) })
154
+ expect(destroy).toHaveBeenCalledWith({ api: { value }, injector: expect.any(Injector) as Injector })
155
155
  expect(document.body.innerHTML).toBe(
156
156
  `<div id="root"><mfe-test-example-w-destroy-host><button>Remove MFE</button></mfe-test-example-w-destroy-host></div>`,
157
157
  )