@valbuild/next 0.60.5 → 0.60.6

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.
@@ -29,7 +29,7 @@ function useValStega(selector) {
29
29
  return stega.stegaEncode(selector, {
30
30
  disabled: !enabled,
31
31
  getModule: function getModule(moduleId) {
32
- if (moduleMap) {
32
+ if (moduleMap && enabled) {
33
33
  return moduleMap[moduleId];
34
34
  }
35
35
  }
@@ -29,7 +29,7 @@ function useValStega(selector) {
29
29
  return stega.stegaEncode(selector, {
30
30
  disabled: !enabled,
31
31
  getModule: function getModule(moduleId) {
32
- if (moduleMap) {
32
+ if (moduleMap && enabled) {
33
33
  return moduleMap[moduleId];
34
34
  }
35
35
  }
@@ -21,7 +21,7 @@ function useValStega(selector) {
21
21
  return stegaEncode(selector, {
22
22
  disabled: !enabled,
23
23
  getModule: function getModule(moduleId) {
24
- if (moduleMap) {
24
+ if (moduleMap && enabled) {
25
25
  return moduleMap[moduleId];
26
26
  }
27
27
  }
@@ -0,0 +1,97 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var slicedToArray = require('./slicedToArray-c03b6356.cjs.dev.js');
7
+ var core = require('@valbuild/core');
8
+ var ui = require('@valbuild/ui');
9
+ var navigation = require('next/navigation');
10
+ var Script = require('next/script');
11
+ var React = require('react');
12
+ var ValContext = require('./ValContext-b1d2da47.cjs.dev.js');
13
+ var jsxRuntime = require('react/jsx-runtime');
14
+ require('./unsupportedIterableToArray-9e97e24a.cjs.dev.js');
15
+
16
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
17
+
18
+ var Script__default = /*#__PURE__*/_interopDefault(Script);
19
+ var React__default = /*#__PURE__*/_interopDefault(React);
20
+
21
+ var ValNextProvider = function ValNextProvider(props) {
22
+ var pathname = navigation.usePathname();
23
+
24
+ // TODO: use config to get /val and /api/val
25
+ if (pathname.startsWith("/val")) {
26
+ return props.children;
27
+ }
28
+ var route = "/api/val";
29
+
30
+ // TODO: move below into react package
31
+ var valEvents = React__default["default"].useMemo(function () {
32
+ return new ValContext.ValEvents();
33
+ }, []);
34
+ var _React$useTransition = React__default["default"].useTransition(),
35
+ _React$useTransition2 = slicedToArray._slicedToArray(_React$useTransition, 2),
36
+ startTransition = _React$useTransition2[1];
37
+ var router = navigation.useRouter();
38
+ var _React$useState = React__default["default"].useState(false),
39
+ _React$useState2 = slicedToArray._slicedToArray(_React$useState, 2),
40
+ enabled = _React$useState2[0],
41
+ setEnabled = _React$useState2[1];
42
+ React.useEffect(function () {
43
+ setEnabled(document.cookie.includes("".concat(core.Internal.VAL_ENABLE_COOKIE_NAME, "=true")));
44
+ }, []);
45
+ React__default["default"].useEffect(function () {
46
+ if (enabled) {
47
+ var valEventListener = function valEventListener(event) {
48
+ if (event instanceof CustomEvent) {
49
+ if (event.detail.type === "module-update") {
50
+ var _event$detail = event.detail,
51
+ moduleId = _event$detail.moduleId,
52
+ source = _event$detail.source;
53
+ if (typeof moduleId === "string" && source !== undefined) {
54
+ valEvents.update(moduleId, source);
55
+ } else {
56
+ console.error("Val: invalid event detail", event.detail);
57
+ }
58
+ } else if (event.detail.type === "overlay-submit") {
59
+ var refreshRequired = event.detail.refreshRequired;
60
+ if (refreshRequired && !props.disableRefresh) {
61
+ startTransition(function () {
62
+ router.refresh();
63
+ });
64
+ }
65
+ } else {
66
+ console.error("Val: invalid event", event);
67
+ }
68
+ }
69
+ };
70
+ window.addEventListener("val-event", valEventListener);
71
+ return function () {
72
+ window.removeEventListener("val-event", valEventListener);
73
+ };
74
+ } else {
75
+ if (process.env["NODE_ENV"] === "development") {
76
+ console.warn("Val is currently hidden.\n\nTo enable Val go to the following URL:\n".concat(window.location.origin, "/api/val/enable?redirect_to=").concat(encodeURIComponent(window.location.href), "\n \nYou are seeing this message because you are in development mode."));
77
+ }
78
+ }
79
+ }, [enabled]);
80
+
81
+ // TODO: use portal to mount overlay
82
+ return /*#__PURE__*/jsxRuntime.jsxs(ValContext.ValContext.Provider, {
83
+ value: {
84
+ valEvents: valEvents
85
+ },
86
+ children: [props.children, enabled && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
87
+ children: [/*#__PURE__*/jsxRuntime.jsx(Script__default["default"], {
88
+ type: "module",
89
+ src: "".concat(route, "/static").concat(ui.VAL_APP_PATH)
90
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
91
+ id: ui.VAL_OVERLAY_ID
92
+ })]
93
+ })]
94
+ });
95
+ };
96
+
97
+ exports.ValNextProvider = ValNextProvider;
@@ -0,0 +1,88 @@
1
+ 'use client';
2
+ import { _ as _slicedToArray } from './slicedToArray-1ff80c5e.esm.js';
3
+ import { Internal } from '@valbuild/core';
4
+ import { VAL_APP_PATH, VAL_OVERLAY_ID } from '@valbuild/ui';
5
+ import { usePathname, useRouter } from 'next/navigation';
6
+ import Script from 'next/script';
7
+ import React, { useEffect } from 'react';
8
+ import { ValEvents, ValContext } from './ValContext-059d6dd7.esm.js';
9
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
10
+ import './unsupportedIterableToArray-51bb61c2.esm.js';
11
+
12
+ var ValNextProvider = function ValNextProvider(props) {
13
+ var pathname = usePathname();
14
+
15
+ // TODO: use config to get /val and /api/val
16
+ if (pathname.startsWith("/val")) {
17
+ return props.children;
18
+ }
19
+ var route = "/api/val";
20
+
21
+ // TODO: move below into react package
22
+ var valEvents = React.useMemo(function () {
23
+ return new ValEvents();
24
+ }, []);
25
+ var _React$useTransition = React.useTransition(),
26
+ _React$useTransition2 = _slicedToArray(_React$useTransition, 2),
27
+ startTransition = _React$useTransition2[1];
28
+ var router = useRouter();
29
+ var _React$useState = React.useState(false),
30
+ _React$useState2 = _slicedToArray(_React$useState, 2),
31
+ enabled = _React$useState2[0],
32
+ setEnabled = _React$useState2[1];
33
+ useEffect(function () {
34
+ setEnabled(document.cookie.includes("".concat(Internal.VAL_ENABLE_COOKIE_NAME, "=true")));
35
+ }, []);
36
+ React.useEffect(function () {
37
+ if (enabled) {
38
+ var valEventListener = function valEventListener(event) {
39
+ if (event instanceof CustomEvent) {
40
+ if (event.detail.type === "module-update") {
41
+ var _event$detail = event.detail,
42
+ moduleId = _event$detail.moduleId,
43
+ source = _event$detail.source;
44
+ if (typeof moduleId === "string" && source !== undefined) {
45
+ valEvents.update(moduleId, source);
46
+ } else {
47
+ console.error("Val: invalid event detail", event.detail);
48
+ }
49
+ } else if (event.detail.type === "overlay-submit") {
50
+ var refreshRequired = event.detail.refreshRequired;
51
+ if (refreshRequired && !props.disableRefresh) {
52
+ startTransition(function () {
53
+ router.refresh();
54
+ });
55
+ }
56
+ } else {
57
+ console.error("Val: invalid event", event);
58
+ }
59
+ }
60
+ };
61
+ window.addEventListener("val-event", valEventListener);
62
+ return function () {
63
+ window.removeEventListener("val-event", valEventListener);
64
+ };
65
+ } else {
66
+ if (process.env["NODE_ENV"] === "development") {
67
+ console.warn("Val is currently hidden.\n\nTo enable Val go to the following URL:\n".concat(window.location.origin, "/api/val/enable?redirect_to=").concat(encodeURIComponent(window.location.href), "\n \nYou are seeing this message because you are in development mode."));
68
+ }
69
+ }
70
+ }, [enabled]);
71
+
72
+ // TODO: use portal to mount overlay
73
+ return /*#__PURE__*/jsxs(ValContext.Provider, {
74
+ value: {
75
+ valEvents: valEvents
76
+ },
77
+ children: [props.children, enabled && /*#__PURE__*/jsxs(Fragment, {
78
+ children: [/*#__PURE__*/jsx(Script, {
79
+ type: "module",
80
+ src: "".concat(route, "/static").concat(VAL_APP_PATH)
81
+ }), /*#__PURE__*/jsx("div", {
82
+ id: VAL_OVERLAY_ID
83
+ })]
84
+ })]
85
+ });
86
+ };
87
+
88
+ export { ValNextProvider };
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ if (process.env.NODE_ENV === "production") {
4
+ module.exports = require("./ValNextProvider-fef86d71.cjs.prod.js");
5
+ } else {
6
+ module.exports = require("./ValNextProvider-fef86d71.cjs.dev.js");
7
+ }
@@ -0,0 +1,97 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var slicedToArray = require('./slicedToArray-1d91551a.cjs.prod.js');
7
+ var core = require('@valbuild/core');
8
+ var ui = require('@valbuild/ui');
9
+ var navigation = require('next/navigation');
10
+ var Script = require('next/script');
11
+ var React = require('react');
12
+ var ValContext = require('./ValContext-b64043dd.cjs.prod.js');
13
+ var jsxRuntime = require('react/jsx-runtime');
14
+ require('./unsupportedIterableToArray-afbea1dd.cjs.prod.js');
15
+
16
+ function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
17
+
18
+ var Script__default = /*#__PURE__*/_interopDefault(Script);
19
+ var React__default = /*#__PURE__*/_interopDefault(React);
20
+
21
+ var ValNextProvider = function ValNextProvider(props) {
22
+ var pathname = navigation.usePathname();
23
+
24
+ // TODO: use config to get /val and /api/val
25
+ if (pathname.startsWith("/val")) {
26
+ return props.children;
27
+ }
28
+ var route = "/api/val";
29
+
30
+ // TODO: move below into react package
31
+ var valEvents = React__default["default"].useMemo(function () {
32
+ return new ValContext.ValEvents();
33
+ }, []);
34
+ var _React$useTransition = React__default["default"].useTransition(),
35
+ _React$useTransition2 = slicedToArray._slicedToArray(_React$useTransition, 2),
36
+ startTransition = _React$useTransition2[1];
37
+ var router = navigation.useRouter();
38
+ var _React$useState = React__default["default"].useState(false),
39
+ _React$useState2 = slicedToArray._slicedToArray(_React$useState, 2),
40
+ enabled = _React$useState2[0],
41
+ setEnabled = _React$useState2[1];
42
+ React.useEffect(function () {
43
+ setEnabled(document.cookie.includes("".concat(core.Internal.VAL_ENABLE_COOKIE_NAME, "=true")));
44
+ }, []);
45
+ React__default["default"].useEffect(function () {
46
+ if (enabled) {
47
+ var valEventListener = function valEventListener(event) {
48
+ if (event instanceof CustomEvent) {
49
+ if (event.detail.type === "module-update") {
50
+ var _event$detail = event.detail,
51
+ moduleId = _event$detail.moduleId,
52
+ source = _event$detail.source;
53
+ if (typeof moduleId === "string" && source !== undefined) {
54
+ valEvents.update(moduleId, source);
55
+ } else {
56
+ console.error("Val: invalid event detail", event.detail);
57
+ }
58
+ } else if (event.detail.type === "overlay-submit") {
59
+ var refreshRequired = event.detail.refreshRequired;
60
+ if (refreshRequired && !props.disableRefresh) {
61
+ startTransition(function () {
62
+ router.refresh();
63
+ });
64
+ }
65
+ } else {
66
+ console.error("Val: invalid event", event);
67
+ }
68
+ }
69
+ };
70
+ window.addEventListener("val-event", valEventListener);
71
+ return function () {
72
+ window.removeEventListener("val-event", valEventListener);
73
+ };
74
+ } else {
75
+ if (process.env["NODE_ENV"] === "development") {
76
+ console.warn("Val is currently hidden.\n\nTo enable Val go to the following URL:\n".concat(window.location.origin, "/api/val/enable?redirect_to=").concat(encodeURIComponent(window.location.href), "\n \nYou are seeing this message because you are in development mode."));
77
+ }
78
+ }
79
+ }, [enabled]);
80
+
81
+ // TODO: use portal to mount overlay
82
+ return /*#__PURE__*/jsxRuntime.jsxs(ValContext.ValContext.Provider, {
83
+ value: {
84
+ valEvents: valEvents
85
+ },
86
+ children: [props.children, enabled && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
87
+ children: [/*#__PURE__*/jsxRuntime.jsx(Script__default["default"], {
88
+ type: "module",
89
+ src: "".concat(route, "/static").concat(ui.VAL_APP_PATH)
90
+ }), /*#__PURE__*/jsxRuntime.jsx("div", {
91
+ id: ui.VAL_OVERLAY_ID
92
+ })]
93
+ })]
94
+ });
95
+ };
96
+
97
+ exports.ValNextProvider = ValNextProvider;
@@ -6,7 +6,7 @@ var objectSpread2 = require('./objectSpread2-bb9509e8.cjs.dev.js');
6
6
  var core = require('@valbuild/core');
7
7
  var stega = require('@valbuild/react/stega');
8
8
  var internal = require('@valbuild/react/internal');
9
- var ValNextProvider = require('./ValNextProvider-a2f9e10b.cjs.dev.js');
9
+ var ValNextProvider = require('./ValNextProvider-1779e571.cjs.dev.js');
10
10
  var NextImage = require('next/image');
11
11
  var jsxRuntime = require('react/jsx-runtime');
12
12
  var ValApp = require('./ValApp-aff60572.cjs.dev.js');
@@ -6,7 +6,7 @@ var objectSpread2 = require('./objectSpread2-24e737a6.cjs.prod.js');
6
6
  var core = require('@valbuild/core');
7
7
  var stega = require('@valbuild/react/stega');
8
8
  var internal = require('@valbuild/react/internal');
9
- var ValNextProvider = require('./ValNextProvider-6d9a7495.cjs.prod.js');
9
+ var ValNextProvider = require('./ValNextProvider-fef86d71.cjs.prod.js');
10
10
  var NextImage = require('next/image');
11
11
  var jsxRuntime = require('react/jsx-runtime');
12
12
  var ValApp = require('./ValApp-0ec0c7f3.cjs.prod.js');
@@ -5,7 +5,7 @@ export { core as expr };
5
5
  export { FILE_REF_PROP, GenericSelector, Schema, VAL_EXTENSION, derefPatch } from '@valbuild/core';
6
6
  import { stegaClean, stegaDecodeString, autoTagJSX } from '@valbuild/react/stega';
7
7
  export { ValRichText } from '@valbuild/react/internal';
8
- import { ValNextProvider } from './ValNextProvider-35917b1e.esm.js';
8
+ import { ValNextProvider } from './ValNextProvider-89c4f1ce.esm.js';
9
9
  import NextImage from 'next/image';
10
10
  import { jsx } from 'react/jsx-runtime';
11
11
  export { ValApp } from './ValApp-61103149.esm.js';
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "next",
9
9
  "react"
10
10
  ],
11
- "version": "0.60.5",
11
+ "version": "0.60.6",
12
12
  "scripts": {
13
13
  "typecheck": "tsc --noEmit",
14
14
  "test": "jest"
@@ -45,10 +45,10 @@
45
45
  "exports": true
46
46
  },
47
47
  "dependencies": {
48
- "@valbuild/core": "~0.60.5",
49
- "@valbuild/react": "~0.60.5",
50
- "@valbuild/server": "~0.60.5",
51
- "@valbuild/ui": "~0.60.5",
48
+ "@valbuild/core": "~0.60.6",
49
+ "@valbuild/react": "~0.60.6",
50
+ "@valbuild/server": "~0.60.6",
51
+ "@valbuild/ui": "~0.60.6",
52
52
  "client-only": "^0.0.1",
53
53
  "server-only": "^0.0.1"
54
54
  },
@@ -384,7 +384,18 @@ var initValNextAppRouter = function initValNextAppRouter(config, nextConfig) {
384
384
  }))();
385
385
  }
386
386
  }), function (valRes) {
387
- var headers = "headers" in valRes ? new Headers(valRes.headers) : new Headers({});
387
+ var headersInit = undefined;
388
+ var valResHeaders = "headers" in valRes && valRes.headers || {};
389
+ for (var key in valResHeaders) {
390
+ var value = valResHeaders[key];
391
+ if (typeof value === "string") {
392
+ if (!headersInit) {
393
+ headersInit = {};
394
+ }
395
+ headersInit[key] = value;
396
+ }
397
+ }
398
+ var headers = new Headers(headersInit);
388
399
  if ("cookies" in valRes && valRes.cookies) {
389
400
  headers.set("Set-Cookie", "");
390
401
  for (var _i = 0, _Object$entries = Object.entries(valRes.cookies); _i < _Object$entries.length; _i++) {
@@ -384,7 +384,18 @@ var initValNextAppRouter = function initValNextAppRouter(config, nextConfig) {
384
384
  }))();
385
385
  }
386
386
  }), function (valRes) {
387
- var headers = "headers" in valRes ? new Headers(valRes.headers) : new Headers({});
387
+ var headersInit = undefined;
388
+ var valResHeaders = "headers" in valRes && valRes.headers || {};
389
+ for (var key in valResHeaders) {
390
+ var value = valResHeaders[key];
391
+ if (typeof value === "string") {
392
+ if (!headersInit) {
393
+ headersInit = {};
394
+ }
395
+ headersInit[key] = value;
396
+ }
397
+ }
398
+ var headers = new Headers(headersInit);
388
399
  if ("cookies" in valRes && valRes.cookies) {
389
400
  headers.set("Set-Cookie", "");
390
401
  for (var _i = 0, _Object$entries = Object.entries(valRes.cookies); _i < _Object$entries.length; _i++) {
@@ -380,7 +380,18 @@ var initValNextAppRouter = function initValNextAppRouter(config, nextConfig) {
380
380
  }))();
381
381
  }
