@foxford/den-preact 0.2.1 → 0.3.1

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,17 +76,54 @@ function Slot({ name }) {
76
76
  }
77
77
 
78
78
  // src/island.tsx
79
+ import { Component } from "preact";
79
80
  import { useEffect, useMemo, useState } from "preact/hooks";
80
81
  import {
81
82
  activateIslandViewModels,
83
+ browserRequestContext,
82
84
  collectDocumentContribution,
83
85
  createIslandContainer,
84
86
  describeIsland,
85
87
  hydrateIslandState,
88
+ islandInputsOf,
86
89
  registerIsland,
90
+ reportIslandError,
87
91
  resolveEagerUnits
88
92
  } from "@foxford/den/island";
89
- import { jsx as jsx3, jsxs as jsxs2 } from "preact/jsx-runtime";
93
+ import { jsx as jsx3 } from "preact/jsx-runtime";
94
+ var failureStyle = {
95
+ background: "#fef2f2",
96
+ border: "1px solid #fca5a5",
97
+ borderRadius: 8,
98
+ color: "#b91c1c",
99
+ fontSize: 14,
100
+ padding: 12
101
+ };
102
+ function FailurePlaque({ name, reason }) {
103
+ const text = reason === "build" ? `\u041E\u0441\u0442\u0440\u043E\u0432 \xAB${name}\xBB \u0443\u043F\u0430\u043B \u043F\u0440\u0438 \u0441\u0431\u043E\u0440\u043A\u0435 \u2014 \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442.` : `\u041E\u0441\u0442\u0440\u043E\u0432 \xAB${name}\xBB \u0443\u043F\u0430\u043B \u2014 \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442.`;
104
+ return /* @__PURE__ */ jsx3("div", { style: failureStyle, children: text });
105
+ }
106
+ var IslandViewErrorBoundary = class extends Component {
107
+ constructor() {
108
+ super(...arguments);
109
+ this.state = { failed: false };
110
+ }
111
+ static getDerivedStateFromError() {
112
+ return { failed: true };
113
+ }
114
+ componentDidCatch(error) {
115
+ reportIslandError(error, { appName: this.props.appName, phase: "render" });
116
+ if (!this.state.failed) {
117
+ this.setState({ failed: true });
118
+ }
119
+ }
120
+ render() {
121
+ if (this.state.failed) {
122
+ return /* @__PURE__ */ jsx3(FailurePlaque, { name: this.props.appName, reason: "render" });
123
+ }
124
+ return this.props.children;
125
+ }
126
+ };
90
127
  function IslandRuntime({
91
128
  descriptor,
92
129
  denState,
@@ -95,7 +132,12 @@ function IslandRuntime({
95
132
  slots
96
133
  }) {
97
134
  var _a;
98
- const [container] = useState(() => createIslandContainer(descriptor));
135
+ const [container] = useState(
136
+ () => createIslandContainer(descriptor, {
137
+ context: browserRequestContext(),
138
+ inputs: islandInputsOf(descriptor, denState)
139
+ })
140
+ );
99
141
  const [seeded, setSeeded] = useState(void 0);
100
142
  if (container !== null && denState !== void 0 && denState !== seeded) {
101
143
  setSeeded(denState);
@@ -126,28 +168,12 @@ function IslandRuntime({
126
168
  }
127
169
  return registerIsland(describeIsland(descriptor, denState));
128
170
  }, [container, descriptor, denState]);
171
+ const appName = (_a = descriptor.name) != null ? _a : "app";
129
172
  if (container === null) {
130
- return /* @__PURE__ */ jsxs2(
131
- "div",
132
- {
133
- style: {
134
- background: "#fef2f2",
135
- border: "1px solid #fca5a5",
136
- borderRadius: 8,
137
- color: "#b91c1c",
138
- fontSize: 14,
139
- padding: 12
140
- },
141
- children: [
142
- "\u041E\u0441\u0442\u0440\u043E\u0432 \xAB",
143
- (_a = descriptor.name) != null ? _a : "app",
144
- "\xBB \u0443\u043F\u0430\u043B \u043F\u0440\u0438 \u0441\u0431\u043E\u0440\u043A\u0435 \u2014 \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442."
145
- ]
146
- }
147
- );
173
+ return /* @__PURE__ */ jsx3(FailurePlaque, { name: appName, reason: "build" });
148
174
  }
149
175
  const View = descriptor.view;
150
- return /* @__PURE__ */ jsx3(ContainerProvider, { value: container, children: /* @__PURE__ */ jsx3(SlotHost, { fills: slots, children: /* @__PURE__ */ jsx3(View, {}) }) });
176
+ return /* @__PURE__ */ jsx3(ContainerProvider, { value: container, children: /* @__PURE__ */ jsx3(SlotHost, { fills: slots, children: /* @__PURE__ */ jsx3(IslandViewErrorBoundary, { appName, children: /* @__PURE__ */ jsx3(View, {}) }) }) });
151
177
  }
152
178
  function createPreactIsland(descriptor) {
153
179
  return function Island(props) {
@@ -87,6 +87,43 @@ function Slot({ name }) {
87
87
 
88
88
 
89
89
 
90
+
91
+
92
+
93
+
94
+ var failureStyle = {
95
+ background: "#fef2f2",
96
+ border: "1px solid #fca5a5",
97
+ borderRadius: 8,
98
+ color: "#b91c1c",
99
+ fontSize: 14,
100
+ padding: 12
101
+ };
102
+ function FailurePlaque({ name, reason }) {
103
+ const text = reason === "build" ? `\u041E\u0441\u0442\u0440\u043E\u0432 \xAB${name}\xBB \u0443\u043F\u0430\u043B \u043F\u0440\u0438 \u0441\u0431\u043E\u0440\u043A\u0435 \u2014 \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442.` : `\u041E\u0441\u0442\u0440\u043E\u0432 \xAB${name}\xBB \u0443\u043F\u0430\u043B \u2014 \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442.`;
104
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "div", { style: failureStyle, children: text });
105
+ }
106
+ var IslandViewErrorBoundary = class extends _preact.Component {
107
+ constructor() {
108
+ super(...arguments);
109
+ this.state = { failed: false };
110
+ }
111
+ static getDerivedStateFromError() {
112
+ return { failed: true };
113
+ }
114
+ componentDidCatch(error) {
115
+ _island.reportIslandError.call(void 0, error, { appName: this.props.appName, phase: "render" });
116
+ if (!this.state.failed) {
117
+ this.setState({ failed: true });
118
+ }
119
+ }
120
+ render() {
121
+ if (this.state.failed) {
122
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FailurePlaque, { name: this.props.appName, reason: "render" });
123
+ }
124
+ return this.props.children;
125
+ }
126
+ };
90
127
  function IslandRuntime({
91
128
  descriptor,
92
129
  denState,
@@ -95,7 +132,12 @@ function IslandRuntime({
95
132
  slots
96
133
  }) {
97
134
  var _a;
98
- const [container] = _hooks.useState.call(void 0, () => _island.createIslandContainer.call(void 0, descriptor));
135
+ const [container] = _hooks.useState.call(void 0,
136
+ () => _island.createIslandContainer.call(void 0, descriptor, {
137
+ context: _island.browserRequestContext.call(void 0, ),
138
+ inputs: _island.islandInputsOf.call(void 0, descriptor, denState)
139
+ })
140
+ );
99
141
  const [seeded, setSeeded] = _hooks.useState.call(void 0, void 0);
100
142
  if (container !== null && denState !== void 0 && denState !== seeded) {
101
143
  setSeeded(denState);
@@ -126,28 +168,12 @@ function IslandRuntime({
126
168
  }
127
169
  return _island.registerIsland.call(void 0, _island.describeIsland.call(void 0, descriptor, denState));
128
170
  }, [container, descriptor, denState]);
171
+ const appName = (_a = descriptor.name) != null ? _a : "app";
129
172
  if (container === null) {
130
- return /* @__PURE__ */ _jsxruntime.jsxs.call(void 0,
131
- "div",
132
- {
133
- style: {
134
- background: "#fef2f2",
135
- border: "1px solid #fca5a5",
136
- borderRadius: 8,
137
- color: "#b91c1c",
138
- fontSize: 14,
139
- padding: 12
140
- },
141
- children: [
142
- "\u041E\u0441\u0442\u0440\u043E\u0432 \xAB",
143
- (_a = descriptor.name) != null ? _a : "app",
144
- "\xBB \u0443\u043F\u0430\u043B \u043F\u0440\u0438 \u0441\u0431\u043E\u0440\u043A\u0435 \u2014 \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430 \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442."
145
- ]
146
- }
147
- );
173
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, FailurePlaque, { name: appName, reason: "build" });
148
174
  }
149
175
  const View = descriptor.view;
150
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ContainerProvider, { value: container, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SlotHost, { fills: slots, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, View, {}) }) });
176
+ return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, ContainerProvider, { value: container, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, SlotHost, { fills: slots, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, IslandViewErrorBoundary, { appName, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, View, {}) }) }) });
151
177
  }
