@makeswift/runtime 0.9.0 → 0.9.2

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.
Files changed (200) hide show
  1. package/dist/Box.cjs.js +15 -15
  2. package/dist/Box.cjs.js.map +1 -1
  3. package/dist/Box.es.js +10 -10
  4. package/dist/Button.cjs.js +12 -12
  5. package/dist/Button.cjs.js.map +1 -1
  6. package/dist/Button.es.js +10 -10
  7. package/dist/Carousel.cjs.js +28 -28
  8. package/dist/Carousel.cjs.js.map +1 -1
  9. package/dist/Carousel.es.js +7 -7
  10. package/dist/Countdown.cjs.js +15 -15
  11. package/dist/Countdown.cjs.js.map +1 -1
  12. package/dist/Countdown.es.js +7 -7
  13. package/dist/Divider.cjs.js +12 -12
  14. package/dist/Divider.cjs.js.map +1 -1
  15. package/dist/Divider.es.js +10 -10
  16. package/dist/Embed.cjs.js +3 -30
  17. package/dist/Embed.cjs.js.map +1 -1
  18. package/dist/Embed.es.js +2 -29
  19. package/dist/Embed.es.js.map +1 -1
  20. package/dist/Form.cjs.js +51 -51
  21. package/dist/Form.cjs.js.map +1 -1
  22. package/dist/Form.es.js +7 -7
  23. package/dist/Image.cjs.js +8 -8
  24. package/dist/Image.cjs.js.map +1 -1
  25. package/dist/Image.es.js +7 -7
  26. package/dist/LiveProvider.cjs.js +6 -6
  27. package/dist/LiveProvider.es.js +8 -8
  28. package/dist/Navigation.cjs.js +27 -27
  29. package/dist/Navigation.cjs.js.map +1 -1
  30. package/dist/Navigation.es.js +6 -6
  31. package/dist/PreviewProvider.cjs.js +7 -7
  32. package/dist/PreviewProvider.cjs.js.map +1 -1
  33. package/dist/PreviewProvider.es.js +7 -7
  34. package/dist/ReadOnlyText.cjs.js +16 -13
  35. package/dist/ReadOnlyText.cjs.js.map +1 -1
  36. package/dist/ReadOnlyText.es.js +11 -8
  37. package/dist/ReadOnlyText.es.js.map +1 -1
  38. package/dist/ReadOnlyTextV2.cjs.js +13 -10
  39. package/dist/ReadOnlyTextV2.cjs.js.map +1 -1
  40. package/dist/ReadOnlyTextV2.es.js +9 -6
  41. package/dist/ReadOnlyTextV2.es.js.map +1 -1
  42. package/dist/Root.cjs.js +8 -8
  43. package/dist/Root.cjs.js.map +1 -1
  44. package/dist/Root.es.js +6 -6
  45. package/dist/SocialLinks.cjs.js +14 -14
  46. package/dist/SocialLinks.cjs.js.map +1 -1
  47. package/dist/SocialLinks.es.js +10 -10
  48. package/dist/Text.cjs.js +4 -4
  49. package/dist/Text.es.js +5 -5
  50. package/dist/Video.cjs.js +3 -30
  51. package/dist/Video.cjs.js.map +1 -1
  52. package/dist/Video.es.js +2 -29
  53. package/dist/Video.es.js.map +1 -1
  54. package/dist/builder.cjs.js +4 -2
  55. package/dist/builder.cjs.js.map +1 -1
  56. package/dist/builder.es.js +4 -2
  57. package/dist/builder.es.js.map +1 -1
  58. package/dist/components.cjs.js +9 -9
  59. package/dist/components.es.js +9 -9
  60. package/dist/control-serialization.cjs.js +88 -12
  61. package/dist/control-serialization.cjs.js.map +1 -1
  62. package/dist/control-serialization.es.js +89 -13
  63. package/dist/control-serialization.es.js.map +1 -1
  64. package/dist/controls.cjs.js +15 -4
  65. package/dist/controls.cjs.js.map +1 -1
  66. package/dist/controls.es.js +6 -3
  67. package/dist/controls.es.js.map +1 -1
  68. package/dist/deepEqual.cjs.js +40 -0
  69. package/dist/deepEqual.cjs.js.map +1 -0
  70. package/dist/deepEqual.es.js +39 -0
  71. package/dist/deepEqual.es.js.map +1 -0
  72. package/dist/index.cjs.js +102 -98
  73. package/dist/index.cjs.js.map +1 -1
  74. package/dist/index.cjs10.js +173 -249
  75. package/dist/index.cjs10.js.map +1 -1
  76. package/dist/index.cjs11.js +375 -0
  77. package/dist/index.cjs11.js.map +1 -0
  78. package/dist/index.cjs2.js +14 -16
  79. package/dist/index.cjs2.js.map +1 -1
  80. package/dist/index.cjs4.js +2 -1
  81. package/dist/index.cjs4.js.map +1 -1
  82. package/dist/index.cjs6.js +700 -22
  83. package/dist/index.cjs6.js.map +1 -1
  84. package/dist/index.cjs7.js +37 -13
  85. package/dist/index.cjs7.js.map +1 -1
  86. package/dist/index.cjs8.js +17 -41
  87. package/dist/index.cjs8.js.map +1 -1
  88. package/dist/index.cjs9.js +13 -266
  89. package/dist/index.cjs9.js.map +1 -1
  90. package/dist/index.es.js +85 -80
  91. package/dist/index.es.js.map +1 -1
  92. package/dist/index.es10.js +174 -250
  93. package/dist/index.es10.js.map +1 -1
  94. package/dist/index.es11.js +368 -0
  95. package/dist/index.es11.js.map +1 -0
  96. package/dist/index.es2.js +3 -5
  97. package/dist/index.es2.js.map +1 -1
  98. package/dist/index.es3.js +1 -1
  99. package/dist/index.es4.js +2 -1
  100. package/dist/index.es4.js.map +1 -1
  101. package/dist/index.es6.js +695 -22
  102. package/dist/index.es6.js.map +1 -1
  103. package/dist/index.es7.js +33 -14
  104. package/dist/index.es7.js.map +1 -1
  105. package/dist/index.es8.js +17 -39
  106. package/dist/index.es8.js.map +1 -1
  107. package/dist/index.es9.js +12 -261
  108. package/dist/index.es9.js.map +1 -1
  109. package/dist/leaf.cjs.js +1 -1
  110. package/dist/leaf.cjs.js.map +1 -1
  111. package/dist/leaf.es.js +2 -2
  112. package/dist/main.cjs.js +4 -2
  113. package/dist/main.cjs.js.map +1 -1
  114. package/dist/main.es.js +4 -2
  115. package/dist/main.es.js.map +1 -1
  116. package/dist/next.cjs.js +3 -3
  117. package/dist/next.es.js +4 -4
  118. package/dist/prop-controllers.cjs.js +4 -2
  119. package/dist/prop-controllers.cjs.js.map +1 -1
  120. package/dist/prop-controllers.es.js +4 -2
  121. package/dist/prop-controllers.es.js.map +1 -1
  122. package/dist/react-page.cjs.js +958 -1431
  123. package/dist/react-page.cjs.js.map +1 -1
  124. package/dist/react-page.es.js +852 -1343
  125. package/dist/react-page.es.js.map +1 -1
  126. package/dist/react.cjs.js +3 -3
  127. package/dist/react.es.js +3 -3
  128. package/dist/select.cjs.js +21 -0
  129. package/dist/select.cjs.js.map +1 -0
  130. package/dist/select.es.js +16 -0
  131. package/dist/select.es.js.map +1 -0
  132. package/dist/slate.cjs.js +213 -12
  133. package/dist/slate.cjs.js.map +1 -1
  134. package/dist/slate.es.js +207 -6
  135. package/dist/slate.es.js.map +1 -1
  136. package/dist/types/src/api/react.d.ts.map +1 -1
  137. package/dist/types/src/builder/serialization/control-serialization.d.ts +3 -3
  138. package/dist/types/src/builder/serialization/control-serialization.d.ts.map +1 -1
  139. package/dist/types/src/builder/serialization/controls/rich-text-v2.d.ts +2 -2
  140. package/dist/types/src/builder/serialization/controls/rich-text-v2.d.ts.map +1 -1
  141. package/dist/types/src/builder/serialization/controls/style-v2.d.ts +5 -0
  142. package/dist/types/src/builder/serialization/controls/style-v2.d.ts.map +1 -0
  143. package/dist/types/src/components/builtin/Button/Button.d.ts +1 -1
  144. package/dist/types/src/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
  145. package/dist/types/src/components/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
  146. package/dist/types/src/components/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
  147. package/dist/types/src/components/page/Page.d.ts.map +1 -1
  148. package/dist/types/src/controls/control.d.ts +4 -2
  149. package/dist/types/src/controls/control.d.ts.map +1 -1
  150. package/dist/types/src/controls/icon-radio-group.d.ts +29 -0
  151. package/dist/types/src/controls/icon-radio-group.d.ts.map +1 -0
  152. package/dist/types/src/controls/index.d.ts +2 -0
  153. package/dist/types/src/controls/index.d.ts.map +1 -1
  154. package/dist/types/src/controls/rich-text/translation.d.ts +1 -1
  155. package/dist/types/src/controls/rich-text/translation.d.ts.map +1 -1
  156. package/dist/types/src/controls/rich-text-v2/rich-text-v2.d.ts +12 -3
  157. package/dist/types/src/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  158. package/dist/types/src/controls/shape.d.ts +1 -2
  159. package/dist/types/src/controls/shape.d.ts.map +1 -1
  160. package/dist/types/src/controls/style-v2.d.ts +64 -0
  161. package/dist/types/src/controls/style-v2.d.ts.map +1 -0
  162. package/dist/types/src/next/client.d.ts.map +1 -1
  163. package/dist/types/src/next/document.d.ts.map +1 -1
  164. package/dist/types/src/prop-controllers/descriptors.d.ts +6 -3
  165. package/dist/types/src/prop-controllers/descriptors.d.ts.map +1 -1
  166. package/dist/types/src/prop-controllers/instances.d.ts +2 -2
  167. package/dist/types/src/prop-controllers/instances.d.ts.map +1 -1
  168. package/dist/types/src/prop-controllers/introspection.d.ts.map +1 -1
  169. package/dist/types/src/runtimes/react/controls/control.d.ts +5 -2
  170. package/dist/types/src/runtimes/react/controls/control.d.ts.map +1 -1
  171. package/dist/types/src/runtimes/react/controls/icon-radio-group.d.ts +4 -0
  172. package/dist/types/src/runtimes/react/controls/icon-radio-group.d.ts.map +1 -0
  173. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts +2 -1
  174. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts.map +1 -1
  175. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts +10 -0
  176. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts.map +1 -0
  177. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts +10 -0
  178. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts.map +1 -0
  179. package/dist/types/src/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts +1 -1
  180. package/dist/types/src/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  181. package/dist/types/src/runtimes/react/controls/style-v2.d.ts +13 -0
  182. package/dist/types/src/runtimes/react/controls/style-v2.d.ts.map +1 -0
  183. package/dist/types/src/runtimes/react/controls.d.ts.map +1 -1
  184. package/dist/types/src/runtimes/react/index.d.ts.map +1 -1
  185. package/dist/types/src/slate/BlockPlugin/index.d.ts +4 -0
  186. package/dist/types/src/slate/BlockPlugin/index.d.ts.map +1 -1
  187. package/dist/types/src/slate/ColorPlugin/index.d.ts +10 -0
  188. package/dist/types/src/slate/ColorPlugin/index.d.ts.map +1 -0
  189. package/dist/types/src/slate/InlineModePlugin/index.d.ts +2 -0
  190. package/dist/types/src/slate/InlineModePlugin/index.d.ts.map +1 -1
  191. package/dist/types/src/slate/TextAlignPlugin/index.d.ts +9 -0
  192. package/dist/types/src/slate/TextAlignPlugin/index.d.ts.map +1 -0
  193. package/dist/types/src/slate/index.d.ts +2 -0
  194. package/dist/types/src/slate/index.d.ts.map +1 -1
  195. package/dist/types/src/slate/types.d.ts +39 -0
  196. package/dist/types/src/slate/types.d.ts.map +1 -1
  197. package/dist/types/src/slate/utils/responsive.d.ts +16 -0
  198. package/dist/types/src/slate/utils/responsive.d.ts.map +1 -0
  199. package/dist/useMediaQuery.es.js +1 -1
  200. package/package.json +1 -1
