@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
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
2
  "use client";
3
- var __create = Object.create;
4
3
  var __defProp = Object.defineProperty;
5
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getProtoOf = Object.getPrototypeOf;
8
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
9
7
  var __export = (target, all) => {
10
8
  for (var name in all)
@@ -18,98 +16,57 @@ var __copyProps = (to, from, except, desc) => {
18
16
  }
19
17
  return to;
20
18
  };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
19
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
20
  var root_style_registry_exports = {};
31
21
  __export(root_style_registry_exports, {
32
22
  DefaultRootStyleRegistry: () => DefaultRootStyleRegistry,
33
- RootStyleRegistry: () => RootStyleRegistry,
34
- StyleTagSSR: () => StyleTagSSR,
35
- createRootStyleCache: () => createRootStyleCache,
36
- styleTagHtml: () => styleTagHtml,
37
- useCSSResetEnabled: () => useCSSResetEnabled,
38
- useCache: () => useCache
23
+ RootStyleRegistry: () => RootStyleRegistry
39
24
  });
40
25
  module.exports = __toCommonJS(root_style_registry_exports);
41
26
  var import_jsx_runtime = require("react/jsx-runtime");
42
- var import_cache = __toESM(require("@emotion/cache"));
43
- var import_css = require("@emotion/css");
44
27
  var import_react = require("react");
45
- const CacheContext = (0, import_react.createContext)(import_css.cache);
46
- const DEFAULT_CSS_RESET_ENABLED = true;
47
- const CSSResetEnabledContext = (0, import_react.createContext)(DEFAULT_CSS_RESET_ENABLED);
48
- const createRootStyleCache = ({ key } = {}) => {
49
- const cache2 = (0, import_cache.default)({ key: key ?? "mswft" });
50
- cache2.compat = true;
51
- let inserted = [];
52
- return {
53
- ...cache2,
54
- // override the `insert` method to track inserted names
55
- insert(...args) {
56
- const serialized = args[1];
57
- if (cache2.inserted[serialized.name] === void 0) {
58
- inserted.push(serialized.name);
59
- }
60
- return cache2.insert(...args);
61
- },
62
- flush() {
63
- const classNames = inserted;
64
- inserted = [];
65
- return {
66
- classNames,
67
- css: classNames.reduce((css, name) => {
68
- return css + cache2.inserted[name];
69
- }, "")
70
- };
71
- }
72
- };
73
- };
74
- const StyleTagSSR = ({ cacheKey, classNames, css }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
75
- "style",
76
- {
77
- "data-emotion": `${cacheKey} ${classNames.join(" ")}`,
78
- dangerouslySetInnerHTML: {
79
- __html: css
80
- }
81
- }
82
- );
83
- const styleTagHtml = ({ cacheKey, classNames, css }) => `<style data-emotion="${cacheKey} ${classNames.join(" ")}">${css}</style>`;
28
+ var import_styles_context_provider = require("./css-runtime/components/styles-context-provider");
29
+ var import_use_dynamic_browser_style_updates = require("./css-runtime/hooks/use-dynamic-browser-style-updates");
30
+ var import_constants = require("./css-runtime/constants");
31
+ var import_utils = require("./css-runtime/utils");
84
32
  function RootStyleRegistry({
85
33
  children,
86
- cache: cache2,
87
- enableCssReset
34
+ stylesRegistry,
35
+ classNamePrefix = import_constants.DEFAULT_CSS_CLASS_NAME_PREFIX,
36
+ enableCssReset = import_constants.DEFAULT_CSS_RESET_ENABLED,
37
+ shouldRenderStyleElements = import_constants.DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS
88
38
  }) {
89
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CacheContext.Provider, { value: cache2, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CSSResetEnabledContext.Provider, { value: enableCssReset ?? DEFAULT_CSS_RESET_ENABLED, children }) });
39
+ (0, import_use_dynamic_browser_style_updates.useDynamicBrowserStyleUpdates)(stylesRegistry);
40
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
41
+ import_styles_context_provider.StylesContextProvider,
42
+ {
43
+ classNamePrefix,
44
+ enableCssReset,
45
+ stylesRegistry,
46
+ shouldRenderStyleElements,
47
+ children
48
+ }
49
+ );
90
50
  }
91
51
  function DefaultRootStyleRegistry({
92
52
  children,
93
- cacheKey,
53
+ classNamePrefix,
94
54
  enableCssReset
95
55
  }) {
96
- const [cache2] = (0, import_react.useState)(() => createRootStyleCache({ key: cacheKey }));
97
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(RootStyleRegistry, { cache: cache2, enableCssReset, children });
98
- }
99
- function useCache() {
100
- return (0, import_react.useContext)(CacheContext);
101
- }
102
- function useCSSResetEnabled() {
103
- return (0, import_react.useContext)(CSSResetEnabledContext);
56
+ const [stylesRegistry] = (0, import_react.useState)(import_utils.createMakeswiftStylesRegistry);
57
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
58
+ RootStyleRegistry,
59
+ {
60
+ stylesRegistry,
61
+ classNamePrefix,
62
+ enableCssReset,
63
+ children
64
+ }
65
+ );
104
66
  }
105
67
  // Annotate the CommonJS export names for ESM import in node:
106
68
  0 && (module.exports = {
107
69
  DefaultRootStyleRegistry,
108
- RootStyleRegistry,
109
- StyleTagSSR,
110
- createRootStyleCache,
111
- styleTagHtml,
112
- useCSSResetEnabled,
113
- useCache
70
+ RootStyleRegistry
114
71
  });