152
178
  function createPreactIsland(descriptor) {
153
179
  return function Island(props) {
package/client.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
2
2
 
3
3
 
4
- var _chunkJ2T5F5Q5cjs = require('./chunk-J2T5F5Q5.cjs');
4
+ var _chunkXKEFCZETcjs = require('./chunk-XKEFCZET.cjs');
5
5
  require('./chunk-P4DSWCF6.cjs');
6
6
 
7
7
  // src/client.ts
@@ -44,26 +44,38 @@ function hydrateApp(descriptor) {
44
44
  mountApp(descriptor);
45
45
  }
46
46
  function mountApp(descriptor) {
47
+ var _a, _b;
48
+ const appName = (_a = descriptor.name) != null ? _a : "app";
47
49
  const node = document.querySelector(`[${ROOT_MARK}="${descriptor.name}"]`);
48
50
  if (node === null) {
49
- logger.error(`\u0443\u0437\u0435\u043B \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \xAB${descriptor.name}\xBB \u0432 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u2014 \u043E\u0436\u0438\u0432\u043B\u044F\u0442\u044C \u043D\u0435\u0447\u0435\u0433\u043E`);
51
+ logger.error(`\u0443\u0437\u0435\u043B \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \xAB${appName}\xBB \u0432 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u2014 \u043E\u0436\u0438\u0432\u043B\u044F\u0442\u044C \u043D\u0435\u0447\u0435\u0433\u043E`);
50
52
  return;
51
53
  }
52
54
  if (hydrated.has(node)) {
53
- logger.warn(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${descriptor.name}\xBB \u0443\u0436\u0435 \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E \u2014 \u0432\u0442\u043E\u0440\u043E\u0439 \u0432\u0445\u043E\u0434 \u043F\u0440\u043E\u043F\u0443\u0449\u0435\u043D`);
55
+ logger.warn(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${appName}\xBB \u0443\u0436\u0435 \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E \u2014 \u0432\u0442\u043E\u0440\u043E\u0439 \u0432\u0445\u043E\u0434 \u043F\u0440\u043E\u043F\u0443\u0449\u0435\u043D`);
54
56
  return;
55
57
  }
56
58
  hydrated.add(node);
57
- _chunkJ2T5F5Q5cjs.installIslandResolver.call(void 0, );
58
- const Island = _chunkJ2T5F5Q5cjs.createPreactIsland.call(void 0, descriptor);
59
+ _chunkXKEFCZETcjs.installIslandResolver.call(void 0, );
60
+ const Island = _chunkXKEFCZETcjs.createPreactIsland.call(void 0, descriptor);
59
61
  const onDocument = (contribution) => {
60
62
  _island.publishIslandDocument.call(void 0, node, contribution);
61
63
  };
62
- _preact.hydrate.call(void 0, _preact.h.call(void 0, Island, { denState: readState(descriptor.name), onDocument, route: currentRoute() }), node);
63
- logger.info(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${descriptor.name}\xBB \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E`);
64
+ try {
65
+ _preact.hydrate.call(void 0, _preact.h.call(void 0, Island, { denState: readState((_b = descriptor.name) != null ? _b : ""), onDocument, route: currentRoute() }), node);
66
+ logger.info(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${appName}\xBB \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E`);
67
+ } catch (error) {
68
+ _island.reportIslandError.call(void 0, error, { appName, phase: "hydrate" });
69
+ throw error;
70
+ }
64
71
  _island.onIslandNavigate.call(void 0, node, (route) => {
65
- logger.debug(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${descriptor.name}\xBB: \u043F\u0435\u0440\u0435\u0445\u043E\u0434 \u043D\u0430 \xAB${route.pathname}\xBB`);
66
- _preact.render.call(void 0, _preact.h.call(void 0, Island, { onDocument, route }), node);
72
+ logger.debug(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${appName}\xBB: \u043F\u0435\u0440\u0435\u0445\u043E\u0434 \u043D\u0430 \xAB${route.pathname}\xBB`);
73
+ try {
74
+ _preact.render.call(void 0, _preact.h.call(void 0, Island, { onDocument, route }), node);
75
+ } catch (error) {
76
+ _island.reportIslandError.call(void 0, error, { appName, phase: "navigate" });
77
+ throw error;
78
+ }
67
79
  });
68
80
  }
69
81
 
package/client.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  createPreactIsland,
3
3
  installIslandResolver
4
- } from "./chunk-MBFQZ6VG.js";
4
+ } from "./chunk-SAZL2GWD.js";
5
5
  import "./chunk-5JBD5THX.js";
