@ecopages/kitajs 0.2.0-alpha.25 → 0.2.0-alpha.27
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 +3 -3
- package/README.md +5 -3
- package/package.json +2 -2
- package/src/kitajs-renderer.d.ts +1 -5
- package/src/kitajs-renderer.js +2 -8
package/CHANGELOG.md
CHANGED
|
@@ -9,7 +9,7 @@ All notable changes to `@ecopages/kitajs` are documented here.
|
|
|
9
9
|
### Bug Fixes
|
|
10
10
|
|
|
11
11
|
- Fixed Kita full-route and direct `ctx.render()` rendering to stay on the renderer-owned page/layout/document path while resolving mixed boundaries inside the owning renderer.
|
|
12
|
-
- Fixed Kita
|
|
12
|
+
- Fixed Kita foreign-subtree payload compatibility coverage and removed the plugin/renderer integration-name import cycle.
|
|
13
13
|
|
|
14
14
|
### Documentation
|
|
15
15
|
|
|
@@ -17,5 +17,5 @@ All notable changes to `@ecopages/kitajs` are documented here.
|
|
|
17
17
|
|
|
18
18
|
### Tests
|
|
19
19
|
|
|
20
|
-
- Updated integration coverage for explicit
|
|
21
|
-
- Added renderer-level coverage for the
|
|
20
|
+
- Updated integration coverage for explicit foreign-subtree composition and Node and esbuild compatibility.
|
|
21
|
+
- Added renderer-level coverage for the foreign-subtree payload compatibility contract.
|
package/README.md
CHANGED
|
@@ -5,9 +5,11 @@ Integration plugin for [KitaJS](https://kitajs.org/html/) HTML in Ecopages. Use
|
|
|
5
5
|
## Installation
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
bun add @ecopages/kitajs
|
|
8
|
+
bun add @ecopages/kitajs @kitajs/html @kitajs/ts-html-plugin
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
+
`@kitajs/html` and `@kitajs/ts-html-plugin` are required peer dependencies for this package.
|
|
12
|
+
|
|
11
13
|
## Usage
|
|
12
14
|
|
|
13
15
|
Import and register the `kitajsPlugin` in your `eco.config.ts`.
|
|
@@ -28,11 +30,11 @@ export default config;
|
|
|
28
30
|
|
|
29
31
|
- `.kita.tsx` route files.
|
|
30
32
|
- Page, layout, and document shells rendered by `@kitajs/html`.
|
|
31
|
-
- HTML-first outer shells that host nested
|
|
33
|
+
- HTML-first outer shells that host nested foreign subtrees from other integrations.
|
|
32
34
|
|
|
33
35
|
## Mixed Rendering
|
|
34
36
|
|
|
35
|
-
Kita works well as the outer renderer in mixed apps. When a Kita-owned page encounters a nested
|
|
37
|
+
Kita works well as the outer renderer in mixed apps. When a Kita-owned page encounters a nested foreign child from another integration, Ecopages resolves that foreign subtree with its owning renderer and inserts the resulting HTML back into the Kita shell.
|
|
36
38
|
|
|
37
39
|
Important:
|
|
38
40
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ecopages/kitajs",
|
|
3
|
-
"version": "0.2.0-alpha.
|
|
3
|
+
"version": "0.2.0-alpha.27",
|
|
4
4
|
"description": "Kitajs plugin for Ecopages",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ecopages",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"directory": "packages/integrations/kitajs"
|
|
18
18
|
},
|
|
19
19
|
"peerDependencies": {
|
|
20
|
-
"@ecopages/core": "0.2.0-alpha.
|
|
20
|
+
"@ecopages/core": "0.2.0-alpha.27",
|
|
21
21
|
"@kitajs/html": "^4.1.0",
|
|
22
22
|
"@kitajs/ts-html-plugin": "^4.0.1"
|
|
23
23
|
}
|
package/src/kitajs-renderer.d.ts
CHANGED
|
@@ -12,15 +12,11 @@ export declare class KitaRenderer extends IntegrationRenderer<EcoPagesElement> {
|
|
|
12
12
|
name: string;
|
|
13
13
|
private isFunctionComponent;
|
|
14
14
|
/**
|
|
15
|
-
* Renders a Kita
|
|
15
|
+
* Renders a Kita-owned foreign subtree for component-level orchestration.
|
|
16
16
|
*
|
|
17
17
|
* Includes component-scoped dependency assets when declared.
|
|
18
18
|
*/
|
|
19
19
|
renderComponent(input: ComponentRenderInput): Promise<ComponentRenderResult>;
|
|
20
|
-
protected createComponentBoundaryRuntime(options: {
|
|
21
|
-
boundaryInput: ComponentRenderInput;
|
|
22
|
-
rendererCache: Map<string, IntegrationRenderer<any>>;
|
|
23
|
-
}): import("@ecopages/core").ComponentBoundaryRuntime;
|
|
24
20
|
render({ params, query, props, locals, pageLocals, metadata, Page, Layout, HtmlTemplate, }: IntegrationRendererRenderOptions): Promise<RouteRendererBody>;
|
|
25
21
|
renderToResponse<P = Record<string, unknown>>(view: EcoComponent<P>, props: P, ctx: RenderToResponseContext): Promise<Response>;
|
|
26
22
|
}
|
package/src/kitajs-renderer.js
CHANGED
|
@@ -6,7 +6,7 @@ class KitaRenderer extends IntegrationRenderer {
|
|
|
6
6
|
return typeof component === "function";
|
|
7
7
|
}
|
|
8
8
|
/**
|
|
9
|
-
* Renders a Kita
|
|
9
|
+
* Renders a Kita-owned foreign subtree for component-level orchestration.
|
|
10
10
|
*
|
|
11
11
|
* Includes component-scoped dependency assets when declared.
|
|
12
12
|
*/
|
|
@@ -14,13 +14,7 @@ class KitaRenderer extends IntegrationRenderer {
|
|
|
14
14
|
if (!this.isFunctionComponent(input.component)) {
|
|
15
15
|
throw new TypeError("Kita renderer expected a callable component.");
|
|
16
16
|
}
|
|
17
|
-
return this.
|
|
18
|
-
}
|
|
19
|
-
createComponentBoundaryRuntime(options) {
|
|
20
|
-
return this.createQueuedBoundaryRuntime({
|
|
21
|
-
boundaryInput: options.boundaryInput,
|
|
22
|
-
rendererCache: options.rendererCache
|
|
23
|
-
});
|
|
17
|
+
return this.renderStringComponentWithQueuedForeignSubtrees(input, input.component);
|
|
24
18
|
}
|
|
25
19
|
async render({
|
|
26
20
|
params,
|