115
72
  //# sourceMappingURL=root-style-registry.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/root-style-registry.tsx"],"sourcesContent":["'use client'\n\nimport createCache, { type EmotionCache } from '@emotion/cache'\nimport { cache } from '@emotion/css'\nimport { type PropsWithChildren, createContext, useContext, useState } from 'react'\n\nconst CacheContext = createContext(cache)\n\nconst DEFAULT_CSS_RESET_ENABLED = true\nconst CSSResetEnabledContext = createContext(DEFAULT_CSS_RESET_ENABLED)\n\nexport type StyleCache = EmotionCache & {\n /**\n * Flush the inserted styles.\n * @returns A list of class names and the corresponding CSS rules that were flushed.\n */\n flush: () => { classNames: string[]; css: string }\n}\n\nexport const createRootStyleCache = ({ key }: { key?: string } = {}): StyleCache => {\n const cache = createCache({ key: key ?? 'mswft' })\n cache.compat = true\n\n // additional state to track inserted style names\n let inserted: string[] = []\n\n return {\n ...cache,\n\n // override the `insert` method to track inserted names\n insert(...args) {\n const serialized = args[1]\n if (cache.inserted[serialized.name] === undefined) {\n inserted.push(serialized.name)\n }\n return cache.insert(...args)\n },\n\n flush() {\n const classNames = inserted\n // reset our own state, leave `cache.inserted` intact\n inserted = []\n\n return {\n classNames,\n css: classNames.reduce((css, name) => {\n return css + cache.inserted[name]\n }, ''),\n }\n },\n }\n}\n\ntype StyleTagProps = {\n cacheKey: string\n classNames: string[]\n css: string\n}\n\nexport const StyleTagSSR = ({ cacheKey, classNames, css }: StyleTagProps) => (\n <style\n data-emotion={`${cacheKey} ${classNames.join(' ')}`}\n dangerouslySetInnerHTML={{\n __html: css,\n }}\n />\n)\n\nexport const styleTagHtml = ({ cacheKey, classNames, css }: StyleTagProps): string =>\n `<style data-emotion=\"${cacheKey} ${classNames.join(' ')}\">${css}</style>`\n\nexport type RootStyleProps = {\n /**\n * The key used to prefix generated class names.\n * If not provided, a default key will be used.\n */\n cacheKey?: string\n /**\n * Toggle the built-in CSS reset.\n * Set to `false` when using `@layer`-based CSS frameworks like Tailwind.\n */\n enableCssReset?: boolean\n}\n\nexport function RootStyleRegistry({\n children,\n cache,\n enableCssReset,\n}: PropsWithChildren<{\n cache: StyleCache\n enableCssReset?: boolean\n}>) {\n return (\n <CacheContext.Provider value={cache}>\n <CSSResetEnabledContext.Provider value={enableCssReset ?? DEFAULT_CSS_RESET_ENABLED}>\n {children}\n </CSSResetEnabledContext.Provider>\n </CacheContext.Provider>\n )\n}\n\nexport function DefaultRootStyleRegistry({\n children,\n cacheKey,\n enableCssReset,\n}: PropsWithChildren<RootStyleProps>) {\n const [cache] = useState(() => createRootStyleCache({ key: cacheKey }))\n\n return (\n <RootStyleRegistry cache={cache} enableCssReset={enableCssReset}>\n {children}\n </RootStyleRegistry>\n )\n}\n\nexport function useCache(): EmotionCache {\n return useContext(CacheContext)\n}\n\nexport function useCSSResetEnabled(): boolean {\n return useContext(CSSResetEnabledContext)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AA4DE;AA1DF,mBAA+C;AAC/C,iBAAsB;AACtB,mBAA4E;AAE5E,MAAM,mBAAe,4BAAc,gBAAK;AAExC,MAAM,4BAA4B;AAClC,MAAM,6BAAyB,4BAAc,yBAAyB;AAU/D,MAAM,uBAAuB,CAAC,EAAE,IAAI,IAAsB,CAAC,MAAkB;AAClF,QAAMA,aAAQ,aAAAC,SAAY,EAAE,KAAK,OAAO,QAAQ,CAAC;AACjD,EAAAD,OAAM,SAAS;AAGf,MAAI,WAAqB,CAAC;AAE1B,SAAO;AAAA,IACL,GAAGA;AAAA;AAAA,IAGH,UAAU,MAAM;AACd,YAAM,aAAa,KAAK,CAAC;AACzB,UAAIA,OAAM,SAAS,WAAW,IAAI,MAAM,QAAW;AACjD,iBAAS,KAAK,WAAW,IAAI;AAAA,MAC/B;AACA,aAAOA,OAAM,OAAO,GAAG,IAAI;AAAA,IAC7B;AAAA,IAEA,QAAQ;AACN,YAAM,aAAa;AAEnB,iBAAW,CAAC;AAEZ,aAAO;AAAA,QACL;AAAA,QACA,KAAK,WAAW,OAAO,CAAC,KAAK,SAAS;AACpC,iBAAO,MAAMA,OAAM,SAAS,IAAI;AAAA,QAClC,GAAG,EAAE;AAAA,MACP;AAAA,IACF;AAAA,EACF;AACF;AAQO,MAAM,cAAc,CAAC,EAAE,UAAU,YAAY,IAAI,MACtD;AAAA,EAAC;AAAA;AAAA,IACC,gBAAc,GAAG,QAAQ,IAAI,WAAW,KAAK,GAAG,CAAC;AAAA,IACjD,yBAAyB;AAAA,MACvB,QAAQ;AAAA,IACV;AAAA;AACF;AAGK,MAAM,eAAe,CAAC,EAAE,UAAU,YAAY,IAAI,MACvD,wBAAwB,QAAQ,IAAI,WAAW,KAAK,GAAG,CAAC,KAAK,GAAG;AAe3D,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA,OAAAA;AAAA,EACA;AACF,GAGI;AACF,SACE,4CAAC,aAAa,UAAb,EAAsB,OAAOA,QAC5B,sDAAC,uBAAuB,UAAvB,EAAgC,OAAO,kBAAkB,2BACvD,UACH,GACF;AAEJ;AAEO,SAAS,yBAAyB;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AACF,GAAsC;AACpC,QAAM,CAACA,MAAK,QAAI,uBAAS,MAAM,qBAAqB,EAAE,KAAK,SAAS,CAAC,CAAC;AAEtE,SACE,4CAAC,qBAAkB,OAAOA,QAAO,gBAC9B,UACH;AAEJ;AAEO,SAAS,WAAyB;AACvC,aAAO,yBAAW,YAAY;AAChC;AAEO,SAAS,qBAA8B;AAC5C,aAAO,yBAAW,sBAAsB;AAC1C;","names":["cache","createCache"]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/root-style-registry.tsx"],"sourcesContent":["'use client'\n\nimport { useState, type PropsWithChildren } from 'react'\nimport { StylesContextProvider } from './css-runtime/components/styles-context-provider'\nimport { StylesRegistry } from './css-runtime/styles-registry'\nimport { useDynamicBrowserStyleUpdates } from './css-runtime/hooks/use-dynamic-browser-style-updates'\nimport {\n DEFAULT_CSS_CLASS_NAME_PREFIX,\n DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS,\n DEFAULT_CSS_RESET_ENABLED,\n} from './css-runtime/constants'\nimport { createMakeswiftStylesRegistry } from './css-runtime/utils'\n\nexport type RootStyleProps = {\n /**\n * The prefix used for generated class names.\n * If not provided, a default prefix will be used.\n */\n classNamePrefix?: string\n /**\n * Toggle the built-in CSS reset.\n * Set to `false` when using `@layer`-based CSS frameworks like Tailwind.\n */\n enableCssReset?: boolean\n}\n\nexport function RootStyleRegistry({\n children,\n stylesRegistry,\n classNamePrefix = DEFAULT_CSS_CLASS_NAME_PREFIX,\n enableCssReset = DEFAULT_CSS_RESET_ENABLED,\n shouldRenderStyleElements = DEFAULT_SHOULD_RENDER_STYLE_ELEMENTS,\n}: PropsWithChildren<{\n stylesRegistry: StylesRegistry\n classNamePrefix?: string\n enableCssReset?: boolean\n shouldRenderStyleElements?: boolean\n}>) {\n useDynamicBrowserStyleUpdates(stylesRegistry)\n\n return (\n <StylesContextProvider\n classNamePrefix={classNamePrefix}\n enableCssReset={enableCssReset}\n stylesRegistry={stylesRegistry}\n shouldRenderStyleElements={shouldRenderStyleElements}\n >\n {children}\n </StylesContextProvider>\n )\n}\n\nexport function DefaultRootStyleRegistry({\n children,\n classNamePrefix,\n enableCssReset,\n}: PropsWithChildren<RootStyleProps>) {\n const [stylesRegistry] = useState(createMakeswiftStylesRegistry)\n return (\n <RootStyleRegistry\n stylesRegistry={stylesRegistry}\n classNamePrefix={classNamePrefix}\n enableCssReset={enableCssReset}\n >\n {children}\n </RootStyleRegistry>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAyCI;AAvCJ,mBAAiD;AACjD,qCAAsC;AAEtC,+CAA8C;AAC9C,uBAIO;AACP,mBAA8C;AAevC,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA,kBAAkB;AAAA,EAClB,iBAAiB;AAAA,EACjB,4BAA4B;AAC9B,GAKI;AACF,8EAA8B,cAAc;AAE5C,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;AAEO,SAAS,yBAAyB;AAAA,EACvC;AAAA,EACA;AAAA,EACA;AACF,GAAsC;AACpC,QAAM,CAAC,cAAc,QAAI,uBAAS,0CAA6B;AAC/D,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,EACH;AAEJ;","names":[]}