6
6
 
7
7
  // src/client.ts
8
8
  import { h, hydrate, render } from "preact";
9
- import { onIslandNavigate, publishIslandDocument } from "@foxford/den/island";
9
+ import { onIslandNavigate, publishIslandDocument, reportIslandError } from "@foxford/den/island";
10
10
  import { log } from "@foxford/logger";
11
11
  var logger = log.getLogger("den-preact").getLogger("client");
12
12
  var ROOT_MARK = "data-den-root";
@@ -42,13 +42,15 @@ function hydrateApp(descriptor) {
42
42
  mountApp(descriptor);
43
43
  }
44
44
  function mountApp(descriptor) {
45
+ var _a, _b;
46
+ const appName = (_a = descriptor.name) != null ? _a : "app";
45
47
  const node = document.querySelector(`[${ROOT_MARK}="${descriptor.name}"]`);
46
48
  if (node === null) {
47
- logger.error(`\u0443\u0437\u0435\u043B \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \xAB${descriptor.name}\xBB \u0432 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u2014 \u043E\u0436\u0438\u0432\u043B\u044F\u0442\u044C \u043D\u0435\u0447\u0435\u0433\u043E`);
49
+ logger.error(`\u0443\u0437\u0435\u043B \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u044F \xAB${appName}\xBB \u0432 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u2014 \u043E\u0436\u0438\u0432\u043B\u044F\u0442\u044C \u043D\u0435\u0447\u0435\u0433\u043E`);
48
50
  return;
49
51
  }
50
52
  if (hydrated.has(node)) {
51
- logger.warn(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${descriptor.name}\xBB \u0443\u0436\u0435 \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E \u2014 \u0432\u0442\u043E\u0440\u043E\u0439 \u0432\u0445\u043E\u0434 \u043F\u0440\u043E\u043F\u0443\u0449\u0435\u043D`);
53
+ logger.warn(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${appName}\xBB \u0443\u0436\u0435 \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E \u2014 \u0432\u0442\u043E\u0440\u043E\u0439 \u0432\u0445\u043E\u0434 \u043F\u0440\u043E\u043F\u0443\u0449\u0435\u043D`);
52
54
  return;
53
55
  }
54
56
  hydrated.add(node);
@@ -57,11 +59,21 @@ function mountApp(descriptor) {
57
59
  const onDocument = (contribution) => {
58
60
  publishIslandDocument(node, contribution);
59
61
  };
60
- hydrate(h(Island, { denState: readState(descriptor.name), onDocument, route: currentRoute() }), node);
61
- logger.info(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${descriptor.name}\xBB \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E`);
62
+ try {
63
+ hydrate(h(Island, { denState: readState((_b = descriptor.name) != null ? _b : ""), onDocument, route: currentRoute() }), node);
64
+ logger.info(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${appName}\xBB \u043E\u0436\u0438\u0432\u043B\u0435\u043D\u043E`);
65
+ } catch (error) {
66
+ reportIslandError(error, { appName, phase: "hydrate" });
67
+ throw error;
68
+ }
62
69
  onIslandNavigate(node, (route) => {
63
- logger.debug(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${descriptor.name}\xBB: \u043F\u0435\u0440\u0435\u0445\u043E\u0434 \u043D\u0430 \xAB${route.pathname}\xBB`);
64
- render(h(Island, { onDocument, route }), node);
70
+ logger.debug(`\u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \xAB${appName}\xBB: \u043F\u0435\u0440\u0435\u0445\u043E\u0434 \u043D\u0430 \xAB${route.pathname}\xBB`);
71
+ try {
72
+ render(h(Island, { onDocument, route }), node);
73
+ } catch (error) {
74
+ reportIslandError(error, { appName, phase: "navigate" });
75
+ throw error;
76
+ }
65
77
  });
66
78
  }
67
79
  export {
package/index.cjs CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
 
7
7
 
8
- var _chunkJ2T5F5Q5cjs = require('./chunk-J2T5F5Q5.cjs');
8
+ var _chunkXKEFCZETcjs = require('./chunk-XKEFCZET.cjs');
9
9
  require('./chunk-P4DSWCF6.cjs');
10
10
 
11
11
  // src/render-island.tsx
@@ -13,7 +13,7 @@ var _preactrendertostring = require('preact-render-to-string');
13
13
  var _jsxruntime = require('preact/jsx-runtime');
14
14
  function renderPreactIsland(descriptor, { container, slots }) {
15
15
  const View = descriptor.view;
16
- const tree = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2T5F5Q5cjs.ContainerProvider, { value: container, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkJ2T5F5Q5cjs.SlotHost, { fills: slots, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, View, {}) }) });
16
+ const tree = /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXKEFCZETcjs.ContainerProvider, { value: container, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkXKEFCZETcjs.SlotHost, { fills: slots, children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, View, {}) }) });
17
17
  const serverRender = descriptor.serverRender;
18
18
  if (serverRender) {
19
19
  return serverRender(tree, (node) => _preactrendertostring.renderToString.call(void 0, node));
@@ -30,8 +30,8 @@ function renderIslandOnClient() {
30
30
  }
31
31
  function preactAdapter() {
32
32
  return {
33
- createIsland: _chunkJ2T5F5Q5cjs.createPreactIsland,
34
- installResolver: _chunkJ2T5F5Q5cjs.installIslandResolver,
33
+ createIsland: _chunkXKEFCZETcjs.createPreactIsland,
34
+ installResolver: _chunkXKEFCZETcjs.installIslandResolver,
35
35
  renderIsland: CLIENT_BUNDLE ? renderIslandOnClient : renderPreactIsland,
36
36
  type: "preact"
37
37
  };
@@ -44,4 +44,4 @@ function preactAdapter() {
44
44
 
45
45
 
46
46
 
47
- exports.ContainerProvider = _chunkJ2T5F5Q5cjs.ContainerProvider; exports.Slot = _chunkJ2T5F5Q5cjs.Slot; exports.SlotHost = _chunkJ2T5F5Q5cjs.SlotHost; exports.createPreactIsland = _chunkJ2T5F5Q5cjs.createPreactIsland; exports.installIslandResolver = _chunkJ2T5F5Q5cjs.installIslandResolver; exports.preactAdapter = preactAdapter; exports.useContainer = _chunkJ2T5F5Q5cjs.useContainer;
47
+ exports.ContainerProvider = _chunkXKEFCZETcjs.ContainerProvider; exports.Slot = _chunkXKEFCZETcjs.Slot; exports.SlotHost = _chunkXKEFCZETcjs.SlotHost; exports.createPreactIsland = _chunkXKEFCZETcjs.createPreactIsland; exports.installIslandResolver = _chunkXKEFCZETcjs.installIslandResolver; exports.preactAdapter = preactAdapter; exports.useContainer = _chunkXKEFCZETcjs.useContainer;
package/index.js CHANGED
@@ -5,7 +5,7 @@ import {
5
5
  createPreactIsland,
6
6
  installIslandResolver,
7
7
  useContainer
8
- } from "./chunk-MBFQZ6VG.js";
8
+ } from "./chunk-SAZL2GWD.js";
9
9
  import "./chunk-5JBD5THX.js";
10
10
 
11
11
  // src/render-island.tsx
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@foxford/den-preact",
3
- "version": "0.2.1",
3
+ "version": "0.3.1",
4
4
  "description": "Den Preact view adapter — остров, серверная отрисовка, слоты, пресет сборки",
5
5
  "keywords": [
6
6
  "foxford",
@@ -8,6 +8,13 @@
8
8
  "preact",
9
9
  "view"
10
10
  ],
11
+ "homepage": "https://github.com/foxford/frontend-platform",
12
+ "bugs": "https://github.com/foxford/frontend-platform/issues",
13
+ "repository": {
14
+ "type": "git",
15
+ "url": "git+https://github.com/foxford/frontend-platform.git",
16
+ "directory": "packages/den-preact"
17
+ },
11
18
  "license": "MIT",
12
19
  "author": "Foxford Co",
13
20
  "maintainers": [
@@ -19,7 +26,7 @@
19
26
  ],
20
27
  "type": "module",
21
28
  "dependencies": {
22
- "@foxford/den": "^3.2.2",
29
+ "@foxford/den": "^3.4.0",
23
30
  "@foxford/logger": "^1.2.2"
24
31
  },
25
32
  "peerDependencies": {
@@ -59,9 +66,9 @@
59
66
  "files": [
60
67
  "README.mdx",
61
68
  "chunk-5JBD5THX.js",
62
- "chunk-J2T5F5Q5.cjs",
63
- "chunk-MBFQZ6VG.js",
64
69
  "chunk-P4DSWCF6.cjs",
70
+ "chunk-SAZL2GWD.js",
71
+ "chunk-XKEFCZET.cjs",
65
72
  "client.cjs",
66
73
  "client.d.cts",
67
74
  "client.d.ts",
@@ -80,6 +87,6 @@
80
87
  "use-sync-external-store.d.ts",
81
88
  "use-sync-external-store.js"
82
89
  ],
83
- "sha": "75de40c",
90
+ "sha": "7da7d38",
84
91
  "scripts": {}
85
92
  }