@@ -0,0 +1,375 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __spreadValues = (a, b) => {
10
+ for (var prop in b || (b = {}))
11
+ if (__hasOwnProp.call(b, prop))
12
+ __defNormalProp(a, prop, b[prop]);
13
+ if (__getOwnPropSymbols)
14
+ for (var prop of __getOwnPropSymbols(b)) {
15
+ if (__propIsEnum.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ }
18
+ return a;
19
+ };
20
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
+ var __objRest = (source, exclude) => {
22
+ var target = {};
23
+ for (var prop in source)
24
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
25
+ target[prop] = source[prop];
26
+ if (source != null && __getOwnPropSymbols)
27
+ for (var prop of __getOwnPropSymbols(source)) {
28
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
29
+ target[prop] = source[prop];
30
+ }
31
+ return target;
32
+ };
33
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
34
+ var React = require("react");
35
+ var slate = require("slate");
36
+ var slateReact = require("slate-react");
37
+ var css = require("@emotion/css");
38
+ var boxModels = require("./box-models.cjs.js");
39
+ var reactPage = require("./react-page.cjs.js");
40
+ require("@emotion/serialize");
41
+ require("@emotion/utils");
42
+ var leaf = require("./leaf.cjs.js");
43
+ var next = require("./index.cjs.js");
44
+ require("./state/breakpoints.cjs.js");
45
+ var index$1 = require("./index.cjs6.js");
46
+ var isHotkey = require("is-hotkey");
47
+ var jsxRuntime = require("react/jsx-runtime");
48
+ var index = require("./index.cjs3.js");
49
+ var deepEqual = require("./deepEqual.cjs.js");
50
+ var index$2 = require("./index.cjs5.js");
51
+ var index$3 = require("./index.cjs8.js");
52
+ var useIsomorphicLayoutEffect = require("./useIsomorphicLayoutEffect.cjs.js");
53
+ require("css-box-model");
54
+ require("./actions.cjs.js");
55
+ require("redux");
56
+ require("redux-thunk");
57
+ require("use-sync-external-store/shim/with-selector");
58
+ require("next/dynamic");
59
+ require("./text-input.cjs.js");
60
+ require("./combobox.cjs.js");
61
+ require("./select.cjs.js");
62
+ require("use-sync-external-store/shim");
63
+ require("./types.cjs.js");
64
+ require("color");
65
+ require("scroll-into-view-if-needed");
66
+ require("react-dom");
67
+ require("html-react-parser");
68
+ require("next/head");
69
+ require("zod");
70
+ require("@emotion/server/create-instance");
71
+ require("next/document");
72
+ require("cors");
73
+ require("path-to-regexp");
74
+ require("cookie");
75
+ require("http-proxy");
76
+ require("set-cookie-parser");
77
+ require("./constants.cjs.js");
78
+ require("uuid");
79
+ require("corporate-ipsum");
80
+ require("next/link");
81
+ function _interopDefaultLegacy(e) {
82
+ return e && typeof e === "object" && "default" in e ? e : { "default": e };
83
+ }
84
+ var isHotkey__default = /* @__PURE__ */ _interopDefaultLegacy(isHotkey);
85
+ function BlockElement({
86
+ element,
87
+ attributes,
88
+ children
89
+ }) {
90
+ const blockStyles = [reactPage.useStyle({
91
+ margin: 0
92
+ }), reactPage.useStyle(next.useResponsiveStyle([element.textAlign], ([textAlign = "left"]) => ({
93
+ textAlign
94
+ })))];
95
+ const quoteStyles = reactPage.useStyle({
96
+ padding: "0.5em 10px",
97
+ fontSize: "1.25em",
98
+ fontWeight: "300",
99
+ borderLeft: "5px solid rgba(0, 0, 0, 0.1)"
100
+ });
101
+ switch (element.type) {
102
+ case reactPage.BlockType.Text:
103
+ return /* @__PURE__ */ jsxRuntime.jsx("span", __spreadProps(__spreadValues({}, attributes), {
104
+ className: css.cx(...blockStyles),
105
+ children
106
+ }));
107
+ case reactPage.BlockType.Paragraph:
108
+ return /* @__PURE__ */ jsxRuntime.jsx("p", __spreadProps(__spreadValues({}, attributes), {
109
+ className: css.cx(...blockStyles),
110
+ children
111
+ }));
112
+ case reactPage.BlockType.Heading1:
113
+ return /* @__PURE__ */ jsxRuntime.jsx("h1", __spreadProps(__spreadValues({}, attributes), {
114
+ className: css.cx(...blockStyles),
115
+ children
116
+ }));
117
+ case reactPage.BlockType.Heading2:
118
+ return /* @__PURE__ */ jsxRuntime.jsx("h2", __spreadProps(__spreadValues({}, attributes), {
119
+ className: css.cx(...blockStyles),
120
+ children
121
+ }));
122
+ case reactPage.BlockType.Heading3:
123
+ return /* @__PURE__ */ jsxRuntime.jsx("h3", __spreadProps(__spreadValues({}, attributes), {
124
+ className: css.cx(...blockStyles),
125
+ children
126
+ }));
127
+ case reactPage.BlockType.Heading4:
128
+ return /* @__PURE__ */ jsxRuntime.jsx("h4", __spreadProps(__spreadValues({}, attributes), {
129
+ className: css.cx(...blockStyles),
130
+ children
131
+ }));
132
+ case reactPage.BlockType.Heading5:
133
+ return /* @__PURE__ */ jsxRuntime.jsx("h5", __spreadProps(__spreadValues({}, attributes), {
134
+ className: css.cx(...blockStyles),
135
+ children
136
+ }));
137
+ case reactPage.BlockType.Heading6:
138
+ return /* @__PURE__ */ jsxRuntime.jsx("h6", __spreadProps(__spreadValues({}, attributes), {
139
+ className: css.cx(...blockStyles),
140
+ children
141
+ }));
142
+ case reactPage.BlockType.BlockQuote:
143
+ return /* @__PURE__ */ jsxRuntime.jsx("blockquote", __spreadProps(__spreadValues({}, attributes), {
144
+ className: css.cx(...blockStyles, quoteStyles),
145
+ children
146
+ }));
147
+ case reactPage.BlockType.OrderedList:
148
+ return /* @__PURE__ */ jsxRuntime.jsx("ol", __spreadProps(__spreadValues({}, attributes), {
149
+ className: css.cx(...blockStyles),
150
+ style: {
151
+ listStylePosition: "inside"
152
+ },
153
+ children
154
+ }));
155
+ case reactPage.BlockType.UnorderedList:
156
+ return /* @__PURE__ */ jsxRuntime.jsx("ul", __spreadProps(__spreadValues({}, attributes), {
157
+ className: css.cx(...blockStyles),
158
+ style: {
159
+ listStylePosition: "inside"
160
+ },
161
+ children
162
+ }));
163
+ case reactPage.BlockType.ListItem:
164
+ return /* @__PURE__ */ jsxRuntime.jsx("li", __spreadProps(__spreadValues({}, attributes), {
165
+ className: css.cx(...blockStyles),
166
+ children
167
+ }));
168
+ case reactPage.BlockType.ListItemChild:
169
+ return /* @__PURE__ */ jsxRuntime.jsx("span", __spreadProps(__spreadValues({}, attributes), {
170
+ className: css.cx(...blockStyles),
171
+ children
172
+ }));
173
+ default:
174
+ return null;
175
+ }
176
+ }
177
+ function StyledLink(_a) {
178
+ var _b = _a, {
179
+ className
180
+ } = _b, restOfProps = __objRest(_b, [
181
+ "className"
182
+ ]);
183
+ return /* @__PURE__ */ jsxRuntime.jsx(index.Link, __spreadProps(__spreadValues({}, restOfProps), {
184
+ className: css.cx(reactPage.useStyle({
185
+ textDecoration: "none"
186
+ }), className)
187
+ }));
188
+ }
189
+ function InlineElement({
190
+ element,
191
+ attributes,
192
+ children
193
+ }) {
194
+ switch (element.type) {
195
+ case reactPage.InlineType.Code:
196
+ return /* @__PURE__ */ jsxRuntime.jsx("code", __spreadProps(__spreadValues({}, attributes), {
197
+ children
198
+ }));
199
+ case reactPage.InlineType.SuperScript:
200
+ return /* @__PURE__ */ jsxRuntime.jsx("sup", __spreadProps(__spreadValues({}, attributes), {
201
+ children
202
+ }));
203
+ case reactPage.InlineType.SubScript:
204
+ return /* @__PURE__ */ jsxRuntime.jsx("sub", __spreadProps(__spreadValues({}, attributes), {
205
+ children
206
+ }));
207
+ case reactPage.InlineType.Link:
208
+ return /* @__PURE__ */ jsxRuntime.jsx(StyledLink, __spreadProps(__spreadValues({}, attributes), {
209
+ link: element.link,
210
+ children
211
+ }));
212
+ }
213
+ }
214
+ function Element(_c) {
215
+ var _d = _c, {
216
+ element
217
+ } = _d, props = __objRest(_d, [
218
+ "element"
219
+ ]);
220
+ switch (element.type) {
221
+ case reactPage.InlineType.Code:
222
+ case reactPage.InlineType.SuperScript:
223
+ case reactPage.InlineType.SubScript:
224
+ case reactPage.InlineType.Link:
225
+ return /* @__PURE__ */ jsxRuntime.jsx(InlineElement, __spreadValues({
226
+ element
227
+ }, props));
228
+ case reactPage.BlockType.Paragraph:
229
+ case reactPage.BlockType.Heading1:
230
+ case reactPage.BlockType.Heading2:
231
+ case reactPage.BlockType.Heading3:
232
+ case reactPage.BlockType.BlockQuote:
233
+ case reactPage.BlockType.OrderedList:
234
+ case reactPage.BlockType.UnorderedList:
235
+ case reactPage.BlockType.ListItem:
236
+ case reactPage.BlockType.ListItemChild:
237
+ return /* @__PURE__ */ jsxRuntime.jsx(BlockElement, __spreadValues({
238
+ element
239
+ }, props));
240
+ default:
241
+ return /* @__PURE__ */ jsxRuntime.jsx("span", __spreadProps(__spreadValues({}, props.attributes), {
242
+ children: props.children
243
+ }));
244
+ }
245
+ }
246
+ const COMMIT_DEBOUNCE_DELAY = 500;
247
+ function useSyncWithBuilder(editor, text) {
248
+ const [shouldCommit, setShouldCommit] = React.useState(true);
249
+ const isInBuilder = next.useIsInBuilder();
250
+ React.useEffect(() => {
251
+ if (shouldCommit && text && isInBuilder) {
252
+ const nextValue = reactPage.richTextDTOtoDAO(text);
253
+ const nextSelection = reactPage.richTextDTOtoSelection(text);
254
+ if (!deepEqual.deepEqual(editor.children, nextValue) || !deepEqual.deepEqual(editor.selection, nextSelection)) {
255
+ editor.children = nextValue;
256
+ editor.selection = nextSelection;
257
+ editor.onChange();
258
+ }
259
+ }
260
+ }, [editor, shouldCommit, text]);
261
+ React.useEffect(() => {
262
+ if (shouldCommit)
263
+ return;
264
+ const timeoutId = window.setTimeout(() => {
265
+ setShouldCommit(true);
266
+ }, COMMIT_DEBOUNCE_DELAY);
267
+ return () => {
268
+ window.clearTimeout(timeoutId);
269
+ };
270
+ }, [shouldCommit]);
271
+ return React.useCallback(() => setShouldCommit(false), []);
272
+ }
273
+ function useSyncDOMSelection(editor, isEnabled) {
274
+ useIsomorphicLayoutEffect.useIsomorphicLayoutEffect(() => {
275
+ if (!isEnabled || editor.selection == null || slateReact.ReactEditor.isFocused(editor))
276
+ return;
277
+ try {
278
+ const root = slateReact.ReactEditor.findDocumentOrShadowRoot(editor);
279
+ const domSelection = root.getSelection();
280
+ const newDomRange = slateReact.ReactEditor.toDOMRange(editor, editor.selection);
281
+ if (newDomRange) {
282
+ if (slate.Range.isBackward(editor.selection)) {
283
+ domSelection == null ? void 0 : domSelection.setBaseAndExtent(newDomRange.endContainer, newDomRange.endOffset, newDomRange.startContainer, newDomRange.startOffset);
284
+ } else {
285
+ domSelection == null ? void 0 : domSelection.setBaseAndExtent(newDomRange.startContainer, newDomRange.startOffset, newDomRange.endContainer, newDomRange.endOffset);
286
+ }
287
+ } else {
288
+ domSelection == null ? void 0 : domSelection.removeAllRanges();
289
+ }
290
+ } catch (e) {
291
+ console.error(e);
292
+ }
293
+ });
294
+ }
295
+ const defaultText = [{
296
+ type: reactPage.BlockType.Paragraph,
297
+ children: [{
298
+ text: ""
299
+ }]
300
+ }];
301
+ const EditableText = React.forwardRef(function EditableText2({
302
+ id,
303
+ text,
304
+ width,
305
+ margin
306
+ }, ref) {
307
+ const [editor] = React.useState(() => index$1.withBlock(index$2.withTypography(index$3.withBuilder(slateReact.withReact(slate.createEditor())))));
308
+ const [isPreservingDOMSElection, setIsPreservingDOMSelection] = React.useState(false);
309
+ useSyncDOMSelection(editor, isPreservingDOMSElection);
310
+ const delaySync = useSyncWithBuilder(editor, text);
311
+ const editMode = next.useBuilderEditMode();
312
+ const [propControllers, setPropControllers] = React.useState(null);
313
+ const controller = propControllers == null ? void 0 : propControllers.text;
314
+ React.useEffect(() => {
315
+ if (controller == null)
316
+ return;
317
+ const element = slateReact.ReactEditor.toDOMNode(editor, editor);
318
+ return next.pollBoxModel({
319
+ element,
320
+ onBoxModelChange: (boxModel) => controller.changeBoxModel(boxModel)
321
+ });
322
+ }, [editor, controller]);
323
+ React.useImperativeHandle(ref, () => ({
324
+ getDomNode() {
325
+ return slateReact.ReactEditor.toDOMNode(editor, editor);
326
+ },
327
+ getBoxModel() {
328
+ return boxModels.getBox(slateReact.ReactEditor.toDOMNode(editor, editor));
329
+ },
330
+ setPropControllers
331
+ }), [editor, setPropControllers]);
332
+ const initialValue = React.useMemo(() => text ? reactPage.richTextDTOtoDAO(text) : defaultText, [text]);
333
+ React.useEffect(() => {
334
+ controller == null ? void 0 : controller.setSlateEditor(editor);
335
+ }, [controller, editor]);
336
+ const handleFocus = React.useCallback(() => {
337
+ controller == null ? void 0 : controller.focus();
338
+ setIsPreservingDOMSelection(true);
339
+ }, [controller]);
340
+ const handleKeyDown = React.useCallback((e) => {
341
+ if (isHotkey__default["default"]("mod+shift+z", e))
342
+ return controller == null ? void 0 : controller.redo();
343
+ if (isHotkey__default["default"]("mod+z", e))
344
+ return controller == null ? void 0 : controller.undo();
345
+ if (isHotkey__default["default"]("escape")(e))
346
+ return controller == null ? void 0 : controller.blur();
347
+ index$1.onKeyDown(e, editor);
348
+ }, [controller, editor]);
349
+ const handleBlur = React.useCallback((e) => {
350
+ if (e.relatedTarget == null)
351
+ return;
352
+ setIsPreservingDOMSelection(false);
353
+ slateReact.ReactEditor.deselect(editor);
354
+ }, []);
355
+ return /* @__PURE__ */ jsxRuntime.jsx(slateReact.Slate, {
356
+ editor,
357
+ value: initialValue,
358
+ onChange: delaySync,
359
+ children: /* @__PURE__ */ jsxRuntime.jsx(slateReact.Editable, {
360
+ id,
361
+ renderLeaf: leaf.Leaf,
362
+ renderElement: Element,
363
+ onFocus: handleFocus,
364
+ onKeyDown: handleKeyDown,
365
+ onBlur: handleBlur,
366
+ className: css.cx(width, margin),
367
+ readOnly: editMode !== reactPage.BuilderEditMode.CONTENT,
368
+ placeholder: "Write some text..."
369
+ })
370
+ });
371
+ });
372
+ var EditableText$1 = EditableText;
373
+ exports.EditableText = EditableText;
374
+ exports["default"] = EditableText$1;
375
+ //# sourceMappingURL=index.cjs11.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs11.js","sources":["../src/components/builtin/Text/components/Element/block.tsx","../src/components/builtin/Text/components/Element/inline.tsx","../src/components/builtin/Text/components/Element/element.tsx","../src/components/builtin/Text/EditableText/useSyncWithBuilder.tsx","../src/components/builtin/Text/EditableText/useSyncDOMSelection.tsx","../src/components/builtin/Text/EditableText/editable-text.tsx"],"sourcesContent":["import { cx } from '@emotion/css'\nimport { RenderElementProps } from 'slate-react'\nimport { useStyle } from '../../../../../runtimes/react/use-style'\nimport { useResponsiveStyle } from '../../../../utils/responsive-style'\nimport { Block, BlockType } from '../../../../../slate'\n\nexport interface InlineRenderElementProps extends RenderElementProps {\n element: Block\n}\n\nexport function BlockElement({ element, attributes, children }: InlineRenderElementProps) {\n const blockStyles = [\n useStyle({ margin: 0 }),\n useStyle(useResponsiveStyle([element.textAlign], ([textAlign = 'left']) => ({ textAlign }))),\n ]\n\n const quoteStyles = useStyle({\n padding: '0.5em 10px',\n fontSize: '1.25em',\n fontWeight: '300',\n borderLeft: '5px solid rgba(0, 0, 0, 0.1)',\n })\n\n switch (element.type) {\n case BlockType.Text:\n return (\n <span {...attributes} className={cx(...blockStyles)}>\n {children}\n </span>\n )\n case BlockType.Paragraph:\n return (\n <p {...attributes} className={cx(...blockStyles)}>\n {children}\n </p>\n )\n case BlockType.Heading1:\n return (\n <h1 {...attributes} className={cx(...blockStyles)}>\n {children}\n </h1>\n )\n case BlockType.Heading2:\n return (\n <h2 {...attributes} className={cx(...blockStyles)}>\n {children}\n </h2>\n )\n case BlockType.Heading3:\n return (\n <h3 {...attributes} className={cx(...blockStyles)}>\n {children}\n </h3>\n )\n case BlockType.Heading4:\n return (\n <h4 {...attributes} className={cx(...blockStyles)}>\n {children}\n </h4>\n )\n case BlockType.Heading5:\n return (\n <h5 {...attributes} className={cx(...blockStyles)}>\n {children}\n </h5>\n )\n case BlockType.Heading6:\n return (\n <h6 {...attributes} className={cx(...blockStyles)}>\n {children}\n </h6>\n )\n case BlockType.BlockQuote:\n return (\n <blockquote {...attributes} className={cx(...blockStyles, quoteStyles)}>\n {children}\n </blockquote>\n )\n case BlockType.OrderedList:\n return (\n <ol {...attributes} className={cx(...blockStyles)} style={{ listStylePosition: 'inside' }}>\n {children}\n </ol>\n )\n case BlockType.UnorderedList:\n return (\n <ul {...attributes} className={cx(...blockStyles)} style={{ listStylePosition: 'inside' }}>\n {children}\n </ul>\n )\n case BlockType.ListItem:\n return (\n <li {...attributes} className={cx(...blockStyles)}>\n {children}\n </li>\n )\n case BlockType.ListItemChild:\n return (\n <span {...attributes} className={cx(...blockStyles)}>\n {children}\n </span>\n )\n\n default:\n return null\n }\n}\n","import { cx } from '@emotion/css'\nimport { ComponentPropsWithoutRef } from 'react'\nimport { RenderElementProps } from 'slate-react'\nimport { useStyle } from '../../../../../runtimes/react/use-style'\nimport { Link } from '../../../../shared/Link'\nimport { Inline, InlineType } from '../../../../../slate'\n\nfunction StyledLink({ className, ...restOfProps }: ComponentPropsWithoutRef<typeof Link>) {\n return <Link {...restOfProps} className={cx(useStyle({ textDecoration: 'none' }), className)} />\n}\n\nexport interface InlineRenderElementProps extends RenderElementProps {\n element: Inline\n}\n\nexport function InlineElement({ element, attributes, children }: InlineRenderElementProps) {\n switch (element.type) {\n case InlineType.Code:\n return <code {...attributes}>{children}</code>\n case InlineType.SuperScript:\n return <sup {...attributes}>{children}</sup>\n case InlineType.SubScript:\n return <sub {...attributes}>{children}</sub>\n case InlineType.Link:\n return (\n <StyledLink {...attributes} link={element.link}>\n {children}\n </StyledLink>\n )\n }\n}\n","import { RenderElementProps } from 'slate-react'\nimport { BlockElement } from './block'\nimport { InlineElement } from './inline'\nimport { InlineType, BlockType } from '../../../../../slate'\n\nexport function Element({ element, ...props }: RenderElementProps) {\n switch (element.type) {\n case InlineType.Code:\n case InlineType.SuperScript:\n case InlineType.SubScript:\n case InlineType.Link:\n return <InlineElement element={element} {...props} />\n case BlockType.Paragraph:\n case BlockType.Heading1:\n case BlockType.Heading2:\n case BlockType.Heading3:\n case BlockType.BlockQuote:\n case BlockType.OrderedList:\n case BlockType.UnorderedList:\n case BlockType.ListItem:\n case BlockType.ListItemChild:\n return <BlockElement element={element} {...props} />\n default:\n return <span {...props.attributes}>{props.children}</span>\n }\n}\n","import { useState, useEffect, useCallback } from 'react'\nimport { Editor } from 'slate'\nimport { richTextDTOtoDAO, richTextDTOtoSelection } from '../../../../controls'\nimport { RichTextValue } from '../../../../prop-controllers'\nimport deepEqual from '../../../../utils/deepEqual'\nimport { useIsInBuilder } from '../../../../runtimes/react'\n\nconst COMMIT_DEBOUNCE_DELAY = 500\n\n/**\n * Compare new prop value with current editor and update editor\n * if the values are not equal.\n */\nexport function useSyncWithBuilder(editor: Editor, text?: RichTextValue) {\n const [shouldCommit, setShouldCommit] = useState(true)\n const isInBuilder = useIsInBuilder()\n\n useEffect(() => {\n if (shouldCommit && text && isInBuilder) {\n const nextValue = richTextDTOtoDAO(text)\n const nextSelection = richTextDTOtoSelection(text)\n if (!deepEqual(editor.children, nextValue) || !deepEqual(editor.selection, nextSelection)) {\n editor.children = nextValue\n editor.selection = nextSelection\n editor.onChange()\n }\n }\n }, [editor, shouldCommit, text])\n\n useEffect(() => {\n if (shouldCommit) return\n\n const timeoutId = window.setTimeout(() => {\n setShouldCommit(true)\n }, COMMIT_DEBOUNCE_DELAY)\n\n return () => {\n window.clearTimeout(timeoutId)\n }\n }, [shouldCommit])\n\n return useCallback(() => setShouldCommit(false), [])\n}\n","import { ReactEditor } from 'slate-react'\nimport { useIsomorphicLayoutEffect } from '../../../hooks/useIsomorphicLayoutEffect'\nimport { Editor, Range as SlateRange } from 'slate'\n\n/**\n * Clicking outside of the host blurs our `<Editable />`.\n * `<Editable />` only updates the DOM's selection to match slate when it is focused.\n * In the case of a panel being clicked this hook updates the DOM selection to match slate.\n */\nexport function useSyncDOMSelection(editor: Editor, isEnabled: boolean) {\n useIsomorphicLayoutEffect(() => {\n if (!isEnabled || editor.selection == null || ReactEditor.isFocused(editor)) return\n try {\n const root = ReactEditor.findDocumentOrShadowRoot(editor) as Document\n const domSelection = root.getSelection()\n const newDomRange: Range | null = ReactEditor.toDOMRange(editor, editor.selection)\n\n if (newDomRange) {\n if (SlateRange.isBackward(editor.selection!)) {\n domSelection?.setBaseAndExtent(\n newDomRange.endContainer,\n newDomRange.endOffset,\n newDomRange.startContainer,\n newDomRange.startOffset,\n )\n } else {\n domSelection?.setBaseAndExtent(\n newDomRange.startContainer,\n newDomRange.startOffset,\n newDomRange.endContainer,\n newDomRange.endOffset,\n )\n }\n } else {\n domSelection?.removeAllRanges()\n }\n } catch (e) {\n console.error(e)\n }\n })\n}\n","import {\n FocusEvent,\n forwardRef,\n KeyboardEvent,\n Ref,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useState,\n} from 'react'\n\nimport { createEditor } from 'slate'\nimport { Slate, Editable, withReact, ReactEditor } from 'slate-react'\n\nimport { ElementIDValue, RichTextValue } from '../../../../prop-controllers/descriptors'\nimport { cx } from '@emotion/css'\nimport { DescriptorsPropControllers } from '../../../../prop-controllers/instances'\nimport { Descriptors } from '../../../../runtimes/react/controls/rich-text'\nimport { getBox } from '../../../../box-model'\nimport { PropControllersHandle } from '../../../../state/modules/prop-controller-handles'\nimport { richTextDTOtoDAO } from '../../../../controls'\nimport { Leaf } from '../components/Leaf'\nimport { Element } from '../components/Element'\nimport { useSyncWithBuilder } from './useSyncWithBuilder'\nimport isHotkey from 'is-hotkey'\nimport { useBuilderEditMode } from '../../../../runtimes/react'\nimport { BuilderEditMode } from '../../../../state/modules/builder-edit-mode'\nimport { onKeyDown, withBlock, withTypography, withBuilder } from '../../../../slate'\nimport { pollBoxModel } from '../../../../runtimes/react/poll-box-model'\nimport { useSyncDOMSelection } from './useSyncDOMSelection'\nimport { RichTextDAO, BlockType } from '../../../../slate'\n\ntype Props = {\n id?: ElementIDValue\n text?: RichTextValue\n width?: string\n margin?: string\n}\n\nconst defaultText: RichTextDAO = [{ type: BlockType.Paragraph, children: [{ text: '' }] }]\n\nexport const EditableText = forwardRef(function EditableText(\n { id, text, width, margin }: Props,\n ref: Ref<PropControllersHandle<Descriptors>>,\n) {\n const [editor] = useState(() => withBlock(withTypography(withBuilder(withReact(createEditor())))))\n const [isPreservingDOMSElection, setIsPreservingDOMSelection] = useState(false)\n useSyncDOMSelection(editor, isPreservingDOMSElection)\n const delaySync = useSyncWithBuilder(editor, text)\n const editMode = useBuilderEditMode()\n\n const [propControllers, setPropControllers] =\n useState<DescriptorsPropControllers<Descriptors> | null>(null)\n const controller = propControllers?.text\n\n useEffect(() => {\n if (controller == null) return\n\n const element = ReactEditor.toDOMNode(editor, editor)\n\n return pollBoxModel({\n element,\n onBoxModelChange: boxModel => controller.changeBoxModel(boxModel),\n })\n }, [editor, controller])\n\n useImperativeHandle(\n ref,\n () => ({\n getDomNode() {\n return ReactEditor.toDOMNode(editor, editor)\n },\n getBoxModel() {\n return getBox(ReactEditor.toDOMNode(editor, editor))\n },\n setPropControllers,\n }),\n [editor, setPropControllers],\n )\n\n const initialValue = useMemo(() => (text ? richTextDTOtoDAO(text) : defaultText), [text])\n\n useEffect(() => {\n controller?.setSlateEditor(editor)\n }, [controller, editor])\n\n const handleFocus = useCallback(() => {\n controller?.focus()\n setIsPreservingDOMSelection(true)\n }, [controller])\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (isHotkey('mod+shift+z', e)) return controller?.redo()\n if (isHotkey('mod+z', e)) return controller?.undo()\n if (isHotkey('escape')(e)) return controller?.blur()\n onKeyDown(e, editor)\n },\n [controller, editor],\n )\n\n const handleBlur = useCallback((e: FocusEvent) => {\n // When clicking outside of the iframe (`relatedTarget` is null) we want to preserve the DOM selection.\n if (e.relatedTarget == null) return\n // Otherwise we want to deselect on blur and stop preserving selection.\n setIsPreservingDOMSelection(false)\n ReactEditor.deselect(editor)\n }, [])\n\n return (\n <Slate editor={editor} value={initialValue} onChange={delaySync}>\n <Editable\n id={id}\n renderLeaf={Leaf}\n renderElement={Element}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onBlur={handleBlur}\n className={cx(width, margin)}\n readOnly={editMode !== BuilderEditMode.CONTENT}\n placeholder=\"Write some text...\"\n />\n </Slate>\n )\n})\n\nexport default EditableText\n"],"names":["element","attributes","children","blockStyles","useStyle","margin","useResponsiveStyle","textAlign","quoteStyles","padding","fontSize","fontWeight","borderLeft","type","BlockType","Text","cx","Paragraph","Heading1","Heading2","Heading3","Heading4","Heading5","Heading6","BlockQuote","OrderedList","listStylePosition","UnorderedList","ListItem","ListItemChild","className","restOfProps","Link","textDecoration","InlineType","Code","SuperScript","SubScript","link","props","COMMIT_DEBOUNCE_DELAY","editor","text","shouldCommit","setShouldCommit","useState","isInBuilder","useIsInBuilder","useEffect","nextValue","richTextDTOtoDAO","nextSelection","richTextDTOtoSelection","deepEqual","selection","onChange","timeoutId","window","setTimeout","clearTimeout","useCallback","isEnabled","useIsomorphicLayoutEffect","ReactEditor","isFocused","root","findDocumentOrShadowRoot","domSelection","getSelection","newDomRange","toDOMRange","SlateRange","isBackward","setBaseAndExtent","endContainer","endOffset","startContainer","startOffset","removeAllRanges","e","console","error","defaultText","EditableText","forwardRef","id","width","ref","withBlock","withTypography","withBuilder","withReact","createEditor","isPreservingDOMSElection","setIsPreservingDOMSelection","useSyncDOMSelection","delaySync","useSyncWithBuilder","editMode","useBuilderEditMode","propControllers","setPropControllers","controller","toDOMNode","pollBoxModel","onBoxModelChange","boxModel","changeBoxModel","useImperativeHandle","getDomNode","getBoxModel","getBox","initialValue","useMemo","setSlateEditor","handleFocus","focus","handleKeyDown","isHotkey","redo","undo","blur","onKeyDown","handleBlur","relatedTarget","deselect","Slate","Editable","Leaf","Element","BuilderEditMode","CONTENT"],"mappings":"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"}
@@ -31,16 +31,14 @@ var __objRest = (source, exclude) => {
31
31
  return target;
32
32
  };
33
33
  var React = require("react");
34
- var next = require("./index.cjs.js");
35
- require("use-sync-external-store/shim");
36
34
  var reactPage = require("./react-page.cjs.js");
35
+ require("use-sync-external-store/shim");
36
+ var next = require("./index.cjs.js");
37
37
  require("slate");
38
- require("./state/breakpoints.cjs.js");
39
- require("is-hotkey");
40
- require("slate-react");
41
38
  var useMediaQuery = require("./useMediaQuery.cjs.js");
42
39
  var css = require("@emotion/css");
43
40
  var jsxRuntime = require("react/jsx-runtime");
41
+ require("./state/breakpoints.cjs.js");
44
42
  var NextImage = require("next/image");
45
43
  var useIsomorphicLayoutEffect = require("./useIsomorphicLayoutEffect.cjs.js");
46
44
  var ReactPlayer = require("react-player");
@@ -136,7 +134,7 @@ function GridItem(_a) {
136
134
  "itemAnimateDelay",
137
135
  "itemStaggerDuration"
138
136
  ]);