@@ -28,13 +28,13 @@ var import_read_write_actions = require("../../../../state/actions/internal/read
28
28
  var import_use_server_element_refresh = require("../../hooks/use-server-element-refresh");
29
29
  var import_use_element_data = require("../../hooks/use-element-data");
30
30
  var import_use_control_defs = require("../../hooks/use-control-defs");
31
- var import_use_editable_element_stylesheet_factory = require("../../hooks/use-editable-element-stylesheet-factory");
32
31
  var import_use_resolved_props = require("../../hooks/use-resolved-props");
33
32
  var import_control_instances_context = require("../../components/control-instances-context");
34
33
  var import_use_dispatch = require("../../hooks/use-dispatch");
35
34
  var import_use_document_context = require("../../hooks/use-document-context");
36
35
  var import_prop_by_path = require("../../../../utils/prop-by-path");
37
36
  var import_set = require("../../../../utils/set");
37
+ var import_use_controlled_styles = require("../../css-runtime/hooks/use-controlled-styles");
38
38
  const EditableServerElement = ({
39
39
  initialElementData,
40
40
  children
@@ -55,14 +55,14 @@ const EditableServerElementWrapper = ({
55
55
  const dispatch = (0, import_use_dispatch.useDispatch)();
56
56
  const documentKey = (0, import_use_document_context.useDocumentKey)();
57
57
  const [_legacyDefs, definitions] = (0, import_use_control_defs.useControlDefs)({ elementType: initialElementData.type });
58
- const stylesheetFactory = (0, import_use_editable_element_stylesheet_factory.useEditableElementStylesheetFactory)({ elementKey });
58
+ const { getStylesheet, styleElements } = (0, import_use_controlled_styles.useControlledStyles)({ namespace: elementKey });
59
59
  const controlInstances = (0, import_control_instances_context.useControlInstances)(elementKey);
60
60
  const resolvedProps = (0, import_use_resolved_props.useResolvedProps)({
61
61
  elementKey,
62
62
  propDefs: definitions,
63
63
  propData: elementData.props,
64
64
  controlInstances,
65
- stylesheetFactory
65
+ getStylesheet
66
66
  });
67
67
  const prevPropsRef = (0, import_react.useRef)(resolvedProps);
68
68
  const prevLeafPropsRef = (0, import_react.useRef)(
@@ -128,7 +128,10 @@ const EditableServerElementWrapper = ({
128
128
  applyServerRefresh,
129
129
  applyResolvedValueOverrides
130
130
  ]);
131
- return children;
131
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
132
+ children,
133
+ styleElements
134
+ ] });
132
135
  };
133
136
  const needsServerRefresh = ({
134
137
  resolvedProps,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/server/components/editable-server-element.tsx"],"sourcesContent":["'use client'\n\nimport { type PropsWithChildren, useEffect, useRef, startTransition, useCallback } from 'react'\n\nimport { ControlInstance } from '@makeswift/controls'\n\nimport { type ElementData } from '../../../../state/read-only-state'\nimport {\n setResolvedValueOverride,\n clearResolvedValueOverride,\n} from '../../../../state/actions/internal/read-write-actions'\n\nimport { useServerElementRefresh } from '../../hooks/use-server-element-refresh'\nimport { useElementData } from '../../hooks/use-element-data'\nimport { useControlDefs } from '../../hooks/use-control-defs'\nimport { useEditableElementStylesheetFactory } from '../../hooks/use-editable-element-stylesheet-factory'\nimport { useResolvedProps } from '../../hooks/use-resolved-props'\nimport { useControlInstances } from '../../components/control-instances-context'\nimport { useDispatch } from '../../hooks/use-dispatch'\nimport { useDocumentKey } from '../../hooks/use-document-context'\n\nimport { getProp } from '../../../../utils/prop-by-path'\nimport { setUnion, setDifference } from '../../../../utils/set'\n\nexport const EditableServerElement = ({\n initialElementData,\n children,\n}: PropsWithChildren<{ initialElementData: ElementData }>) => {\n const elementKey = initialElementData.key\n const elementData = useElementData({ elementKey })\n if (elementData == null) {\n // Element has been deleted\n return null\n }\n\n return (\n <EditableServerElementWrapper {...{ initialElementData, elementData }}>\n {children}\n </EditableServerElementWrapper>\n )\n}\n\n/**\n * Reflects edits to `elementData.props` in the server-rendered `children`.\n * Changes limited to existing `ReactNode` props are applied through client-side\n * overrides. Style prop changes are handled by the stylesheet engine during\n * prop resolution. All other prop changes trigger a server refresh.\n */\nconst EditableServerElementWrapper = ({\n initialElementData,\n elementData,\n children,\n}: PropsWithChildren<{ initialElementData: ElementData; elementData: ElementData }>) => {\n const elementKey = initialElementData.key\n const dispatch = useDispatch()\n const documentKey = useDocumentKey()\n\n const [_legacyDefs, definitions] = useControlDefs({ elementType: initialElementData.type })\n const stylesheetFactory = useEditableElementStylesheetFactory({ elementKey })\n\n const controlInstances = useControlInstances(elementKey)\n const resolvedProps = useResolvedProps({\n elementKey,\n propDefs: definitions,\n propData: elementData.props,\n controlInstances,\n stylesheetFactory,\n })\n\n const prevPropsRef = useRef(resolvedProps)\n const prevLeafPropsRef = useRef(\n getLeafPropsAndInstances(resolvedProps, controlInstances).leafProps,\n )\n\n const serverRefresh = useServerElementRefresh({ elementKey })\n const applyServerRefresh = useCallback(\n (elementData: ElementData, leafInstances: ControlInstance[], documentKey: string) =>\n startTransition(async () => {\n const applied = await serverRefresh(elementData)\n if (!applied) return\n\n // need a nested `startTransition` here, see\n // https://react.dev/reference/react/useTransition#react-doesnt-treat-my-state-update-after-await-as-a-transition\n startTransition(() => {\n // reset instance overrides, if any\n leafInstances.forEach(c =>\n dispatch(clearResolvedValueOverride({ documentKey, instanceKey: c.instanceKey })),\n )\n })\n }),\n [serverRefresh, dispatch],\n )\n\n const applyResolvedValueOverrides = useCallback(\n (instances: ControlInstance[], props: Record<string, unknown>, documentKey: string) =>\n instances.forEach(c =>\n dispatch(\n setResolvedValueOverride({\n documentKey,\n instanceKey: c.instanceKey,\n value: getProp(props, c.propPath),\n }),\n ),\n ),\n [dispatch],\n )\n\n useEffect(() => {\n if (documentKey == null) return\n\n if (children == null) {\n // If we don't have a server-rendered node (i.e. user just dropped the element to the page),\n // trigger a server re-render\n const { leafInstances, leafProps } = getLeafPropsAndInstances(resolvedProps, controlInstances)\n\n applyServerRefresh(elementData, leafInstances, documentKey)\n\n prevPropsRef.current = resolvedProps\n prevLeafPropsRef.current = leafProps\n return\n }\n\n if (resolvedProps !== prevPropsRef.current) {\n // If there was a change in resolved value, check if any of the changed props necessitate\n // a server refresh.\n //\n // Note that style props have stable class names and updating a style prop will not result\n // in a change to the resolved value, which is what we want. The stylesheet engine takes\n // care of updating the client CSS on style prop updates through the `useResolvedProps` call.\n const { needsRefresh, leafInstances, leafProps, reactNodeInstances } = needsServerRefresh({\n resolvedProps,\n controlInstances,\n prevProps: prevPropsRef.current,\n prevLeafProps: prevLeafPropsRef.current,\n })\n\n if (needsRefresh) {\n applyServerRefresh(elementData, leafInstances, documentKey)\n } else {\n applyResolvedValueOverrides(reactNodeInstances, resolvedProps, documentKey)\n }\n\n prevPropsRef.current = resolvedProps\n prevLeafPropsRef.current = leafProps\n }\n }, [\n children,\n resolvedProps,\n documentKey,\n elementData,\n controlInstances,\n applyServerRefresh,\n applyResolvedValueOverrides,\n ])\n\n return children\n}\n\n/**\n * Determines whether resolved prop changes require a server refresh and returns\n * the control-instance state needed to apply the update.\n */\nconst needsServerRefresh = ({\n resolvedProps,\n controlInstances,\n prevProps,\n prevLeafProps,\n}: {\n resolvedProps: Record<string, unknown>\n controlInstances: Record<string, ControlInstance> | null\n prevProps: Record<string, unknown>\n prevLeafProps: Set<string>\n}): {\n needsRefresh: boolean\n leafInstances: ControlInstance[]\n leafProps: Set<string>\n reactNodeInstances: ControlInstance[]\n} => {\n const { leafInstances, leafProps } = getLeafPropsAndInstances(resolvedProps, controlInstances)\n\n const combinedLeafProps = setUnion(leafProps, prevLeafProps).values()\n const updatedLeafProps = new Set(\n [...combinedLeafProps].filter(\n propName => getProp(resolvedProps, propName) !== getProp(prevProps, propName),\n ),\n )\n\n const updatedLeafInstances = leafInstances.filter(instance =>\n updatedLeafProps.has(instance.propPath),\n )\n\n const reactNodeInstances = updatedLeafInstances.filter(c => c.resolvesToRenderableNode())\n\n const reactNodePropKeys = new Set(reactNodeInstances.map(c => c.propPath))\n const newlyAddedLeafProps = setDifference(leafProps, prevLeafProps)\n\n // A server refresh is needed if some of the updated props are not `ReactNode` props, or we\n // have newly observed props (typically `List` items). Even when newly observed props are\n // `ReactNode` props, we have to first render them on the server to get them in the element\n // tree before they can be updated client-side.\n const needsRefresh =\n setDifference(updatedLeafProps, reactNodePropKeys).size > 0 || newlyAddedLeafProps.size > 0\n\n return {\n needsRefresh,\n leafInstances,\n leafProps,\n reactNodeInstances,\n }\n}\n\n/**\n * Returns terminal prop paths with the corresponding control instances.\n */\nconst getLeafPropsAndInstances = (\n props: Record<string, unknown>,\n controlInstances: Record<string, ControlInstance> | null,\n): {\n leafProps: Set<string>\n leafInstances: ControlInstance[]\n} => {\n const topLevelInstances = Object.keys(props)\n .map(prop => controlInstances?.[prop])\n .filter(inst => inst != null)\n\n const leafInstances = getLeafInstances(topLevelInstances)\n const leafProps = new Set(leafInstances.map(c => c.propPath))\n return { leafProps, leafInstances }\n}\n\n/**\n * Flattens a control instance tree to its leaf (terminal) instances.\n */\nconst getLeafInstances = (instances: ControlInstance[]): ControlInstance[] =>\n instances.flatMap(instance =>\n instance.isCompositeProp() ? getLeafInstances(instance.children()) : [instance],\n )\n"],"mappings":"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","names":["elementData","documentKey"]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/server/components/editable-server-element.tsx"],"sourcesContent":["'use client'\n\nimport { type PropsWithChildren, useEffect, useRef, startTransition, useCallback } from 'react'\n\nimport { ControlInstance } from '@makeswift/controls'\n\nimport { type ElementData } from '../../../../state/read-only-state'\nimport {\n setResolvedValueOverride,\n clearResolvedValueOverride,\n} from '../../../../state/actions/internal/read-write-actions'\n\nimport { useServerElementRefresh } from '../../hooks/use-server-element-refresh'\nimport { useElementData } from '../../hooks/use-element-data'\nimport { useControlDefs } from '../../hooks/use-control-defs'\nimport { useResolvedProps } from '../../hooks/use-resolved-props'\nimport { useControlInstances } from '../../components/control-instances-context'\nimport { useDispatch } from '../../hooks/use-dispatch'\nimport { useDocumentKey } from '../../hooks/use-document-context'\n\nimport { getProp } from '../../../../utils/prop-by-path'\nimport { setUnion, setDifference } from '../../../../utils/set'\nimport { useControlledStyles } from '../../css-runtime/hooks/use-controlled-styles'\n\nexport const EditableServerElement = ({\n initialElementData,\n children,\n}: PropsWithChildren<{ initialElementData: ElementData }>) => {\n const elementKey = initialElementData.key\n const elementData = useElementData({ elementKey })\n if (elementData == null) {\n // Element has been deleted\n return null\n }\n\n return (\n <EditableServerElementWrapper {...{ initialElementData, elementData }}>\n {children}\n </EditableServerElementWrapper>\n )\n}\n\n/**\n * Reflects edits to `elementData.props` in the server-rendered `children`.\n * Changes limited to existing `ReactNode` props are applied through client-side\n * overrides. Style prop changes are handled by the stylesheet engine during\n * prop resolution. All other prop changes trigger a server refresh.\n */\nconst EditableServerElementWrapper = ({\n initialElementData,\n elementData,\n children,\n}: PropsWithChildren<{ initialElementData: ElementData; elementData: ElementData }>) => {\n const elementKey = initialElementData.key\n const dispatch = useDispatch()\n const documentKey = useDocumentKey()\n\n const [_legacyDefs, definitions] = useControlDefs({ elementType: initialElementData.type })\n const { getStylesheet, styleElements } = useControlledStyles({ namespace: elementKey })\n\n const controlInstances = useControlInstances(elementKey)\n const resolvedProps = useResolvedProps({\n elementKey,\n propDefs: definitions,\n propData: elementData.props,\n controlInstances,\n getStylesheet,\n })\n\n const prevPropsRef = useRef(resolvedProps)\n const prevLeafPropsRef = useRef(\n getLeafPropsAndInstances(resolvedProps, controlInstances).leafProps,\n )\n\n const serverRefresh = useServerElementRefresh({ elementKey })\n const applyServerRefresh = useCallback(\n (elementData: ElementData, leafInstances: ControlInstance[], documentKey: string) =>\n startTransition(async () => {\n const applied = await serverRefresh(elementData)\n if (!applied) return\n\n // need a nested `startTransition` here, see\n // https://react.dev/reference/react/useTransition#react-doesnt-treat-my-state-update-after-await-as-a-transition\n startTransition(() => {\n // reset instance overrides, if any\n leafInstances.forEach(c =>\n dispatch(clearResolvedValueOverride({ documentKey, instanceKey: c.instanceKey })),\n )\n })\n }),\n [serverRefresh, dispatch],\n )\n\n const applyResolvedValueOverrides = useCallback(\n (instances: ControlInstance[], props: Record<string, unknown>, documentKey: string) =>\n instances.forEach(c =>\n dispatch(\n setResolvedValueOverride({\n documentKey,\n instanceKey: c.instanceKey,\n value: getProp(props, c.propPath),\n }),\n ),\n ),\n [dispatch],\n )\n\n useEffect(() => {\n if (documentKey == null) return\n\n if (children == null) {\n // If we don't have a server-rendered node (i.e. user just dropped the element to the page),\n // trigger a server re-render\n const { leafInstances, leafProps } = getLeafPropsAndInstances(resolvedProps, controlInstances)\n\n applyServerRefresh(elementData, leafInstances, documentKey)\n\n prevPropsRef.current = resolvedProps\n prevLeafPropsRef.current = leafProps\n return\n }\n\n if (resolvedProps !== prevPropsRef.current) {\n // If there was a change in resolved value, check if any of the changed props necessitate\n // a server refresh.\n //\n // Note that style props have stable class names and updating a style prop will not result\n // in a change to the resolved value, which is what we want. Dynamic style updates are handled\n // through a subscription mechanism that listens for changes to controlled style data in the\n // styles registry.\n const { needsRefresh, leafInstances, leafProps, reactNodeInstances } = needsServerRefresh({\n resolvedProps,\n controlInstances,\n prevProps: prevPropsRef.current,\n prevLeafProps: prevLeafPropsRef.current,\n })\n\n if (needsRefresh) {\n applyServerRefresh(elementData, leafInstances, documentKey)\n } else {\n applyResolvedValueOverrides(reactNodeInstances, resolvedProps, documentKey)\n }\n\n prevPropsRef.current = resolvedProps\n prevLeafPropsRef.current = leafProps\n }\n }, [\n children,\n resolvedProps,\n documentKey,\n elementData,\n controlInstances,\n applyServerRefresh,\n applyResolvedValueOverrides,\n ])\n\n return (\n <>\n {children}\n {styleElements}\n </>\n )\n}\n\n/**\n * Determines whether resolved prop changes require a server refresh and returns\n * the control-instance state needed to apply the update.\n */\nconst needsServerRefresh = ({\n resolvedProps,\n controlInstances,\n prevProps,\n prevLeafProps,\n}: {\n resolvedProps: Record<string, unknown>\n controlInstances: Record<string, ControlInstance> | null\n prevProps: Record<string, unknown>\n prevLeafProps: Set<string>\n}): {\n needsRefresh: boolean\n leafInstances: ControlInstance[]\n leafProps: Set<string>\n reactNodeInstances: ControlInstance[]\n} => {\n const { leafInstances, leafProps } = getLeafPropsAndInstances(resolvedProps, controlInstances)\n\n const combinedLeafProps = setUnion(leafProps, prevLeafProps).values()\n const updatedLeafProps = new Set(\n [...combinedLeafProps].filter(\n propName => getProp(resolvedProps, propName) !== getProp(prevProps, propName),\n ),\n )\n\n const updatedLeafInstances = leafInstances.filter(instance =>\n updatedLeafProps.has(instance.propPath),\n )\n\n const reactNodeInstances = updatedLeafInstances.filter(c => c.resolvesToRenderableNode())\n\n const reactNodePropKeys = new Set(reactNodeInstances.map(c => c.propPath))\n const newlyAddedLeafProps = setDifference(leafProps, prevLeafProps)\n\n // A server refresh is needed if some of the updated props are not `ReactNode` props, or we\n // have newly observed props (typically `List` items). Even when newly observed props are\n // `ReactNode` props, we have to first render them on the server to get them in the element\n // tree before they can be updated client-side.\n const needsRefresh =\n setDifference(updatedLeafProps, reactNodePropKeys).size > 0 || newlyAddedLeafProps.size > 0\n\n return {\n needsRefresh,\n leafInstances,\n leafProps,\n reactNodeInstances,\n }\n}\n\n/**\n * Returns terminal prop paths with the corresponding control instances.\n */\nconst getLeafPropsAndInstances = (\n props: Record<string, unknown>,\n controlInstances: Record<string, ControlInstance> | null,\n): {\n leafProps: Set<string>\n leafInstances: ControlInstance[]\n} => {\n const topLevelInstances = Object.keys(props)\n .map(prop => controlInstances?.[prop])\n .filter(inst => inst != null)\n\n const leafInstances = getLeafInstances(topLevelInstances)\n const leafProps = new Set(leafInstances.map(c => c.propPath))\n return { leafProps, leafInstances }\n}\n\n/**\n * Flattens a control instance tree to its leaf (terminal) instances.\n */\nconst getLeafInstances = (instances: ControlInstance[]): ControlInstance[] =>\n instances.flatMap(instance =>\n instance.isCompositeProp() ? getLeafInstances(instance.children()) : [instance],\n )\n"],"mappings":"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","names":["elementData","documentKey"]}
@@ -26,9 +26,10 @@ var import_partition = require("../../../../utils/partition");
26
26
  var import_read_only_state = require("../../../../state/read-only-state");
27
27
  var import_FallbackComponent = require("../../../../components/shared/FallbackComponent");
28
28
  var import_descriptors = require("../../../../prop-controllers/descriptors");
29
- var import_server_css = require("../css/server-css");
30
29
  var import_render_context = require("../render-context");
31
30
  var import_resolve_props = require("../resolve-props");
31
+ var import_stylesheet_engine = require("../../css-runtime/stylesheet-engine");
32
+ var import_rsc_emitted_style = require("../../css-runtime/components/rsc-emitted-style");
32
33
  async function ServerElementData({
33
34
  documentKey,
34
35
  context,
@@ -54,19 +55,26 @@ async function ServerElementData({
54
55
  legacyKeys
55
56
  });
56
57
  }
57
- const cssCollector = new import_server_css.ServerCSSCollector();
58
- const stylesheet = (0, import_server_css.createCollectingServerStylesheet)(
59
- cssCollector,
60
- (0, import_read_only_state.getBreakpoints)(state),
61
- elementData.key
62
- );
58
+ const classStyleData = /* @__PURE__ */ new Map();
59
+ const stylesheet = new import_stylesheet_engine.StylesheetEngine({
60
+ breakpointsData: (0, import_read_only_state.getBreakpoints)(state),
61
+ classNamePrefix: context.rootStyleProps?.classNamePrefix,
62
+ documentKey,
63
+ elementKey: elementData.key,
64
+ propPathComponents: [],
65
+ onDefineStyle: (styleData) => {
66
+ const { onBoxModelChange, ...serializableStyleData } = styleData;
67
+ classStyleData.set(styleData.className, serializableStyleData);
68
+ }
69
+ });
63
70
  const props = {
64
71
  ...await (0, import_resolve_props.resolveProps)(context, elementData, documentKey, definitions, stylesheet),
65
72
  ...injectedProps
66
73
  };
74
+ const styleElements = Array.from(classStyleData, ([className, styleData]) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_rsc_emitted_style.RSCEmittedStyle, { namespace: elementData.key, serializableData: styleData }, className));
67
75
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
68
76
  /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Component, { ...props }, elementData.key),
69
- /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_server_css.InjectServerCSS, { collector: cssCollector, elementKey: elementData.key })
77
+ styleElements
70
78
  ] });
71
79
  }
