@web-widget/react 0.0.10 → 0.0.13

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.
@@ -76,6 +76,7 @@ function WebWidget(_a) {
76
76
  }
77
77
  function defineWebWidget(loader, options) {
78
78
  options.renderTarget = "light";
79
+ options.loading = "lazy";
79
80
  return function WebWidgetSuspense(_a) {
80
81
  var _b = _a, {
81
82
  children,
@@ -122,7 +123,7 @@ var defineReactRender = ({
122
123
  ) : null;
123
124
  const stateContent = context.recovering && state ? JSON.parse(state.textContent) : onPrefetchData ? await onPrefetchData(context, component, props) : void 0;
124
125
  state == null ? void 0 : state.remove();
125
- const mergedProps = stateContent ? Object.assign({}, stateContent, props) : props;
126
+ const mergedProps = stateContent ? Object.assign(stateContent, props) : props;
126
127
  let vNode;
127
128
  if (typeof component === "function" && component.constructor.name === "AsyncFunction") {
128
129
  vNode = await component(mergedProps);
@@ -76,6 +76,7 @@ function WebWidget(_a) {
76
76
  }
77
77
  function defineWebWidget(loader, options) {
78
78
  options.renderTarget = "light";
79
+ options.loading = "lazy";
79
80
  return function WebWidgetSuspense(_a) {
80
81
  var _b = _a, {
81
82
  children,
package/dist/vite.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ import { Plugin } from 'vite';
2
+ import { WebWidgetPluginOptions } from '@web-widget/vite';
3
+
4
+ interface ReactWebWidgetPluginOptions extends WebWidgetPluginOptions {
5
+ }
6
+ declare function reactWebWidgetPlugin({ provide, toWebWidgets, toComponents, }?: ReactWebWidgetPluginOptions): Plugin[];
7
+
8
+ export { ReactWebWidgetPluginOptions, reactWebWidgetPlugin as default };
package/dist/vite.js ADDED
@@ -0,0 +1,26 @@
1
+ // src/vite.ts
2
+ import { webWidgetPlugin } from "@web-widget/vite";
3
+ function reactWebWidgetPlugin({
4
+ provide = "@web-widget/react",
5
+ toWebWidgets = {
6
+ include: [
7
+ "routes/**/*.tsx",
8
+ "widgets/**/*.tsx",
9
+ "**/*.route.tsx",
10
+ "**/*.widget.tsx"
11
+ ]
12
+ },
13
+ toComponents = {
14
+ include: ["widgets/**/*", "*.widget.*"],
15
+ includeImporter: ["**/*.tsx"]
16
+ }
17
+ } = {}) {
18
+ return webWidgetPlugin({
19
+ provide,
20
+ toWebWidgets,
21
+ toComponents
22
+ });
23
+ }
24
+ export {
25
+ reactWebWidgetPlugin as default
26
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@web-widget/react",
3
- "version": "0.0.10",
3
+ "version": "0.0.13",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -17,6 +17,10 @@
17
17
  "default": "./dist/react.server.js"
18
18
  }
19
19
  },
20
+ "./vite": {
21
+ "types": "./dist/vite.d.ts",
22
+ "default": "./dist/vite.js"
23
+ },
20
24
  "./globals": "./globals.d.ts"
21
25
  },
22
26
  "files": [
@@ -24,20 +28,11 @@
24
28
  "globals.d.ts"
25
29
  ],
26
30
  "dependencies": {
27
- "@babel/core": "^7.22.5",
28
- "@babel/helper-module-imports": "^7.22.5",
29
- "@babel/helper-plugin-utils": "^7.22.5",
30
- "@babel/traverse": "^7.22.5",
31
- "@web-widget/html": "0.0.4",
32
- "@web-widget/schema": "0.0.9",
33
- "@web-widget/web-widget": "1.0.0-alpha.8"
31
+ "@web-widget/vite": "0.6.0",
32
+ "@web-widget/schema": "0.0.10",
33
+ "@web-widget/web-widget": "1.0.0-alpha.10"
34
34
  },
35
35
  "devDependencies": {
36
- "@types/babel__core": "^7.20.1",
37
- "@types/babel__helper-module-imports": "^7.18.0",
38
- "@types/babel__helper-plugin-utils": "^7.10.0",
39
- "@types/babel__traverse": "^7.20.1",
40
- "@types/node": "^20.3.1",
41
36
  "@types/react": "^18.2.9",
42
37
  "@types/react-dom": "^18.0.6",
43
38
  "tsup": "^7.0.0",
@@ -45,7 +40,6 @@
45
40
  "vite": "^4.4.9"
46
41
  },
47
42
  "peerDependencies": {
48
- "@vitejs/plugin-react": "^4.0.2",
49
43
  "react": "^18.2.0",
50
44
  "react-dom": "^18.2.0"
51
45
  },
@@ -1,77 +0,0 @@
1
- import * as _web_widget_schema from '@web-widget/schema';
2
- import { RenderContext, ComponentProps } from '@web-widget/schema';
3
- import * as react from 'react';
4
- import { ReactNode, Component } from 'react';
5
- export * from '@web-widget/schema/client-helpers';
6
- import { WebWidgetContainerOptions, Loader } from '@web-widget/web-widget';
7
-
8
- declare const __ENV__: {
9
- server: boolean;
10
- };
11
- interface WebWidgetProps {
12
- base?: WebWidgetContainerOptions["base"];
13
- children?: ReactNode;
14
- data?: WebWidgetContainerOptions["data"];
15
- import?: WebWidgetContainerOptions["import"];
16
- inactive?: WebWidgetContainerOptions["inactive"];
17
- loader: Loader;
18
- meta?: WebWidgetContainerOptions["meta"];
19
- loading?: WebWidgetContainerOptions["loading"];
20
- name?: WebWidgetContainerOptions["name"];
21
- renderStage?: WebWidgetContainerOptions["renderStage"];
22
- renderTarget?: WebWidgetContainerOptions["renderTarget"];
23
- }
24
- declare function WebWidget({ children, loader, ...props }: WebWidgetProps): react.FunctionComponentElement<any>;
25
- interface DefineWebWidgetOptions {
26
- base?: WebWidgetContainerOptions["base"];
27
- import?: WebWidgetContainerOptions["import"];
28
- loading?: WebWidgetContainerOptions["loading"];
29
- name?: WebWidgetContainerOptions["name"];
30
- renderStage?: WebWidgetContainerOptions["renderStage"];
31
- renderTarget?: WebWidgetContainerOptions["renderTarget"];
32
- }
33
- interface WebWidgetSuspenseProps {
34
- children?: ReactNode;
35
- fallback?: ReactNode;
36
- renderStage?: WebWidgetContainerOptions["renderStage"];
37
- }
38
- declare function defineWebWidget(loader: Loader, options: DefineWebWidgetOptions): ({ children, fallback, renderStage, ...data }: WebWidgetSuspenseProps) => react.FunctionComponentElement<react.SuspenseProps>;
39
-
40
- type JSONValue = string | number | boolean | {
41
- [x: string]: JSONValue;
42
- } | Array<JSONValue>;
43
- type JSONProps = {
44
- [x: string]: JSONValue;
45
- };
46
- interface DefineVueRenderOptions {
47
- onPrefetchData?: (context: RenderContext, component: Component, props: ComponentProps) => Promise<JSONProps>;
48
- }
49
-
50
- declare const defineReactRender: ({ onPrefetchData, }?: DefineVueRenderOptions) => (context: _web_widget_schema.ClientWidgetRenderContext<unknown> | _web_widget_schema.ClientRouteRenderContext<unknown, Record<string, string>>) => Promise<void | {
51
- mount?: (() => void | Promise<void>) | undefined;
52
- unmount?: (() => void | Promise<void>) | undefined;
53
- update?: (({ data }: {
54
- data: Record<string, any>;
55
- }) => void | Promise<void>) | undefined;
56
- } | {
57
- mount?: (() => void | Promise<void>) | undefined;
58
- unmount?: (() => void | Promise<void>) | undefined;
59
- update?: (({ data }: {
60
- data: Record<string, any>;
61
- }) => void | Promise<void>) | undefined;
62
- }>;
63
- declare const render: (context: _web_widget_schema.ClientWidgetRenderContext<unknown> | _web_widget_schema.ClientRouteRenderContext<unknown, Record<string, string>>) => Promise<void | {
64
- mount?: (() => void | Promise<void>) | undefined;
65
- unmount?: (() => void | Promise<void>) | undefined;
66
- update?: (({ data }: {
67
- data: Record<string, any>;
68
- }) => void | Promise<void>) | undefined;
69
- } | {
70
- mount?: (() => void | Promise<void>) | undefined;
71
- unmount?: (() => void | Promise<void>) | undefined;
72
- update?: (({ data }: {
73
- data: Record<string, any>;
74
- }) => void | Promise<void>) | undefined;
75
- }>;
76
-
77
- export { DefineWebWidgetOptions, WebWidget, WebWidgetProps, WebWidgetSuspenseProps, __ENV__, defineReactRender, defineWebWidget, render };