139
- const gridItemClassName = next.useStyle(next.useResponsiveGridItem({
137
+ const gridItemClassName = reactPage.useStyle(next.useResponsiveGridItem({
140
138
  grid,
141
139
  index,
142
140
  columnGap,
@@ -289,7 +287,7 @@ function useBoxAnimation(responsiveAnimationType, responsiveDuration, responisve
289
287
  const replayAnimation = React.useCallback(() => {
290
288
  setEntered(false);
291
289
  }, []);
292
- return [next.useStyle({
290
+ return [reactPage.useStyle({
293
291
  "@media (prefers-reduced-motion: no-preference)": isEntered ? entered : exited
294
292
  }), replayAnimation, setElement];
295
293
  }
@@ -300,7 +298,7 @@ function useItemAnimation(responsiveDuration, responisveDelay, responsiveStagger
300
298
  const delayFromStagger = responsiveStagger == null || index == null ? 0 : stagger * index;
301
299
  const actualDelay = (delay + delayFromStagger) * 1e3;
302
300
  const actualDuration = duration * 1e3;
303
- return next.useStyle({
301
+ return reactPage.useStyle({
304
302
  "@media (prefers-reduced-motion: no-preference)": {
305
303
  transition: `transform ${actualDuration}ms cubic-bezier(0.16, 0.84, 0.44, 1) ${actualDelay}ms,filter ${actualDuration}ms cubic-bezier(0.16, 0.84, 0.44, 1) ${actualDelay}ms, opacity ${actualDuration}ms ease ${actualDelay}ms`
306
304
  }
@@ -420,7 +418,7 @@ const Container = React.forwardRef(function Container2(_e, ref) {
420
418
  ]);
421
419
  return /* @__PURE__ */ jsxRuntime.jsx("div", __spreadProps(__spreadValues({}, restOfProps), {
422
420
  ref,
423
- className: css.cx(next.useStyle({
421
+ className: css.cx(reactPage.useStyle({
424
422
  position: "absolute",
425
423
  top: 0,
426
424
  left: 0,
@@ -436,7 +434,7 @@ function Mask({
436
434
  visible
437
435
  }) {
438
436
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
439
- className: next.useStyle({
437
+ className: reactPage.useStyle({
440
438
  position: "absolute",
441
439
  top: 0,
442
440
  left: 0,
@@ -585,7 +583,7 @@ function BackgroundDeviceLayer({
585
583
  display: v === true ? "block" : "none"
586
584
  }));
587
585
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
588
- className: next.useStyle(__spreadProps(__spreadValues(__spreadValues({}, containerStyle), visibilityStyle), {
586
+ className: reactPage.useStyle(__spreadProps(__spreadValues(__spreadValues({}, containerStyle), visibilityStyle), {
589
587
  overflow: "hidden"
590
588
  })),
591
589
  children: [...layer].reverse().map((bg) => {
@@ -619,7 +617,7 @@ function ColorBackground({
619
617
  color
620
618
  }) {
621
619
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
622
- className: next.useStyle(__spreadProps(__spreadValues({}, containerStyle), {
620
+ className: reactPage.useStyle(__spreadProps(__spreadValues({}, containerStyle), {
623
621
  backgroundColor: color
624
622
  }))
625
623
  });
@@ -644,7 +642,7 @@ function ImageBackground({
644
642
  parallax
645
643
  }) {
646
644
  const backgroundPosition = `${position.x}% ${position.y}%`;
647
- const containerClassName = next.useStyle(containerStyle);
645
+ const containerClassName = reactPage.useStyle(containerStyle);
648
646
  if (repeat === "no-repeat" && size !== "auto" && publicUrl != null) {
649
647
  return /* @__PURE__ */ jsxRuntime.jsx(Parallax, {
650
648
  strength: parallax,
@@ -693,7 +691,7 @@ function GradientBackground({
693
691
  angle = Math.PI
694
692
  }) {
695
693
  return /* @__PURE__ */ jsxRuntime.jsx("div", {
696
- className: next.useStyle(__spreadProps(__spreadValues({}, containerStyle), {
694
+ className: reactPage.useStyle(__spreadProps(__spreadValues({}, containerStyle), {
697
695
  background: isRadial ? `radial-gradient(${gradient})` : `linear-gradient(${angle}rad, ${gradient})`
698
696
  }))
699
697
  });
@@ -719,7 +717,7 @@ function VideoBackground({
719
717
  return /* @__PURE__ */ jsxRuntime.jsx(Parallax, {
720
718
  strength: parallax,
721
719
  children: (getParallaxProps) => /* @__PURE__ */ jsxRuntime.jsx("div", __spreadProps(__spreadValues({}, getParallaxProps({
722
- className: next.useStyle(containerStyle)
720
+ className: reactPage.useStyle(containerStyle)
723
721
  })), {
724
722
  children: /* @__PURE__ */ jsxRuntime.jsx(BackgroundVideo, {
725
723
  url,
@@ -743,7 +741,7 @@ var BackgroundsContainer = React.forwardRef(function BackgroundsContainer2(_g, r
743
741
  ]);
744
742
  return /* @__PURE__ */ jsxRuntime.jsxs("div", __spreadProps(__spreadValues({}, restOfProps), {
745
743
  ref,
746
- className: css.cx(next.useStyle({
744
+ className: css.cx(reactPage.useStyle({
747
745
  position: "relative",
748
746
  width: "100%",
749
747
  margin: "0 auto",