@web-widget/react 0.5.7 → 0.7.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.
@@ -45,11 +45,25 @@ type JSONValue = string | number | boolean | {
45
45
  type JSONProps = {
46
46
  [x: string]: JSONValue;
47
47
  };
48
- interface DefineReactRenderOptions {
48
+ interface CreateReactRenderOptions {
49
49
  onPrefetchData?: (context: RenderContext, component: Component, props: ComponentProps) => Promise<JSONProps>;
50
50
  }
51
51
 
52
- declare const defineReactRender: ({ onPrefetchData, }?: DefineReactRenderOptions) => (context: _web_widget_schema.ClientWidgetRenderContext<unknown> | _web_widget_schema.ClientRouteRenderContext<unknown, Record<string, string>>, renderOptions: any) => Promise<void | {
52
+ declare const createReactRender: ({ onPrefetchData, }?: CreateReactRenderOptions) => (context: _web_widget_schema.ClientWidgetRenderContext<unknown> | _web_widget_schema.ClientRouteRenderContext<unknown, Record<string, string>>, renderOptions: any) => Promise<void | {
53
+ mount?: (() => void | Promise<void>) | undefined;
54
+ unmount?: (() => void | Promise<void>) | undefined;
55
+ update?: (({ data }: {
56
+ data: Record<string, any>;
57
+ }) => void | Promise<void>) | undefined;
58
+ } | {
59
+ mount?: (() => void | Promise<void>) | undefined;
60
+ unmount?: (() => void | Promise<void>) | undefined;
61
+ update?: (({ data }: {
62
+ data: Record<string, any>;
63
+ }) => void | Promise<void>) | undefined;
64
+ }>;
65
+ /**@deprecated Please use `createReactRender` instead.*/
66
+ declare const defineReactRender: ({ onPrefetchData, }?: CreateReactRenderOptions) => (context: _web_widget_schema.ClientWidgetRenderContext<unknown> | _web_widget_schema.ClientRouteRenderContext<unknown, Record<string, string>>, renderOptions: any) => Promise<void | {
53
67
  mount?: (() => void | Promise<void>) | undefined;
54
68
  unmount?: (() => void | Promise<void>) | undefined;
55
69
  update?: (({ data }: {
@@ -76,4 +90,4 @@ declare const render: (context: _web_widget_schema.ClientWidgetRenderContext<unk
76
90
  }) => void | Promise<void>) | undefined;
77
91
  }>;
78
92
 
79
- export { DefineWebWidgetOptions, WebWidget, WebWidgetProps, WebWidgetSuspenseProps, __ENV__, defineReactRender, defineWebWidget, render };
93
+ export { DefineWebWidgetOptions, WebWidget, WebWidgetProps, WebWidgetSuspenseProps, __ENV__, createReactRender, defineReactRender, defineWebWidget, render };
@@ -116,7 +116,7 @@ export * from "@web-widget/schema/client-helpers";
116
116
  Reflect.defineProperty(__ENV__, "server", {
117
117
  value: false
118
118
  });
119
- var defineReactRender = ({
119
+ var createReactRender = ({
120
120
  onPrefetchData
121
121
  } = {}) => {
122
122
  return defineRender(async (context) => {
@@ -156,10 +156,12 @@ var defineReactRender = ({
156
156
  };
157
157
  });
158
158
  };
159
- var render = defineReactRender();
159
+ var defineReactRender = createReactRender;
160
+ var render = createReactRender();
160
161
  export {
161
162
  WebWidget,
162
163
  __ENV__,
164
+ createReactRender,
163
165
  defineReactRender,
164
166
  defineWebWidget,
165
167
  render
@@ -46,7 +46,7 @@ type JSONValue = string | number | boolean | {
46
46
  type JSONProps = {
47
47
  [x: string]: JSONValue;
48
48
  };
49
- interface DefineReactRenderOptions {
49
+ interface CreateReactRenderOptions {
50
50
  onPrefetchData?: (context: RenderContext, component: Component, props: ComponentProps) => Promise<JSONProps>;
51
51
  }
52
52
 
@@ -55,7 +55,9 @@ interface ReactRenderOptions {
55
55
  awaitAllReady?: boolean;
56
56
  } & RenderToReadableStreamOptions;
57
57
  }
58
- declare const defineReactRender: ({ onPrefetchData, }?: DefineReactRenderOptions) => (context: _web_widget_schema.ServerWidgetRenderContext<unknown> | _web_widget_schema.ServerRouteRenderContext<unknown, Record<string, string>>, renderOptions: ResponseInit & ReactRenderOptions) => Promise<string | ReadableStream<any> | ReadableStream<any>>;
58
+ declare const createReactRender: ({ onPrefetchData, }?: CreateReactRenderOptions) => (context: _web_widget_schema.ServerWidgetRenderContext<unknown> | _web_widget_schema.ServerRouteRenderContext<unknown, Record<string, string>>, renderOptions: ResponseInit & ReactRenderOptions) => Promise<string | ReadableStream<any> | ReadableStream<any>>;
59
+ /**@deprecated Please use `createReactRender` instead.*/
60
+ declare const defineReactRender: ({ onPrefetchData, }?: CreateReactRenderOptions) => (context: _web_widget_schema.ServerWidgetRenderContext<unknown> | _web_widget_schema.ServerRouteRenderContext<unknown, Record<string, string>>, renderOptions: ResponseInit & ReactRenderOptions) => Promise<string | ReadableStream<any> | ReadableStream<any>>;
59
61
  declare const render: (context: _web_widget_schema.ServerWidgetRenderContext<unknown> | _web_widget_schema.ServerRouteRenderContext<unknown, Record<string, string>>, renderOptions: ResponseInit & ReactRenderOptions) => Promise<string | ReadableStream<any> | ReadableStream<any>>;
60
62
 
61
- export { DefineWebWidgetOptions, ReactRenderOptions, WebWidget, WebWidgetProps, WebWidgetSuspenseProps, __ENV__, defineReactRender, defineWebWidget, render };
63
+ export { DefineWebWidgetOptions, ReactRenderOptions, WebWidget, WebWidgetProps, WebWidgetSuspenseProps, __ENV__, createReactRender, defineReactRender, defineWebWidget, render };
@@ -129,7 +129,7 @@ function htmlEscapeJsonString(str) {
129
129
  function renderToReadableStream2(vNode, renderOptions) {
130
130
  return ReactDOMServer.renderToReadableStream(vNode, renderOptions);
131
131
  }
132
- var defineReactRender = ({
132
+ var createReactRender = ({
133
133
  onPrefetchData
134
134
  } = {}) => {
135
135
  return defineRender(
@@ -164,10 +164,12 @@ var defineReactRender = ({
164
164
  }
165
165
  );
166
166
  };
167
- var render = defineReactRender();
167
+ var defineReactRender = createReactRender;
168
+ var render = createReactRender();
168
169
  export {
169
170
  WebWidget,
170
171
  __ENV__,
172
+ createReactRender,
171
173
  defineReactRender,
172
174
  defineWebWidget,
173
175
  render
package/globals.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { ReactNode, ComponentProps } from "react";
1
+ /// <reference types="react" />
2
2
 
3
3
  interface WebWidgetSuspenseProps {
4
4
  fallback?: ReactNode;
@@ -7,28 +7,37 @@ interface WebWidgetSuspenseProps {
7
7
  experimental_renderTarget?: "light" | "shadow";
8
8
  }
9
9
 
10
- declare global {
11
- declare namespace JSX {
12
- interface IntrinsicAttributes extends WebWidgetSuspenseProps {
13
- key?: Key | null | undefined;
14
- }
15
- }
16
- }
17
-
18
- interface ReactWidgetComponent extends ComponentProps<any> {
10
+ interface ReactWidgetComponent<T = unknown> extends ComponentProps<any> {
19
11
  (
20
12
  props: {
21
13
  children?: ReactNode;
22
- } & WebWidgetSuspenseProps
14
+ } & WebWidgetSuspenseProps &
15
+ T
23
16
  ): ReactNode;
24
17
  }
25
18
 
19
+ declare namespace JSX {
20
+ interface IntrinsicAttributes extends WebWidgetSuspenseProps {
21
+ key?: Key | null | undefined;
22
+ }
23
+ }
24
+
26
25
  declare module "*.widget.jsx" {
27
26
  const reactWidgetComponent: ReactWidgetComponent;
28
27
  export default reactWidgetComponent;
29
28
  }
30
29
 
31
- declare module "*.route.tsx" {
30
+ declare module "*.widget.tsx" {
32
31
  const reactWidgetComponent: ReactWidgetComponent;
33
32
  export default reactWidgetComponent;
34
33
  }
34
+
35
+ declare module "*?as=jsx" {
36
+ const reactWidgetComponent: ReactWidgetComponent<any>;
37
+ export default reactWidgetComponent;
38
+ }
39
+
40
+ declare module "*?as=tsx" {
41
+ const reactWidgetComponent: ReactWidgetComponent<any>;
42
+ export default reactWidgetComponent;
43
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@web-widget/react",
3
- "version": "0.5.7",
3
+ "version": "0.7.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -22,14 +22,16 @@
22
22
  "require": "./dist/vite.cjs",
23
23
  "default": "./dist/vite.js"
24
24
  },
25
- "./globals": "./globals.d.ts"
25
+ "./globals": {
26
+ "types": "./globals.d.ts"
27
+ }
26
28
  },
27
29
  "files": [
28
30
  "dist",
29
31
  "globals.d.ts"
30
32
  ],
31
33
  "dependencies": {
32
- "@web-widget/vite": "2.5.2",
34
+ "@web-widget/vite": "2.5.3",
33
35
  "@web-widget/schema": "0.3.0",
34
36
  "@web-widget/web-widget": "1.3.2"
35
37
  },