72
80
  const getControlDefs = (state, elementData) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/server/components/element-data.tsx"],"sourcesContent":["import { type ReactNode } from 'react'\n\nimport { partitionRecord } from '../../../../utils/partition'\n\nimport {\n type State,\n type ElementData,\n getReactComponent,\n getBreakpoints,\n getComponentPropControllerDescriptors,\n} from '../../../../state/read-only-state'\n\nimport { FallbackComponent } from '../../../../components/shared/FallbackComponent'\nimport { isLegacyDescriptor } from '../../../../prop-controllers/descriptors'\n\nimport {\n ServerCSSCollector,\n createCollectingServerStylesheet,\n InjectServerCSS,\n} from '../css/server-css'\nimport { type ServerRenderContext, getStore } from '../render-context'\nimport { resolveProps } from '../resolve-props'\n\nexport async function ServerElementData({\n documentKey,\n context,\n elementData,\n injectedProps,\n}: {\n documentKey: string\n context: ServerRenderContext\n elementData: ElementData\n injectedProps: Record<string, unknown>\n}): Promise<ReactNode> {\n const state = getStore(context).getState()\n\n const Component = getReactComponent(state, elementData.type)\n if (Component == null) {\n return (\n <FallbackComponent\n text=\"Component not found\"\n details={`Unknown component '${elementData.type}'`}\n />\n )\n }\n\n const [legacyDescriptors, definitions] = getControlDefs(state, elementData)\n const legacyKeys = Object.keys(legacyDescriptors)\n if (legacyKeys.length > 0) {\n console.warn(`Unexpected legacy control data in server element '${elementData.key}`, {\n elementData,\n legacyKeys,\n })\n }\n\n const cssCollector = new ServerCSSCollector()\n const stylesheet = createCollectingServerStylesheet(\n cssCollector,\n getBreakpoints(state),\n elementData.key,\n )\n\n const props = {\n ...(await resolveProps(context, elementData, documentKey, definitions, stylesheet)),\n ...injectedProps,\n }\n\n return (\n <>\n {/* Make the component the first child so that `findDOMNode` resolves to its first\n rendered DOM node (if any) rather than the component's `<style>` element */}\n <Component key={elementData.key} {...props} />\n <InjectServerCSS collector={cssCollector} elementKey={elementData.key} />\n </>\n )\n}\n\nconst getControlDefs = (state: State, elementData: ElementData) => {\n const descriptors = getComponentPropControllerDescriptors(state, elementData.type) ?? {}\n return partitionRecord(descriptors, isLegacyDescriptor)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAuCM;AArCN,uBAAgC;AAEhC,6BAMO;AAEP,+BAAkC;AAClC,yBAAmC;AAEnC,wBAIO;AACP,4BAAmD;AACnD,2BAA6B;AAE7B,eAAsB,kBAAkB;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAKuB;AACrB,QAAM,YAAQ,gCAAS,OAAO,EAAE,SAAS;AAEzC,QAAM,gBAAY,0CAAkB,OAAO,YAAY,IAAI;AAC3D,MAAI,aAAa,MAAM;AACrB,WACE;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,SAAS,sBAAsB,YAAY,IAAI;AAAA;AAAA,IACjD;AAAA,EAEJ;AAEA,QAAM,CAAC,mBAAmB,WAAW,IAAI,eAAe,OAAO,WAAW;AAC1E,QAAM,aAAa,OAAO,KAAK,iBAAiB;AAChD,MAAI,WAAW,SAAS,GAAG;AACzB,YAAQ,KAAK,qDAAqD,YAAY,GAAG,IAAI;AAAA,MACnF;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAEA,QAAM,eAAe,IAAI,qCAAmB;AAC5C,QAAM,iBAAa;AAAA,IACjB;AAAA,QACA,uCAAe,KAAK;AAAA,IACpB,YAAY;AAAA,EACd;AAEA,QAAM,QAAQ;AAAA,IACZ,GAAI,UAAM,mCAAa,SAAS,aAAa,aAAa,aAAa,UAAU;AAAA,IACjF,GAAG;AAAA,EACL;AAEA,SACE,4EAGE;AAAA,gDAAC,aAAiC,GAAG,SAArB,YAAY,GAAgB;AAAA,IAC5C,4CAAC,qCAAgB,WAAW,cAAc,YAAY,YAAY,KAAK;AAAA,KACzE;AAEJ;AAEA,MAAM,iBAAiB,CAAC,OAAc,gBAA6B;AACjE,QAAM,kBAAc,8DAAsC,OAAO,YAAY,IAAI,KAAK,CAAC;AACvF,aAAO,kCAAgB,aAAa,qCAAkB;AACxD;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/server/components/element-data.tsx"],"sourcesContent":["import { type ReactNode } from 'react'\n\nimport { partitionRecord } from '../../../../utils/partition'\n\nimport {\n type State,\n type ElementData,\n getReactComponent,\n getBreakpoints,\n getComponentPropControllerDescriptors,\n} from '../../../../state/read-only-state'\n\nimport { FallbackComponent } from '../../../../components/shared/FallbackComponent'\nimport { isLegacyDescriptor } from '../../../../prop-controllers/descriptors'\n\nimport { type ServerRenderContext, getStore } from '../render-context'\nimport { resolveProps } from '../resolve-props'\nimport { StylesheetEngine } from '../../css-runtime/stylesheet-engine'\nimport { type ControlledStyleData } from '../../css-runtime/types'\nimport { RSCEmittedStyle } from '../../css-runtime/components/rsc-emitted-style'\n\nexport async function ServerElementData({\n documentKey,\n context,\n elementData,\n injectedProps,\n}: {\n documentKey: string\n context: ServerRenderContext\n elementData: ElementData\n injectedProps: Record<string, unknown>\n}): Promise<ReactNode> {\n const state = getStore(context).getState()\n\n const Component = getReactComponent(state, elementData.type)\n if (Component == null) {\n return (\n <FallbackComponent\n text=\"Component not found\"\n details={`Unknown component '${elementData.type}'`}\n />\n )\n }\n\n const [legacyDescriptors, definitions] = getControlDefs(state, elementData)\n const legacyKeys = Object.keys(legacyDescriptors)\n if (legacyKeys.length > 0) {\n console.warn(`Unexpected legacy control data in server element '${elementData.key}`, {\n elementData,\n legacyKeys,\n })\n }\n\n const classStyleData = new Map<string, ControlledStyleData>()\n const stylesheet = new StylesheetEngine({\n breakpointsData: getBreakpoints(state),\n classNamePrefix: context.rootStyleProps?.classNamePrefix,\n documentKey,\n elementKey: elementData.key,\n propPathComponents: [],\n onDefineStyle: styleData => {\n const { onBoxModelChange, ...serializableStyleData } = styleData\n classStyleData.set(styleData.className, serializableStyleData)\n },\n })\n\n const props = {\n ...(await resolveProps(context, elementData, documentKey, definitions, stylesheet)),\n ...injectedProps,\n }\n\n const styleElements = Array.from(classStyleData, ([className, styleData]) => (\n <RSCEmittedStyle key={className} namespace={elementData.key} serializableData={styleData} />\n ))\n\n return (\n <>\n {/* Make the component the first child so that `findDOMNode` resolves to its first\n rendered DOM node (if any) rather than the component's `<style>` element */}\n <Component key={elementData.key} {...props} />\n {styleElements}\n </>\n )\n}\n\nconst getControlDefs = (state: State, elementData: ElementData) => {\n const descriptors = getComponentPropControllerDescriptors(state, elementData.type) ?? {}\n return partitionRecord(descriptors, isLegacyDescriptor)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAqCM;AAnCN,uBAAgC;AAEhC,6BAMO;AAEP,+BAAkC;AAClC,yBAAmC;AAEnC,4BAAmD;AACnD,2BAA6B;AAC7B,+BAAiC;AAEjC,+BAAgC;AAEhC,eAAsB,kBAAkB;AAAA,EACtC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAKuB;AACrB,QAAM,YAAQ,gCAAS,OAAO,EAAE,SAAS;AAEzC,QAAM,gBAAY,0CAAkB,OAAO,YAAY,IAAI;AAC3D,MAAI,aAAa,MAAM;AACrB,WACE;AAAA,MAAC;AAAA;AAAA,QACC,MAAK;AAAA,QACL,SAAS,sBAAsB,YAAY,IAAI;AAAA;AAAA,IACjD;AAAA,EAEJ;AAEA,QAAM,CAAC,mBAAmB,WAAW,IAAI,eAAe,OAAO,WAAW;AAC1E,QAAM,aAAa,OAAO,KAAK,iBAAiB;AAChD,MAAI,WAAW,SAAS,GAAG;AACzB,YAAQ,KAAK,qDAAqD,YAAY,GAAG,IAAI;AAAA,MACnF;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH;AAEA,QAAM,iBAAiB,oBAAI,IAAiC;AAC5D,QAAM,aAAa,IAAI,0CAAiB;AAAA,IACtC,qBAAiB,uCAAe,KAAK;AAAA,IACrC,iBAAiB,QAAQ,gBAAgB;AAAA,IACzC;AAAA,IACA,YAAY,YAAY;AAAA,IACxB,oBAAoB,CAAC;AAAA,IACrB,eAAe,eAAa;AAC1B,YAAM,EAAE,kBAAkB,GAAG,sBAAsB,IAAI;AACvD,qBAAe,IAAI,UAAU,WAAW,qBAAqB;AAAA,IAC/D;AAAA,EACF,CAAC;AAED,QAAM,QAAQ;AAAA,IACZ,GAAI,UAAM,mCAAa,SAAS,aAAa,aAAa,aAAa,UAAU;AAAA,IACjF,GAAG;AAAA,EACL;AAEA,QAAM,gBAAgB,MAAM,KAAK,gBAAgB,CAAC,CAAC,WAAW,SAAS,MACrE,4CAAC,4CAAgC,WAAW,YAAY,KAAK,kBAAkB,aAAzD,SAAoE,CAC3F;AAED,SACE,4EAGE;AAAA,gDAAC,aAAiC,GAAG,SAArB,YAAY,GAAgB;AAAA,IAC3C;AAAA,KACH;AAEJ;AAEA,MAAM,iBAAiB,CAAC,OAAc,gBAA6B;AACjE,QAAM,kBAAc,8DAAsC,OAAO,YAAY,IAAI,KAAK,CAAC;AACvF,aAAO,kCAAgB,aAAa,qCAAkB;AACxD;","names":[]}
@@ -26,7 +26,6 @@ __export(server_elements_cache_exports, {
26
26
  module.exports = __toCommonJS(server_elements_cache_exports);
27
27
  var import_jsx_runtime = require("react/jsx-runtime");
28
28
  var import_react = require("react");
29
- var import_client_css = require("../css/client-css");
30
29
  const Context = (0, import_react.createContext)({
31
30
  getElement: () => null,
32
31
  updateElement: () => {
@@ -66,7 +65,7 @@ const ServerElementsCache = ({
66
65
  const ServerElementsProvider = ({
67
66
  children,
68
67
  elements
69
- }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ServerElementsCache, { value: elements, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_client_css.ClientCSSProvider, { children }) });
68
+ }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ServerElementsCache, { value: elements, children });
70
69
  const useServerElementsCache = () => (0, import_react.useContext)(Context);
71
70
  // Annotate the CommonJS export names for ESM import in node:
72
71
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/server/components/server-elements-cache.tsx"],"sourcesContent":["'use client'\n\nimport { createContext, ReactNode, useCallback, useContext, useState, useMemo } from 'react'\n\nimport { type ElementsMap } from '../collect-server-elements'\nimport { ClientCSSProvider } from '../css/client-css'\n\ntype ContextValue = {\n getElement: (elementKey: string) => ReactNode\n updateElement: (elementKey: string, node: ReactNode) => void\n removeElement: (elementKey: string) => void\n}\n\nconst Context = createContext<ContextValue>({\n getElement: () => null,\n updateElement: () => {},\n removeElement: () => {},\n})\n\n/**\n * Client-side \"cache\" of server-rendered elements; this is one of the key pieces in our RSC\n * implementation, with React doing the majority of the heavy lifting: when `ReactNode`s are\n * passed as props across a 'use client' boundary, React's flight serializer automatically\n * renders and encodes them in the RSC stream and then reconstructs them on the client. All\n * we need to do on the client is to make these React elements available for lookup/\n * manipulation when editing in the builder.\n */\nexport const ServerElementsCache = ({\n children,\n value,\n}: {\n children: ReactNode\n value: ElementsMap\n}) => {\n // An RSC re-render does not inherently remount client components; React can reconcile\n // the new server tree with the existing client tree, so we need to handle the `value`\n // prop updates\n const [nodes, setNodes] = useState(value)\n const [previousValue, setPreviousValue] = useState(value)\n\n // this is okay to do on render, see https://react.dev/learn/you-might-not-need-an-effect#adjusting-some-state-when-a-prop-changes\n if (value !== previousValue) {\n setPreviousValue(value)\n setNodes(value)\n }\n\n const getElement = useCallback((elementKey: string): ReactNode => nodes.get(elementKey), [nodes])\n\n const updateElement = useCallback(\n (elementKey: string, node: ReactNode) => setNodes(prev => new Map(prev).set(elementKey, node)),\n [],\n )\n\n const removeElement = useCallback(\n (elementKey: string) =>\n setNodes(prev => {\n const next = new Map(prev)\n next.delete(elementKey)\n return next\n }),\n [],\n )\n\n const cache = useMemo(\n () => ({ getElement, updateElement, removeElement }),\n [getElement, updateElement, removeElement],\n )\n\n return <Context.Provider value={cache}>{children}</Context.Provider>\n}\n\nexport const ServerElementsProvider = ({\n children,\n elements,\n}: {\n children: ReactNode\n elements: ElementsMap\n}) => (\n <ServerElementsCache value={elements}>\n <ClientCSSProvider>{children}</ClientCSSProvider>\n </ServerElementsCache>\n)\n\nexport const useServerElementsCache = () => useContext(Context)\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoES;AAlET,mBAAqF;AAGrF,wBAAkC;AAQlC,MAAM,cAAU,4BAA4B;AAAA,EAC1C,YAAY,MAAM;AAAA,EAClB,eAAe,MAAM;AAAA,EAAC;AAAA,EACtB,eAAe,MAAM;AAAA,EAAC;AACxB,CAAC;AAUM,MAAM,sBAAsB,CAAC;AAAA,EAClC;AAAA,EACA;AACF,MAGM;AAIJ,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAS,KAAK;AACxC,QAAM,CAAC,eAAe,gBAAgB,QAAI,uBAAS,KAAK;AAGxD,MAAI,UAAU,eAAe;AAC3B,qBAAiB,KAAK;AACtB,aAAS,KAAK;AAAA,EAChB;AAEA,QAAM,iBAAa,0BAAY,CAAC,eAAkC,MAAM,IAAI,UAAU,GAAG,CAAC,KAAK,CAAC;AAEhG,QAAM,oBAAgB;AAAA,IACpB,CAAC,YAAoB,SAAoB,SAAS,UAAQ,IAAI,IAAI,IAAI,EAAE,IAAI,YAAY,IAAI,CAAC;AAAA,IAC7F,CAAC;AAAA,EACH;AAEA,QAAM,oBAAgB;AAAA,IACpB,CAAC,eACC,SAAS,UAAQ;AACf,YAAM,OAAO,IAAI,IAAI,IAAI;AACzB,WAAK,OAAO,UAAU;AACtB,aAAO;AAAA,IACT,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAEA,QAAM,YAAQ;AAAA,IACZ,OAAO,EAAE,YAAY,eAAe,cAAc;AAAA,IAClD,CAAC,YAAY,eAAe,aAAa;AAAA,EAC3C;AAEA,SAAO,4CAAC,QAAQ,UAAR,EAAiB,OAAO,OAAQ,UAAS;AACnD;AAEO,MAAM,yBAAyB,CAAC;AAAA,EACrC;AAAA,EACA;AACF,MAIE,4CAAC,uBAAoB,OAAO,UAC1B,sDAAC,uCAAmB,UAAS,GAC/B;AAGK,MAAM,yBAAyB,UAAM,yBAAW,OAAO;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/server/components/server-elements-cache.tsx"],"sourcesContent":["'use client'\n\nimport { createContext, ReactNode, useCallback, useContext, useState, useMemo } from 'react'\n\nimport { type ElementsMap } from '../collect-server-elements'\n\ntype ContextValue = {\n getElement: (elementKey: string) => ReactNode\n updateElement: (elementKey: string, node: ReactNode) => void\n removeElement: (elementKey: string) => void\n}\n\nconst Context = createContext<ContextValue>({\n getElement: () => null,\n updateElement: () => {},\n removeElement: () => {},\n})\n\n/**\n * Client-side \"cache\" of server-rendered elements; this is one of the key pieces in our RSC\n * implementation, with React doing the majority of the heavy lifting: when `ReactNode`s are\n * passed as props across a 'use client' boundary, React's flight serializer automatically\n * renders and encodes them in the RSC stream and then reconstructs them on the client. All\n * we need to do on the client is to make these React elements available for lookup/\n * manipulation when editing in the builder.\n */\nexport const ServerElementsCache = ({\n children,\n value,\n}: {\n children: ReactNode\n value: ElementsMap\n}) => {\n // An RSC re-render does not inherently remount client components; React can reconcile\n // the new server tree with the existing client tree, so we need to handle the `value`\n // prop updates\n const [nodes, setNodes] = useState(value)\n const [previousValue, setPreviousValue] = useState(value)\n\n // this is okay to do on render, see https://react.dev/learn/you-might-not-need-an-effect#adjusting-some-state-when-a-prop-changes\n if (value !== previousValue) {\n setPreviousValue(value)\n setNodes(value)\n }\n\n const getElement = useCallback((elementKey: string): ReactNode => nodes.get(elementKey), [nodes])\n\n const updateElement = useCallback(\n (elementKey: string, node: ReactNode) => setNodes(prev => new Map(prev).set(elementKey, node)),\n [],\n )\n\n const removeElement = useCallback(\n (elementKey: string) =>\n setNodes(prev => {\n const next = new Map(prev)\n next.delete(elementKey)\n return next\n }),\n [],\n )\n\n const cache = useMemo(\n () => ({ getElement, updateElement, removeElement }),\n [getElement, updateElement, removeElement],\n )\n\n return <Context.Provider value={cache}>{children}</Context.Provider>\n}\n\nexport const ServerElementsProvider = ({\n children,\n elements,\n}: {\n children: ReactNode\n elements: ElementsMap\n}) => <ServerElementsCache value={elements}>{children}</ServerElementsCache>\n\nexport const useServerElementsCache = () => useContext(Context)\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmES;AAjET,mBAAqF;AAUrF,MAAM,cAAU,4BAA4B;AAAA,EAC1C,YAAY,MAAM;AAAA,EAClB,eAAe,MAAM;AAAA,EAAC;AAAA,EACtB,eAAe,MAAM;AAAA,EAAC;AACxB,CAAC;AAUM,MAAM,sBAAsB,CAAC;AAAA,EAClC;AAAA,EACA;AACF,MAGM;AAIJ,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAS,KAAK;AACxC,QAAM,CAAC,eAAe,gBAAgB,QAAI,uBAAS,KAAK;AAGxD,MAAI,UAAU,eAAe;AAC3B,qBAAiB,KAAK;AACtB,aAAS,KAAK;AAAA,EAChB;AAEA,QAAM,iBAAa,0BAAY,CAAC,eAAkC,MAAM,IAAI,UAAU,GAAG,CAAC,KAAK,CAAC;AAEhG,QAAM,oBAAgB;AAAA,IACpB,CAAC,YAAoB,SAAoB,SAAS,UAAQ,IAAI,IAAI,IAAI,EAAE,IAAI,YAAY,IAAI,CAAC;AAAA,IAC7F,CAAC;AAAA,EACH;AAEA,QAAM,oBAAgB;AAAA,IACpB,CAAC,eACC,SAAS,UAAQ;AACf,YAAM,OAAO,IAAI,IAAI,IAAI;AACzB,WAAK,OAAO,UAAU;AACtB,aAAO;AAAA,IACT,CAAC;AAAA,IACH,CAAC;AAAA,EACH;AAEA,QAAM,YAAQ;AAAA,IACZ,OAAO,EAAE,YAAY,eAAe,cAAc;AAAA,IAClD,CAAC,YAAY,eAAe,aAAa;AAAA,EAC3C;AAEA,SAAO,4CAAC,QAAQ,UAAR,EAAiB,OAAO,OAAQ,UAAS;AACnD;AAEO,MAAM,yBAAyB,CAAC;AAAA,EACrC;AAAA,EACA;AACF,MAGM,4CAAC,uBAAoB,OAAO,UAAW,UAAS;AAE/C,MAAM,yBAAyB,UAAM,yBAAW,OAAO;","names":[]}
@@ -22,7 +22,6 @@ __export(server_exports, {
22
22
  RSCElementRenderer: () => import_renderer.RSCElementRenderer,
23
23
  RenderContext: () => import_render_context.RenderContext,
24
24
  RenderElementPayload: () => import_render_element_payload.RenderElementPayload,
25
- ServerCSSCollector: () => import_server_css.ServerCSSCollector,
26
25
  ServerElement: () => import_element.ServerElement,
27
26
  Slot: () => import_slot.Slot,
28
27
  collectServerElements: () => import_collect_server_elements.collectServerElements,
@@ -35,7 +34,6 @@ var import_element = require("./components/element");
35
34
  var import_makeswift_component = require("./components/makeswift-component");
36
35
  var import_slot = require("./components/slot");
37
36
  var import_renderer = require("./components/renderer");
38
- var import_server_css = require("./css/server-css");
39
37
  var import_render_context = require("./render-context");
40
38
  var import_render_element_payload = require("./render-element-payload");
41
39
  // Annotate the CommonJS export names for ESM import in node:
@@ -44,7 +42,6 @@ var import_render_element_payload = require("./render-element-payload");
44
42
  RSCElementRenderer,
45
43
  RenderContext,
46
44
  RenderElementPayload,
47
- ServerCSSCollector,
48
45
  ServerElement,
49
46
  Slot,
50
47
  collectServerElements,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/server/index.ts"],"sourcesContent":["export { collectServerElements } from './collect-server-elements'\nexport { ServerElement } from './components/element'\nexport { MakeswiftComponent } from './components/makeswift-component'\nexport { Slot } from './components/slot'\nexport { RSCElementRenderer } from './components/renderer'\nexport { ServerCSSCollector } from './css/server-css'\nexport {\n type ServerRenderContext,\n RenderContext,\n setRenderContext,\n getRenderContext,\n} from './render-context'\nexport { RenderElementPayload } from './render-element-payload'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qCAAsC;AACtC,qBAA8B;AAC9B,iCAAmC;AACnC,kBAAqB;AACrB,sBAAmC;AACnC,wBAAmC;AACnC,4BAKO;AACP,oCAAqC;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/server/index.ts"],"sourcesContent":["export { collectServerElements } from './collect-server-elements'\nexport { ServerElement } from './components/element'\nexport { MakeswiftComponent } from './components/makeswift-component'\nexport { Slot } from './components/slot'\nexport { RSCElementRenderer } from './components/renderer'\nexport {\n type ServerRenderContext,\n RenderContext,\n setRenderContext,\n getRenderContext,\n} from './render-context'\nexport { RenderElementPayload } from './render-element-payload'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qCAAsC;AACtC,qBAA8B;AAC9B,iCAAmC;AACnC,kBAAqB;AACrB,sBAAmC;AACnC,4BAKO;AACP,oCAAqC;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/server/render-context.tsx"],"sourcesContent":["import { cache, type PropsWithChildren } from 'react'\n\nimport { ReactRuntime } from '../../react/react-runtime'\nimport { type Store } from '../../../state/store'\n\nimport { type SiteVersion } from '../../../api/site-version'\nimport { MakeswiftClient } from '../../../client'\n\n/**\n * Request-scoped dependencies used to render Makeswift server elements.\n *\n * Framework integrations create a context for each request and install it with\n * `RenderContext` or `setRenderContext` so nested renderers can access it without\n * threading it through every component. The runtime must be request-bound;\n * together with `siteVersion` and `locale`, it selects the store and API resource\n * cache used during rendering.\n */\nexport type ServerRenderContext = {\n request: Request\n runtime: ReactRuntime\n client: MakeswiftClient\n siteVersion: SiteVersion | null\n locale: string | undefined\n store: Store\n}\n\nconst requestContext = cache((): { current?: ServerRenderContext } => ({}))\n\nexport const setRenderContext = (context: ServerRenderContext) => {\n requestContext().current = context\n}\n\nexport const getRenderContext = (): ServerRenderContext => {\n const context = requestContext().current\n if (!context) throw Error('Makeswift render context was not set.')\n return context\n}\n\nexport const getStore = ({ store }: ServerRenderContext): Store => store\n\nexport const RenderContext = ({\n context,\n children,\n}: PropsWithChildren<{ context: ServerRenderContext }>) => {\n setRenderContext(context)\n return children\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8C;AA0B9C,MAAM,qBAAiB,oBAAM,OAA0C,CAAC,EAAE;AAEnE,MAAM,mBAAmB,CAAC,YAAiC;AAChE,iBAAe,EAAE,UAAU;AAC7B;AAEO,MAAM,mBAAmB,MAA2B;AACzD,QAAM,UAAU,eAAe,EAAE;AACjC,MAAI,CAAC;AAAS,UAAM,MAAM,uCAAuC;AACjE,SAAO;AACT;AAEO,MAAM,WAAW,CAAC,EAAE,MAAM,MAAkC;AAE5D,MAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA;AACF,MAA2D;AACzD,mBAAiB,OAAO;AACxB,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/server/render-context.tsx"],"sourcesContent":["import { cache, type PropsWithChildren } from 'react'\n\nimport { ReactRuntime } from '../../react/react-runtime'\nimport { type Store } from '../../../state/store'\n\nimport { type SiteVersion } from '../../../api/site-version'\nimport { MakeswiftClient } from '../../../client'\nimport { type RootStyleProps } from '../root-style-registry'\n\n/**\n * Request-scoped dependencies used to render Makeswift server elements.\n *\n * Framework integrations create a context for each request and install it with\n * `RenderContext` or `setRenderContext` so nested renderers can access it without\n * threading it through every component. The runtime must be request-bound;\n * together with `siteVersion` and `locale`, it selects the store and API resource\n * cache used during rendering.\n */\nexport type ServerRenderContext = {\n request: Request\n runtime: ReactRuntime\n client: MakeswiftClient\n siteVersion: SiteVersion | null\n locale: string | undefined\n store: Store\n rootStyleProps?: RootStyleProps\n}\n\nconst requestContext = cache((): { current?: ServerRenderContext } => ({}))\n\nexport const setRenderContext = (context: ServerRenderContext) => {\n requestContext().current = context\n}\n\nexport const getRenderContext = (): ServerRenderContext => {\n const context = requestContext().current\n if (!context) throw Error('Makeswift render context was not set.')\n return context\n}\n\nexport const getStore = ({ store }: ServerRenderContext): Store => store\n\nexport const RenderContext = ({\n context,\n children,\n}: PropsWithChildren<{ context: ServerRenderContext }>) => {\n setRenderContext(context)\n return children\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA8C;AA4B9C,MAAM,qBAAiB,oBAAM,OAA0C,CAAC,EAAE;AAEnE,MAAM,mBAAmB,CAAC,YAAiC;AAChE,iBAAe,EAAE,UAAU;AAC7B;AAEO,MAAM,mBAAmB,MAA2B;AACzD,QAAM,UAAU,eAAe,EAAE;AACjC,MAAI,CAAC;AAAS,UAAM,MAAM,uCAAuC;AACjE,SAAO;AACT;AAEO,MAAM,WAAW,CAAC,EAAE,MAAM,MAAkC;AAE5D,MAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA;AACF,MAA2D;AACzD,mBAAiB,OAAO;AACxB,SAAO;AACT;","names":[]}
@@ -36,7 +36,6 @@ __export(BlockPlugin_exports, {
36
36
  });
37
37
  module.exports = __toCommonJS(BlockPlugin_exports);
38
38
  var import_jsx_runtime = require("react/jsx-runtime");
39
- var import_css = require("@emotion/css");
40
39
  var import_slate = require("slate");
41
40
  var import_controls = require("@makeswift/controls");
42
41
  var import_setBlockKeyForDevice = require("./setBlockKeyForDevice");
@@ -54,9 +53,10 @@ var import_toggleList = require("./toggleList");
54
53
  var import_editor = require("../utils/editor");
55
54
  var import_is_hotkey = __toESM(require("is-hotkey"));
56
55
  var import_constants = require("./constants");
57
- var import_use_style = require("../../runtimes/react/use-style");
58
56
  var import_plugin = require("../../controls/rich-text-v2/plugin");
59
57
  var import_types = require("../../slate/types");
58
+ var import_use_style = require("../../runtimes/react/css-runtime/hooks/use-style");
59
+ var import_clsx = __toESM(require("clsx"));
60
60
  const BlockActions = {
61
61
  setBlockKeyForDevice: import_setBlockKeyForDevice.setBlockKeyForDevice,
62
62
  clearBlockKeyForDevice: import_clearBlockKeyForDevice.clearBlockKeyForDevice,
@@ -302,14 +302,17 @@ function BlockPluginComponent({
302
302
  renderElement,
303
303
  ...props
304
304
  }) {
305
- const blockStyles = [(0, import_use_style.useStyle)({ margin: 0 }), props.element.className];
306
- const quoteStyles = (0, import_use_style.useStyle)({
305
+ const { className: blockStylesClassName, styleElement: blockStylesStyleElement } = (0, import_use_style.useStyle)({
306
+ margin: 0
307
+ });
308
+ const quoteStyles = {
307
309
  padding: "0.5em 10px",
308
310
  fontSize: "1.25em",
309
311
  fontWeight: "300",
310
312
  borderLeft: "5px solid rgba(0, 0, 0, 0.1)"
311
- });
312
- const unorderedListStyles = (0, import_use_style.useStyle)({
313
+ };
314
+ const { className: quoteStylesClassName, styleElement: quoteStylesStyleElement } = (0, import_use_style.useStyle)(quoteStyles);
315
+ const unorderedListStyles = {
313
316
  listStylePosition: "inside",
314
317
  paddingInlineStart: "20px",
315
318
  listStyleType: "disc",
@@ -319,38 +322,115 @@ function BlockPluginComponent({
319
322
  "ul ul": {
320
323
  listStyleType: "square"
321
324
  }
322
- });
323
- const orderedListStyles = (0, import_use_style.useStyle)({
325
+ };
326
+ const { className: unorderedListStylesClassName, styleElement: unorderedListStyleElement } = (0, import_use_style.useStyle)(unorderedListStyles);
327
+ const orderedListStyles = {
324
328
  listStylePosition: "inside",
325
329
  paddingInlineStart: "20px",
326
330
  listStyleType: "decimal"
327
- });
331
+ };
332
+ const { className: orderedListStylesClassName, styleElement: orderedListStyleElement } = (0, import_use_style.useStyle)(orderedListStyles);
328
333
  switch (props.element.type) {
329
334
  case import_types.BlockType.Default:
330
335
  case import_types.BlockType.Paragraph:
331
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
336
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
337
+ blockStylesStyleElement,
338
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
339
+ ] });
332
340
  case import_types.BlockType.Heading1:
333
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h1", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
341
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
342
+ blockStylesStyleElement,
343
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h1", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
344
+ ] });
334
345
  case import_types.BlockType.Heading2:
335
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h2", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
346
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
347
+ blockStylesStyleElement,
348
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h2", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
349
+ ] });
336
350
  case import_types.BlockType.Heading3:
337
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
351
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
352
+ blockStylesStyleElement,
353
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
354
+ ] });
338
355
  case import_types.BlockType.Heading4:
339
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h4", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
356
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
357
+ blockStylesStyleElement,
358
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h4", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
359
+ ] });
340
360
  case import_types.BlockType.Heading5:
341
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h5", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
361
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
362
+ blockStylesStyleElement,
363
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h5", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
364
+ ] });
342
365
  case import_types.BlockType.Heading6:
343
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h6", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
366
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
367
+ blockStylesStyleElement,
368
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h6", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
369
+ ] });
344
370
  case import_types.BlockType.BlockQuote:
345
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("blockquote", { ...props.attributes, className: (0, import_css.cx)(...blockStyles, quoteStyles), children: renderElement(props) });
371
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
372
+ blockStylesStyleElement,
373
+ quoteStylesStyleElement,
374
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
375
+ "blockquote",
376
+ {
377
+ ...props.attributes,
378
+ className: (0, import_clsx.default)(blockStylesClassName, quoteStylesClassName, props.element.className),
379
+ children: renderElement(props)
380
+ }
381
+ )
382
+ ] });
346
383
  case import_types.BlockType.OrderedList:
347
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ol", { ...props.attributes, className: (0, import_css.cx)(...blockStyles, orderedListStyles), children: renderElement(props) });
384
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
385
+ blockStylesStyleElement,
386
+ orderedListStyleElement,
387
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
388
+ "ol",
389
+ {
390
+ ...props.attributes,
391
+ className: (0, import_clsx.default)(
392
+ blockStylesClassName,
393
+ orderedListStylesClassName,
394
+ props.element.className
395
+ ),
396
+ children: renderElement(props)
397
+ }
398
+ )
399
+ ] });
348
400
  case import_types.BlockType.UnorderedList:
349
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ul", { ...props.attributes, className: (0, import_css.cx)(...blockStyles, unorderedListStyles), children: renderElement(props) });
401
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
402
+ blockStylesStyleElement,
403
+ unorderedListStyleElement,
404
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
405
+ "ul",
406
+ {
407
+ ...props.attributes,
408
+ className: (0, import_clsx.default)(
409
+ blockStylesClassName,
410
+ unorderedListStylesClassName,
411
+ props.element.className
412
+ ),
413
+ children: renderElement(props)
414
+ }
415
+ )
416
+ ] });
350
417
  case import_types.BlockType.ListItem:
351
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("li", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
418
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
419
+ blockStylesStyleElement,
420
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("li", { ...props.attributes, className: (0, import_clsx.default)(blockStylesClassName, props.element.className), children: renderElement(props) })
421
+ ] });
352
422
  case import_types.BlockType.ListItemChild:
353
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { ...props.attributes, className: (0, import_css.cx)(...blockStyles), children: renderElement(props) });
423
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [
424
+ blockStylesStyleElement,
425
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
426
+ "span",
427
+ {
428
+ ...props.attributes,
429
+ className: (0, import_clsx.default)(blockStylesClassName, props.element.className),
430
+ children: renderElement(props)
431
+ }
432
+ )
433
+ ] });
354
434
  default:
355
435
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: renderElement(props) });
356
436
  }