382
382
  }), function (valRes) {
383
- var headers = "headers" in valRes ? new Headers(valRes.headers) : new Headers({});
383
+ var headersInit = undefined;
384
+ var valResHeaders = "headers" in valRes && valRes.headers || {};
385
+ for (var key in valResHeaders) {
386
+ var value = valResHeaders[key];
387
+ if (typeof value === "string") {
388
+ if (!headersInit) {
389
+ headersInit = {};
390
+ }
391
+ headersInit[key] = value;
392
+ }
393
+ }
394
+ var headers = new Headers(headersInit);
384
395
  if ("cookies" in valRes && valRes.cookies) {
385
396
  headers.set("Set-Cookie", "");
386
397
  for (var _i = 0, _Object$entries = Object.entries(valRes.cookies); _i < _Object$entries.length; _i++) {
@@ -1,70 +0,0 @@
1
- 'use client';
2
- import { _ as _slicedToArray } from './slicedToArray-1ff80c5e.esm.js';
3
- import { VAL_APP_PATH, VAL_OVERLAY_ID } from '@valbuild/ui';
4
- import { usePathname, useRouter } from 'next/navigation';
5
- import Script from 'next/script';
6
- import React from 'react';
7
- import { ValEvents, ValContext } from './ValContext-059d6dd7.esm.js';
8
- import { jsxs, jsx } from 'react/jsx-runtime';
9
- import './unsupportedIterableToArray-51bb61c2.esm.js';
10
-
11
- var ValNextProvider = function ValNextProvider(props) {
12
- var pathname = usePathname();
13
-
14
- // TODO: use config to get /val and /api/val
15
- if (pathname.startsWith("/val")) {
16
- return props.children;
17
- }
18
- var route = "/api/val";
19
- var valEvents = React.useMemo(function () {
20
- return new ValEvents();
21
- }, []);
22
- var _React$useTransition = React.useTransition(),
23
- _React$useTransition2 = _slicedToArray(_React$useTransition, 2),
24
- startTransition = _React$useTransition2[1];
25
- var router = useRouter();
26
- React.useEffect(function () {
27
- var valEventListener = function valEventListener(event) {
28
- if (event instanceof CustomEvent) {
29
- if (event.detail.type === "module-update") {
30
- var _event$detail = event.detail,
31
- moduleId = _event$detail.moduleId,
32
- source = _event$detail.source;
33
- if (typeof moduleId === "string" && source !== undefined) {
34
- valEvents.update(moduleId, source);
35
- } else {
36
- console.error("Val: invalid event detail", event.detail);
37
- }
38
- } else if (event.detail.type === "overlay-submit") {
39
- var refreshRequired = event.detail.refreshRequired;
40
- if (refreshRequired && !props.disableRefresh) {
41
- startTransition(function () {
42
- router.refresh();
43
- });
44
- }
45
- } else {
46
- console.error("Val: invalid event", event);
47
- }
48
- }
49
- };
50
- window.addEventListener("val-event", valEventListener);
51
- return function () {
52
- window.removeEventListener("val-event", valEventListener);
53
- };
54
- }, []);
55
-
56
- // TODO: use portal to mount overlay
57
- return /*#__PURE__*/jsxs(ValContext.Provider, {
58
- value: {
59
- valEvents: valEvents
60
- },
61
- children: [props.children, /*#__PURE__*/jsx(Script, {
62
- type: "module",
63
- src: "".concat(route, "/static").concat(VAL_APP_PATH)
64
- }), /*#__PURE__*/jsx("div", {
65
- id: VAL_OVERLAY_ID
66
- })]
67
- });
68
- };
69
-
70
- export { ValNextProvider };
@@ -1,7 +0,0 @@
1
- 'use strict';
2
-
3
- if (process.env.NODE_ENV === "production") {
4
- module.exports = require("./ValNextProvider-6d9a7495.cjs.prod.js");
5
- } else {
6
- module.exports = require("./ValNextProvider-6d9a7495.cjs.dev.js");
7
- }
@@ -1,79 +0,0 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- Object.defineProperty(exports, '__esModule', { value: true });
5
-
6
- var slicedToArray = require('./slicedToArray-1d91551a.cjs.prod.js');
7
- var ui = require('@valbuild/ui');
8
- var navigation = require('next/navigation');
9
- var Script = require('next/script');
10
- var React = require('react');
11
- var ValContext = require('./ValContext-b64043dd.cjs.prod.js');
12
- var jsxRuntime = require('react/jsx-runtime');
13
- require('./unsupportedIterableToArray-afbea1dd.cjs.prod.js');
14
-
15
- function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
16
-
17
- var Script__default = /*#__PURE__*/_interopDefault(Script);
18
- var React__default = /*#__PURE__*/_interopDefault(React);
19
-
20
- var ValNextProvider = function ValNextProvider(props) {
21
- var pathname = navigation.usePathname();
22
-
23
- // TODO: use config to get /val and /api/val
24
- if (pathname.startsWith("/val")) {
25
- return props.children;
26
- }
27
- var route = "/api/val";
28
- var valEvents = React__default["default"].useMemo(function () {
29
- return new ValContext.ValEvents();
30
- }, []);
31
- var _React$useTransition = React__default["default"].useTransition(),
32
- _React$useTransition2 = slicedToArray._slicedToArray(_React$useTransition, 2),
33
- startTransition = _React$useTransition2[1];
34
- var router = navigation.useRouter();
35
- React__default["default"].useEffect(function () {
36
- var valEventListener = function valEventListener(event) {
37
- if (event instanceof CustomEvent) {
38
- if (event.detail.type === "module-update") {
39
- var _event$detail = event.detail,
40
- moduleId = _event$detail.moduleId,
41
- source = _event$detail.source;
42
- if (typeof moduleId === "string" && source !== undefined) {
43
- valEvents.update(moduleId, source);
44
- } else {
45
- console.error("Val: invalid event detail", event.detail);
46
- }
47
- } else if (event.detail.type === "overlay-submit") {
48
- var refreshRequired = event.detail.refreshRequired;
49
- if (refreshRequired && !props.disableRefresh) {
50
- startTransition(function () {
51
- router.refresh();
52
- });
53
- }
54
- } else {
55
- console.error("Val: invalid event", event);
56
- }
57
- }
58
- };
59
- window.addEventListener("val-event", valEventListener);
60
- return function () {
61
- window.removeEventListener("val-event", valEventListener);
62
- };
63
- }, []);
64
-
65
- // TODO: use portal to mount overlay
66
- return /*#__PURE__*/jsxRuntime.jsxs(ValContext.ValContext.Provider, {
67
- value: {
68
- valEvents: valEvents
69
- },
70
- children: [props.children, /*#__PURE__*/jsxRuntime.jsx(Script__default["default"], {
71
- type: "module",
72
- src: "".concat(route, "/static").concat(ui.VAL_APP_PATH)
73
- }), /*#__PURE__*/jsxRuntime.jsx("div", {
74
- id: ui.VAL_OVERLAY_ID
75
- })]
76
- });
77
- };
78
-
79
- exports.ValNextProvider = ValNextProvider;
@@ -1,79 +0,0 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- Object.defineProperty(exports, '__esModule', { value: true });
5
-
6
- var slicedToArray = require('./slicedToArray-c03b6356.cjs.dev.js');
7
- var ui = require('@valbuild/ui');
8
- var navigation = require('next/navigation');
9
- var Script = require('next/script');
10
- var React = require('react');
11
- var ValContext = require('./ValContext-b1d2da47.cjs.dev.js');
12
- var jsxRuntime = require('react/jsx-runtime');
13
- require('./unsupportedIterableToArray-9e97e24a.cjs.dev.js');
14
-
15
- function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
16
-
17
- var Script__default = /*#__PURE__*/_interopDefault(Script);
18
- var React__default = /*#__PURE__*/_interopDefault(React);
19
-
20
- var ValNextProvider = function ValNextProvider(props) {
21
- var pathname = navigation.usePathname();
22
-
23
- // TODO: use config to get /val and /api/val
24
- if (pathname.startsWith("/val")) {
25
- return props.children;
26
- }
27
- var route = "/api/val";
28
- var valEvents = React__default["default"].useMemo(function () {
29
- return new ValContext.ValEvents();
30
- }, []);
31
- var _React$useTransition = React__default["default"].useTransition(),
32
- _React$useTransition2 = slicedToArray._slicedToArray(_React$useTransition, 2),
33
- startTransition = _React$useTransition2[1];
34
- var router = navigation.useRouter();
35
- React__default["default"].useEffect(function () {
36
- var valEventListener = function valEventListener(event) {
37
- if (event instanceof CustomEvent) {
38
- if (event.detail.type === "module-update") {
39
- var _event$detail = event.detail,
40
- moduleId = _event$detail.moduleId,
41
- source = _event$detail.source;
42
- if (typeof moduleId === "string" && source !== undefined) {
43
- valEvents.update(moduleId, source);
44
- } else {
45
- console.error("Val: invalid event detail", event.detail);
46
- }
47
- } else if (event.detail.type === "overlay-submit") {
48
- var refreshRequired = event.detail.refreshRequired;
49
- if (refreshRequired && !props.disableRefresh) {
50
- startTransition(function () {
51
- router.refresh();
52
- });
53
- }
54
- } else {
55
- console.error("Val: invalid event", event);
56
- }
57
- }
58
- };
59
- window.addEventListener("val-event", valEventListener);
60
- return function () {
61
- window.removeEventListener("val-event", valEventListener);
62
- };
63
- }, []);
64
-
65
- // TODO: use portal to mount overlay
66
- return /*#__PURE__*/jsxRuntime.jsxs(ValContext.ValContext.Provider, {
67
- value: {
68
- valEvents: valEvents
69
- },
70
- children: [props.children, /*#__PURE__*/jsxRuntime.jsx(Script__default["default"], {
71
- type: "module",
72
- src: "".concat(route, "/static").concat(ui.VAL_APP_PATH)
73
- }), /*#__PURE__*/jsxRuntime.jsx("div", {
74
- id: ui.VAL_OVERLAY_ID
75
- })]
76
- });
77
- };
78
-
79
- exports.ValNextProvider = ValNextProvider;