@web-widget/react 1.42.0 → 1.43.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.
@@ -21,14 +21,7 @@ interface WebWidgetProps {
21
21
  renderStage?: WebWidgetRendererOptions['renderStage'];
22
22
  renderTarget?: WebWidgetRendererOptions['renderTarget'];
23
23
  }
24
- interface DefineWebWidgetOptions {
25
- base?: WebWidgetRendererOptions['base'];
26
- import?: WebWidgetRendererOptions['import'];
27
- loading?: WebWidgetRendererOptions['loading'];
28
- name?: WebWidgetRendererOptions['name'];
29
- renderStage?: WebWidgetRendererOptions['renderStage'];
30
- renderTarget?: WebWidgetRendererOptions['renderTarget'];
31
- }
24
+ type DefineWebWidgetOptions = Partial<Pick<WebWidgetRendererOptions, 'base' | 'import' | 'loading' | 'name' | 'renderStage' | 'renderTarget'>>;
32
25
  interface WebWidgetSuspenseProps {
33
26
  children?: ReactNode;
34
27
  fallback?: ReactNode;
@@ -40,7 +40,6 @@ import { useWidgetSyncState } from "@web-widget/helpers/state";
40
40
  // src/components.ts
41
41
  import { WebWidgetRenderer } from "@web-widget/web-widget";
42
42
  import { Suspense, createElement, use } from "react";
43
- import { IS_CLIENT } from "@web-widget/helpers/env";
44
43
  var renderWebWidget = function(_a) {
45
44
  var _b = _a, {
46
45
  children,
@@ -69,12 +68,13 @@ var renderWebWidget = function(_a) {
69
68
  };
70
69
  };
71
70
  function WebWidget({ localName, attributes, innerHTML }) {
72
- if (IS_CLIENT) {
73
- }
71
+ const html = use(innerHTML);
74
72
  return createElement(localName, __spreadProps(__spreadValues({}, attributes), {
75
- dangerouslySetInnerHTML: {
76
- __html: use(innerHTML)
77
- }
73
+ dangerouslySetInnerHTML: { __html: html },
74
+ // NOTE: Since the innerHTML property of a widget
75
+ // will inevitably differ between the server and the client,
76
+ // this turns off hydration mismatch warnings.
77
+ suppressHydrationWarning: true
78
78
  }));
79
79
  }
80
80
  function defineWebWidget(loader, options) {
@@ -22,14 +22,7 @@ interface WebWidgetProps {
22
22
  renderStage?: WebWidgetRendererOptions['renderStage'];
23
23
  renderTarget?: WebWidgetRendererOptions['renderTarget'];
24
24
  }
25
- interface DefineWebWidgetOptions {
26
- base?: WebWidgetRendererOptions['base'];
27
- import?: WebWidgetRendererOptions['import'];
28
- loading?: WebWidgetRendererOptions['loading'];
29
- name?: WebWidgetRendererOptions['name'];
30
- renderStage?: WebWidgetRendererOptions['renderStage'];
31
- renderTarget?: WebWidgetRendererOptions['renderTarget'];
32
- }
25
+ type DefineWebWidgetOptions = Partial<Pick<WebWidgetRendererOptions, 'base' | 'import' | 'loading' | 'name' | 'renderStage' | 'renderTarget'>>;
33
26
  interface WebWidgetSuspenseProps {
34
27
  children?: ReactNode;
35
28
  fallback?: ReactNode;
@@ -43,7 +43,6 @@ import { useWidgetSyncState } from "@web-widget/helpers/state";
43
43
  // src/components.ts
44
44
  import { WebWidgetRenderer } from "@web-widget/web-widget";
45
45
  import { Suspense, createElement, use } from "react";
46
- import { IS_CLIENT } from "@web-widget/helpers/env";
47
46
  var renderWebWidget = function(_a) {
48
47
  var _b = _a, {
49
48
  children,
@@ -72,12 +71,13 @@ var renderWebWidget = function(_a) {
72
71
  };
73
72
  };
74
73
  function WebWidget({ localName, attributes, innerHTML }) {
75
- if (IS_CLIENT) {
76
- }
74
+ const html = use(innerHTML);
77
75
  return createElement(localName, __spreadProps(__spreadValues({}, attributes), {
78
- dangerouslySetInnerHTML: {
79
- __html: use(innerHTML)
80
- }
76
+ dangerouslySetInnerHTML: { __html: html },
77
+ // NOTE: Since the innerHTML property of a widget
78
+ // will inevitably differ between the server and the client,
79
+ // this turns off hydration mismatch warnings.
80
+ suppressHydrationWarning: true
81
81
  }));
82
82
  }
83
83
  function defineWebWidget(loader, options) {
package/dist/vite.cjs CHANGED
@@ -46,9 +46,11 @@ function reactWebWidgetPlugin(options) {
46
46
  const {
47
47
  provide = "@web-widget/react",
48
48
  export: exportWidget = {},
49
- import: importWidget = {}
49
+ import: importWidget = {},
50
+ manifest
50
51
  } = options != null ? options : {};
51
52
  return (0, import_vite_plugin.webWidgetPlugin)({
53
+ manifest,
52
54
  provide,
53
55
  export: __spreadValues({
54
56
  include: /(?:\.|@)(?:route|widget)\.(?:tsx|jsx)(?:\?.*)?$/
package/dist/vite.js CHANGED
@@ -25,9 +25,11 @@ function reactWebWidgetPlugin(options) {
25
25
  const {
26
26
  provide = "@web-widget/react",
27
27
  export: exportWidget = {},
28
- import: importWidget = {}
28
+ import: importWidget = {},
29
+ manifest
29
30
  } = options != null ? options : {};
30
31
  return webWidgetPlugin({
32
+ manifest,
31
33
  provide,
32
34
  export: __spreadValues({
33
35
  include: /(?:\.|@)(?:route|widget)\.(?:tsx|jsx)(?:\?.*)?$/
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@web-widget/react",
3
3
  "description": "React adapter",
4
- "version": "1.42.0",
4
+ "version": "1.43.0",
5
5
  "homepage": "https://github.com/web-widget/web-widget#readme",
6
6
  "repository": {
7
7
  "type": "git",
@@ -13,10 +13,10 @@
13
13
  },
14
14
  "license": "MIT",
15
15
  "dependencies": {
16
- "@web-widget/helpers": "1.42.0",
17
- "@web-widget/vite-plugin": "1.42.0",
18
- "@web-widget/web-widget": "1.42.0",
19
- "@web-widget/schema": "1.42.0"
16
+ "@web-widget/schema": "1.43.0",
17
+ "@web-widget/vite-plugin": "1.43.0",
18
+ "@web-widget/web-widget": "1.43.0",
19
+ "@web-widget/helpers": "1.43.0"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@types/react": "npm:types-react@rc",
@@ -26,7 +26,7 @@
26
26
  "tsup": "^8.2.4",
27
27
  "typescript": "^5.5.4",
28
28
  "vite": "^5.4.0",
29
- "@web-widget/schema": "1.42.0"
29
+ "@web-widget/schema": "1.43.0"
30
30
  },
31
31
  "exports": {
32
32
  ".": {