@makeswift/runtime 0.28.10-canary.9 → 0.29.0-canary.19

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 (678) hide show
  1. package/dist/cjs/api/graphql-api-client.js +1 -1
  2. package/dist/cjs/api/rest-api-client.js +2 -2
  3. package/dist/cjs/api/rest-api-client.js.map +1 -1
  4. package/dist/cjs/api-handler/handlers/manifest.js +1 -1
  5. package/dist/cjs/components/builtin/Box/Box.js +58 -54
  6. package/dist/cjs/components/builtin/Box/Box.js.map +1 -1
  7. package/dist/cjs/components/builtin/Box/animations.js +7 -9
  8. package/dist/cjs/components/builtin/Box/animations.js.map +1 -1
  9. package/dist/cjs/components/builtin/Box/components/Placeholder/index.js +43 -39
  10. package/dist/cjs/components/builtin/Box/components/Placeholder/index.js.map +1 -1
  11. package/dist/cjs/components/builtin/Button/Button.js +165 -176
  12. package/dist/cjs/components/builtin/Button/Button.js.map +1 -1
  13. package/dist/cjs/components/builtin/Carousel/Carousel.js +168 -142
  14. package/dist/cjs/components/builtin/Carousel/Carousel.js.map +1 -1
  15. package/dist/cjs/components/builtin/Countdown/Countdown.js +165 -171
  16. package/dist/cjs/components/builtin/Countdown/Countdown.js.map +1 -1
  17. package/dist/cjs/components/builtin/Divider/Divider.js +56 -64
  18. package/dist/cjs/components/builtin/Divider/Divider.js.map +1 -1
  19. package/dist/cjs/components/builtin/Embed/Embed.js +14 -12
  20. package/dist/cjs/components/builtin/Embed/Embed.js.map +1 -1
  21. package/dist/cjs/components/builtin/Form/Form.js +65 -74
  22. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  23. package/dist/cjs/components/builtin/Form/components/Field/components/Checkbox/index.js +113 -121
  24. package/dist/cjs/components/builtin/Form/components/Field/components/Checkbox/index.js.map +1 -1
  25. package/dist/cjs/components/builtin/Form/components/Field/components/CheckboxTableField/index.js +29 -31
  26. package/dist/cjs/components/builtin/Form/components/Field/components/CheckboxTableField/index.js.map +1 -1
  27. package/dist/cjs/components/builtin/Form/components/Field/components/Input/index.js +14 -18
  28. package/dist/cjs/components/builtin/Form/components/Field/components/Input/index.js.map +1 -1
  29. package/dist/cjs/components/builtin/Form/components/Field/components/Label/index.js +17 -20
  30. package/dist/cjs/components/builtin/Form/components/Field/components/Label/index.js.map +1 -1
  31. package/dist/cjs/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.js +23 -18
  32. package/dist/cjs/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.js.map +1 -1
  33. package/dist/cjs/components/builtin/Form/components/Field/components/PlaceholderTableField/index.js +43 -46
  34. package/dist/cjs/components/builtin/Form/components/Field/components/PlaceholderTableField/index.js.map +1 -1
  35. package/dist/cjs/components/builtin/Form/components/Field/components/RadioButton/index.js +96 -105
  36. package/dist/cjs/components/builtin/Form/components/Field/components/RadioButton/index.js.map +1 -1
  37. package/dist/cjs/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.js +20 -19
  38. package/dist/cjs/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.js.map +1 -1
  39. package/dist/cjs/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.js +48 -54
  40. package/dist/cjs/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.js.map +1 -1
  41. package/dist/cjs/components/builtin/Form/components/Field/components/TextArea/index.js +8 -13
  42. package/dist/cjs/components/builtin/Form/components/Field/components/TextArea/index.js.map +1 -1
  43. package/dist/cjs/components/builtin/Form/components/Field/services/responsiveField.js +2 -2
  44. package/dist/cjs/components/builtin/Form/components/Field/services/responsiveField.js.map +1 -1
  45. package/dist/cjs/components/builtin/Form/components/Placeholder/index.js +57 -64
  46. package/dist/cjs/components/builtin/Form/components/Placeholder/index.js.map +1 -1
  47. package/dist/cjs/components/builtin/Form/components/Spinner/index.js +19 -19
  48. package/dist/cjs/components/builtin/Form/components/Spinner/index.js.map +1 -1
  49. package/dist/cjs/components/builtin/Image/Image.js +33 -17
  50. package/dist/cjs/components/builtin/Image/Image.js.map +1 -1
  51. package/dist/cjs/components/builtin/Image/register.js +11 -0
  52. package/dist/cjs/components/builtin/Image/register.js.map +1 -1
  53. package/dist/cjs/components/builtin/Navigation/Navigation.js +60 -68
  54. package/dist/cjs/components/builtin/Navigation/Navigation.js.map +1 -1
  55. package/dist/cjs/components/builtin/Navigation/components/DropDownButton/index.js +91 -97
  56. package/dist/cjs/components/builtin/Navigation/components/DropDownButton/index.js.map +1 -1
  57. package/dist/cjs/components/builtin/Navigation/components/LinksPlaceholder/index.js +12 -13
  58. package/dist/cjs/components/builtin/Navigation/components/LinksPlaceholder/index.js.map +1 -1
  59. package/dist/cjs/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.js +44 -33
  60. package/dist/cjs/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.js.map +1 -1
  61. package/dist/cjs/components/builtin/Navigation/components/MobileMenu/index.js +67 -70
  62. package/dist/cjs/components/builtin/Navigation/components/MobileMenu/index.js.map +1 -1
  63. package/dist/cjs/components/builtin/Root/Root.js +30 -21
  64. package/dist/cjs/components/builtin/Root/Root.js.map +1 -1
  65. package/dist/cjs/components/builtin/Root/components/Placeholder/index.js +33 -36
  66. package/dist/cjs/components/builtin/Root/components/Placeholder/index.js.map +1 -1
  67. package/dist/cjs/components/builtin/SocialLinks/SocialLinks.js +72 -79
  68. package/dist/cjs/components/builtin/SocialLinks/SocialLinks.js.map +1 -1
  69. package/dist/cjs/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.js +11 -12
  70. package/dist/cjs/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.js.map +1 -1
  71. package/dist/cjs/components/builtin/Text/Text.js +12 -2
  72. package/dist/cjs/components/builtin/Text/Text.js.map +1 -1
  73. package/dist/cjs/components/builtin/Video/Video.js +23 -28
  74. package/dist/cjs/components/builtin/Video/Video.js.map +1 -1
  75. package/dist/cjs/components/shared/BackgroundsContainer/components/BackgroundVideo/index.js +30 -35
  76. package/dist/cjs/components/shared/BackgroundsContainer/components/BackgroundVideo/index.js.map +1 -1
  77. package/dist/cjs/components/shared/BackgroundsContainer/components/Backgrounds/index.js +84 -66
  78. package/dist/cjs/components/shared/BackgroundsContainer/components/Backgrounds/index.js.map +1 -1
  79. package/dist/cjs/components/shared/BackgroundsContainer/index.js +31 -27
  80. package/dist/cjs/components/shared/BackgroundsContainer/index.js.map +1 -1
  81. package/dist/cjs/components/shared/FallbackComponent/FallbackComponent.js +27 -26
  82. package/dist/cjs/components/shared/FallbackComponent/FallbackComponent.js.map +1 -1
  83. package/dist/cjs/components/shared/GutterContainer/index.js +13 -16
  84. package/dist/cjs/components/shared/GutterContainer/index.js.map +1 -1
  85. package/dist/cjs/components/shared/grid-item.js +27 -11
  86. package/dist/cjs/components/shared/grid-item.js.map +1 -1
  87. package/dist/cjs/controls/index.js.map +1 -1
  88. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js +24 -13
  89. package/dist/cjs/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  90. package/dist/cjs/controls/serialization/base/visitor.js +5 -3
  91. package/dist/cjs/controls/serialization/base/visitor.js.map +1 -1
  92. package/dist/cjs/controls/visitors/merge-translations-visitor.js +1 -1
  93. package/dist/cjs/controls/visitors/merge-translations-visitor.js.map +1 -1
  94. package/dist/cjs/next/components/page.js +14 -1
  95. package/dist/cjs/next/components/page.js.map +1 -1
  96. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +3 -3
  97. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  98. package/dist/cjs/next/document.js +39 -10
  99. package/dist/cjs/next/document.js.map +1 -1
  100. package/dist/cjs/next/root-style-registry.js +2 -9
  101. package/dist/cjs/next/root-style-registry.js.map +1 -1
  102. package/dist/cjs/react/server/index.js +0 -2
  103. package/dist/cjs/react/server/index.js.map +1 -1
  104. package/dist/cjs/runtimes/react/components/ElementData.js +11 -2
  105. package/dist/cjs/runtimes/react/components/ElementData.js.map +1 -1
  106. package/dist/cjs/runtimes/react/components/GoogleFontLink.js +2 -1
  107. package/dist/cjs/runtimes/react/components/GoogleFontLink.js.map +1 -1
  108. package/dist/cjs/runtimes/react/components/framework-context.js.map +1 -1
  109. package/dist/cjs/runtimes/react/components/page/PageHead.js +0 -8
  110. package/dist/cjs/runtimes/react/components/page/PageHead.js.map +1 -1
  111. package/dist/cjs/runtimes/react/components/page/head-tags.js +0 -6
  112. package/dist/cjs/runtimes/react/components/page/head-tags.js.map +1 -1
  113. package/dist/cjs/runtimes/react/components/resolve-props.js +24 -5
  114. package/dist/cjs/runtimes/react/components/resolve-props.js.map +1 -1
  115. package/dist/cjs/runtimes/react/controls/control.js +22 -8
  116. package/dist/cjs/runtimes/react/controls/control.js.map +1 -1
  117. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js +20 -17
  118. package/dist/cjs/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  119. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js +98 -42
  120. package/dist/cjs/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  121. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js +87 -20
  122. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  123. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js +17 -3
  124. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  125. package/dist/cjs/runtimes/react/controls/rich-text/components/Leaf/leaf.js +5 -2
  126. package/dist/cjs/runtimes/react/controls/rich-text/components/Leaf/leaf.js.map +1 -1
  127. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +74 -32
  128. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  129. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/index.js +2 -18
  130. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/index.js.map +1 -1
  131. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js +36 -3
  132. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  133. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js +27 -3
  134. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  135. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +4 -4
  136. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  137. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +91 -31
  138. package/dist/cjs/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  139. package/dist/cjs/runtimes/react/controls/rich-text-v2/index.js +9 -3
  140. package/dist/cjs/runtimes/react/controls/rich-text-v2/index.js.map +1 -1
  141. package/dist/cjs/runtimes/react/controls/rich-text-v2/render-rich-text-v2.js +59 -0
  142. package/dist/cjs/runtimes/react/controls/rich-text-v2/render-rich-text-v2.js.map +1 -0
  143. package/dist/cjs/runtimes/react/controls/rich-text-v2/{rich-text-v2.js → rich-text-v2-value.js} +20 -15
  144. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2-value.js.map +1 -0
  145. package/dist/cjs/runtimes/react/controls/slot/slot-value.js +52 -34
  146. package/dist/cjs/runtimes/react/controls/slot/slot-value.js.map +1 -1
  147. package/dist/cjs/runtimes/react/controls/typography.js +6 -5
  148. package/dist/cjs/runtimes/react/controls/typography.js.map +1 -1
  149. package/dist/cjs/runtimes/react/controls/use-slate-reset.js +1 -1
  150. package/dist/cjs/runtimes/react/controls/use-slate-reset.js.map +1 -1
  151. package/dist/cjs/runtimes/react/css-runtime/browser-dynamic-styles-bridge.js +55 -0
  152. package/dist/cjs/runtimes/react/css-runtime/browser-dynamic-styles-bridge.js.map +1 -0
  153. package/dist/cjs/runtimes/react/css-runtime/components/controlled-styles.js +76 -0
  154. package/dist/cjs/runtimes/react/css-runtime/components/controlled-styles.js.map +1 -0
  155. package/dist/cjs/runtimes/react/css-runtime/components/makeswift-style.js +42 -0
  156. package/dist/cjs/runtimes/react/css-runtime/components/makeswift-style.js.map +1 -0
  157. package/dist/cjs/runtimes/react/css-runtime/components/rsc-emitted-style.js +46 -0
  158. package/dist/cjs/runtimes/react/css-runtime/components/rsc-emitted-style.js.map +1 -0
  159. package/dist/cjs/runtimes/react/css-runtime/components/styles-context-provider.js +54 -0
  160. package/dist/cjs/runtimes/react/css-runtime/components/styles-context-provider.js.map +1 -0
  161. package/dist/cjs/runtimes/react/css-runtime/constants.js +39 -0
  162. package/dist/cjs/runtimes/react/css-runtime/constants.js.map +1 -0
  163. package/dist/cjs/runtimes/react/css-runtime/hooks/use-base-styles.js +67 -0
  164. package/dist/cjs/runtimes/react/css-runtime/hooks/use-base-styles.js.map +1 -0
  165. package/dist/cjs/runtimes/react/css-runtime/hooks/use-controlled-styles.js +79 -0
  166. package/dist/cjs/runtimes/react/css-runtime/hooks/use-controlled-styles.js.map +1 -0
  167. package/dist/cjs/runtimes/react/css-runtime/hooks/use-css-reset.js +70 -0
  168. package/dist/cjs/runtimes/react/css-runtime/hooks/use-css-reset.js.map +1 -0
  169. package/dist/cjs/runtimes/react/css-runtime/hooks/use-dynamic-browser-style-updates.js +41 -0
  170. package/dist/cjs/runtimes/react/css-runtime/hooks/use-dynamic-browser-style-updates.js.map +1 -0
  171. package/dist/cjs/runtimes/react/css-runtime/hooks/use-keyframes.js +64 -0
  172. package/dist/cjs/runtimes/react/css-runtime/hooks/use-keyframes.js.map +1 -0
  173. package/dist/cjs/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js +78 -0
  174. package/dist/cjs/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js.map +1 -0
  175. package/dist/cjs/runtimes/react/{use-style.js → css-runtime/hooks/use-style.js} +49 -30
  176. package/dist/cjs/runtimes/react/css-runtime/hooks/use-style.js.map +1 -0
  177. package/dist/cjs/runtimes/react/css-runtime/hooks/use-styles-context.js +39 -0
  178. package/dist/cjs/runtimes/react/css-runtime/hooks/use-styles-context.js.map +1 -0
  179. package/dist/cjs/runtimes/react/css-runtime/serialize-css.js +51 -0
  180. package/dist/cjs/runtimes/react/css-runtime/serialize-css.js.map +1 -0
  181. package/dist/cjs/runtimes/react/css-runtime/style-element-updater.js +56 -0
  182. package/dist/cjs/runtimes/react/css-runtime/style-element-updater.js.map +1 -0
  183. package/dist/cjs/runtimes/react/css-runtime/styles-registry.js +283 -0
  184. package/dist/cjs/runtimes/react/css-runtime/styles-registry.js.map +1 -0
  185. package/dist/cjs/runtimes/react/css-runtime/stylesheet-engine.js +89 -0
  186. package/dist/cjs/runtimes/react/css-runtime/stylesheet-engine.js.map +1 -0
  187. package/dist/cjs/runtimes/react/{hooks/use-css-id.js → css-runtime/types.js} +12 -10
  188. package/dist/cjs/runtimes/react/css-runtime/types.js.map +1 -0
  189. package/dist/cjs/runtimes/react/css-runtime/utils.js +53 -0
  190. package/dist/cjs/runtimes/react/css-runtime/utils.js.map +1 -0
  191. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js +10 -9
  192. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  193. package/dist/cjs/runtimes/react/hooks/use-resolved-value.js +2 -2
  194. package/dist/cjs/runtimes/react/hooks/use-resolved-value.js.map +1 -1
  195. package/dist/cjs/runtimes/react/legacy-controls.js +91 -21
  196. package/dist/cjs/runtimes/react/legacy-controls.js.map +1 -1
  197. package/dist/cjs/runtimes/react/poll-box-model.js +2 -1
  198. package/dist/cjs/runtimes/react/poll-box-model.js.map +1 -1
  199. package/dist/cjs/runtimes/react/root-style-registry.js +32 -75
  200. package/dist/cjs/runtimes/react/root-style-registry.js.map +1 -1
  201. package/dist/cjs/runtimes/react/server/components/editable-server-element.js +7 -4
  202. package/dist/cjs/runtimes/react/server/components/editable-server-element.js.map +1 -1
  203. package/dist/cjs/runtimes/react/server/components/element-data.js +16 -8
  204. package/dist/cjs/runtimes/react/server/components/element-data.js.map +1 -1
  205. package/dist/cjs/runtimes/react/server/components/server-elements-cache.js +1 -2
  206. package/dist/cjs/runtimes/react/server/components/server-elements-cache.js.map +1 -1
  207. package/dist/cjs/runtimes/react/server/index.js +0 -3
  208. package/dist/cjs/runtimes/react/server/index.js.map +1 -1
  209. package/dist/cjs/runtimes/react/server/render-context.js.map +1 -1
  210. package/dist/cjs/slate/BlockPlugin/index.js +101 -21
  211. package/dist/cjs/slate/BlockPlugin/index.js.map +1 -1
  212. package/dist/cjs/slate/LinkPlugin/index.js +32 -17
  213. package/dist/cjs/slate/LinkPlugin/index.js.map +1 -1
  214. package/dist/cjs/slate/TypographyPlugin/index.js +12 -2
  215. package/dist/cjs/slate/TypographyPlugin/index.js.map +1 -1
  216. package/dist/cjs/testing/jest-snapshot-serializer.js +134 -0
  217. package/dist/cjs/testing/jest-snapshot-serializer.js.map +1 -0
  218. package/dist/cjs/unstable-framework-support/index.js +4 -5
  219. package/dist/cjs/unstable-framework-support/index.js.map +1 -1
  220. package/dist/esm/api/graphql-api-client.js +1 -1
  221. package/dist/esm/api/rest-api-client.js +2 -2
  222. package/dist/esm/api/rest-api-client.js.map +1 -1
  223. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  224. package/dist/esm/components/builtin/Box/Box.js +59 -55
  225. package/dist/esm/components/builtin/Box/Box.js.map +1 -1
  226. package/dist/esm/components/builtin/Box/animations.js +7 -9
  227. package/dist/esm/components/builtin/Box/animations.js.map +1 -1
  228. package/dist/esm/components/builtin/Box/components/Placeholder/index.js +44 -40
  229. package/dist/esm/components/builtin/Box/components/Placeholder/index.js.map +1 -1
  230. package/dist/esm/components/builtin/Button/Button.js +166 -177
  231. package/dist/esm/components/builtin/Button/Button.js.map +1 -1
  232. package/dist/esm/components/builtin/Carousel/Carousel.js +169 -143
  233. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  234. package/dist/esm/components/builtin/Countdown/Countdown.js +166 -172
  235. package/dist/esm/components/builtin/Countdown/Countdown.js.map +1 -1
  236. package/dist/esm/components/builtin/Divider/Divider.js +54 -62
  237. package/dist/esm/components/builtin/Divider/Divider.js.map +1 -1
  238. package/dist/esm/components/builtin/Embed/Embed.js +15 -13
  239. package/dist/esm/components/builtin/Embed/Embed.js.map +1 -1
  240. package/dist/esm/components/builtin/Form/Form.js +65 -74
  241. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  242. package/dist/esm/components/builtin/Form/components/Field/components/Checkbox/index.js +117 -122
  243. package/dist/esm/components/builtin/Form/components/Field/components/Checkbox/index.js.map +1 -1
  244. package/dist/esm/components/builtin/Form/components/Field/components/CheckboxTableField/index.js +33 -32
  245. package/dist/esm/components/builtin/Form/components/Field/components/CheckboxTableField/index.js.map +1 -1
  246. package/dist/esm/components/builtin/Form/components/Field/components/Input/index.js +18 -19
  247. package/dist/esm/components/builtin/Form/components/Field/components/Input/index.js.map +1 -1
  248. package/dist/esm/components/builtin/Form/components/Field/components/Label/index.js +21 -21
  249. package/dist/esm/components/builtin/Form/components/Field/components/Label/index.js.map +1 -1
  250. package/dist/esm/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.js +27 -19
  251. package/dist/esm/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.js.map +1 -1
  252. package/dist/esm/components/builtin/Form/components/Field/components/PlaceholderTableField/index.js +46 -46
  253. package/dist/esm/components/builtin/Form/components/Field/components/PlaceholderTableField/index.js.map +1 -1
  254. package/dist/esm/components/builtin/Form/components/Field/components/RadioButton/index.js +100 -106
  255. package/dist/esm/components/builtin/Form/components/Field/components/RadioButton/index.js.map +1 -1
  256. package/dist/esm/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.js +24 -20
  257. package/dist/esm/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.js.map +1 -1
  258. package/dist/esm/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.js +51 -54
  259. package/dist/esm/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.js.map +1 -1
  260. package/dist/esm/components/builtin/Form/components/Field/components/TextArea/index.js +12 -14
  261. package/dist/esm/components/builtin/Form/components/Field/components/TextArea/index.js.map +1 -1
  262. package/dist/esm/components/builtin/Form/components/Field/services/responsiveField.js +2 -2
  263. package/dist/esm/components/builtin/Form/components/Field/services/responsiveField.js.map +1 -1
  264. package/dist/esm/components/builtin/Form/components/Placeholder/index.js +58 -65
  265. package/dist/esm/components/builtin/Form/components/Placeholder/index.js.map +1 -1
  266. package/dist/esm/components/builtin/Form/components/Spinner/index.js +20 -20
  267. package/dist/esm/components/builtin/Form/components/Spinner/index.js.map +1 -1
  268. package/dist/esm/components/builtin/Image/Image.js +34 -18
  269. package/dist/esm/components/builtin/Image/Image.js.map +1 -1
  270. package/dist/esm/components/builtin/Image/register.js +12 -0
  271. package/dist/esm/components/builtin/Image/register.js.map +1 -1
  272. package/dist/esm/components/builtin/Navigation/Navigation.js +61 -69
  273. package/dist/esm/components/builtin/Navigation/Navigation.js.map +1 -1
  274. package/dist/esm/components/builtin/Navigation/components/DropDownButton/index.js +92 -98
  275. package/dist/esm/components/builtin/Navigation/components/DropDownButton/index.js.map +1 -1
  276. package/dist/esm/components/builtin/Navigation/components/LinksPlaceholder/index.js +13 -14
  277. package/dist/esm/components/builtin/Navigation/components/LinksPlaceholder/index.js.map +1 -1
  278. package/dist/esm/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.js +44 -33
  279. package/dist/esm/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.js.map +1 -1
  280. package/dist/esm/components/builtin/Navigation/components/MobileMenu/index.js +70 -73
  281. package/dist/esm/components/builtin/Navigation/components/MobileMenu/index.js.map +1 -1
  282. package/dist/esm/components/builtin/Root/Root.js +31 -22
  283. package/dist/esm/components/builtin/Root/Root.js.map +1 -1
  284. package/dist/esm/components/builtin/Root/components/Placeholder/index.js +34 -37
  285. package/dist/esm/components/builtin/Root/components/Placeholder/index.js.map +1 -1
  286. package/dist/esm/components/builtin/SocialLinks/SocialLinks.js +73 -80
  287. package/dist/esm/components/builtin/SocialLinks/SocialLinks.js.map +1 -1
  288. package/dist/esm/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.js +12 -13
  289. package/dist/esm/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.js.map +1 -1
  290. package/dist/esm/components/builtin/Text/Text.js +2 -2
  291. package/dist/esm/components/builtin/Text/Text.js.map +1 -1
  292. package/dist/esm/components/builtin/Video/Video.js +24 -29
  293. package/dist/esm/components/builtin/Video/Video.js.map +1 -1
  294. package/dist/esm/components/shared/BackgroundsContainer/components/BackgroundVideo/index.js +30 -35
  295. package/dist/esm/components/shared/BackgroundsContainer/components/BackgroundVideo/index.js.map +1 -1
  296. package/dist/esm/components/shared/BackgroundsContainer/components/Backgrounds/index.js +85 -67
  297. package/dist/esm/components/shared/BackgroundsContainer/components/Backgrounds/index.js.map +1 -1
  298. package/dist/esm/components/shared/BackgroundsContainer/index.js +32 -28
  299. package/dist/esm/components/shared/BackgroundsContainer/index.js.map +1 -1
  300. package/dist/esm/components/shared/FallbackComponent/FallbackComponent.js +28 -27
  301. package/dist/esm/components/shared/FallbackComponent/FallbackComponent.js.map +1 -1
  302. package/dist/esm/components/shared/GutterContainer/index.js +14 -17
  303. package/dist/esm/components/shared/GutterContainer/index.js.map +1 -1
  304. package/dist/esm/components/shared/grid-item.js +18 -12
  305. package/dist/esm/components/shared/grid-item.js.map +1 -1
  306. package/dist/esm/controls/index.js.map +1 -1
  307. package/dist/esm/controls/rich-text-v2/rich-text-v2.js +24 -13
  308. package/dist/esm/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  309. package/dist/esm/controls/serialization/base/visitor.js +5 -3
  310. package/dist/esm/controls/serialization/base/visitor.js.map +1 -1
  311. package/dist/esm/controls/visitors/merge-translations-visitor.js +1 -1
  312. package/dist/esm/controls/visitors/merge-translations-visitor.js.map +1 -1
  313. package/dist/esm/next/components/page.js +15 -2
  314. package/dist/esm/next/components/page.js.map +1 -1
  315. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +3 -3
  316. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  317. package/dist/esm/next/document.js +42 -10
  318. package/dist/esm/next/document.js.map +1 -1
  319. package/dist/esm/next/root-style-registry.js +3 -12
  320. package/dist/esm/next/root-style-registry.js.map +1 -1
  321. package/dist/esm/react/server/index.js +0 -2
  322. package/dist/esm/react/server/index.js.map +1 -1
  323. package/dist/esm/runtimes/react/components/ElementData.js +12 -3
  324. package/dist/esm/runtimes/react/components/ElementData.js.map +1 -1
  325. package/dist/esm/runtimes/react/components/GoogleFontLink.js +2 -1
  326. package/dist/esm/runtimes/react/components/GoogleFontLink.js.map +1 -1
  327. package/dist/esm/runtimes/react/components/framework-context.js.map +1 -1
  328. package/dist/esm/runtimes/react/components/page/PageHead.js +1 -9
  329. package/dist/esm/runtimes/react/components/page/PageHead.js.map +1 -1
  330. package/dist/esm/runtimes/react/components/page/head-tags.js +0 -5
  331. package/dist/esm/runtimes/react/components/page/head-tags.js.map +1 -1
  332. package/dist/esm/runtimes/react/components/resolve-props.js +24 -5
  333. package/dist/esm/runtimes/react/components/resolve-props.js.map +1 -1
  334. package/dist/esm/runtimes/react/controls/control.js +22 -8
  335. package/dist/esm/runtimes/react/controls/control.js.map +1 -1
  336. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js +21 -18
  337. package/dist/esm/runtimes/react/controls/rich-text/EditableText/editable-text.js.map +1 -1
  338. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js +100 -44
  339. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -1
  340. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js +78 -21
  341. package/dist/esm/runtimes/react/controls/rich-text/components/Element/block.js.map +1 -1
  342. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js +8 -4
  343. package/dist/esm/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -1
  344. package/dist/esm/runtimes/react/controls/rich-text/components/Leaf/leaf.js +7 -4
  345. package/dist/esm/runtimes/react/controls/rich-text/components/Leaf/leaf.js.map +1 -1
  346. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js +78 -33
  347. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.js.map +1 -1
  348. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/index.js +2 -3
  349. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/index.js.map +1 -1
  350. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js +36 -3
  351. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -1
  352. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js +27 -3
  353. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -1
  354. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +4 -4
  355. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  356. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js +97 -34
  357. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -1
  358. package/dist/esm/runtimes/react/controls/rich-text-v2/index.js +4 -1
  359. package/dist/esm/runtimes/react/controls/rich-text-v2/index.js.map +1 -1
  360. package/dist/esm/runtimes/react/controls/rich-text-v2/render-rich-text-v2.js +25 -0
  361. package/dist/esm/runtimes/react/controls/rich-text-v2/render-rich-text-v2.js.map +1 -0
  362. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2-value.js +26 -0
  363. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2-value.js.map +1 -0
  364. package/dist/esm/runtimes/react/controls/slot/slot-value.js +43 -35
  365. package/dist/esm/runtimes/react/controls/slot/slot-value.js.map +1 -1
  366. package/dist/esm/runtimes/react/controls/typography.js +5 -4
  367. package/dist/esm/runtimes/react/controls/typography.js.map +1 -1
  368. package/dist/esm/runtimes/react/controls/use-slate-reset.js +1 -1
  369. package/dist/esm/runtimes/react/controls/use-slate-reset.js.map +1 -1
  370. package/dist/esm/runtimes/react/css-runtime/browser-dynamic-styles-bridge.js +31 -0
  371. package/dist/esm/runtimes/react/css-runtime/browser-dynamic-styles-bridge.js.map +1 -0
  372. package/dist/esm/runtimes/react/css-runtime/components/controlled-styles.js +51 -0
  373. package/dist/esm/runtimes/react/css-runtime/components/controlled-styles.js.map +1 -0
  374. package/dist/esm/runtimes/react/css-runtime/components/makeswift-style.js +18 -0
  375. package/dist/esm/runtimes/react/css-runtime/components/makeswift-style.js.map +1 -0
  376. package/dist/esm/runtimes/react/css-runtime/components/rsc-emitted-style.js +22 -0
  377. package/dist/esm/runtimes/react/css-runtime/components/rsc-emitted-style.js.map +1 -0
  378. package/dist/esm/runtimes/react/css-runtime/components/styles-context-provider.js +29 -0
  379. package/dist/esm/runtimes/react/css-runtime/components/styles-context-provider.js.map +1 -0
  380. package/dist/esm/runtimes/react/css-runtime/constants.js +12 -0
  381. package/dist/esm/runtimes/react/css-runtime/constants.js.map +1 -0
  382. package/dist/esm/runtimes/react/css-runtime/hooks/use-base-styles.js +33 -0
  383. package/dist/esm/runtimes/react/css-runtime/hooks/use-base-styles.js.map +1 -0
  384. package/dist/esm/runtimes/react/css-runtime/hooks/use-controlled-styles.js +45 -0
  385. package/dist/esm/runtimes/react/css-runtime/hooks/use-controlled-styles.js.map +1 -0
  386. package/dist/esm/runtimes/react/css-runtime/hooks/use-css-reset.js +36 -0
  387. package/dist/esm/runtimes/react/css-runtime/hooks/use-css-reset.js.map +1 -0
  388. package/dist/esm/runtimes/react/css-runtime/hooks/use-dynamic-browser-style-updates.js +17 -0
  389. package/dist/esm/runtimes/react/css-runtime/hooks/use-dynamic-browser-style-updates.js.map +1 -0
  390. package/dist/esm/runtimes/react/css-runtime/hooks/use-keyframes.js +30 -0
  391. package/dist/esm/runtimes/react/css-runtime/hooks/use-keyframes.js.map +1 -0
  392. package/dist/esm/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js +44 -0
  393. package/dist/esm/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.js.map +1 -0
  394. package/dist/esm/runtimes/react/css-runtime/hooks/use-style.js +56 -0
  395. package/dist/esm/runtimes/react/css-runtime/hooks/use-style.js.map +1 -0
  396. package/dist/esm/runtimes/react/css-runtime/hooks/use-styles-context.js +15 -0
  397. package/dist/esm/runtimes/react/css-runtime/hooks/use-styles-context.js.map +1 -0
  398. package/dist/esm/runtimes/react/css-runtime/serialize-css.js +25 -0
  399. package/dist/esm/runtimes/react/css-runtime/serialize-css.js.map +1 -0
  400. package/dist/esm/runtimes/react/css-runtime/style-element-updater.js +32 -0
  401. package/dist/esm/runtimes/react/css-runtime/style-element-updater.js.map +1 -0
  402. package/dist/esm/runtimes/react/css-runtime/styles-registry.js +261 -0
  403. package/dist/esm/runtimes/react/css-runtime/styles-registry.js.map +1 -0
  404. package/dist/esm/runtimes/react/css-runtime/stylesheet-engine.js +65 -0
  405. package/dist/esm/runtimes/react/css-runtime/stylesheet-engine.js.map +1 -0
  406. package/dist/esm/runtimes/react/css-runtime/types.js +10 -0
  407. package/dist/esm/runtimes/react/css-runtime/types.js.map +1 -0
  408. package/dist/esm/runtimes/react/css-runtime/utils.js +26 -0
  409. package/dist/esm/runtimes/react/css-runtime/utils.js.map +1 -0
  410. package/dist/esm/runtimes/react/hooks/use-resolved-props.js +10 -9
  411. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  412. package/dist/esm/runtimes/react/hooks/use-resolved-value.js +2 -2
  413. package/dist/esm/runtimes/react/hooks/use-resolved-value.js.map +1 -1
  414. package/dist/esm/runtimes/react/legacy-controls.js +92 -22
  415. package/dist/esm/runtimes/react/legacy-controls.js.map +1 -1
  416. package/dist/esm/runtimes/react/poll-box-model.js +2 -1
  417. package/dist/esm/runtimes/react/poll-box-model.js.map +1 -1
  418. package/dist/esm/runtimes/react/root-style-registry.js +36 -60
  419. package/dist/esm/runtimes/react/root-style-registry.js.map +1 -1
  420. package/dist/esm/runtimes/react/server/components/editable-server-element.js +8 -5
  421. package/dist/esm/runtimes/react/server/components/editable-server-element.js.map +1 -1
  422. package/dist/esm/runtimes/react/server/components/element-data.js +16 -12
  423. package/dist/esm/runtimes/react/server/components/element-data.js.map +1 -1
  424. package/dist/esm/runtimes/react/server/components/server-elements-cache.js +1 -2
  425. package/dist/esm/runtimes/react/server/components/server-elements-cache.js.map +1 -1
  426. package/dist/esm/runtimes/react/server/index.js +0 -2
  427. package/dist/esm/runtimes/react/server/index.js.map +1 -1
  428. package/dist/esm/runtimes/react/server/render-context.js.map +1 -1
  429. package/dist/esm/slate/BlockPlugin/index.js +102 -22
  430. package/dist/esm/slate/BlockPlugin/index.js.map +1 -1
  431. package/dist/esm/slate/LinkPlugin/index.js +23 -18
  432. package/dist/esm/slate/LinkPlugin/index.js.map +1 -1
  433. package/dist/esm/slate/TypographyPlugin/index.js +2 -2
  434. package/dist/esm/slate/TypographyPlugin/index.js.map +1 -1
  435. package/dist/esm/testing/jest-snapshot-serializer.js +100 -0
  436. package/dist/esm/testing/jest-snapshot-serializer.js.map +1 -0
  437. package/dist/esm/unstable-framework-support/index.js +3 -6
  438. package/dist/esm/unstable-framework-support/index.js.map +1 -1
  439. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  440. package/dist/types/components/builtin/Box/animations.d.ts +3 -2
  441. package/dist/types/components/builtin/Box/animations.d.ts.map +1 -1
  442. package/dist/types/components/builtin/Box/components/Placeholder/index.d.ts.map +1 -1
  443. package/dist/types/components/builtin/Button/Button.d.ts.map +1 -1
  444. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  445. package/dist/types/components/builtin/Countdown/Countdown.d.ts.map +1 -1
  446. package/dist/types/components/builtin/Divider/Divider.d.ts.map +1 -1
  447. package/dist/types/components/builtin/Embed/Embed.d.ts.map +1 -1
  448. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  449. package/dist/types/components/builtin/Form/components/Field/components/Checkbox/index.d.ts.map +1 -1
  450. package/dist/types/components/builtin/Form/components/Field/components/CheckboxTableField/index.d.ts.map +1 -1
  451. package/dist/types/components/builtin/Form/components/Field/components/Input/index.d.ts.map +1 -1
  452. package/dist/types/components/builtin/Form/components/Field/components/Label/index.d.ts.map +1 -1
  453. package/dist/types/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.d.ts.map +1 -1
  454. package/dist/types/components/builtin/Form/components/Field/components/PlaceholderTableField/index.d.ts.map +1 -1
  455. package/dist/types/components/builtin/Form/components/Field/components/RadioButton/index.d.ts.map +1 -1
  456. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.d.ts.map +1 -1
  457. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.d.ts.map +1 -1
  458. package/dist/types/components/builtin/Form/components/Field/components/TextArea/index.d.ts.map +1 -1
  459. package/dist/types/components/builtin/Form/components/Placeholder/index.d.ts.map +1 -1
  460. package/dist/types/components/builtin/Form/components/Spinner/index.d.ts.map +1 -1
  461. package/dist/types/components/builtin/Image/Image.d.ts +3 -1
  462. package/dist/types/components/builtin/Image/Image.d.ts.map +1 -1
  463. package/dist/types/components/builtin/Image/register.d.ts.map +1 -1
  464. package/dist/types/components/builtin/Navigation/Navigation.d.ts.map +1 -1
  465. package/dist/types/components/builtin/Navigation/components/DropDownButton/index.d.ts.map +1 -1
  466. package/dist/types/components/builtin/Navigation/components/LinksPlaceholder/index.d.ts.map +1 -1
  467. package/dist/types/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts.map +1 -1
  468. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -1
  469. package/dist/types/components/builtin/Root/Root.d.ts.map +1 -1
  470. package/dist/types/components/builtin/Root/components/Placeholder/index.d.ts.map +1 -1
  471. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts.map +1 -1
  472. package/dist/types/components/builtin/Text/Text.d.ts.map +1 -1
  473. package/dist/types/components/builtin/Video/Video.d.ts.map +1 -1
  474. package/dist/types/components/hooks/useIsomorphicLayoutEffect.d.ts +2 -2
  475. package/dist/types/components/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -1
  476. package/dist/types/components/shared/BackgroundsContainer/components/BackgroundVideo/index.d.ts.map +1 -1
  477. package/dist/types/components/shared/BackgroundsContainer/index.d.ts.map +1 -1
  478. package/dist/types/components/shared/FallbackComponent/FallbackComponent.d.ts.map +1 -1
  479. package/dist/types/components/shared/GutterContainer/index.d.ts.map +1 -1
  480. package/dist/types/components/shared/grid-item.d.ts.map +1 -1
  481. package/dist/types/controls/__tests__/fixtures/list.d.ts +1 -0
  482. package/dist/types/controls/__tests__/fixtures/list.d.ts.map +1 -1
  483. package/dist/types/controls/__tests__/fixtures/shape.d.ts +2 -0
  484. package/dist/types/controls/__tests__/fixtures/shape.d.ts.map +1 -1
  485. package/dist/types/controls/index.d.ts +1 -1
  486. package/dist/types/controls/index.d.ts.map +1 -1
  487. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts +161 -24
  488. package/dist/types/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  489. package/dist/types/controls/serialization/base/visitor.d.ts.map +1 -1
  490. package/dist/types/next/components/page.d.ts.map +1 -1
  491. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  492. package/dist/types/next/document.d.ts.map +1 -1
  493. package/dist/types/next/root-style-registry.d.ts +1 -1
  494. package/dist/types/next/root-style-registry.d.ts.map +1 -1
  495. package/dist/types/react/server/index.d.ts +1 -1
  496. package/dist/types/react/server/index.d.ts.map +1 -1
  497. package/dist/types/runtimes/react/components/GoogleFontLink.d.ts.map +1 -1
  498. package/dist/types/runtimes/react/components/framework-context.d.ts +1 -0
  499. package/dist/types/runtimes/react/components/framework-context.d.ts.map +1 -1
  500. package/dist/types/runtimes/react/components/page/PageHead.d.ts.map +1 -1
  501. package/dist/types/runtimes/react/components/page/head-tags.d.ts +0 -6
  502. package/dist/types/runtimes/react/components/page/head-tags.d.ts.map +1 -1
  503. package/dist/types/runtimes/react/components/resolve-props.d.ts.map +1 -1
  504. package/dist/types/{controls/__tests__/slot.test.d.ts → runtimes/react/controls/__tests__/react-node-controls.test.d.ts} +1 -1
  505. package/dist/types/runtimes/react/controls/__tests__/react-node-controls.test.d.ts.map +1 -0
  506. package/dist/types/runtimes/react/controls/control.d.ts +3 -1
  507. package/dist/types/runtimes/react/controls/control.d.ts.map +1 -1
  508. package/dist/types/runtimes/react/controls/rich-text/EditableText/editable-text.d.ts.map +1 -1
  509. package/dist/types/runtimes/react/controls/rich-text/ReadOnlyText.d.ts.map +1 -1
  510. package/dist/types/runtimes/react/controls/rich-text/components/Element/block.d.ts.map +1 -1
  511. package/dist/types/runtimes/react/controls/rich-text/components/Element/inline.d.ts.map +1 -1
  512. package/dist/types/runtimes/react/controls/rich-text/components/Leaf/leaf.d.ts.map +1 -1
  513. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts +7 -10
  514. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts.map +1 -1
  515. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/index.d.ts +2 -3
  516. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/index.d.ts.map +1 -1
  517. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts +3 -3
  518. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts.map +1 -1
  519. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts +3 -3
  520. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts.map +1 -1
  521. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts +2 -1
  522. package/dist/types/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.d.ts.map +1 -1
  523. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts +9 -6
  524. package/dist/types/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.d.ts.map +1 -1
  525. package/dist/types/runtimes/react/controls/rich-text-v2/index.d.ts +7 -1
  526. package/dist/types/runtimes/react/controls/rich-text-v2/index.d.ts.map +1 -1
  527. package/dist/types/runtimes/react/controls/rich-text-v2/render-rich-text-v2.d.ts +10 -0
  528. package/dist/types/runtimes/react/controls/rich-text-v2/render-rich-text-v2.d.ts.map +1 -0
  529. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2-value.d.ts +9 -0
  530. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2-value.d.ts.map +1 -0
  531. package/dist/types/runtimes/react/controls/slot/slot-value.d.ts.map +1 -1
  532. package/dist/types/runtimes/react/controls/typography.d.ts +8 -1
  533. package/dist/types/runtimes/react/controls/typography.d.ts.map +1 -1
  534. package/dist/types/runtimes/react/controls/use-slate-reset.d.ts +8 -1
  535. package/dist/types/runtimes/react/controls/use-slate-reset.d.ts.map +1 -1
  536. package/dist/types/runtimes/react/css-runtime/__tests__/__fixtures__/sample-js-styles-objects.d.ts +7 -0
  537. package/dist/types/runtimes/react/css-runtime/__tests__/__fixtures__/sample-js-styles-objects.d.ts.map +1 -0
  538. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/__fixtures__/sample-stylev1-data.d.ts +9 -0
  539. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/__fixtures__/sample-stylev1-data.d.ts.map +1 -0
  540. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/__fixtures__/sample-stylev2-data.d.ts +10 -0
  541. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/__fixtures__/sample-stylev2-data.d.ts.map +1 -0
  542. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/controlled-styles-integration.test.d.ts +3 -0
  543. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/controlled-styles-integration.test.d.ts.map +1 -0
  544. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/utils.d.ts +24 -0
  545. package/dist/types/runtimes/react/css-runtime/__tests__/runtime-integration/utils.d.ts.map +1 -0
  546. package/dist/types/runtimes/react/css-runtime/__tests__/serialize-css.test.d.ts +2 -0
  547. package/dist/types/runtimes/react/css-runtime/__tests__/serialize-css.test.d.ts.map +1 -0
  548. package/dist/types/runtimes/react/css-runtime/__tests__/styles-registry.test.d.ts +2 -0
  549. package/dist/types/runtimes/react/css-runtime/__tests__/styles-registry.test.d.ts.map +1 -0
  550. package/dist/types/runtimes/react/css-runtime/__tests__/utils.d.ts +6 -0
  551. package/dist/types/runtimes/react/css-runtime/__tests__/utils.d.ts.map +1 -0
  552. package/dist/types/runtimes/react/css-runtime/browser-dynamic-styles-bridge.d.ts +16 -0
  553. package/dist/types/runtimes/react/css-runtime/browser-dynamic-styles-bridge.d.ts.map +1 -0
  554. package/dist/types/runtimes/react/css-runtime/components/controlled-styles.d.ts +12 -0
  555. package/dist/types/runtimes/react/css-runtime/components/controlled-styles.d.ts.map +1 -0
  556. package/dist/types/runtimes/react/css-runtime/components/makeswift-style.d.ts +6 -0
  557. package/dist/types/runtimes/react/css-runtime/components/makeswift-style.d.ts.map +1 -0
  558. package/dist/types/runtimes/react/css-runtime/components/rsc-emitted-style.d.ts +30 -0
  559. package/dist/types/runtimes/react/css-runtime/components/rsc-emitted-style.d.ts.map +1 -0
  560. package/dist/types/runtimes/react/css-runtime/components/styles-context-provider.d.ts +20 -0
  561. package/dist/types/runtimes/react/css-runtime/components/styles-context-provider.d.ts.map +1 -0
  562. package/dist/types/runtimes/react/css-runtime/constants.d.ts +5 -0
  563. package/dist/types/runtimes/react/css-runtime/constants.d.ts.map +1 -0
  564. package/dist/types/runtimes/react/css-runtime/hooks/use-base-styles.d.ts +12 -0
  565. package/dist/types/runtimes/react/css-runtime/hooks/use-base-styles.d.ts.map +1 -0
  566. package/dist/types/runtimes/react/css-runtime/hooks/use-controlled-styles.d.ts +11 -0
  567. package/dist/types/runtimes/react/css-runtime/hooks/use-controlled-styles.d.ts.map +1 -0
  568. package/dist/types/runtimes/react/css-runtime/hooks/use-css-reset.d.ts +14 -0
  569. package/dist/types/runtimes/react/css-runtime/hooks/use-css-reset.d.ts.map +1 -0
  570. package/dist/types/runtimes/react/css-runtime/hooks/use-dynamic-browser-style-updates.d.ts +3 -0
  571. package/dist/types/runtimes/react/css-runtime/hooks/use-dynamic-browser-style-updates.d.ts.map +1 -0
  572. package/dist/types/runtimes/react/css-runtime/hooks/use-keyframes.d.ts +6 -0
  573. package/dist/types/runtimes/react/css-runtime/hooks/use-keyframes.d.ts.map +1 -0
  574. package/dist/types/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.d.ts +10 -0
  575. package/dist/types/runtimes/react/css-runtime/hooks/use-legacy-controlled-style.d.ts.map +1 -0
  576. package/dist/types/runtimes/react/css-runtime/hooks/use-style.d.ts +62 -0
  577. package/dist/types/runtimes/react/css-runtime/hooks/use-style.d.ts.map +1 -0
  578. package/dist/types/runtimes/react/css-runtime/hooks/use-styles-context.d.ts +3 -0
  579. package/dist/types/runtimes/react/css-runtime/hooks/use-styles-context.d.ts.map +1 -0
  580. package/dist/types/runtimes/react/css-runtime/serialize-css.d.ts +40 -0
  581. package/dist/types/runtimes/react/css-runtime/serialize-css.d.ts.map +1 -0
  582. package/dist/types/runtimes/react/css-runtime/style-element-updater.d.ts +10 -0
  583. package/dist/types/runtimes/react/css-runtime/style-element-updater.d.ts.map +1 -0
  584. package/dist/types/runtimes/react/css-runtime/styles-registry.d.ts +66 -0
  585. package/dist/types/runtimes/react/css-runtime/styles-registry.d.ts.map +1 -0
  586. package/dist/types/runtimes/react/css-runtime/stylesheet-engine.d.ts +23 -0
  587. package/dist/types/runtimes/react/css-runtime/stylesheet-engine.d.ts.map +1 -0
  588. package/dist/types/runtimes/react/css-runtime/types.d.ts +52 -0
  589. package/dist/types/runtimes/react/css-runtime/types.d.ts.map +1 -0
  590. package/dist/types/runtimes/react/css-runtime/utils.d.ts +20 -0
  591. package/dist/types/runtimes/react/css-runtime/utils.d.ts.map +1 -0
  592. package/dist/types/runtimes/react/hooks/use-resolved-props.d.ts +3 -3
  593. package/dist/types/runtimes/react/hooks/use-resolved-props.d.ts.map +1 -1
  594. package/dist/types/runtimes/react/hooks/use-resolved-value.d.ts +1 -1
  595. package/dist/types/runtimes/react/hooks/use-resolved-value.d.ts.map +1 -1
  596. package/dist/types/runtimes/react/legacy-controls.d.ts +1 -1
  597. package/dist/types/runtimes/react/legacy-controls.d.ts.map +1 -1
  598. package/dist/types/runtimes/react/poll-box-model.d.ts +2 -2
  599. package/dist/types/runtimes/react/poll-box-model.d.ts.map +1 -1
  600. package/dist/types/runtimes/react/root-style-registry.d.ts +9 -30
  601. package/dist/types/runtimes/react/root-style-registry.d.ts.map +1 -1
  602. package/dist/types/runtimes/react/server/components/element-data.d.ts.map +1 -1
  603. package/dist/types/runtimes/react/server/components/server-elements-cache.d.ts.map +1 -1
  604. package/dist/types/runtimes/react/server/index.d.ts +0 -1
  605. package/dist/types/runtimes/react/server/index.d.ts.map +1 -1
  606. package/dist/types/runtimes/react/server/render-context.d.ts +2 -0
  607. package/dist/types/runtimes/react/server/render-context.d.ts.map +1 -1
  608. package/dist/types/slate/BlockPlugin/index.d.ts +13 -1
  609. package/dist/types/slate/BlockPlugin/index.d.ts.map +1 -1
  610. package/dist/types/slate/InlinePlugin/index.d.ts +13 -1
  611. package/dist/types/slate/InlinePlugin/index.d.ts.map +1 -1
  612. package/dist/types/slate/LinkPlugin/index.d.ts.map +1 -1
  613. package/dist/types/slate/TextAlignPlugin/index.d.ts +13 -1
  614. package/dist/types/slate/TextAlignPlugin/index.d.ts.map +1 -1
  615. package/dist/types/slate/TypographyPlugin/index.d.ts.map +1 -1
  616. package/dist/types/testing/jest-snapshot-serializer.d.ts +2 -0
  617. package/dist/types/testing/jest-snapshot-serializer.d.ts.map +1 -0
  618. package/dist/types/unstable-framework-support/index.d.ts +3 -1
  619. package/dist/types/unstable-framework-support/index.d.ts.map +1 -1
  620. package/package.json +14 -14
  621. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +0 -1
  622. package/dist/cjs/runtimes/react/hooks/use-css-id.js.map +0 -1
  623. package/dist/cjs/runtimes/react/hooks/use-editable-element-stylesheet-factory.js +0 -58
  624. package/dist/cjs/runtimes/react/hooks/use-editable-element-stylesheet-factory.js.map +0 -1
  625. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js +0 -87
  626. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js.map +0 -1
  627. package/dist/cjs/runtimes/react/server/css/client-css.js +0 -112
  628. package/dist/cjs/runtimes/react/server/css/client-css.js.map +0 -1
  629. package/dist/cjs/runtimes/react/server/css/css-runtime.js +0 -102
  630. package/dist/cjs/runtimes/react/server/css/css-runtime.js.map +0 -1
  631. package/dist/cjs/runtimes/react/server/css/server-css.js +0 -71
  632. package/dist/cjs/runtimes/react/server/css/server-css.js.map +0 -1
  633. package/dist/cjs/runtimes/react/stylesheet-factory.js +0 -17
  634. package/dist/cjs/runtimes/react/stylesheet-factory.js.map +0 -1
  635. package/dist/cjs/runtimes/react/use-global-style.js +0 -101
  636. package/dist/cjs/runtimes/react/use-global-style.js.map +0 -1
  637. package/dist/cjs/runtimes/react/use-style.js.map +0 -1
  638. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js +0 -23
  639. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +0 -1
  640. package/dist/esm/runtimes/react/hooks/use-css-id.js +0 -8
  641. package/dist/esm/runtimes/react/hooks/use-css-id.js.map +0 -1
  642. package/dist/esm/runtimes/react/hooks/use-editable-element-stylesheet-factory.js +0 -34
  643. package/dist/esm/runtimes/react/hooks/use-editable-element-stylesheet-factory.js.map +0 -1
  644. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js +0 -65
  645. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js.map +0 -1
  646. package/dist/esm/runtimes/react/server/css/client-css.js +0 -87
  647. package/dist/esm/runtimes/react/server/css/client-css.js.map +0 -1
  648. package/dist/esm/runtimes/react/server/css/css-runtime.js +0 -77
  649. package/dist/esm/runtimes/react/server/css/css-runtime.js.map +0 -1
  650. package/dist/esm/runtimes/react/server/css/server-css.js +0 -45
  651. package/dist/esm/runtimes/react/server/css/server-css.js.map +0 -1
  652. package/dist/esm/runtimes/react/stylesheet-factory.js +0 -1
  653. package/dist/esm/runtimes/react/stylesheet-factory.js.map +0 -1
  654. package/dist/esm/runtimes/react/use-global-style.js +0 -67
  655. package/dist/esm/runtimes/react/use-global-style.js.map +0 -1
  656. package/dist/esm/runtimes/react/use-style.js +0 -36
  657. package/dist/esm/runtimes/react/use-style.js.map +0 -1
  658. package/dist/types/controls/__tests__/slot.test.d.ts.map +0 -1
  659. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts +0 -9
  660. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts.map +0 -1
  661. package/dist/types/runtimes/react/hooks/use-css-id.d.ts +0 -2
  662. package/dist/types/runtimes/react/hooks/use-css-id.d.ts.map +0 -1
  663. package/dist/types/runtimes/react/hooks/use-editable-element-stylesheet-factory.d.ts +0 -5
  664. package/dist/types/runtimes/react/hooks/use-editable-element-stylesheet-factory.d.ts.map +0 -1
  665. package/dist/types/runtimes/react/hooks/use-stylesheet-factory.d.ts +0 -3
  666. package/dist/types/runtimes/react/hooks/use-stylesheet-factory.d.ts.map +0 -1
  667. package/dist/types/runtimes/react/server/css/client-css.d.ts +0 -10
  668. package/dist/types/runtimes/react/server/css/client-css.d.ts.map +0 -1
  669. package/dist/types/runtimes/react/server/css/css-runtime.d.ts +0 -16
  670. package/dist/types/runtimes/react/server/css/css-runtime.d.ts.map +0 -1
  671. package/dist/types/runtimes/react/server/css/server-css.d.ts +0 -14
  672. package/dist/types/runtimes/react/server/css/server-css.d.ts.map +0 -1
  673. package/dist/types/runtimes/react/stylesheet-factory.d.ts +0 -6
  674. package/dist/types/runtimes/react/stylesheet-factory.d.ts.map +0 -1
  675. package/dist/types/runtimes/react/use-global-style.d.ts +0 -3
  676. package/dist/types/runtimes/react/use-global-style.d.ts.map +0 -1
  677. package/dist/types/runtimes/react/use-style.d.ts +0 -7
  678. package/dist/types/runtimes/react/use-style.d.ts.map +0 -1
@@ -48,12 +48,13 @@ var import_plugin = require("./plugin");
48
48
  var import_control = require("./control");
49
49
  var import_get_translations = require("./translations/get-translations");
50
50
  class Definition extends import_controls.RichTextDefinition {
51
+ plugins;
51
52
  constructor({ mode, defaultValue }, plugins) {
52
53
  super({
53
54
  mode,
54
- defaultValue: defaultValue ?? (mode === Definition.Mode.Inline ? "Edit this text" : Definition.generateParagraph()),
55
- plugins: plugins ?? (mode === Definition.Mode.Inline ? [(0, import_InlineModePlugin.InlineModePlugin)()] : [(0, import_BlockPlugin.BlockPlugin)(), (0, import_TypographyPlugin.TypographyPlugin)(), (0, import_TextAlignPlugin.TextAlignPlugin)(), (0, import_InlinePlugin.InlinePlugin)(), (0, import_LinkPlugin.LinkPlugin)()])
55
+ defaultValue: defaultValue ?? (mode === Definition.Mode.Inline ? "Edit this text" : Definition.generateParagraph())
56
56
  });
57
+ this.plugins = plugins ?? (mode === Definition.Mode.Inline ? [(0, import_InlineModePlugin.InlineModePlugin)()] : [(0, import_BlockPlugin.BlockPlugin)(), (0, import_TypographyPlugin.TypographyPlugin)(), (0, import_TextAlignPlugin.TextAlignPlugin)(), (0, import_InlinePlugin.InlinePlugin)(), (0, import_LinkPlugin.LinkPlugin)()]);
57
58
  }
58
59
  static generateParagraph() {
59
60
  return (0, import_corporate_ipsum.default)(3);
@@ -62,13 +63,13 @@ class Definition extends import_controls.RichTextDefinition {
62
63
  if (data.type !== Definition.type) {
63
64
  throw new Error(`RichText: expected type ${Definition.type}, got ${data.type}`);
64
65
  }
65
- const { config } = Definition.fullSchema({
66
+ const { config, plugins } = Definition.fullSchema({
66
67
  pluginDef: import_controls.SerializationSchema.deserializedRecord
67
68
  }).definition.parse(data);
68
- const { plugins, ...userConfig } = config;
69
+ const { plugins: configPlugins, ...userConfig } = config;
69
70
  return new RichTextV2Definition(
70
71
  userConfig,
71
- plugins.map(
72
+ (plugins ?? configPlugins ?? []).map(
72
73
  ({ control }) => control ? { control: { definition: deserializeCallback(control?.definition) } } : {}
73
74
  )
74
75
  );
@@ -80,29 +81,39 @@ class Definition extends import_controls.RichTextDefinition {
80
81
  definition: pluginDef
81
82
  }).optional()
82
83
  });
83
- const config = baseSchema.userConfig.extend({
84
- defaultValue: import_zod.z.string(),
85
- plugins: import_zod.z.array(plugin)
84
+ const plugins = import_zod.z.array(plugin);
85
+ const config = Definition.configSchema().extend({
86
+ // plugins have been moved from config to the definition itself; keeping
87
+ // the field here as optional so we can deserialize definitions coming from
88
+ // older runtimes
89
+ plugins: plugins.optional()
86
90
  });
87
91
  return {
88
92
  ...baseSchema,
89
93
  config,
90
94
  definition: import_zod.z.object({
91
95
  type: baseSchema.type,
96
+ // marked as optional for backward compatibility with older runtimes
97
+ plugins: plugins.optional(),
92
98
  config
93
99
  })
94
100
  };
95
101
  }
102
+ static configSchema() {
103
+ return super.schema.userConfig.extend({
104
+ defaultValue: import_zod.z.string()
105
+ });
106
+ }
96
107
  get configSchema() {
97
- return Definition.fullSchema({ pluginDef: import_zod.z.any() }).config;
108
+ return Definition.configSchema();
98
109
  }
99
110
  createInstance(args) {
100
111
  return new import_control.RichTextV2Control(this, args);
101
112
  }
102
- resolveValue(data, _resolver, _stylesheet, control) {
113
+ resolveValue(data, _resolver, stylesheet, control) {
103
114
  const stableValue = (0, import_controls.StableValue)({
104
115
  name: Definition.type,
105
- read: () => (0, import_rich_text_v2.renderRichTextV2)(data, this, control ?? null)
116
+ read: () => (0, import_rich_text_v2.renderRichTextV2)({ data, config: this.config, control: control ?? null, stylesheet })
106
117
  });
107
118
  return {
108
119
  ...stableValue,
@@ -113,10 +124,10 @@ class Definition extends import_controls.RichTextDefinition {
113
124
  getTranslatableData(data) {
114
125
  if (data == null)
115
126
  return null;
116
- return (0, import_get_translations.getTranslatableData)(Definition.dataToNodes(data), this.config.plugins);
127
+ return (0, import_get_translations.getTranslatableData)(Definition.dataToNodes(data), this.plugins);
117
128
  }
118
129
  get pluginControls() {
119
- return this.config.plugins.map((plugin) => plugin.control).filter(import_controls.isNotNil);
130
+ return this.plugins.map((plugin) => plugin.control).filter(import_controls.isNotNil);
120
131
  }
121
132
  pluginControlAt(index) {
122
133
  return this.pluginControls[index];
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/controls/rich-text-v2/rich-text-v2.ts"],"sourcesContent":["import { ReactNode } from 'react'\nimport { z } from 'zod'\n// @ts-expect-error: there are no types for 'corporate-ipsum'\nimport ipsum from 'corporate-ipsum'\n\nimport {\n RichTextDefinition as BaseRichTextDefinition,\n isNotNil,\n ControlDefinition,\n SerializationSchema,\n StableValue,\n type Data,\n type Resolvable,\n type ControlInstanceArgs,\n type DeserializedRecord,\n type SchemaType,\n type SchemaTypeAny,\n type RichTextPluginControl,\n type ResourceResolver,\n type Stylesheet,\n type RichTextMode,\n} from '@makeswift/controls'\n\nimport { LinkPlugin } from '../../slate/LinkPlugin'\nimport { InlinePlugin } from '../../slate/InlinePlugin'\nimport { TextAlignPlugin } from '../../slate/TextAlignPlugin'\nimport { BlockPlugin } from '../../slate/BlockPlugin'\nimport { TypographyPlugin } from '../../slate/TypographyPlugin'\nimport { InlineModePlugin } from '../../slate/InlineModePlugin'\nimport { toText } from '../../slate/utils'\n\nimport { renderRichTextV2 } from '../../runtimes/react/controls/rich-text-v2'\n\nimport { RichTextV2Plugin, Plugin } from './plugin'\nimport { RichTextV2Control } from './control'\nimport { getTranslatableData } from './translations/get-translations'\n\ntype DataType = z.infer<typeof Definition.schema.data>\ntype DataV2Type = z.infer<typeof Definition.schema.dataV2>\ntype InstanceType = RichTextV2Control\ntype UserConfig = z.infer<typeof Definition.schema.userConfig>\ntype Config = UserConfig & {\n defaultValue: string\n plugins: RichTextV2Plugin[]\n}\n\nclass Definition extends BaseRichTextDefinition<ReactNode, Config, InstanceType> {\n constructor({ mode, defaultValue }: UserConfig, plugins?: RichTextV2Plugin[]) {\n super({\n mode,\n defaultValue:\n defaultValue ??\n (mode === Definition.Mode.Inline ? 'Edit this text' : Definition.generateParagraph()),\n plugins:\n plugins ??\n (mode === Definition.Mode.Inline\n ? [InlineModePlugin()]\n : [BlockPlugin(), TypographyPlugin(), TextAlignPlugin(), InlinePlugin(), LinkPlugin()]),\n })\n }\n\n static generateParagraph(): string {\n return ipsum(3)\n }\n\n static deserialize(\n data: DeserializedRecord,\n deserializeCallback: (r: DeserializedRecord) => ControlDefinition,\n ): RichTextV2Definition {\n if (data.type !== Definition.type) {\n throw new Error(`RichText: expected type ${Definition.type}, got ${data.type}`)\n }\n\n const { config } = Definition.fullSchema({\n pluginDef: SerializationSchema.deserializedRecord,\n }).definition.parse(data)\n\n const { plugins, ...userConfig } = config\n\n return new RichTextV2Definition(\n userConfig,\n plugins.map(({ control }) =>\n control ? { control: { definition: deserializeCallback(control?.definition) } } : {},\n ),\n )\n }\n\n static fullSchema<S extends SchemaTypeAny>({ pluginDef }: { pluginDef: S }) {\n const baseSchema = super.schema\n const plugin = z.object({\n control: z\n .object({\n definition: pluginDef,\n })\n .optional(),\n })\n\n const config = baseSchema.userConfig.extend({\n defaultValue: z.string(),\n plugins: z.array(plugin),\n })\n\n return {\n ...baseSchema,\n config,\n definition: z.object({\n type: baseSchema.type,\n config,\n }),\n }\n }\n\n get configSchema(): SchemaType<Config> {\n return Definition.fullSchema({ pluginDef: z.any() as SchemaType<ControlDefinition> }).config\n }\n\n createInstance(args: ControlInstanceArgs) {\n return new RichTextV2Control(this, args)\n }\n\n resolveValue(\n data: DataType | undefined,\n _resolver: ResourceResolver,\n _stylesheet: Stylesheet,\n control?: InstanceType,\n ): Resolvable<ReactNode | undefined> {\n const stableValue = StableValue({\n name: Definition.type,\n read: () => renderRichTextV2(data, this, control ?? null),\n })\n\n return {\n ...stableValue,\n triggerResolve: async () => {},\n }\n }\n\n getTranslatableData(data: DataType | undefined): Data {\n if (data == null) return null\n return getTranslatableData(Definition.dataToNodes(data), this.config.plugins)\n }\n\n get pluginControls(): RichTextPluginControl[] {\n return this.config.plugins.map(plugin => plugin.control).filter(isNotNil)\n }\n\n pluginControlAt(index: number): RichTextPluginControl | undefined {\n return this.pluginControls[index]\n }\n\n toText(data: DataType | undefined): string {\n if (data == null) return ''\n return toText(Definition.dataToNodes(data), this.config.mode ?? Definition.Mode.Block)\n }\n}\n\nexport class RichTextV2Definition extends Definition {}\n\nexport function RichText(config?: UserConfig): RichTextV2Definition {\n return new RichTextV2Definition(config ?? {})\n}\n\nRichText.Mode = Definition.Mode\nRichText.isV1Data = Definition.isV1Data\nRichText.dataToNodes = Definition.dataToNodes\nRichText.Plugin = Plugin\n\nexport { RichTextMode as RichTextV2Mode, type DataV2Type as RichTextDataV2, RichTextV2Control }\n"],"mappings":"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","names":["BaseRichTextDefinition","ipsum"]}
1
+ {"version":3,"sources":["../../../../src/controls/rich-text-v2/rich-text-v2.ts"],"sourcesContent":["import { ReactNode } from 'react'\nimport { z } from 'zod'\n// @ts-expect-error: there are no types for 'corporate-ipsum'\nimport ipsum from 'corporate-ipsum'\n\nimport {\n RichTextDefinition as BaseRichTextDefinition,\n isNotNil,\n ControlDefinition,\n SerializationSchema,\n StableValue,\n type Data,\n type Resolvable,\n type ControlInstanceArgs,\n type DeserializedRecord,\n type SchemaType,\n type SchemaTypeAny,\n type RichTextPluginControl,\n type ResourceResolver,\n type Stylesheet,\n type RichTextMode,\n} from '@makeswift/controls'\n\nimport { LinkPlugin } from '../../slate/LinkPlugin'\nimport { InlinePlugin } from '../../slate/InlinePlugin'\nimport { TextAlignPlugin } from '../../slate/TextAlignPlugin'\nimport { BlockPlugin } from '../../slate/BlockPlugin'\nimport { TypographyPlugin } from '../../slate/TypographyPlugin'\nimport { InlineModePlugin } from '../../slate/InlineModePlugin'\nimport { toText } from '../../slate/utils'\n\nimport { renderRichTextV2 } from '../../runtimes/react/controls/rich-text-v2'\n\nimport { RichTextV2Plugin, Plugin } from './plugin'\nimport { RichTextV2Control } from './control'\nimport { getTranslatableData } from './translations/get-translations'\n\ntype DataType = z.infer<typeof Definition.schema.data>\ntype DataV2Type = z.infer<typeof Definition.schema.dataV2>\ntype InstanceType = RichTextV2Control\ntype UserConfig = z.infer<typeof Definition.schema.userConfig>\ntype Config = UserConfig & {\n defaultValue: string\n}\n\nclass Definition extends BaseRichTextDefinition<ReactNode, Config, InstanceType> {\n readonly plugins: RichTextV2Plugin[]\n\n constructor({ mode, defaultValue }: UserConfig, plugins?: RichTextV2Plugin[]) {\n super({\n mode,\n defaultValue:\n defaultValue ??\n (mode === Definition.Mode.Inline ? 'Edit this text' : Definition.generateParagraph()),\n })\n\n // The built-in plugin set is currently determined entirely by `mode` and\n // has remained stable across runtime versions, so it does not need to be\n // stored in the internal config. When that changes, we should:\n // - introduce a plugin registry\n // - have the config carry the IDs of selected plugins\n // - use the current inline and block plugin sets as defaults when\n // deserializing a legacy config that does not include plugin IDs\n this.plugins =\n plugins ??\n (mode === Definition.Mode.Inline\n ? [InlineModePlugin()]\n : [BlockPlugin(), TypographyPlugin(), TextAlignPlugin(), InlinePlugin(), LinkPlugin()])\n }\n\n static generateParagraph(): string {\n return ipsum(3)\n }\n\n static deserialize(\n data: DeserializedRecord,\n deserializeCallback: (r: DeserializedRecord) => ControlDefinition,\n ): RichTextV2Definition {\n if (data.type !== Definition.type) {\n throw new Error(`RichText: expected type ${Definition.type}, got ${data.type}`)\n }\n\n const { config, plugins } = Definition.fullSchema({\n pluginDef: SerializationSchema.deserializedRecord,\n }).definition.parse(data)\n\n const { plugins: configPlugins, ...userConfig } = config\n\n return new RichTextV2Definition(\n userConfig,\n (plugins ?? configPlugins ?? []).map(({ control }) =>\n control ? { control: { definition: deserializeCallback(control?.definition) } } : {},\n ),\n )\n }\n\n static fullSchema<S extends SchemaTypeAny>({ pluginDef }: { pluginDef: S }) {\n const baseSchema = super.schema\n const plugin = z.object({\n control: z\n .object({\n definition: pluginDef,\n })\n .optional(),\n })\n\n const plugins = z.array(plugin)\n\n const config = Definition.configSchema().extend({\n // plugins have been moved from config to the definition itself; keeping\n // the field here as optional so we can deserialize definitions coming from\n // older runtimes\n plugins: plugins.optional(),\n })\n\n return {\n ...baseSchema,\n config,\n definition: z.object({\n type: baseSchema.type,\n // marked as optional for backward compatibility with older runtimes\n plugins: plugins.optional(),\n config,\n }),\n }\n }\n\n static configSchema() {\n return super.schema.userConfig.extend({\n defaultValue: z.string(),\n })\n }\n\n get configSchema(): SchemaType<Config> {\n return Definition.configSchema()\n }\n\n createInstance(args: ControlInstanceArgs) {\n return new RichTextV2Control(this, args)\n }\n\n resolveValue(\n data: DataType | undefined,\n _resolver: ResourceResolver,\n stylesheet: Stylesheet,\n control?: InstanceType,\n ): Resolvable<ReactNode | undefined> {\n const stableValue = StableValue({\n name: Definition.type,\n read: () =>\n renderRichTextV2({ data, config: this.config, control: control ?? null, stylesheet }),\n })\n\n return {\n ...stableValue,\n triggerResolve: async () => {},\n }\n }\n\n getTranslatableData(data: DataType | undefined): Data {\n if (data == null) return null\n return getTranslatableData(Definition.dataToNodes(data), this.plugins)\n }\n\n get pluginControls(): RichTextPluginControl[] {\n return this.plugins.map(plugin => plugin.control).filter(isNotNil)\n }\n\n pluginControlAt(index: number): RichTextPluginControl | undefined {\n return this.pluginControls[index]\n }\n\n toText(data: DataType | undefined): string {\n if (data == null) return ''\n return toText(Definition.dataToNodes(data), this.config.mode ?? Definition.Mode.Block)\n }\n}\n\nexport class RichTextV2Definition extends Definition {}\n\nexport function RichText(config?: UserConfig): RichTextV2Definition {\n return new RichTextV2Definition(config ?? {})\n}\n\nRichText.Mode = Definition.Mode\nRichText.isV1Data = Definition.isV1Data\nRichText.dataToNodes = Definition.dataToNodes\nRichText.Plugin = Plugin\n\nexport { RichTextMode as RichTextV2Mode, type DataV2Type as RichTextDataV2, RichTextV2Control }\n"],"mappings":"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","names":["BaseRichTextDefinition","ipsum"]}
@@ -32,8 +32,7 @@ class BaseControlSerializationVisitor extends import_controls.ControlSerializati
32
32
  super([serializeDefinitionPlugin, ...plugins]);
33
33
  }
34
34
  visitRichTextV2(def) {
35
- const { plugins, ...config } = def.config;
36
- const pluginDefs = plugins.map(
35
+ const pluginDefs = def.plugins.map(
37
36
  ({ control }) => control ? {
38
37
  control: {
39
38
  definition: control.definition,
@@ -46,7 +45,10 @@ class BaseControlSerializationVisitor extends import_controls.ControlSerializati
46
45
  } : {}
47
46
  );
48
47
  const serialized = (0, import_controls.serializeObject)(
49
- { config: { ...config, plugins: pluginDefs } },
48
+ // Continue serializing plugins as part of the config for the time being
49
+ // for builder compatibility; the current runtime accept plugins either in
50
+ // the config or at the definition level -- see `RichTextV2Definition.fullSchema`
51
+ { config: { ...def.config, plugins: pluginDefs } },
50
52
  this.serializationPlugins
51
53
  );
52
54
  return { ...serialized, type: import_rich_text_v2.RichTextV2Definition.type };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/controls/serialization/base/visitor.ts"],"sourcesContent":["import {\n ControlDefinition,\n SerializedRecord,\n serializeObject,\n SerializationPlugin,\n ControlSerializationVisitor,\n} from '@makeswift/controls'\n\nimport { RichTextV2Definition } from '../../rich-text-v2'\n\nexport class BaseControlSerializationVisitor extends ControlSerializationVisitor {\n constructor(plugins: SerializationPlugin<any>[]) {\n const serializeDefinitionPlugin: SerializationPlugin<ControlDefinition> = {\n match: (val: unknown) => val instanceof ControlDefinition,\n serialize: (val: ControlDefinition) => val.accept(this),\n }\n\n super([serializeDefinitionPlugin, ...plugins])\n }\n\n visitRichTextV2(def: RichTextV2Definition): SerializedRecord {\n const { plugins, ...config } = def.config\n\n // serialize only the plugin control definition, if any\n const pluginDefs = plugins.map(({ control }) =>\n control\n ? {\n control: {\n definition: control.definition,\n // FIXME: remove getValue/onChange stubs once we released a version of the builder\n // built against the runtime where these can be optional\n getValue: () => undefined,\n onChange: () => {},\n },\n }\n : {},\n )\n\n const serialized = serializeObject(\n { config: { ...config, plugins: pluginDefs } },\n this.serializationPlugins,\n ) as SerializedRecord\n\n return { ...serialized, type: RichTextV2Definition.type }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAMO;AAEP,0BAAqC;AAE9B,MAAM,wCAAwC,4CAA4B;AAAA,EAC/E,YAAY,SAAqC;AAC/C,UAAM,4BAAoE;AAAA,MACxE,OAAO,CAAC,QAAiB,eAAe;AAAA,MACxC,WAAW,CAAC,QAA2B,IAAI,OAAO,IAAI;AAAA,IACxD;AAEA,UAAM,CAAC,2BAA2B,GAAG,OAAO,CAAC;AAAA,EAC/C;AAAA,EAEA,gBAAgB,KAA6C;AAC3D,UAAM,EAAE,SAAS,GAAG,OAAO,IAAI,IAAI;AAGnC,UAAM,aAAa,QAAQ;AAAA,MAAI,CAAC,EAAE,QAAQ,MACxC,UACI;AAAA,QACE,SAAS;AAAA,UACP,YAAY,QAAQ;AAAA;AAAA;AAAA,UAGpB,UAAU,MAAM;AAAA,UAChB,UAAU,MAAM;AAAA,UAAC;AAAA,QACnB;AAAA,MACF,IACA,CAAC;AAAA,IACP;AAEA,UAAM,iBAAa;AAAA,MACjB,EAAE,QAAQ,EAAE,GAAG,QAAQ,SAAS,WAAW,EAAE;AAAA,MAC7C,KAAK;AAAA,IACP;AAEA,WAAO,EAAE,GAAG,YAAY,MAAM,yCAAqB,KAAK;AAAA,EAC1D;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/controls/serialization/base/visitor.ts"],"sourcesContent":["import {\n ControlDefinition,\n SerializedRecord,\n serializeObject,\n SerializationPlugin,\n ControlSerializationVisitor,\n} from '@makeswift/controls'\n\nimport { RichTextV2Definition } from '../../rich-text-v2'\n\nexport class BaseControlSerializationVisitor extends ControlSerializationVisitor {\n constructor(plugins: SerializationPlugin<any>[]) {\n const serializeDefinitionPlugin: SerializationPlugin<ControlDefinition> = {\n match: (val: unknown) => val instanceof ControlDefinition,\n serialize: (val: ControlDefinition) => val.accept(this),\n }\n\n super([serializeDefinitionPlugin, ...plugins])\n }\n\n visitRichTextV2(def: RichTextV2Definition): SerializedRecord {\n // serialize only the plugin control definition, if any\n const pluginDefs = def.plugins.map(({ control }) =>\n control\n ? {\n control: {\n definition: control.definition,\n // FIXME: remove getValue/onChange stubs once we released a version of the builder\n // built against the runtime where these can be optional\n getValue: () => undefined,\n onChange: () => {},\n },\n }\n : {},\n )\n\n const serialized = serializeObject(\n // Continue serializing plugins as part of the config for the time being\n // for builder compatibility; the current runtime accept plugins either in\n // the config or at the definition level -- see `RichTextV2Definition.fullSchema`\n { config: { ...def.config, plugins: pluginDefs } },\n this.serializationPlugins,\n ) as SerializedRecord\n\n return { ...serialized, type: RichTextV2Definition.type }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAMO;AAEP,0BAAqC;AAE9B,MAAM,wCAAwC,4CAA4B;AAAA,EAC/E,YAAY,SAAqC;AAC/C,UAAM,4BAAoE;AAAA,MACxE,OAAO,CAAC,QAAiB,eAAe;AAAA,MACxC,WAAW,CAAC,QAA2B,IAAI,OAAO,IAAI;AAAA,IACxD;AAEA,UAAM,CAAC,2BAA2B,GAAG,OAAO,CAAC;AAAA,EAC/C;AAAA,EAEA,gBAAgB,KAA6C;AAE3D,UAAM,aAAa,IAAI,QAAQ;AAAA,MAAI,CAAC,EAAE,QAAQ,MAC5C,UACI;AAAA,QACE,SAAS;AAAA,UACP,YAAY,QAAQ;AAAA;AAAA;AAAA,UAGpB,UAAU,MAAM;AAAA,UAChB,UAAU,MAAM;AAAA,UAAC;AAAA,QACnB;AAAA,MACF,IACA,CAAC;AAAA,IACP;AAEA,UAAM,iBAAa;AAAA;AAAA;AAAA;AAAA,MAIjB,EAAE,QAAQ,EAAE,GAAG,IAAI,QAAQ,SAAS,WAAW,EAAE;AAAA,MACjD,KAAK;AAAA,IACP;AAEA,WAAO,EAAE,GAAG,YAAY,MAAM,yCAAqB,KAAK;AAAA,EAC1D;AACF;","names":[]}
@@ -34,7 +34,7 @@ class ReactMergeTranslationsVisitor extends import_controls.MergeTranslationsVis
34
34
  descendants: (0, import_merge_translations.mergeTranslatedNodes)(
35
35
  descendants,
36
36
  translatedData,
37
- def.config.plugins
37
+ def.plugins
38
38
  )
39
39
  };
40
40
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/controls/visitors/merge-translations-visitor.ts"],"sourcesContent":["import { Data, DataType, MergeTranslationsVisitor } from '@makeswift/controls'\n\nimport { RichTextV2Definition } from '../rich-text-v2'\nimport { RichTextTranslationDto } from '../rich-text-v2/translations/translations-core'\nimport { mergeTranslatedNodes } from '../rich-text-v2/translations/merge-translations'\n\nexport class ReactMergeTranslationsVisitor extends MergeTranslationsVisitor {\n visitRichTextV2(\n def: RichTextV2Definition,\n data: DataType<RichTextV2Definition> | undefined,\n translatedData: Data,\n ): Data {\n if (data == null || translatedData == null) return data\n\n const { descendants, ...rest } = RichTextV2Definition.normalizeData(data)\n\n return {\n ...rest,\n descendants: mergeTranslatedNodes(\n descendants,\n translatedData as RichTextTranslationDto,\n def.config.plugins,\n ),\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAyD;AAEzD,0BAAqC;AAErC,gCAAqC;AAE9B,MAAM,sCAAsC,yCAAyB;AAAA,EAC1E,gBACE,KACA,MACA,gBACM;AACN,QAAI,QAAQ,QAAQ,kBAAkB;AAAM,aAAO;AAEnD,UAAM,EAAE,aAAa,GAAG,KAAK,IAAI,yCAAqB,cAAc,IAAI;AAExE,WAAO;AAAA,MACL,GAAG;AAAA,MACH,iBAAa;AAAA,QACX;AAAA,QACA;AAAA,QACA,IAAI,OAAO;AAAA,MACb;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../../src/controls/visitors/merge-translations-visitor.ts"],"sourcesContent":["import { Data, DataType, MergeTranslationsVisitor } from '@makeswift/controls'\n\nimport { RichTextV2Definition } from '../rich-text-v2'\nimport { RichTextTranslationDto } from '../rich-text-v2/translations/translations-core'\nimport { mergeTranslatedNodes } from '../rich-text-v2/translations/merge-translations'\n\nexport class ReactMergeTranslationsVisitor extends MergeTranslationsVisitor {\n visitRichTextV2(\n def: RichTextV2Definition,\n data: DataType<RichTextV2Definition> | undefined,\n translatedData: Data,\n ): Data {\n if (data == null || translatedData == null) return data\n\n const { descendants, ...rest } = RichTextV2Definition.normalizeData(data)\n\n return {\n ...rest,\n descendants: mergeTranslatedNodes(\n descendants,\n translatedData as RichTextTranslationDto,\n def.plugins,\n ),\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAyD;AAEzD,0BAAqC;AAErC,gCAAqC;AAE9B,MAAM,sCAAsC,yCAAyB;AAAA,EAC1E,gBACE,KACA,MACA,gBACM;AACN,QAAI,QAAQ,QAAQ,kBAAkB;AAAM,aAAO;AAEnD,UAAM,EAAE,aAAa,GAAG,KAAK,IAAI,yCAAqB,cAAc,IAAI;AAExE,WAAO;AAAA,MACL,GAAG;AAAA,MACH,iBAAa;AAAA,QACX;AAAA,QACA;AAAA,QACA,IAAI;AAAA,MACN;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
@@ -26,6 +26,7 @@ var import_jsx_runtime = require("react/jsx-runtime");
26
26
  var import_react = require("react");
27
27
  var import_page = require("../../runtimes/react/components/page");
28
28
  var import_use_router_locale_sync = require("../hooks/use-router-locale-sync");
29
+ var import_use_base_styles = require("../../runtimes/react/css-runtime/hooks/use-base-styles");
29
30
  const Page = (0, import_react.memo)(({ snapshot, metadata, ...extras }) => {
30
31
  if ("runtime" in extras) {
31
32
  throw new Error(
@@ -34,7 +35,19 @@ See our docs for more information on what's changed and instructions to migrate:
34
35
  );
35
36
  }
36
37
  (0, import_use_router_locale_sync.useRouterLocaleSync)();
37
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_page.Page, { snapshot, metadata });
38
+ const pageBaseStyles = {
39
+ html: {
40
+ fontFamily: "sans-serif"
41
+ },
42
+ "div#__next": {
43
+ overflow: "hidden"
44
+ }
45
+ };
46
+ const { styleElement: baseStylesElement } = (0, import_use_base_styles.useBaseStyles)({ styles: pageBaseStyles });
47
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
48
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_page.Page, { snapshot, metadata }),
49
+ baseStylesElement
50
+ ] });
38
51
  });
39
52
  // Annotate the CommonJS export names for ESM import in node:
40
53
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/next/components/page.tsx"],"sourcesContent":["'use client'\n\nimport { memo } from 'react'\n\nimport { Page as BuiltinPage, type PageProps } from '../../runtimes/react/components/page'\n\nimport { useRouterLocaleSync } from '../hooks/use-router-locale-sync'\n\nexport { type PageProps } from '../../runtimes/react/components/page'\n\n/**\n * @param snapshot - The snapshot of the page to render, from\n * `client.getPageSnapshot()`.\n * @param metadata - Allows control over whether to use data from Makeswift for\n * rendering metadata tags in the `<head>` of the page. Pass `true` (default if\n * not provided) to render all metadata tags, or `false` to not render any. For\n * more granular control, pass an object with boolean values for specific\n * metadata fields. Valid fields include:\n * - `title`\n * - `description`\n * - `keywords`\n * - `socialImage`\n * - `canonicalUrl`\n * - `indexingBlocked`\n * - `favicon`\n *\n * If a field is not provided, it will default to `false`.\n */\nexport const Page = memo(({ snapshot, metadata, ...extras }: PageProps) => {\n if ('runtime' in extras) {\n throw new Error(\n `The \\`runtime\\` prop is no longer supported in the \\`@makeswift/runtime\\` \\`Page\\` component as of \\`0.15.0\\`.\nSee our docs for more information on what's changed and instructions to migrate: https://docs.makeswift.com/migrations/0.15.0`,\n )\n }\n\n useRouterLocaleSync()\n\n return <BuiltinPage snapshot={snapshot} metadata={metadata} />\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAsCS;AApCT,mBAAqB;AAErB,kBAAoD;AAEpD,oCAAoC;AAsB7B,MAAM,WAAO,mBAAK,CAAC,EAAE,UAAU,UAAU,GAAG,OAAO,MAAiB;AACzE,MAAI,aAAa,QAAQ;AACvB,UAAM,IAAI;AAAA,MACR;AAAA;AAAA,IAEF;AAAA,EACF;AAEA,yDAAoB;AAEpB,SAAO,4CAAC,YAAAA,MAAA,EAAY,UAAoB,UAAoB;AAC9D,CAAC;","names":["BuiltinPage"]}
1
+ {"version":3,"sources":["../../../../src/next/components/page.tsx"],"sourcesContent":["'use client'\n\nimport { memo } from 'react'\n\nimport { Page as BuiltinPage, type PageProps } from '../../runtimes/react/components/page'\n\nimport { useRouterLocaleSync } from '../hooks/use-router-locale-sync'\n\nexport { type PageProps } from '../../runtimes/react/components/page'\nimport { CSSObject } from '@emotion/serialize'\nimport { useBaseStyles } from '../../runtimes/react/css-runtime/hooks/use-base-styles'\n\n/**\n * @param snapshot - The snapshot of the page to render, from\n * `client.getPageSnapshot()`.\n * @param metadata - Allows control over whether to use data from Makeswift for\n * rendering metadata tags in the `<head>` of the page. Pass `true` (default if\n * not provided) to render all metadata tags, or `false` to not render any. For\n * more granular control, pass an object with boolean values for specific\n * metadata fields. Valid fields include:\n * - `title`\n * - `description`\n * - `keywords`\n * - `socialImage`\n * - `canonicalUrl`\n * - `indexingBlocked`\n * - `favicon`\n *\n * If a field is not provided, it will default to `false`.\n */\nexport const Page = memo(({ snapshot, metadata, ...extras }: PageProps) => {\n if ('runtime' in extras) {\n throw new Error(\n `The \\`runtime\\` prop is no longer supported in the \\`@makeswift/runtime\\` \\`Page\\` component as of \\`0.15.0\\`.\nSee our docs for more information on what's changed and instructions to migrate: https://docs.makeswift.com/migrations/0.15.0`,\n )\n }\n\n useRouterLocaleSync()\n\n const pageBaseStyles: CSSObject = {\n html: {\n fontFamily: 'sans-serif',\n },\n 'div#__next': {\n overflow: 'hidden',\n },\n }\n const { styleElement: baseStylesElement } = useBaseStyles({ styles: pageBaseStyles })\n\n return (\n <>\n <BuiltinPage snapshot={snapshot} metadata={metadata} />\n {baseStylesElement}\n </>\n )\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAmDI;AAjDJ,mBAAqB;AAErB,kBAAoD;AAEpD,oCAAoC;AAIpC,6BAA8B;AAoBvB,MAAM,WAAO,mBAAK,CAAC,EAAE,UAAU,UAAU,GAAG,OAAO,MAAiB;AACzE,MAAI,aAAa,QAAQ;AACvB,UAAM,IAAI;AAAA,MACR;AAAA;AAAA,IAEF;AAAA,EACF;AAEA,yDAAoB;AAEpB,QAAM,iBAA4B;AAAA,IAChC,MAAM;AAAA,MACJ,YAAY;AAAA,IACd;AAAA,IACA,cAAc;AAAA,MACZ,UAAU;AAAA,IACZ;AAAA,EACF;AACA,QAAM,EAAE,cAAc,kBAAkB,QAAI,sCAAc,EAAE,QAAQ,eAAe,CAAC;AAEpF,SACE,4EACE;AAAA,gDAAC,YAAAA,MAAA,EAAY,UAAoB,UAAoB;AAAA,IACpD;AAAA,KACH;AAEJ,CAAC;","names":["BuiltinPage"]}
@@ -156,9 +156,9 @@ async function testPageControlPropRendering(controlDefinition, {
156
156
  const document = await serverSideRender(elementTree);
157
157
  const getByTestId = (id) => document.querySelector(`[data-testid="${id}"]`);
158
158
  expect(propSnapshot(getByTestId(testId))).toMatchSnapshot("resolvedValue");
159
- expect([...document.querySelectorAll("style")].map((n) => n.textContent)).toMatchSnapshot(
160
- "component styles"
161
- );
159
+ expect(
160
+ [...document.querySelectorAll("style")].map((n) => n.textContent).filter((v) => v !== "")
161
+ ).toMatchSnapshot("component styles");
162
162
  expect(Number(getByTestId(renderCountTestId)?.textContent)).toBe(1);
163
163
  }
164
164
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/next/components/tests/controls/page-control-prop-rendering.tsx"],"sourcesContent":["import { type ReactNode, Fragment, forwardRef, useRef, isValidElement, act } from 'react'\nimport { JSDOM } from 'jsdom'\nimport { render, screen } from '@testing-library/react'\nimport '@testing-library/jest-dom'\nimport { ServerInsertedHTMLContext } from 'next/navigation'\n\nimport { type Data, type ValueType, type DataType, ControlDefinition } from '@makeswift/controls'\n\nimport { type CacheData } from '../../../../api/api-resources-client'\nimport { ElementData } from '../../../../state/read-only-state'\nimport { setIsInBuilder } from '../../../../state/actions/internal/read-only-actions'\nimport { ReactRuntime } from '../../../../runtimes/react/react-runtime'\nimport { MakeswiftComponent } from '../../../../runtimes/react/components/MakeswiftComponent'\nimport { Page } from '../../page'\nimport { isServer } from '../../../../utils/is-server'\n\nimport { renderToString } from '../../../../runtimes/react/testing/render-to-string'\nimport * as Testing from '../../../testing'\n\nconst ROOT_ID = '00000000-0000-0000-0000-000000000000'\nconst ELEMENT_ID = '11111111-1111-1111-1111-111111111111'\n\nconst renderProp = (prop: any) =>\n prop === undefined ? 'undefined' : isValidElement(prop) ? prop : JSON.stringify(prop)\n\nconst propSnapshot = (prop: HTMLElement | null) =>\n prop?.childElementCount ? prop.childNodes : parseStringifiedProp(prop?.textContent ?? '')\n\nconst parseStringifiedProp = (prop: string) => (prop === 'undefined' ? undefined : JSON.parse(prop))\n\nasync function serverSideRender(children: ReactNode) {\n // wrap the children in a context provider to capture server-inserted HTML, see\n // https://github.com/vercel/next.js/blob/canary/packages/next/src/server/app-render/server-inserted-html.tsx\n const serverInsertedCallbacks: (() => React.ReactNode)[] = []\n\n const elementTree = (\n <ServerInsertedHTMLContext.Provider value={handler => serverInsertedCallbacks.push(handler)}>\n {children}\n </ServerInsertedHTMLContext.Provider>\n )\n\n const elementsHTML = await renderToString(elementTree)\n\n const serverInsertedNodes = serverInsertedCallbacks.map((callback, index) => (\n <Fragment key={'__next_server_inserted__' + index}>{callback()}</Fragment>\n ))\n\n const headHTML = await renderToString(serverInsertedNodes)\n\n const dom = new JSDOM(\n `<!DOCTYPE html><head>${headHTML}</head><body><div id=\"root\">${elementsHTML}</div></body></div>`,\n {\n runScripts: 'dangerously',\n },\n )\n\n return dom.window.document\n}\n\n/**\n * In read-write mode, the runtime opens a `MessageChannel` to the builder\n * parent frame; jsdom doesn't implement `MessageChannel`, so stub them to keep\n * the read-write setup from throwing.\n */\nfunction stubBuilderMessageChannel(): () => void {\n const postMessageSpy = jest.spyOn(window, 'postMessage').mockImplementation(() => {})\n\n const originalMessageChannel = window.MessageChannel\n const stubPort = () => ({ onmessage: null, postMessage: () => {}, close: () => {} })\n window.MessageChannel = class {\n port1 = stubPort()\n port2 = stubPort()\n } as unknown as typeof MessageChannel\n\n return () => {\n postMessageSpy.mockRestore()\n window.MessageChannel = originalMessageChannel\n }\n}\n\nexport async function testPageControlPropRendering<D extends ControlDefinition>(\n controlDefinition: D,\n {\n toData,\n value,\n locale,\n cacheData,\n expectedRenders,\n registerComponents,\n action,\n rootElements = [],\n isInBuilder = false,\n isReadOnly = true,\n }: {\n toData?: (value: ValueType<D>) => DataType<D>\n value: ValueType<D> | undefined\n locale?: string | null\n cacheData?: Partial<CacheData>\n expectedRenders?: number\n registerComponents?: (runtime: ReactRuntime) => void\n action?: (element: HTMLElement) => Promise<void>\n rootElements?: ElementData[]\n isInBuilder?: boolean\n isReadOnly?: boolean\n },\n) {\n // Arrange\n const controlData: DataType<D> | Data =\n value !== undefined ? (toData ? toData(value) : controlDefinition.toData(value)) : undefined\n\n const testComponentMeta = {\n type: 'TestComponent',\n label: 'Test Component',\n }\n\n const testId = 'test-id'\n const renderCountTestId = 'render-count-test-id'\n const elementData: ElementData = {\n key: ELEMENT_ID,\n type: testComponentMeta.type,\n props: {\n propKey: controlData,\n },\n }\n\n const runtime = Testing.createReactRuntime()\n runtime.protoStore.dispatch(setIsInBuilder(isInBuilder))\n registerComponents?.(runtime)\n\n // Act\n runtime.registerComponent(\n forwardRef<HTMLDivElement, { propKey?: any }>(({ propKey }, ref) => {\n const renderCount = useRef(0)\n ++renderCount.current\n\n return (\n <div ref={ref}>\n <div data-testid={renderCountTestId}>{renderCount.current}</div>\n <div data-testid={testId}>{renderProp(propKey)}</div>\n </div>\n )\n }),\n {\n ...testComponentMeta,\n props: {\n propKey: controlDefinition as any,\n },\n },\n )\n\n const testElementTree = (component: ReactNode) => {\n // The runtime enters the read-write state when a non-null site version is\n // passed\n const siteVersion = isReadOnly ? null : { token: 'test-token', version: 'draft' }\n return (\n <Testing.ReactProvider runtime={runtime} siteVersion={siteVersion}>\n {component}\n </Testing.ReactProvider>\n )\n }\n\n if (!isServer()) {\n const restoreMessageChannel = isReadOnly ? null : stubBuilderMessageChannel()\n\n const rootElementData: ElementData = Testing.createRootComponent(\n [elementData, ...rootElements],\n ROOT_ID,\n )\n\n const snapshot = Testing.createMakeswiftPageSnapshot(rootElementData, { locale, cacheData })\n\n // Assert\n await act(async () => render(testElementTree(<Page snapshot={snapshot} />)))\n\n if (action) {\n await act(async () => {\n await action(screen.getByTestId(testId))\n })\n }\n\n expect(snapshot).toMatchSnapshot('snapshot')\n expect(propSnapshot(screen.getByTestId(testId))).toMatchSnapshot('resolvedValue')\n\n if (expectedRenders != null) {\n expect(Number(screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders)\n }\n\n restoreMessageChannel?.()\n } else {\n // test server-side rendering using a component snapshot\n console.assert(action == null)\n console.assert(rootElements.length === 0)\n\n const snapshot = Testing.createMakeswiftComponentSnapshot(elementData, { locale, cacheData })\n const elementTree = testElementTree(\n <MakeswiftComponent snapshot={snapshot} {...testComponentMeta} />,\n )\n\n const document = await serverSideRender(elementTree)\n const getByTestId = (id: string): HTMLElement | null =>\n document.querySelector(`[data-testid=\"${id}\"]`)\n\n expect(propSnapshot(getByTestId(testId))).toMatchSnapshot('resolvedValue')\n expect([...document.querySelectorAll('style')].map(n => n.textContent)).toMatchSnapshot(\n 'component styles',\n )\n expect(Number(getByTestId(renderCountTestId)?.textContent)).toBe(1)\n }\n}\n"],"mappings":"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","names":["import_react"]}
1
+ {"version":3,"sources":["../../../../../../src/next/components/tests/controls/page-control-prop-rendering.tsx"],"sourcesContent":["import { type ReactNode, Fragment, forwardRef, useRef, isValidElement, act } from 'react'\nimport { JSDOM } from 'jsdom'\nimport { render, screen } from '@testing-library/react'\nimport '@testing-library/jest-dom'\nimport { ServerInsertedHTMLContext } from 'next/navigation'\n\nimport { type Data, type ValueType, type DataType, ControlDefinition } from '@makeswift/controls'\n\nimport { type CacheData } from '../../../../api/api-resources-client'\nimport { ElementData } from '../../../../state/read-only-state'\nimport { setIsInBuilder } from '../../../../state/actions/internal/read-only-actions'\nimport { ReactRuntime } from '../../../../runtimes/react/react-runtime'\nimport { MakeswiftComponent } from '../../../../runtimes/react/components/MakeswiftComponent'\nimport { Page } from '../../page'\nimport { isServer } from '../../../../utils/is-server'\n\nimport { renderToString } from '../../../../runtimes/react/testing/render-to-string'\nimport * as Testing from '../../../testing'\n\nconst ROOT_ID = '00000000-0000-0000-0000-000000000000'\nconst ELEMENT_ID = '11111111-1111-1111-1111-111111111111'\n\nconst renderProp = (prop: any) =>\n prop === undefined ? 'undefined' : isValidElement(prop) ? prop : JSON.stringify(prop)\n\nconst propSnapshot = (prop: HTMLElement | null) =>\n prop?.childElementCount ? prop.childNodes : parseStringifiedProp(prop?.textContent ?? '')\n\nconst parseStringifiedProp = (prop: string) => (prop === 'undefined' ? undefined : JSON.parse(prop))\n\nasync function serverSideRender(children: ReactNode) {\n // wrap the children in a context provider to capture server-inserted HTML, see\n // https://github.com/vercel/next.js/blob/canary/packages/next/src/server/app-render/server-inserted-html.tsx\n const serverInsertedCallbacks: (() => React.ReactNode)[] = []\n\n const elementTree = (\n <ServerInsertedHTMLContext.Provider value={handler => serverInsertedCallbacks.push(handler)}>\n {children}\n </ServerInsertedHTMLContext.Provider>\n )\n\n const elementsHTML = await renderToString(elementTree)\n\n const serverInsertedNodes = serverInsertedCallbacks.map((callback, index) => (\n <Fragment key={'__next_server_inserted__' + index}>{callback()}</Fragment>\n ))\n\n const headHTML = await renderToString(serverInsertedNodes)\n\n const dom = new JSDOM(\n `<!DOCTYPE html><head>${headHTML}</head><body><div id=\"root\">${elementsHTML}</div></body></div>`,\n {\n runScripts: 'dangerously',\n },\n )\n\n return dom.window.document\n}\n\n/**\n * In read-write mode, the runtime opens a `MessageChannel` to the builder\n * parent frame; jsdom doesn't implement `MessageChannel`, so stub them to keep\n * the read-write setup from throwing.\n */\nfunction stubBuilderMessageChannel(): () => void {\n const postMessageSpy = jest.spyOn(window, 'postMessage').mockImplementation(() => {})\n\n const originalMessageChannel = window.MessageChannel\n const stubPort = () => ({ onmessage: null, postMessage: () => {}, close: () => {} })\n window.MessageChannel = class {\n port1 = stubPort()\n port2 = stubPort()\n } as unknown as typeof MessageChannel\n\n return () => {\n postMessageSpy.mockRestore()\n window.MessageChannel = originalMessageChannel\n }\n}\n\nexport async function testPageControlPropRendering<D extends ControlDefinition>(\n controlDefinition: D,\n {\n toData,\n value,\n locale,\n cacheData,\n expectedRenders,\n registerComponents,\n action,\n rootElements = [],\n isInBuilder = false,\n isReadOnly = true,\n }: {\n toData?: (value: ValueType<D>) => DataType<D>\n value: ValueType<D> | undefined\n locale?: string | null\n cacheData?: Partial<CacheData>\n expectedRenders?: number\n registerComponents?: (runtime: ReactRuntime) => void\n action?: (element: HTMLElement) => Promise<void>\n rootElements?: ElementData[]\n isInBuilder?: boolean\n isReadOnly?: boolean\n },\n) {\n // Arrange\n const controlData: DataType<D> | Data =\n value !== undefined ? (toData ? toData(value) : controlDefinition.toData(value)) : undefined\n\n const testComponentMeta = {\n type: 'TestComponent',\n label: 'Test Component',\n }\n\n const testId = 'test-id'\n const renderCountTestId = 'render-count-test-id'\n const elementData: ElementData = {\n key: ELEMENT_ID,\n type: testComponentMeta.type,\n props: {\n propKey: controlData,\n },\n }\n\n const runtime = Testing.createReactRuntime()\n runtime.protoStore.dispatch(setIsInBuilder(isInBuilder))\n registerComponents?.(runtime)\n\n // Act\n runtime.registerComponent(\n forwardRef<HTMLDivElement, { propKey?: any }>(({ propKey }, ref) => {\n const renderCount = useRef(0)\n ++renderCount.current\n\n return (\n <div ref={ref}>\n <div data-testid={renderCountTestId}>{renderCount.current}</div>\n <div data-testid={testId}>{renderProp(propKey)}</div>\n </div>\n )\n }),\n {\n ...testComponentMeta,\n props: {\n propKey: controlDefinition as any,\n },\n },\n )\n\n const testElementTree = (component: ReactNode) => {\n // The runtime enters the read-write state when a non-null site version is\n // passed\n const siteVersion = isReadOnly ? null : { token: 'test-token', version: 'draft' }\n return (\n <Testing.ReactProvider runtime={runtime} siteVersion={siteVersion}>\n {component}\n </Testing.ReactProvider>\n )\n }\n\n if (!isServer()) {\n const restoreMessageChannel = isReadOnly ? null : stubBuilderMessageChannel()\n\n const rootElementData: ElementData = Testing.createRootComponent(\n [elementData, ...rootElements],\n ROOT_ID,\n )\n\n const snapshot = Testing.createMakeswiftPageSnapshot(rootElementData, { locale, cacheData })\n\n // Assert\n await act(async () => render(testElementTree(<Page snapshot={snapshot} />)))\n\n if (action) {\n await act(async () => {\n await action(screen.getByTestId(testId))\n })\n }\n\n expect(snapshot).toMatchSnapshot('snapshot')\n expect(propSnapshot(screen.getByTestId(testId))).toMatchSnapshot('resolvedValue')\n\n if (expectedRenders != null) {\n expect(Number(screen.getByTestId(renderCountTestId).textContent)).toBe(expectedRenders)\n }\n\n restoreMessageChannel?.()\n } else {\n // test server-side rendering using a component snapshot\n console.assert(action == null)\n console.assert(rootElements.length === 0)\n\n const snapshot = Testing.createMakeswiftComponentSnapshot(elementData, { locale, cacheData })\n const elementTree = testElementTree(\n <MakeswiftComponent snapshot={snapshot} {...testComponentMeta} />,\n )\n\n const document = await serverSideRender(elementTree)\n const getByTestId = (id: string): HTMLElement | null =>\n document.querySelector(`[data-testid=\"${id}\"]`)\n\n expect(propSnapshot(getByTestId(testId))).toMatchSnapshot('resolvedValue')\n expect(\n [...document.querySelectorAll('style')].map(n => n.textContent).filter(v => v !== ''),\n ).toMatchSnapshot('component styles')\n\n expect(Number(getByTestId(renderCountTestId)?.textContent)).toBe(1)\n }\n}\n"],"mappings":"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","names":["import_react"]}
@@ -33,21 +33,31 @@ __export(document_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(document_exports);
35
35
  var import_jsx_runtime = require("react/jsx-runtime");
36
- var import_css = require("@emotion/css");
37
- var import_create_instance = __toESM(require("@emotion/server/create-instance"));
38
36
  var import_document = __toESM(require("next/document"));
39
- var import_root_style_registry = require("../runtimes/react/root-style-registry");
37
+ var import_unstable_framework_support = require("../unstable-framework-support");
38
+ var import_react = require("react");
39
+ var import_styles_context_provider = require("../runtimes/react/css-runtime/components/styles-context-provider");
40
40
  class Document extends import_document.default {
41
41
  static async getInitialProps(ctx) {
42
- const initialProps = await import_document.default.getInitialProps(ctx);
43
- const { extractCritical } = (0, import_create_instance.default)(import_css.cache);
44
- const { ids, css } = extractCritical(initialProps.html);
42
+ const originalRenderPage = ctx.renderPage;
43
+ const stylesRegistry = (0, import_unstable_framework_support.createMakeswiftStylesRegistry)();
44
+ ctx.renderPage = () => {
45
+ return originalRenderPage({
46
+ enhanceComponent: (Component) => (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(InnerRootStyleRegistry, { stylesRegistry, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props }) })
47
+ });
48
+ };
49
+ const initialProps = await super.getInitialProps(ctx);
50
+ const perPrecedenceStyleProps = stylesRegistry.serializeToStyleProps();
51
+ const makeswiftStyleElements = perPrecedenceStyleProps.map((props) => {
52
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("style", { "data-href": props.href, "data-precedence": props.precedence, children: props.css }, props.precedence);
53
+ });
54
+ const combinedStyles = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
55
+ initialProps.styles,
56
+ makeswiftStyleElements
57
+ ] });
45
58
  return {
46
59
  ...initialProps,
47
- styles: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
48
- initialProps.styles,
49
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_root_style_registry.StyleTagSSR, { cacheKey: import_css.cache.key, classNames: ids, css })
50
- ] })
60
+ styles: combinedStyles
51
61
  };
52
62
  }
53
63
  render() {
@@ -60,6 +70,25 @@ class Document extends import_document.default {
60
70
  ] });
61
71
  }
62
72
  }
73
+ function InnerRootStyleRegistry({
74
+ children,
75
+ stylesRegistry
76
+ }) {
77
+ const outerStylesContext = (0, import_react.useContext)(import_styles_context_provider.StylesContext);
78
+ const outerStylesProps = {
79
+ classNamePrefix: outerStylesContext?.classNamePrefix,
80
+ enableCssReset: outerStylesContext?.enableCssReset
81
+ };
82
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
83
+ import_unstable_framework_support.RootStyleRegistry,
84
+ {
85
+ ...outerStylesProps,
86
+ stylesRegistry,
87
+ shouldRenderStyleElements: false,
88
+ children
89
+ }
90
+ );
91
+ }
63
92
  // Annotate the CommonJS export names for ESM import in node:
64
93
  0 && (module.exports = {
65
94
  Document
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/next/document.tsx"],"sourcesContent":["'use client'\n\nimport { cache } from '@emotion/css'\nimport createEmotionServer from '@emotion/server/create-instance'\nimport NextDocument, {\n DocumentContext,\n DocumentInitialProps,\n Head,\n Html,\n Main,\n NextScript,\n} from 'next/document'\n\nimport { StyleTagSSR } from '../runtimes/react/root-style-registry'\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const initialProps = await NextDocument.getInitialProps(ctx)\n\n const { extractCritical } = createEmotionServer(cache)\n const { ids, css } = extractCritical(initialProps.html)\n\n return {\n ...initialProps,\n styles: (\n <>\n {initialProps.styles}\n <StyleTagSSR cacheKey={cache.key} classNames={ids} css={css} />\n </>\n ),\n }\n }\n\n render() {\n return (\n <Html>\n <Head />\n <body>\n <Main />\n <NextScript />\n </body>\n </Html>\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBQ;AAvBR,iBAAsB;AACtB,6BAAgC;AAChC,sBAOO;AAEP,iCAA4B;AAErB,MAAM,iBAAiB,gBAAAA,QAAa;AAAA,EACzC,aAAa,gBAAgB,KAAqD;AAChF,UAAM,eAAe,MAAM,gBAAAA,QAAa,gBAAgB,GAAG;AAE3D,UAAM,EAAE,gBAAgB,QAAI,uBAAAC,SAAoB,gBAAK;AACrD,UAAM,EAAE,KAAK,IAAI,IAAI,gBAAgB,aAAa,IAAI;AAEtD,WAAO;AAAA,MACL,GAAG;AAAA,MACH,QACE,4EACG;AAAA,qBAAa;AAAA,QACd,4CAAC,0CAAY,UAAU,iBAAM,KAAK,YAAY,KAAK,KAAU;AAAA,SAC/D;AAAA,IAEJ;AAAA,EACF;AAAA,EAEA,SAAS;AACP,WACE,6CAAC,wBACC;AAAA,kDAAC,wBAAK;AAAA,MACN,6CAAC,UACC;AAAA,oDAAC,wBAAK;AAAA,QACN,4CAAC,8BAAW;AAAA,SACd;AAAA,OACF;AAAA,EAEJ;AACF;","names":["NextDocument","createEmotionServer"]}
1
+ {"version":3,"sources":["../../../src/next/document.tsx"],"sourcesContent":["'use client'\n\nimport NextDocument, {\n DocumentContext,\n DocumentInitialProps,\n Head,\n Html,\n Main,\n NextScript,\n} from 'next/document'\nimport {\n createMakeswiftStylesRegistry,\n RootStyleProps,\n RootStyleRegistry,\n StylesRegistry,\n} from '../unstable-framework-support'\nimport { PropsWithChildren, useContext } from 'react'\nimport { StylesContext } from '../runtimes/react/css-runtime/components/styles-context-provider'\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const originalRenderPage = ctx.renderPage\n const stylesRegistry = createMakeswiftStylesRegistry()\n\n /*\n This runs only on the server and configures a `RootStyleRegistry` which disables\n rendering Makeswift-generated `<style>`s alongside components, opting instead to\n pull them from the styles registry and place them in the `<head>` manually.\n This is a special case for pages router, where React hoisting will not work during\n SSR.\n\n `InnerRootStyleRegistry` is a wrapper component that pulls in user configuration\n from the outer (userland) `RootStyleRegistry`. This would matter, for example, if\n the `RootStyleRegistry` in userland was configured with a custom class name prefix.\n */\n ctx.renderPage = () => {\n return originalRenderPage({\n enhanceComponent: Component => props => (\n <InnerRootStyleRegistry stylesRegistry={stylesRegistry}>\n <Component {...props}></Component>\n </InnerRootStyleRegistry>\n ),\n })\n }\n\n const initialProps = await super.getInitialProps(ctx)\n const perPrecedenceStyleProps = stylesRegistry.serializeToStyleProps()\n const makeswiftStyleElements = perPrecedenceStyleProps.map(props => {\n return (\n <style key={props.precedence} data-href={props.href} data-precedence={props.precedence}>\n {props.css}\n </style>\n )\n })\n\n const combinedStyles = (\n <>\n {initialProps.styles}\n {makeswiftStyleElements}\n </>\n )\n\n return {\n ...initialProps,\n styles: combinedStyles,\n }\n }\n\n render() {\n return (\n <Html>\n <Head />\n <body>\n <Main />\n <NextScript />\n </body>\n </Html>\n )\n }\n}\n\nfunction InnerRootStyleRegistry({\n children,\n stylesRegistry,\n}: PropsWithChildren<{\n stylesRegistry: StylesRegistry\n}>) {\n const outerStylesContext = useContext(StylesContext)\n\n const outerStylesProps: RootStyleProps = {\n classNamePrefix: outerStylesContext?.classNamePrefix,\n enableCssReset: outerStylesContext?.enableCssReset,\n }\n\n return (\n <RootStyleRegistry\n {...outerStylesProps}\n stylesRegistry={stylesRegistry}\n shouldRenderStyleElements={false}\n >\n {children}\n </RootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuCY;AArCZ,sBAOO;AACP,wCAKO;AACP,mBAA8C;AAC9C,qCAA8B;AAEvB,MAAM,iBAAiB,gBAAAA,QAAa;AAAA,EACzC,aAAa,gBAAgB,KAAqD;AAChF,UAAM,qBAAqB,IAAI;AAC/B,UAAM,qBAAiB,iEAA8B;AAarD,QAAI,aAAa,MAAM;AACrB,aAAO,mBAAmB;AAAA,QACxB,kBAAkB,eAAa,WAC7B,4CAAC,0BAAuB,gBACtB,sDAAC,aAAW,GAAG,OAAO,GACxB;AAAA,MAEJ,CAAC;AAAA,IACH;AAEA,UAAM,eAAe,MAAM,MAAM,gBAAgB,GAAG;AACpD,UAAM,0BAA0B,eAAe,sBAAsB;AACrE,UAAM,yBAAyB,wBAAwB,IAAI,WAAS;AAClE,aACE,4CAAC,WAA6B,aAAW,MAAM,MAAM,mBAAiB,MAAM,YACzE,gBAAM,OADG,MAAM,UAElB;AAAA,IAEJ,CAAC;AAED,UAAM,iBACJ,4EACG;AAAA,mBAAa;AAAA,MACb;AAAA,OACH;AAGF,WAAO;AAAA,MACL,GAAG;AAAA,MACH,QAAQ;AAAA,IACV;AAAA,EACF;AAAA,EAEA,SAAS;AACP,WACE,6CAAC,wBACC;AAAA,kDAAC,wBAAK;AAAA,MACN,6CAAC,UACC;AAAA,oDAAC,wBAAK;AAAA,QACN,4CAAC,8BAAW;AAAA,SACd;AAAA,OACF;AAAA,EAEJ;AACF;AAEA,SAAS,uBAAuB;AAAA,EAC9B;AAAA,EACA;AACF,GAEI;AACF,QAAM,yBAAqB,yBAAW,4CAAa;AAEnD,QAAM,mBAAmC;AAAA,IACvC,iBAAiB,oBAAoB;AAAA,IACrC,gBAAgB,oBAAoB;AAAA,EACtC;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACJ;AAAA,MACA,2BAA2B;AAAA,MAE1B;AAAA;AAAA,EACH;AAEJ;","names":["NextDocument"]}
@@ -23,20 +23,13 @@ __export(root_style_registry_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(root_style_registry_exports);
25
25
  var import_jsx_runtime = require("react/jsx-runtime");
26
- var import_react = require("react");
27
- var import_navigation = require("next/navigation");
28
26
  var import_root_style_registry = require("../runtimes/react/root-style-registry");
29
27
  function NextRootStyleRegistry({
30
28
  children,
31
- cacheKey,
29
+ classNamePrefix,
32
30
  enableCssReset
33
31
  }) {
34
- const [cache] = (0, import_react.useState)(() => (0, import_root_style_registry.createRootStyleCache)({ key: cacheKey }));
35
- (0, import_navigation.useServerInsertedHTML)(() => {
36
- const { classNames, css } = cache.flush();
37
- return classNames.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_root_style_registry.StyleTagSSR, { cacheKey: cache.key, classNames, css }) : null;
38
- });
39
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_root_style_registry.RootStyleRegistry, { cache, enableCssReset, children });
32
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_root_style_registry.DefaultRootStyleRegistry, { classNamePrefix, enableCssReset, children });
40
33
  }
41
34
  // Annotate the CommonJS export names for ESM import in node:
42
35
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/next/root-style-registry.tsx"],"sourcesContent":["'use client'\n\nimport { type PropsWithChildren, useState } from 'react'\nimport { useServerInsertedHTML } from 'next/navigation'\n\nimport {\n createRootStyleCache,\n RootStyleRegistry as ReactRootStyleRegistry,\n StyleTagSSR,\n type RootStyleProps,\n} from '../runtimes/react/root-style-registry'\n\nexport function NextRootStyleRegistry({\n children,\n cacheKey,\n enableCssReset,\n}: PropsWithChildren<RootStyleProps>) {\n const [cache] = useState(() => createRootStyleCache({ key: cacheKey }))\n\n useServerInsertedHTML(() => {\n const { classNames, css } = cache.flush()\n\n return classNames.length > 0 ? (\n <StyleTagSSR cacheKey={cache.key} classNames={classNames} css={css} />\n ) : null\n })\n\n return (\n <ReactRootStyleRegistry cache={cache} enableCssReset={enableCssReset}>\n {children}\n </ReactRootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuBM;AArBN,mBAAiD;AACjD,wBAAsC;AAEtC,iCAKO;AAEA,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AACF,GAAsC;AACpC,QAAM,CAAC,KAAK,QAAI,uBAAS,UAAM,iDAAqB,EAAE,KAAK,SAAS,CAAC,CAAC;AAEtE,+CAAsB,MAAM;AAC1B,UAAM,EAAE,YAAY,IAAI,IAAI,MAAM,MAAM;AAExC,WAAO,WAAW,SAAS,IACzB,4CAAC,0CAAY,UAAU,MAAM,KAAK,YAAwB,KAAU,IAClE;AAAA,EACN,CAAC;AAED,SACE,4CAAC,2BAAAA,mBAAA,EAAuB,OAAc,gBACnC,UACH;AAEJ;","names":["ReactRootStyleRegistry"]}
1
+ {"version":3,"sources":["../../../src/next/root-style-registry.tsx"],"sourcesContent":["'use client'\n\nimport { type PropsWithChildren } from 'react'\n\nimport {\n DefaultRootStyleRegistry as ReactRootStyleRegistry,\n type RootStyleProps,\n} from '../runtimes/react/root-style-registry'\n\nexport function NextRootStyleRegistry({\n children,\n classNamePrefix,\n enableCssReset,\n}: PropsWithChildren<RootStyleProps>) {\n return (\n <ReactRootStyleRegistry classNamePrefix={classNamePrefix} enableCssReset={enableCssReset}>\n {children}\n </ReactRootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAeI;AAXJ,iCAGO;AAEA,SAAS,sBAAsB;AAAA,EACpC;AAAA,EACA;AAAA,EACA;AACF,GAAsC;AACpC,SACE,4CAAC,2BAAAA,0BAAA,EAAuB,iBAAkC,gBACvD,UACH;AAEJ;","names":["ReactRootStyleRegistry"]}
@@ -22,7 +22,6 @@ __export(server_exports, {
22
22
  MakeswiftRenderContext: () => import_server.RenderContext,
23
23
  RSCElementRenderer: () => import_server.RSCElementRenderer,
24
24
  RenderElementPayload: () => import_server.RenderElementPayload,
25
- ServerCSSCollector: () => import_server.ServerCSSCollector,
26
25
  ServerElement: () => import_server.ServerElement,
27
26
  Slot: () => import_server.Slot,
28
27
  collectServerElements: () => import_server.collectServerElements,
@@ -37,7 +36,6 @@ var import_server = require("../../runtimes/react/server");
37
36
  MakeswiftRenderContext,
38
37
  RSCElementRenderer,
39
38
  RenderElementPayload,
40
- ServerCSSCollector,
41
39
  ServerElement,
42
40
  Slot,
43
41
  collectServerElements,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/react/server/index.ts"],"sourcesContent":["export {\n type ServerRenderContext,\n collectServerElements,\n RenderElementPayload,\n RenderContext as MakeswiftRenderContext,\n setRenderContext,\n getRenderContext,\n ServerCSSCollector,\n ServerElement,\n RSCElementRenderer,\n MakeswiftComponent,\n Slot,\n} from '../../runtimes/react/server'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAYO;","names":[]}
1
+ {"version":3,"sources":["../../../../src/react/server/index.ts"],"sourcesContent":["export {\n type ServerRenderContext,\n collectServerElements,\n RenderElementPayload,\n RenderContext as MakeswiftRenderContext,\n setRenderContext,\n getRenderContext,\n ServerElement,\n RSCElementRenderer,\n MakeswiftComponent,\n Slot,\n} from '../../runtimes/react/server'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAWO;","names":[]}
@@ -68,12 +68,21 @@ const ElementDataServer = (0, import_react2.forwardRef)(function ElementDataServ
68
68
  const ElementDataClient = (0, import_react2.forwardRef)(function ElementDataClient2({ elementData }, ref) {
69
69
  const Component = (0, import_use_component.useComponent)(elementData.type);
70
70
  const builtinSuspense = (0, import_use_builtin_suspense.useBuiltinSuspense)(elementData.type);
71
+ const forwardRef2 = Component != null ? (0, import_can_accept_ref.canAcceptRef)(Component) : void 0;
72
+ const renderChildren = (0, import_react2.useCallback)(
73
+ (props) => {
74
+ if (Component == null) {
75
+ return null;
76
+ }
77
+ return forwardRef2 ? /* @__PURE__ */ (0, import_react.createElement)(Component, { ...props, key: elementData.key, ref }) : /* @__PURE__ */ (0, import_react.createElement)(Component, { ...props, key: elementData.key });
78
+ },
79
+ [forwardRef2, elementData.key, ref, Component]
80
+ );
71
81
  if (Component == null) {
72
82
  console.warn(`Unknown component '${elementData.type}'`, { elementData });
73
83
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FallbackComponent.FallbackComponent, { ref, text: "Component not found" });
74
84
  }
75
- const forwardRef2 = (0, import_can_accept_ref.canAcceptRef)(Component);
76
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_activity_with_fallback.ActivityOrFallback, { suspenseFallback: builtinSuspense, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_resolve_props.ResolveProps, { element: elementData, children: (props) => forwardRef2 ? /* @__PURE__ */ (0, import_react.createElement)(Component, { ...props, key: elementData.key, ref }) : /* @__PURE__ */ (0, import_react.createElement)(Component, { ...props, key: elementData.key }) }) });
85
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_activity_with_fallback.ActivityOrFallback, { suspenseFallback: builtinSuspense, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_resolve_props.ResolveProps, { element: elementData, children: renderChildren }) });
77
86
  });
78
87
  // Annotate the CommonJS export names for ESM import in node:
79
88
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/ElementData.tsx"],"sourcesContent":["import { type ReactNode, type Ref, forwardRef, memo } from 'react'\n\nimport { type ElementData as MakeswiftElementData } from '../../../state/read-only-state'\nimport { FallbackComponent } from '../../../components/shared/FallbackComponent'\n\nimport { EditableServerElement } from '../server/components/editable-server-element'\nimport { useServerElementsCache } from '../server/components/server-elements-cache'\n\nimport { useBuiltinSuspense } from '../hooks/use-builtin-suspense'\nimport { useComponent, useComponentMeta } from '../hooks/use-component'\nimport { useIsReadOnly } from '../hooks/use-is-read-only'\n\nimport { canAcceptRef } from '../utils/can-accept-ref'\n\nimport { ResolveProps } from './resolve-props'\nimport { ActivityOrFallback } from './activity-with-fallback'\n\ntype ElementDataProps = {\n elementData: MakeswiftElementData\n}\n\nexport const ElementData = memo(\n forwardRef(function ElementData({ elementData }: ElementDataProps, ref: Ref<unknown>): ReactNode {\n const componentMeta = useComponentMeta(elementData.type)\n\n if (componentMeta == null) {\n const msg = `Component metadata not found for '${elementData.type}'`\n console.warn(msg)\n return (\n <FallbackComponent\n ref={ref as Ref<HTMLDivElement>}\n text=\"Component not found\"\n details={msg}\n />\n )\n }\n\n return componentMeta.server ? (\n <ElementDataServer elementData={elementData} ref={ref} />\n ) : (\n <ElementDataClient elementData={elementData} ref={ref} />\n )\n }),\n)\n\nconst ElementDataServer = forwardRef(function ElementDataServer(\n { elementData }: ElementDataProps,\n ref: Ref<unknown>,\n): ReactNode {\n // lookup and render RSC node for the element; see the `ServerElementsCache` comment\n const rscNode = useServerElementsCache().getElement(elementData.key)\n const isReadOnly = useIsReadOnly()\n\n if (isReadOnly) {\n if (rscNode == null) {\n console.error(\n `React node not found for server component ${elementData.type}, element key ${elementData.key}`,\n )\n\n return (\n <FallbackComponent ref={ref as Ref<HTMLDivElement>} text=\"Server component not found\" />\n )\n }\n\n return rscNode\n }\n\n return <EditableServerElement initialElementData={elementData}>{rscNode}</EditableServerElement>\n})\n\nconst ElementDataClient = forwardRef(function ElementDataClient(\n { elementData }: ElementDataProps,\n ref: Ref<unknown>,\n): ReactNode {\n const Component = useComponent(elementData.type)\n const builtinSuspense = useBuiltinSuspense(elementData.type)\n\n if (Component == null) {\n console.warn(`Unknown component '${elementData.type}'`, { elementData })\n return <FallbackComponent ref={ref as Ref<HTMLDivElement>} text=\"Component not found\" />\n }\n\n const forwardRef = canAcceptRef(Component)\n\n return (\n <ActivityOrFallback suspenseFallback={builtinSuspense}>\n <ResolveProps element={elementData}>\n {props =>\n forwardRef ? (\n <Component {...props} key={elementData.key} ref={ref} />\n ) : (\n <Component {...props} key={elementData.key} />\n )\n }\n </ResolveProps>\n </ActivityOrFallback>\n )\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA6BQ;AA4DI;AAzFZ,IAAAA,gBAA2D;AAG3D,+BAAkC;AAElC,qCAAsC;AACtC,mCAAuC;AAEvC,kCAAmC;AACnC,2BAA+C;AAC/C,8BAA8B;AAE9B,4BAA6B;AAE7B,2BAA6B;AAC7B,oCAAmC;AAM5B,MAAM,kBAAc;AAAA,MACzB,0BAAW,SAASC,aAAY,EAAE,YAAY,GAAqB,KAA8B;AAC/F,UAAM,oBAAgB,uCAAiB,YAAY,IAAI;AAEvD,QAAI,iBAAiB,MAAM;AACzB,YAAM,MAAM,qCAAqC,YAAY,IAAI;AACjE,cAAQ,KAAK,GAAG;AAChB,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,MAAK;AAAA,UACL,SAAS;AAAA;AAAA,MACX;AAAA,IAEJ;AAEA,WAAO,cAAc,SACnB,4CAAC,qBAAkB,aAA0B,KAAU,IAEvD,4CAAC,qBAAkB,aAA0B,KAAU;AAAA,EAE3D,CAAC;AACH;AAEA,MAAM,wBAAoB,0BAAW,SAASC,mBAC5C,EAAE,YAAY,GACd,KACW;AAEX,QAAM,cAAU,qDAAuB,EAAE,WAAW,YAAY,GAAG;AACnE,QAAM,iBAAa,uCAAc;AAEjC,MAAI,YAAY;AACd,QAAI,WAAW,MAAM;AACnB,cAAQ;AAAA,QACN,6CAA6C,YAAY,IAAI,iBAAiB,YAAY,GAAG;AAAA,MAC/F;AAEA,aACE,4CAAC,8CAAkB,KAAiC,MAAK,8BAA6B;AAAA,IAE1F;AAEA,WAAO;AAAA,EACT;AAEA,SAAO,4CAAC,wDAAsB,oBAAoB,aAAc,mBAAQ;AAC1E,CAAC;AAED,MAAM,wBAAoB,0BAAW,SAASC,mBAC5C,EAAE,YAAY,GACd,KACW;AACX,QAAM,gBAAY,mCAAa,YAAY,IAAI;AAC/C,QAAM,sBAAkB,gDAAmB,YAAY,IAAI;AAE3D,MAAI,aAAa,MAAM;AACrB,YAAQ,KAAK,sBAAsB,YAAY,IAAI,KAAK,EAAE,YAAY,CAAC;AACvE,WAAO,4CAAC,8CAAkB,KAAiC,MAAK,uBAAsB;AAAA,EACxF;AAEA,QAAMC,kBAAa,oCAAa,SAAS;AAEzC,SACE,4CAAC,oDAAmB,kBAAkB,iBACpC,sDAAC,qCAAa,SAAS,aACpB,qBACCA,cACE,gDAAC,aAAW,GAAG,OAAO,KAAK,YAAY,KAAK,KAAU,IAEtD,gDAAC,aAAW,GAAG,OAAO,KAAK,YAAY,KAAK,GAGlD,GACF;AAEJ,CAAC;","names":["import_react","ElementData","ElementDataServer","ElementDataClient","forwardRef"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/ElementData.tsx"],"sourcesContent":["import { type ReactNode, type Ref, forwardRef, memo, useCallback } from 'react'\n\nimport { type ElementData as MakeswiftElementData } from '../../../state/read-only-state'\nimport { FallbackComponent } from '../../../components/shared/FallbackComponent'\n\nimport { EditableServerElement } from '../server/components/editable-server-element'\nimport { useServerElementsCache } from '../server/components/server-elements-cache'\n\nimport { useBuiltinSuspense } from '../hooks/use-builtin-suspense'\nimport { useComponent, useComponentMeta } from '../hooks/use-component'\nimport { useIsReadOnly } from '../hooks/use-is-read-only'\n\nimport { canAcceptRef } from '../utils/can-accept-ref'\n\nimport { ResolveProps } from './resolve-props'\nimport { ActivityOrFallback } from './activity-with-fallback'\n\ntype ElementDataProps = {\n elementData: MakeswiftElementData\n}\n\nexport const ElementData = memo(\n forwardRef(function ElementData({ elementData }: ElementDataProps, ref: Ref<unknown>): ReactNode {\n const componentMeta = useComponentMeta(elementData.type)\n\n if (componentMeta == null) {\n const msg = `Component metadata not found for '${elementData.type}'`\n console.warn(msg)\n return (\n <FallbackComponent\n ref={ref as Ref<HTMLDivElement>}\n text=\"Component not found\"\n details={msg}\n />\n )\n }\n\n return componentMeta.server ? (\n <ElementDataServer elementData={elementData} ref={ref} />\n ) : (\n <ElementDataClient elementData={elementData} ref={ref} />\n )\n }),\n)\n\nconst ElementDataServer = forwardRef(function ElementDataServer(\n { elementData }: ElementDataProps,\n ref: Ref<unknown>,\n): ReactNode {\n // lookup and render RSC node for the element; see the `ServerElementsCache` comment\n const rscNode = useServerElementsCache().getElement(elementData.key)\n const isReadOnly = useIsReadOnly()\n\n if (isReadOnly) {\n if (rscNode == null) {\n console.error(\n `React node not found for server component ${elementData.type}, element key ${elementData.key}`,\n )\n\n return (\n <FallbackComponent ref={ref as Ref<HTMLDivElement>} text=\"Server component not found\" />\n )\n }\n\n return rscNode\n }\n\n return <EditableServerElement initialElementData={elementData}>{rscNode}</EditableServerElement>\n})\n\nconst ElementDataClient = forwardRef(function ElementDataClient(\n { elementData }: ElementDataProps,\n ref: Ref<unknown>,\n): ReactNode {\n const Component = useComponent(elementData.type)\n const builtinSuspense = useBuiltinSuspense(elementData.type)\n\n const forwardRef = Component != null ? canAcceptRef(Component) : undefined\n\n const renderChildren = useCallback(\n (props: Record<string, unknown>) => {\n if (Component == null) {\n return null\n }\n return forwardRef ? (\n <Component {...props} key={elementData.key} ref={ref} />\n ) : (\n <Component {...props} key={elementData.key} />\n )\n },\n [forwardRef, elementData.key, ref, Component],\n )\n\n if (Component == null) {\n console.warn(`Unknown component '${elementData.type}'`, { elementData })\n return <FallbackComponent ref={ref as Ref<HTMLDivElement>} text=\"Component not found\" />\n }\n\n return (\n <ActivityOrFallback suspenseFallback={builtinSuspense}>\n <ResolveProps element={elementData}>{renderChildren}</ResolveProps>\n </ActivityOrFallback>\n )\n})\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA6BQ;AAwDA;AArFR,IAAAA,gBAAwE;AAGxE,+BAAkC;AAElC,qCAAsC;AACtC,mCAAuC;AAEvC,kCAAmC;AACnC,2BAA+C;AAC/C,8BAA8B;AAE9B,4BAA6B;AAE7B,2BAA6B;AAC7B,oCAAmC;AAM5B,MAAM,kBAAc;AAAA,MACzB,0BAAW,SAASC,aAAY,EAAE,YAAY,GAAqB,KAA8B;AAC/F,UAAM,oBAAgB,uCAAiB,YAAY,IAAI;AAEvD,QAAI,iBAAiB,MAAM;AACzB,YAAM,MAAM,qCAAqC,YAAY,IAAI;AACjE,cAAQ,KAAK,GAAG;AAChB,aACE;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA,MAAK;AAAA,UACL,SAAS;AAAA;AAAA,MACX;AAAA,IAEJ;AAEA,WAAO,cAAc,SACnB,4CAAC,qBAAkB,aAA0B,KAAU,IAEvD,4CAAC,qBAAkB,aAA0B,KAAU;AAAA,EAE3D,CAAC;AACH;AAEA,MAAM,wBAAoB,0BAAW,SAASC,mBAC5C,EAAE,YAAY,GACd,KACW;AAEX,QAAM,cAAU,qDAAuB,EAAE,WAAW,YAAY,GAAG;AACnE,QAAM,iBAAa,uCAAc;AAEjC,MAAI,YAAY;AACd,QAAI,WAAW,MAAM;AACnB,cAAQ;AAAA,QACN,6CAA6C,YAAY,IAAI,iBAAiB,YAAY,GAAG;AAAA,MAC/F;AAEA,aACE,4CAAC,8CAAkB,KAAiC,MAAK,8BAA6B;AAAA,IAE1F;AAEA,WAAO;AAAA,EACT;AAEA,SAAO,4CAAC,wDAAsB,oBAAoB,aAAc,mBAAQ;AAC1E,CAAC;AAED,MAAM,wBAAoB,0BAAW,SAASC,mBAC5C,EAAE,YAAY,GACd,KACW;AACX,QAAM,gBAAY,mCAAa,YAAY,IAAI;AAC/C,QAAM,sBAAkB,gDAAmB,YAAY,IAAI;AAE3D,QAAMC,cAAa,aAAa,WAAO,oCAAa,SAAS,IAAI;AAEjE,QAAM,qBAAiB;AAAA,IACrB,CAAC,UAAmC;AAClC,UAAI,aAAa,MAAM;AACrB,eAAO;AAAA,MACT;AACA,aAAOA,cACL,gDAAC,aAAW,GAAG,OAAO,KAAK,YAAY,KAAK,KAAU,IAEtD,gDAAC,aAAW,GAAG,OAAO,KAAK,YAAY,KAAK;AAAA,IAEhD;AAAA,IACA,CAACA,aAAY,YAAY,KAAK,KAAK,SAAS;AAAA,EAC9C;AAEA,MAAI,aAAa,MAAM;AACrB,YAAQ,KAAK,sBAAsB,YAAY,IAAI,KAAK,EAAE,YAAY,CAAC;AACvE,WAAO,4CAAC,8CAAkB,KAAiC,MAAK,uBAAsB;AAAA,EACxF;AAEA,SACE,4CAAC,oDAAmB,kBAAkB,iBACpC,sDAAC,qCAAa,SAAS,aAAc,0BAAe,GACtD;AAEJ,CAAC;","names":["import_react","ElementData","ElementDataServer","ElementDataClient","forwardRef"]}
@@ -28,6 +28,7 @@ var import_use_is_in_builder = require("../hooks/use-is-in-builder");
28
28
  var import_use_api_resources_client = require("../hooks/use-api-resources-client");
29
29
  var import_google_fonts_url = require("../utils/google-fonts-url");
30
30
  var import_head_tags = require("./page/head-tags");
31
+ var import_types = require("../css-runtime/types");
31
32
  function GoogleFontLink({ fonts, siteId }) {
32
33
  const isInBuilder = (0, import_use_is_in_builder.useIsInBuilder)();
33
34
  const site = useCachedSite(isInBuilder ? siteId : null);
@@ -41,7 +42,7 @@ function GoogleFontLink({ fonts, siteId }) {
41
42
  if (url === "") {
42
43
  return null;
43
44
  }
44
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_head_tags.PageLink, { precedence: "medium", rel: "stylesheet", href: url });
45
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_head_tags.PageLink, { precedence: import_types.MakeswiftStylePrecedence.MEDIUM, rel: "stylesheet", href: url });
45
46
  }
46
47
  function useCachedSite(siteId) {
47
48
  const client = (0, import_use_api_resources_client.useApiResourcesClient)();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/GoogleFontLink.tsx"],"sourcesContent":["'use client'\n\nimport { useMemo, useSyncExternalStore } from 'react'\n\nimport { type Font } from '../../../client'\nimport { type Site } from '../../../api'\nimport { useIsInBuilder } from '../hooks/use-is-in-builder'\nimport { useApiResourcesClient } from '../hooks/use-api-resources-client'\n\nimport {\n getGoogleFontsParamFromFonts,\n getGoogleFontsParamFromSite,\n getGoogleFontsUrl,\n} from '../utils/google-fonts-url'\nimport { PageLink } from './page/head-tags'\n\ntype Props = {\n fonts: Font[]\n siteId: string | null\n}\n\n/**\n * This is experimental, and some of the logic here is duplicated in the `PageHead` component.\n *\n * For now we want to avoid putting this on the critical path for rendering Makeswift pages, so we haven't\n * deduplicated the two.\n */\nexport function GoogleFontLink({ fonts, siteId }: Props) {\n const isInBuilder = useIsInBuilder()\n\n const site = useCachedSite(isInBuilder ? siteId : null)\n\n const fontFamilyParamValue = useMemo(() => {\n if (isInBuilder && site != null) {\n return getGoogleFontsParamFromSite(site)\n }\n return getGoogleFontsParamFromFonts(fonts)\n }, [isInBuilder, site, fonts])\n\n const url = getGoogleFontsUrl(fontFamilyParamValue)\n if (url === '') {\n return null\n }\n\n return <PageLink precedence=\"medium\" rel=\"stylesheet\" href={url} />\n}\n\nfunction useCachedSite(siteId: string | null): Site | null {\n const client = useApiResourcesClient()\n const getSnapshot = () => (siteId == null ? null : client.readSite(siteId))\n\n return useSyncExternalStore(client.subscribe, getSnapshot, getSnapshot)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA4CS;AA1CT,mBAA8C;AAI9C,+BAA+B;AAC/B,sCAAsC;AAEtC,8BAIO;AACP,uBAAyB;AAalB,SAAS,eAAe,EAAE,OAAO,OAAO,GAAU;AACvD,QAAM,kBAAc,yCAAe;AAEnC,QAAM,OAAO,cAAc,cAAc,SAAS,IAAI;AAEtD,QAAM,2BAAuB,sBAAQ,MAAM;AACzC,QAAI,eAAe,QAAQ,MAAM;AAC/B,iBAAO,qDAA4B,IAAI;AAAA,IACzC;AACA,eAAO,sDAA6B,KAAK;AAAA,EAC3C,GAAG,CAAC,aAAa,MAAM,KAAK,CAAC;AAE7B,QAAM,UAAM,2CAAkB,oBAAoB;AAClD,MAAI,QAAQ,IAAI;AACd,WAAO;AAAA,EACT;AAEA,SAAO,4CAAC,6BAAS,YAAW,UAAS,KAAI,cAAa,MAAM,KAAK;AACnE;AAEA,SAAS,cAAc,QAAoC;AACzD,QAAM,aAAS,uDAAsB;AACrC,QAAM,cAAc,MAAO,UAAU,OAAO,OAAO,OAAO,SAAS,MAAM;AAEzE,aAAO,mCAAqB,OAAO,WAAW,aAAa,WAAW;AACxE;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/GoogleFontLink.tsx"],"sourcesContent":["'use client'\n\nimport { useMemo, useSyncExternalStore } from 'react'\n\nimport { type Font } from '../../../client'\nimport { type Site } from '../../../api'\nimport { useIsInBuilder } from '../hooks/use-is-in-builder'\nimport { useApiResourcesClient } from '../hooks/use-api-resources-client'\n\nimport {\n getGoogleFontsParamFromFonts,\n getGoogleFontsParamFromSite,\n getGoogleFontsUrl,\n} from '../utils/google-fonts-url'\nimport { PageLink } from './page/head-tags'\nimport { MakeswiftStylePrecedence } from '../css-runtime/types'\n\ntype Props = {\n fonts: Font[]\n siteId: string | null\n}\n\n/**\n * This is experimental, and some of the logic here is duplicated in the `PageHead` component.\n *\n * For now we want to avoid putting this on the critical path for rendering Makeswift pages, so we haven't\n * deduplicated the two.\n */\nexport function GoogleFontLink({ fonts, siteId }: Props) {\n const isInBuilder = useIsInBuilder()\n\n const site = useCachedSite(isInBuilder ? siteId : null)\n\n const fontFamilyParamValue = useMemo(() => {\n if (isInBuilder && site != null) {\n return getGoogleFontsParamFromSite(site)\n }\n return getGoogleFontsParamFromFonts(fonts)\n }, [isInBuilder, site, fonts])\n\n const url = getGoogleFontsUrl(fontFamilyParamValue)\n if (url === '') {\n return null\n }\n\n return <PageLink precedence={MakeswiftStylePrecedence.MEDIUM} rel=\"stylesheet\" href={url} />\n}\n\nfunction useCachedSite(siteId: string | null): Site | null {\n const client = useApiResourcesClient()\n const getSnapshot = () => (siteId == null ? null : client.readSite(siteId))\n\n return useSyncExternalStore(client.subscribe, getSnapshot, getSnapshot)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA6CS;AA3CT,mBAA8C;AAI9C,+BAA+B;AAC/B,sCAAsC;AAEtC,8BAIO;AACP,uBAAyB;AACzB,mBAAyC;AAalC,SAAS,eAAe,EAAE,OAAO,OAAO,GAAU;AACvD,QAAM,kBAAc,yCAAe;AAEnC,QAAM,OAAO,cAAc,cAAc,SAAS,IAAI;AAEtD,QAAM,2BAAuB,sBAAQ,MAAM;AACzC,QAAI,eAAe,QAAQ,MAAM;AAC/B,iBAAO,qDAA4B,IAAI;AAAA,IACzC;AACA,eAAO,sDAA6B,KAAK;AAAA,EAC3C,GAAG,CAAC,aAAa,MAAM,KAAK,CAAC;AAE7B,QAAM,UAAM,2CAAkB,oBAAoB;AAClD,MAAI,QAAQ,IAAI;AACd,WAAO;AAAA,EACT;AAEA,SAAO,4CAAC,6BAAS,YAAY,sCAAyB,QAAQ,KAAI,cAAa,MAAM,KAAK;AAC5F;AAEA,SAAS,cAAc,QAAoC;AACzD,QAAM,aAAS,uDAAsB;AACrC,QAAM,cAAc,MAAO,UAAU,OAAO,OAAO,OAAO,SAAS,MAAM;AAEzE,aAAO,mCAAqB,OAAO,WAAW,aAAa,WAAW;AACxE;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/components/framework-context.tsx"],"sourcesContent":["'use client'\n\nimport {\n type ReactNode,\n type PropsWithChildren,\n type CSSProperties,\n type ComponentPropsWithoutRef,\n type MouseEvent,\n type ForwardRefExoticComponent,\n type RefAttributes,\n forwardRef,\n createContext,\n useContext,\n useMemo,\n} from 'react'\n\nimport { type LinkData } from '@makeswift/prop-controllers'\n\nimport { type Snippet } from '../../../client/page-snapshot'\n\nimport { type RenderElementPayload } from '../server/render-element-payload'\n\nimport { BaseHeadSnippet } from './page/HeadSnippet'\n\ntype HeadComponent = (props: { children: ReactNode }) => ReactNode\ntype HeadSnippet = (props: { snippet: Snippet }) => ReactNode\ntype ImageComponent = (props: {\n src: string\n alt: string\n sizes?: string\n width?: number\n height?: number\n priority?: boolean\n fill?: boolean\n style?: CSSProperties\n}) => ReactNode\n\ntype LinkProps = Omit<ComponentPropsWithoutRef<'a'>, 'onClick'> & {\n linkType?: LinkData['type']\n onClick?: (event: MouseEvent<HTMLAnchorElement>) => unknown\n}\n\ntype LinkComponent = ForwardRefExoticComponent<RefAttributes<HTMLAnchorElement> & LinkProps>\n\nexport type FrameworkContext = {\n Head: HeadComponent\n HeadSnippet: HeadSnippet\n Image: ImageComponent\n Link: LinkComponent\n /**\n * Callback to render a single RSC element on the server and return the result.\n */\n renderRSCElement?: (args: RenderElementPayload) => Promise<ReactNode>\n}\n\n// React 19 automatically hoists metadata tags to the <head>\nconst DefaultHead = ({ children }: PropsWithChildren) => <>{children}</>\n\nconst DefaultHeadSnippet = BaseHeadSnippet\n\nconst DefaultImage: ImageComponent = ({ priority, fill, style, ...props }) => (\n <img\n {...props}\n style={{\n ...(fill\n ? {\n height: '100%',\n width: '100%',\n objectFit: 'cover',\n }\n : {}),\n ...style,\n }}\n loading={priority ? 'eager' : 'lazy'}\n />\n)\n\nconst DefaultLink: LinkComponent = forwardRef<HTMLAnchorElement, LinkProps>(\n ({ linkType, ...props }, ref) => <a {...props} ref={ref} />,\n)\n\nconst FrameworkContext = createContext<Partial<FrameworkContext>>({})\n\nexport const FrameworkContextProvider = ({\n value,\n children,\n}: PropsWithChildren<{ value: Partial<FrameworkContext> }>) => {\n const parentContext = useContext(FrameworkContext)\n const mergedContext = useMemo(() => ({ ...parentContext, ...value }), [parentContext, value])\n\n return <FrameworkContext.Provider value={mergedContext}>{children}</FrameworkContext.Provider>\n}\n\nconst defaultContext: FrameworkContext = {\n Head: DefaultHead,\n HeadSnippet: DefaultHeadSnippet,\n Image: DefaultImage,\n Link: DefaultLink,\n}\n\nexport function useFrameworkContext(): FrameworkContext {\n return { ...defaultContext, ...useContext(FrameworkContext) }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAwDyD;AAtDzD,mBAYO;AAQP,yBAAgC;AAkChC,MAAM,cAAc,CAAC,EAAE,SAAS,MAAyB,2EAAG,UAAS;AAErE,MAAM,qBAAqB;AAE3B,MAAM,eAA+B,CAAC,EAAE,UAAU,MAAM,OAAO,GAAG,MAAM,MACtE;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ,OAAO;AAAA,MACL,GAAI,OACA;AAAA,QACE,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,WAAW;AAAA,MACb,IACA,CAAC;AAAA,MACL,GAAG;AAAA,IACL;AAAA,IACA,SAAS,WAAW,UAAU;AAAA;AAChC;AAGF,MAAM,kBAA6B;AAAA,EACjC,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,4CAAC,OAAG,GAAG,OAAO,KAAU;AAC3D;AAEA,MAAM,uBAAmB,4BAAyC,CAAC,CAAC;AAE7D,MAAM,2BAA2B,CAAC;AAAA,EACvC;AAAA,EACA;AACF,MAA+D;AAC7D,QAAM,oBAAgB,yBAAW,gBAAgB;AACjD,QAAM,oBAAgB,sBAAQ,OAAO,EAAE,GAAG,eAAe,GAAG,MAAM,IAAI,CAAC,eAAe,KAAK,CAAC;AAE5F,SAAO,4CAAC,iBAAiB,UAAjB,EAA0B,OAAO,eAAgB,UAAS;AACpE;AAEA,MAAM,iBAAmC;AAAA,EACvC,MAAM;AAAA,EACN,aAAa;AAAA,EACb,OAAO;AAAA,EACP,MAAM;AACR;AAEO,SAAS,sBAAwC;AACtD,SAAO,EAAE,GAAG,gBAAgB,OAAG,yBAAW,gBAAgB,EAAE;AAC9D;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/framework-context.tsx"],"sourcesContent":["'use client'\n\nimport {\n type ReactNode,\n type PropsWithChildren,\n type CSSProperties,\n type ComponentPropsWithoutRef,\n type MouseEvent,\n type ForwardRefExoticComponent,\n type RefAttributes,\n forwardRef,\n createContext,\n useContext,\n useMemo,\n} from 'react'\n\nimport { type LinkData } from '@makeswift/prop-controllers'\n\nimport { type Snippet } from '../../../client/page-snapshot'\n\nimport { type RenderElementPayload } from '../server/render-element-payload'\n\nimport { BaseHeadSnippet } from './page/HeadSnippet'\n\ntype HeadComponent = (props: { children: ReactNode }) => ReactNode\ntype HeadSnippet = (props: { snippet: Snippet }) => ReactNode\ntype ImageComponent = (props: {\n src: string\n alt: string\n sizes?: string\n width?: number\n height?: number\n priority?: boolean\n fill?: boolean\n style?: CSSProperties\n className?: string\n}) => ReactNode\n\ntype LinkProps = Omit<ComponentPropsWithoutRef<'a'>, 'onClick'> & {\n linkType?: LinkData['type']\n onClick?: (event: MouseEvent<HTMLAnchorElement>) => unknown\n}\n\ntype LinkComponent = ForwardRefExoticComponent<RefAttributes<HTMLAnchorElement> & LinkProps>\n\nexport type FrameworkContext = {\n Head: HeadComponent\n HeadSnippet: HeadSnippet\n Image: ImageComponent\n Link: LinkComponent\n /**\n * Callback to render a single RSC element on the server and return the result.\n */\n renderRSCElement?: (args: RenderElementPayload) => Promise<ReactNode>\n}\n\n// React 19 automatically hoists metadata tags to the <head>\nconst DefaultHead = ({ children }: PropsWithChildren) => <>{children}</>\n\nconst DefaultHeadSnippet = BaseHeadSnippet\n\nconst DefaultImage: ImageComponent = ({ priority, fill, style, ...props }) => (\n <img\n {...props}\n style={{\n ...(fill\n ? {\n height: '100%',\n width: '100%',\n objectFit: 'cover',\n }\n : {}),\n ...style,\n }}\n loading={priority ? 'eager' : 'lazy'}\n />\n)\n\nconst DefaultLink: LinkComponent = forwardRef<HTMLAnchorElement, LinkProps>(\n ({ linkType, ...props }, ref) => <a {...props} ref={ref} />,\n)\n\nconst FrameworkContext = createContext<Partial<FrameworkContext>>({})\n\nexport const FrameworkContextProvider = ({\n value,\n children,\n}: PropsWithChildren<{ value: Partial<FrameworkContext> }>) => {\n const parentContext = useContext(FrameworkContext)\n const mergedContext = useMemo(() => ({ ...parentContext, ...value }), [parentContext, value])\n\n return <FrameworkContext.Provider value={mergedContext}>{children}</FrameworkContext.Provider>\n}\n\nconst defaultContext: FrameworkContext = {\n Head: DefaultHead,\n HeadSnippet: DefaultHeadSnippet,\n Image: DefaultImage,\n Link: DefaultLink,\n}\n\nexport function useFrameworkContext(): FrameworkContext {\n return { ...defaultContext, ...useContext(FrameworkContext) }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyDyD;AAvDzD,mBAYO;AAQP,yBAAgC;AAmChC,MAAM,cAAc,CAAC,EAAE,SAAS,MAAyB,2EAAG,UAAS;AAErE,MAAM,qBAAqB;AAE3B,MAAM,eAA+B,CAAC,EAAE,UAAU,MAAM,OAAO,GAAG,MAAM,MACtE;AAAA,EAAC;AAAA;AAAA,IACE,GAAG;AAAA,IACJ,OAAO;AAAA,MACL,GAAI,OACA;AAAA,QACE,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,WAAW;AAAA,MACb,IACA,CAAC;AAAA,MACL,GAAG;AAAA,IACL;AAAA,IACA,SAAS,WAAW,UAAU;AAAA;AAChC;AAGF,MAAM,kBAA6B;AAAA,EACjC,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,4CAAC,OAAG,GAAG,OAAO,KAAU;AAC3D;AAEA,MAAM,uBAAmB,4BAAyC,CAAC,CAAC;AAE7D,MAAM,2BAA2B,CAAC;AAAA,EACvC;AAAA,EACA;AACF,MAA+D;AAC7D,QAAM,oBAAgB,yBAAW,gBAAgB;AACjD,QAAM,oBAAgB,sBAAQ,OAAO,EAAE,GAAG,eAAe,GAAG,MAAM,IAAI,CAAC,eAAe,KAAK,CAAC;AAE5F,SAAO,4CAAC,iBAAiB,UAAjB,EAA0B,OAAO,eAAgB,UAAS;AACpE;AAEA,MAAM,iBAAmC;AAAA,EACvC,MAAM;AAAA,EACN,aAAa;AAAA,EACb,OAAO;AAAA,EACP,MAAM;AACR;AAEO,SAAS,sBAAwC;AACtD,SAAO,EAAE,GAAG,gBAAgB,OAAG,yBAAW,gBAAgB,EAAE;AAC9D;","names":[]}
@@ -69,14 +69,6 @@ function PageHead({ document: page, metadata = {} }) {
69
69
  }).join("|");
70
70
  }, [site, page]);
71
71
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
72
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_head_tags.PageStyle, { precedence: "high", href: "makeswift-base-styles", children: `
73
- html {
74
- font-family: sans-serif;
75
- }
76
- div#__next {
77
- overflow: hidden;
78
- }
79
- ` }),
80
72
  useTitle && title && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
81
73
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_head_tags.PageTitle, { children: title }),
82
74
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_head_tags.PageMeta, { property: "og:title", content: title }),