@makeswift/runtime 0.14.5 → 0.16.0-canary.0

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 (472) hide show
  1. package/dist/cjs/api/react.js +3 -17
  2. package/dist/cjs/api/react.js.map +1 -1
  3. package/dist/cjs/api/resource-types.js +24 -0
  4. package/dist/cjs/api/resource-types.js.map +1 -0
  5. package/dist/cjs/builder/serialization/control-serialization.js +3 -2
  6. package/dist/cjs/builder/serialization/control-serialization.js.map +1 -1
  7. package/dist/cjs/components/builtin/Box/Box.js +1 -0
  8. package/dist/cjs/components/builtin/Box/Box.js.map +1 -1
  9. package/dist/cjs/components/builtin/Box/animations.js +1 -0
  10. package/dist/cjs/components/builtin/Box/animations.js.map +1 -1
  11. package/dist/cjs/components/builtin/Box/register.js +2 -3
  12. package/dist/cjs/components/builtin/Box/register.js.map +1 -1
  13. package/dist/cjs/components/builtin/Button/Button.js.map +1 -1
  14. package/dist/cjs/components/builtin/Button/register.js +15 -15
  15. package/dist/cjs/components/builtin/Button/register.js.map +1 -1
  16. package/dist/cjs/components/builtin/Carousel/Carousel.js +1 -0
  17. package/dist/cjs/components/builtin/Carousel/Carousel.js.map +1 -1
  18. package/dist/cjs/components/builtin/Carousel/register.js +2 -3
  19. package/dist/cjs/components/builtin/Carousel/register.js.map +1 -1
  20. package/dist/cjs/components/builtin/Countdown/Countdown.js +1 -0
  21. package/dist/cjs/components/builtin/Countdown/Countdown.js.map +1 -1
  22. package/dist/cjs/components/builtin/Countdown/register.js +2 -3
  23. package/dist/cjs/components/builtin/Countdown/register.js.map +1 -1
  24. package/dist/cjs/components/builtin/Divider/register.js +2 -3
  25. package/dist/cjs/components/builtin/Divider/register.js.map +1 -1
  26. package/dist/cjs/components/builtin/Embed/Embed.js +1 -0
  27. package/dist/cjs/components/builtin/Embed/Embed.js.map +1 -1
  28. package/dist/cjs/components/builtin/Embed/register.js +2 -3
  29. package/dist/cjs/components/builtin/Embed/register.js.map +1 -1
  30. package/dist/cjs/components/builtin/Form/Form.js +3 -2
  31. package/dist/cjs/components/builtin/Form/Form.js.map +1 -1
  32. package/dist/cjs/components/builtin/Form/context/FormContext.js +1 -0
  33. package/dist/cjs/components/builtin/Form/context/FormContext.js.map +1 -1
  34. package/dist/cjs/components/builtin/Form/register.js +4 -4
  35. package/dist/cjs/components/builtin/Form/register.js.map +1 -1
  36. package/dist/cjs/components/builtin/Image/Image.js +1 -0
  37. package/dist/cjs/components/builtin/Image/Image.js.map +1 -1
  38. package/dist/cjs/components/builtin/Image/register.js +4 -4
  39. package/dist/cjs/components/builtin/Image/register.js.map +1 -1
  40. package/dist/cjs/components/builtin/Navigation/Navigation.js +1 -0
  41. package/dist/cjs/components/builtin/Navigation/Navigation.js.map +1 -1
  42. package/dist/cjs/components/builtin/Navigation/components/DropDownButton/index.js.map +1 -1
  43. package/dist/cjs/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.js.map +1 -1
  44. package/dist/cjs/components/builtin/Navigation/register.js +4 -4
  45. package/dist/cjs/components/builtin/Navigation/register.js.map +1 -1
  46. package/dist/cjs/components/builtin/Root/register.js +2 -3
  47. package/dist/cjs/components/builtin/Root/register.js.map +1 -1
  48. package/dist/cjs/components/builtin/SocialLinks/register.js +2 -3
  49. package/dist/cjs/components/builtin/SocialLinks/register.js.map +1 -1
  50. package/dist/cjs/components/builtin/Text/register.js +2 -3
  51. package/dist/cjs/components/builtin/Text/register.js.map +1 -1
  52. package/dist/cjs/components/builtin/Video/Video.js +1 -0
  53. package/dist/cjs/components/builtin/Video/Video.js.map +1 -1
  54. package/dist/cjs/components/builtin/Video/register.js +2 -3
  55. package/dist/cjs/components/builtin/Video/register.js.map +1 -1
  56. package/dist/cjs/components/hooks/index.js +3 -1
  57. package/dist/cjs/components/hooks/index.js.map +1 -1
  58. package/dist/cjs/components/hooks/usePageSnippets.js +93 -0
  59. package/dist/cjs/components/hooks/usePageSnippets.js.map +1 -0
  60. package/dist/cjs/components/hooks/usePropControllerLinkData.js +34 -0
  61. package/dist/cjs/components/hooks/usePropControllerLinkData.js.map +1 -0
  62. package/dist/cjs/components/hooks/useRouterLocaleSync.js +49 -0
  63. package/dist/cjs/components/hooks/useRouterLocaleSync.js.map +1 -0
  64. package/dist/cjs/components/page/BodySnippet.js +1 -1
  65. package/dist/cjs/components/page/BodySnippet.js.map +1 -1
  66. package/dist/cjs/components/page/HeadSnippet.js +134 -0
  67. package/dist/cjs/components/page/HeadSnippet.js.map +1 -0
  68. package/dist/cjs/components/page/Page.js +9 -178
  69. package/dist/cjs/components/page/Page.js.map +1 -1
  70. package/dist/cjs/components/page/PageHead.js +109 -0
  71. package/dist/cjs/components/page/PageHead.js.map +1 -0
  72. package/dist/cjs/components/shared/BackgroundsContainer/index.js +1 -0
  73. package/dist/cjs/components/shared/BackgroundsContainer/index.js.map +1 -1
  74. package/dist/cjs/components/shared/Link/index.js +5 -1
  75. package/dist/cjs/components/shared/Link/index.js.map +1 -1
  76. package/dist/cjs/controls/control.js +2 -1
  77. package/dist/cjs/controls/control.js.map +1 -1
  78. package/dist/cjs/controls/rich-text/introspection.js +2 -9
  79. package/dist/cjs/controls/rich-text/introspection.js.map +1 -1
  80. package/dist/cjs/index.js +0 -2
  81. package/dist/cjs/index.js.map +1 -1
  82. package/dist/cjs/next/api-handler/handlers/element-tree.js +17 -8
  83. package/dist/cjs/next/api-handler/handlers/element-tree.js.map +1 -1
  84. package/dist/cjs/next/api-handler/handlers/fonts.js +7 -2
  85. package/dist/cjs/next/api-handler/handlers/fonts.js.map +1 -1
  86. package/dist/cjs/next/api-handler/handlers/manifest.js +20 -8
  87. package/dist/cjs/next/api-handler/handlers/manifest.js.map +1 -1
  88. package/dist/cjs/next/api-handler/handlers/merge-translated-data.js +17 -6
  89. package/dist/cjs/next/api-handler/handlers/merge-translated-data.js.map +1 -1
  90. package/dist/cjs/next/api-handler/handlers/proxy-draft-mode.js +69 -0
  91. package/dist/cjs/next/api-handler/handlers/proxy-draft-mode.js.map +1 -0
  92. package/dist/cjs/next/api-handler/handlers/proxy-preview-mode.js +55 -44
  93. package/dist/cjs/next/api-handler/handlers/proxy-preview-mode.js.map +1 -1
  94. package/dist/cjs/next/api-handler/handlers/revalidate.js +27 -16
  95. package/dist/cjs/next/api-handler/handlers/revalidate.js.map +1 -1
  96. package/dist/cjs/next/api-handler/handlers/translatable-data.js +16 -5
  97. package/dist/cjs/next/api-handler/handlers/translatable-data.js.map +1 -1
  98. package/dist/cjs/next/api-handler/index.js +68 -34
  99. package/dist/cjs/next/api-handler/index.js.map +1 -1
  100. package/dist/cjs/next/client.js +3 -2
  101. package/dist/cjs/next/client.js.map +1 -1
  102. package/dist/cjs/next/components/head-tags.js +77 -0
  103. package/dist/cjs/next/components/head-tags.js.map +1 -0
  104. package/dist/cjs/next/components/page.js +56 -0
  105. package/dist/cjs/next/components/page.js.map +1 -0
  106. package/dist/cjs/next/context/makeswift-host-api-client.js +46 -0
  107. package/dist/cjs/next/context/makeswift-host-api-client.js.map +1 -0
  108. package/dist/cjs/next/context/react-runtime.js +44 -0
  109. package/dist/cjs/next/context/react-runtime.js.map +1 -0
  110. package/dist/cjs/next/draft-mode/draft-mode-script.js +123 -0
  111. package/dist/cjs/next/draft-mode/draft-mode-script.js.map +1 -0
  112. package/dist/cjs/next/draft-mode/index.js +56 -0
  113. package/dist/cjs/next/draft-mode/index.js.map +1 -0
  114. package/dist/cjs/next/hooks/use-is-pages-router.js +37 -0
  115. package/dist/cjs/next/hooks/use-is-pages-router.js.map +1 -0
  116. package/dist/cjs/next/index.js +10 -36
  117. package/dist/cjs/next/index.js.map +1 -1
  118. package/dist/cjs/next/preview-mode.js +4 -2
  119. package/dist/cjs/next/preview-mode.js.map +1 -1
  120. package/dist/cjs/next/root-style-registry.js +90 -0
  121. package/dist/cjs/next/root-style-registry.js.map +1 -0
  122. package/dist/cjs/next/server.js +8 -2
  123. package/dist/cjs/next/server.js.map +1 -1
  124. package/dist/cjs/prop-controllers/copy/navigation-links.js +2 -2
  125. package/dist/cjs/prop-controllers/copy/navigation-links.js.map +1 -1
  126. package/dist/cjs/prop-controllers/copy.js +4 -3
  127. package/dist/cjs/prop-controllers/copy.js.map +1 -1
  128. package/dist/cjs/prop-controllers/descriptors.js +0 -6
  129. package/dist/cjs/prop-controllers/descriptors.js.map +1 -1
  130. package/dist/cjs/prop-controllers/index.js.map +1 -1
  131. package/dist/cjs/prop-controllers/introspection.js +3 -10
  132. package/dist/cjs/prop-controllers/introspection.js.map +1 -1
  133. package/dist/cjs/runtimes/react/components/Element.js +1 -0
  134. package/dist/cjs/runtimes/react/components/Element.js.map +1 -1
  135. package/dist/cjs/runtimes/react/components/LiveProvider.js +6 -13
  136. package/dist/cjs/runtimes/react/components/LiveProvider.js.map +1 -1
  137. package/dist/cjs/runtimes/react/components/PreviewProvider.js +6 -8
  138. package/dist/cjs/runtimes/react/components/PreviewProvider.js.map +1 -1
  139. package/dist/cjs/runtimes/react/components/RuntimeProvider.js +3 -3
  140. package/dist/cjs/runtimes/react/components/RuntimeProvider.js.map +1 -1
  141. package/dist/cjs/runtimes/react/controls/link.js +1 -1
  142. package/dist/cjs/runtimes/react/controls/link.js.map +1 -1
  143. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js +2 -4
  144. package/dist/cjs/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  145. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js +4 -11
  146. package/dist/cjs/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  147. package/dist/cjs/runtimes/react/controls.js +11 -0
  148. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  149. package/dist/cjs/runtimes/react/hooks/makeswift-api.js +11 -10
  150. package/dist/cjs/runtimes/react/hooks/makeswift-api.js.map +1 -1
  151. package/dist/cjs/runtimes/react/hooks/use-document-key.js +1 -0
  152. package/dist/cjs/runtimes/react/hooks/use-document-key.js.map +1 -1
  153. package/dist/cjs/runtimes/react/hooks/use-page-id.js +1 -0
  154. package/dist/cjs/runtimes/react/hooks/use-page-id.js.map +1 -1
  155. package/dist/cjs/runtimes/react/hooks/use-store.js +1 -0
  156. package/dist/cjs/runtimes/react/hooks/use-store.js.map +1 -1
  157. package/dist/cjs/runtimes/react/use-global-style.js +15 -10
  158. package/dist/cjs/runtimes/react/use-global-style.js.map +1 -1
  159. package/dist/cjs/runtimes/react/use-style.js +7 -6
  160. package/dist/cjs/runtimes/react/use-style.js.map +1 -1
  161. package/dist/cjs/state/actions.js +0 -25
  162. package/dist/cjs/state/actions.js.map +1 -1
  163. package/dist/cjs/state/react-builder-preview.js +1 -24
  164. package/dist/cjs/state/react-builder-preview.js.map +1 -1
  165. package/dist/esm/api/react.js +2 -14
  166. package/dist/esm/api/react.js.map +1 -1
  167. package/dist/esm/api/resource-types.js +8 -0
  168. package/dist/esm/api/resource-types.js.map +1 -0
  169. package/dist/esm/builder/serialization/control-serialization.js +5 -2
  170. package/dist/esm/builder/serialization/control-serialization.js.map +1 -1
  171. package/dist/esm/components/builtin/Box/Box.js +1 -0
  172. package/dist/esm/components/builtin/Box/Box.js.map +1 -1
  173. package/dist/esm/components/builtin/Box/animations.js +1 -0
  174. package/dist/esm/components/builtin/Box/animations.js.map +1 -1
  175. package/dist/esm/components/builtin/Box/register.js +2 -3
  176. package/dist/esm/components/builtin/Box/register.js.map +1 -1
  177. package/dist/esm/components/builtin/Button/Button.js.map +1 -1
  178. package/dist/esm/components/builtin/Button/register.js +4 -4
  179. package/dist/esm/components/builtin/Button/register.js.map +1 -1
  180. package/dist/esm/components/builtin/Carousel/Carousel.js +1 -0
  181. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  182. package/dist/esm/components/builtin/Carousel/register.js +2 -3
  183. package/dist/esm/components/builtin/Carousel/register.js.map +1 -1
  184. package/dist/esm/components/builtin/Countdown/Countdown.js +1 -0
  185. package/dist/esm/components/builtin/Countdown/Countdown.js.map +1 -1
  186. package/dist/esm/components/builtin/Countdown/register.js +2 -3
  187. package/dist/esm/components/builtin/Countdown/register.js.map +1 -1
  188. package/dist/esm/components/builtin/Divider/register.js +2 -3
  189. package/dist/esm/components/builtin/Divider/register.js.map +1 -1
  190. package/dist/esm/components/builtin/Embed/Embed.js +1 -0
  191. package/dist/esm/components/builtin/Embed/Embed.js.map +1 -1
  192. package/dist/esm/components/builtin/Embed/register.js +2 -3
  193. package/dist/esm/components/builtin/Embed/register.js.map +1 -1
  194. package/dist/esm/components/builtin/Form/Form.js +3 -2
  195. package/dist/esm/components/builtin/Form/Form.js.map +1 -1
  196. package/dist/esm/components/builtin/Form/context/FormContext.js +1 -0
  197. package/dist/esm/components/builtin/Form/context/FormContext.js.map +1 -1
  198. package/dist/esm/components/builtin/Form/register.js +4 -4
  199. package/dist/esm/components/builtin/Form/register.js.map +1 -1
  200. package/dist/esm/components/builtin/Image/Image.js +1 -0
  201. package/dist/esm/components/builtin/Image/Image.js.map +1 -1
  202. package/dist/esm/components/builtin/Image/register.js +4 -4
  203. package/dist/esm/components/builtin/Image/register.js.map +1 -1
  204. package/dist/esm/components/builtin/Navigation/Navigation.js +1 -0
  205. package/dist/esm/components/builtin/Navigation/Navigation.js.map +1 -1
  206. package/dist/esm/components/builtin/Navigation/components/DropDownButton/index.js.map +1 -1
  207. package/dist/esm/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.js.map +1 -1
  208. package/dist/esm/components/builtin/Navigation/register.js +4 -4
  209. package/dist/esm/components/builtin/Navigation/register.js.map +1 -1
  210. package/dist/esm/components/builtin/Root/register.js +2 -3
  211. package/dist/esm/components/builtin/Root/register.js.map +1 -1
  212. package/dist/esm/components/builtin/SocialLinks/register.js +2 -3
  213. package/dist/esm/components/builtin/SocialLinks/register.js.map +1 -1
  214. package/dist/esm/components/builtin/Text/register.js +2 -3
  215. package/dist/esm/components/builtin/Text/register.js.map +1 -1
  216. package/dist/esm/components/builtin/Video/Video.js +1 -0
  217. package/dist/esm/components/builtin/Video/Video.js.map +1 -1
  218. package/dist/esm/components/builtin/Video/register.js +2 -3
  219. package/dist/esm/components/builtin/Video/register.js.map +1 -1
  220. package/dist/esm/components/hooks/index.js +1 -0
  221. package/dist/esm/components/hooks/index.js.map +1 -1
  222. package/dist/esm/components/hooks/usePageSnippets.js +59 -0
  223. package/dist/esm/components/hooks/usePageSnippets.js.map +1 -0
  224. package/dist/esm/components/hooks/usePropControllerLinkData.js +12 -0
  225. package/dist/esm/components/hooks/usePropControllerLinkData.js.map +1 -0
  226. package/dist/esm/components/hooks/useRouterLocaleSync.js +25 -0
  227. package/dist/esm/components/hooks/useRouterLocaleSync.js.map +1 -0
  228. package/dist/esm/components/page/BodySnippet.js +1 -1
  229. package/dist/esm/components/page/BodySnippet.js.map +1 -1
  230. package/dist/esm/components/page/HeadSnippet.js +100 -0
  231. package/dist/esm/components/page/HeadSnippet.js.map +1 -0
  232. package/dist/esm/components/page/Page.js +7 -166
  233. package/dist/esm/components/page/Page.js.map +1 -1
  234. package/dist/esm/components/page/PageHead.js +85 -0
  235. package/dist/esm/components/page/PageHead.js.map +1 -0
  236. package/dist/esm/components/shared/BackgroundsContainer/index.js +1 -0
  237. package/dist/esm/components/shared/BackgroundsContainer/index.js.map +1 -1
  238. package/dist/esm/components/shared/Link/index.js +5 -1
  239. package/dist/esm/components/shared/Link/index.js.map +1 -1
  240. package/dist/esm/controls/control.js +2 -1
  241. package/dist/esm/controls/control.js.map +1 -1
  242. package/dist/esm/controls/rich-text/introspection.js +2 -9
  243. package/dist/esm/controls/rich-text/introspection.js.map +1 -1
  244. package/dist/esm/index.js +0 -2
  245. package/dist/esm/index.js.map +1 -1
  246. package/dist/esm/next/api-handler/handlers/element-tree.js +17 -8
  247. package/dist/esm/next/api-handler/handlers/element-tree.js.map +1 -1
  248. package/dist/esm/next/api-handler/handlers/fonts.js +7 -2
  249. package/dist/esm/next/api-handler/handlers/fonts.js.map +1 -1
  250. package/dist/esm/next/api-handler/handlers/manifest.js +20 -8
  251. package/dist/esm/next/api-handler/handlers/manifest.js.map +1 -1
  252. package/dist/esm/next/api-handler/handlers/merge-translated-data.js +17 -6
  253. package/dist/esm/next/api-handler/handlers/merge-translated-data.js.map +1 -1
  254. package/dist/esm/next/api-handler/handlers/proxy-draft-mode.js +49 -0
  255. package/dist/esm/next/api-handler/handlers/proxy-draft-mode.js.map +1 -0
  256. package/dist/esm/next/api-handler/handlers/proxy-preview-mode.js +55 -44
  257. package/dist/esm/next/api-handler/handlers/proxy-preview-mode.js.map +1 -1
  258. package/dist/esm/next/api-handler/handlers/revalidate.js +27 -16
  259. package/dist/esm/next/api-handler/handlers/revalidate.js.map +1 -1
  260. package/dist/esm/next/api-handler/handlers/translatable-data.js +16 -5
  261. package/dist/esm/next/api-handler/handlers/translatable-data.js.map +1 -1
  262. package/dist/esm/next/api-handler/index.js +68 -34
  263. package/dist/esm/next/api-handler/index.js.map +1 -1
  264. package/dist/esm/next/client.js +3 -2
  265. package/dist/esm/next/client.js.map +1 -1
  266. package/dist/esm/next/components/head-tags.js +40 -0
  267. package/dist/esm/next/components/head-tags.js.map +1 -0
  268. package/dist/esm/next/components/page.js +32 -0
  269. package/dist/esm/next/components/page.js.map +1 -0
  270. package/dist/esm/next/context/makeswift-host-api-client.js +21 -0
  271. package/dist/esm/next/context/makeswift-host-api-client.js.map +1 -0
  272. package/dist/esm/next/context/react-runtime.js +19 -0
  273. package/dist/esm/next/context/react-runtime.js.map +1 -0
  274. package/dist/esm/next/draft-mode/draft-mode-script.js +99 -0
  275. package/dist/esm/next/draft-mode/draft-mode-script.js.map +1 -0
  276. package/dist/esm/next/draft-mode/index.js +30 -0
  277. package/dist/esm/next/draft-mode/index.js.map +1 -0
  278. package/dist/esm/next/hooks/use-is-pages-router.js +13 -0
  279. package/dist/esm/next/hooks/use-is-pages-router.js.map +1 -0
  280. package/dist/esm/next/index.js +5 -32
  281. package/dist/esm/next/index.js.map +1 -1
  282. package/dist/esm/next/preview-mode.js +2 -1
  283. package/dist/esm/next/preview-mode.js.map +1 -1
  284. package/dist/esm/next/root-style-registry.js +55 -0
  285. package/dist/esm/next/root-style-registry.js.map +1 -0
  286. package/dist/esm/next/server.js +5 -1
  287. package/dist/esm/next/server.js.map +1 -1
  288. package/dist/esm/prop-controllers/copy/navigation-links.js +2 -2
  289. package/dist/esm/prop-controllers/copy/navigation-links.js.map +1 -1
  290. package/dist/esm/prop-controllers/copy.js +4 -3
  291. package/dist/esm/prop-controllers/copy.js.map +1 -1
  292. package/dist/esm/prop-controllers/descriptors.js +0 -5
  293. package/dist/esm/prop-controllers/descriptors.js.map +1 -1
  294. package/dist/esm/prop-controllers/index.js.map +1 -1
  295. package/dist/esm/prop-controllers/introspection.js +6 -10
  296. package/dist/esm/prop-controllers/introspection.js.map +1 -1
  297. package/dist/esm/runtimes/react/components/Element.js +1 -0
  298. package/dist/esm/runtimes/react/components/Element.js.map +1 -1
  299. package/dist/esm/runtimes/react/components/LiveProvider.js +6 -13
  300. package/dist/esm/runtimes/react/components/LiveProvider.js.map +1 -1
  301. package/dist/esm/runtimes/react/components/PreviewProvider.js +6 -8
  302. package/dist/esm/runtimes/react/components/PreviewProvider.js.map +1 -1
  303. package/dist/esm/runtimes/react/components/RuntimeProvider.js +3 -3
  304. package/dist/esm/runtimes/react/components/RuntimeProvider.js.map +1 -1
  305. package/dist/esm/runtimes/react/controls/link.js +1 -1
  306. package/dist/esm/runtimes/react/controls/link.js.map +1 -1
  307. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js +3 -5
  308. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -1
  309. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js +4 -11
  310. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -1
  311. package/dist/esm/runtimes/react/controls.js +13 -1
  312. package/dist/esm/runtimes/react/controls.js.map +1 -1
  313. package/dist/esm/runtimes/react/hooks/makeswift-api.js +11 -10
  314. package/dist/esm/runtimes/react/hooks/makeswift-api.js.map +1 -1
  315. package/dist/esm/runtimes/react/hooks/use-document-key.js +1 -0
  316. package/dist/esm/runtimes/react/hooks/use-document-key.js.map +1 -1
  317. package/dist/esm/runtimes/react/hooks/use-page-id.js +1 -0
  318. package/dist/esm/runtimes/react/hooks/use-page-id.js.map +1 -1
  319. package/dist/esm/runtimes/react/hooks/use-store.js +1 -0
  320. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -1
  321. package/dist/esm/runtimes/react/use-global-style.js +8 -3
  322. package/dist/esm/runtimes/react/use-global-style.js.map +1 -1
  323. package/dist/esm/runtimes/react/use-style.js +2 -1
  324. package/dist/esm/runtimes/react/use-style.js.map +1 -1
  325. package/dist/esm/state/actions.js +0 -22
  326. package/dist/esm/state/actions.js.map +1 -1
  327. package/dist/esm/state/react-builder-preview.js +2 -28
  328. package/dist/esm/state/react-builder-preview.js.map +1 -1
  329. package/dist/types/api/react.d.ts +1 -9
  330. package/dist/types/api/react.d.ts.map +1 -1
  331. package/dist/types/api/resource-types.d.ts +20 -0
  332. package/dist/types/api/resource-types.d.ts.map +1 -0
  333. package/dist/types/builder/serialization/control-serialization.d.ts +9 -8
  334. package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -1
  335. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  336. package/dist/types/components/builtin/Box/animations.d.ts.map +1 -1
  337. package/dist/types/components/builtin/Box/register.d.ts.map +1 -1
  338. package/dist/types/components/builtin/Button/Button.d.ts +3 -2
  339. package/dist/types/components/builtin/Button/Button.d.ts.map +1 -1
  340. package/dist/types/components/builtin/Button/register.d.ts.map +1 -1
  341. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  342. package/dist/types/components/builtin/Carousel/register.d.ts.map +1 -1
  343. package/dist/types/components/builtin/Countdown/Countdown.d.ts.map +1 -1
  344. package/dist/types/components/builtin/Countdown/register.d.ts.map +1 -1
  345. package/dist/types/components/builtin/Divider/register.d.ts.map +1 -1
  346. package/dist/types/components/builtin/Embed/Embed.d.ts.map +1 -1
  347. package/dist/types/components/builtin/Embed/register.d.ts.map +1 -1
  348. package/dist/types/components/builtin/Form/Form.d.ts +3 -2
  349. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -1
  350. package/dist/types/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
  351. package/dist/types/components/builtin/Form/context/FormContext.d.ts.map +1 -1
  352. package/dist/types/components/builtin/Form/register.d.ts.map +1 -1
  353. package/dist/types/components/builtin/Image/Image.d.ts +3 -2
  354. package/dist/types/components/builtin/Image/Image.d.ts.map +1 -1
  355. package/dist/types/components/builtin/Image/register.d.ts.map +1 -1
  356. package/dist/types/components/builtin/Navigation/Navigation.d.ts +3 -2
  357. package/dist/types/components/builtin/Navigation/Navigation.d.ts.map +1 -1
  358. package/dist/types/components/builtin/Navigation/components/DropDownButton/index.d.ts +3 -2
  359. package/dist/types/components/builtin/Navigation/components/DropDownButton/index.d.ts.map +1 -1
  360. package/dist/types/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts +3 -2
  361. package/dist/types/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts.map +1 -1
  362. package/dist/types/components/builtin/Navigation/register.d.ts.map +1 -1
  363. package/dist/types/components/builtin/Root/register.d.ts.map +1 -1
  364. package/dist/types/components/builtin/SocialLinks/register.d.ts.map +1 -1
  365. package/dist/types/components/builtin/Text/register.d.ts.map +1 -1
  366. package/dist/types/components/builtin/Video/Video.d.ts.map +1 -1
  367. package/dist/types/components/builtin/Video/register.d.ts.map +1 -1
  368. package/dist/types/components/hooks/index.d.ts +1 -0
  369. package/dist/types/components/hooks/index.d.ts.map +1 -1
  370. package/dist/types/components/hooks/usePageSnippets.d.ts +36 -0
  371. package/dist/types/components/hooks/usePageSnippets.d.ts.map +1 -0
  372. package/dist/types/components/hooks/usePropControllerLinkData.d.ts +3 -0
  373. package/dist/types/components/hooks/usePropControllerLinkData.d.ts.map +1 -0
  374. package/dist/types/components/hooks/useRouterLocaleSync.d.ts +2 -0
  375. package/dist/types/components/hooks/useRouterLocaleSync.d.ts.map +1 -0
  376. package/dist/types/components/page/BodySnippet.d.ts.map +1 -1
  377. package/dist/types/components/page/HeadSnippet.d.ts +7 -0
  378. package/dist/types/components/page/HeadSnippet.d.ts.map +1 -0
  379. package/dist/types/components/page/Page.d.ts.map +1 -1
  380. package/dist/types/components/page/PageHead.d.ts +8 -0
  381. package/dist/types/components/page/PageHead.d.ts.map +1 -0
  382. package/dist/types/components/shared/BackgroundsContainer/index.d.ts.map +1 -1
  383. package/dist/types/components/shared/Link/index.d.ts +1 -1
  384. package/dist/types/components/shared/Link/index.d.ts.map +1 -1
  385. package/dist/types/controls/control.d.ts.map +1 -1
  386. package/dist/types/controls/rich-text/introspection.d.ts.map +1 -1
  387. package/dist/types/index.d.ts +1 -1
  388. package/dist/types/index.d.ts.map +1 -1
  389. package/dist/types/next/api-handler/handlers/element-tree.d.ts +9 -1
  390. package/dist/types/next/api-handler/handlers/element-tree.d.ts.map +1 -1
  391. package/dist/types/next/api-handler/handlers/fonts.d.ts +10 -1
  392. package/dist/types/next/api-handler/handlers/fonts.d.ts.map +1 -1
  393. package/dist/types/next/api-handler/handlers/manifest.d.ts +9 -0
  394. package/dist/types/next/api-handler/handlers/manifest.d.ts.map +1 -1
  395. package/dist/types/next/api-handler/handlers/merge-translated-data.d.ts +7 -0
  396. package/dist/types/next/api-handler/handlers/merge-translated-data.d.ts.map +1 -1
  397. package/dist/types/next/api-handler/handlers/proxy-draft-mode.d.ts +20 -0
  398. package/dist/types/next/api-handler/handlers/proxy-draft-mode.d.ts.map +1 -0
  399. package/dist/types/next/api-handler/handlers/proxy-preview-mode.d.ts +14 -2
  400. package/dist/types/next/api-handler/handlers/proxy-preview-mode.d.ts.map +1 -1
  401. package/dist/types/next/api-handler/handlers/revalidate.d.ts +9 -0
  402. package/dist/types/next/api-handler/handlers/revalidate.d.ts.map +1 -1
  403. package/dist/types/next/api-handler/handlers/translatable-data.d.ts +7 -0
  404. package/dist/types/next/api-handler/handlers/translatable-data.d.ts.map +1 -1
  405. package/dist/types/next/api-handler/index.d.ts +11 -3
  406. package/dist/types/next/api-handler/index.d.ts.map +1 -1
  407. package/dist/types/next/client.d.ts.map +1 -1
  408. package/dist/types/next/components/head-tags.d.ts +19 -0
  409. package/dist/types/next/components/head-tags.d.ts.map +1 -0
  410. package/dist/types/next/components/page.d.ts +7 -0
  411. package/dist/types/next/components/page.d.ts.map +1 -0
  412. package/dist/types/next/context/makeswift-host-api-client.d.ts +8 -0
  413. package/dist/types/next/context/makeswift-host-api-client.d.ts.map +1 -0
  414. package/dist/types/next/context/react-runtime.d.ts +8 -0
  415. package/dist/types/next/context/react-runtime.d.ts.map +1 -0
  416. package/dist/types/next/draft-mode/draft-mode-script.d.ts +6 -0
  417. package/dist/types/next/draft-mode/draft-mode-script.d.ts.map +1 -0
  418. package/dist/types/next/draft-mode/index.d.ts +15 -0
  419. package/dist/types/next/draft-mode/index.d.ts.map +1 -0
  420. package/dist/types/next/hooks/use-is-pages-router.d.ts +2 -0
  421. package/dist/types/next/hooks/use-is-pages-router.d.ts.map +1 -0
  422. package/dist/types/next/index.d.ts +4 -9
  423. package/dist/types/next/index.d.ts.map +1 -1
  424. package/dist/types/next/preview-mode.d.ts +1 -1
  425. package/dist/types/next/preview-mode.d.ts.map +1 -1
  426. package/dist/types/next/root-style-registry.d.ts +7 -0
  427. package/dist/types/next/root-style-registry.d.ts.map +1 -0
  428. package/dist/types/next/server.d.ts +2 -0
  429. package/dist/types/next/server.d.ts.map +1 -1
  430. package/dist/types/prop-controllers/copy/navigation-links.d.ts.map +1 -1
  431. package/dist/types/prop-controllers/copy.d.ts.map +1 -1
  432. package/dist/types/prop-controllers/descriptors.d.ts +7 -66
  433. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  434. package/dist/types/prop-controllers/index.d.ts +2 -1
  435. package/dist/types/prop-controllers/index.d.ts.map +1 -1
  436. package/dist/types/prop-controllers/introspection.d.ts.map +1 -1
  437. package/dist/types/runtimes/react/components/Element.d.ts.map +1 -1
  438. package/dist/types/runtimes/react/components/LiveProvider.d.ts +3 -5
  439. package/dist/types/runtimes/react/components/LiveProvider.d.ts.map +1 -1
  440. package/dist/types/runtimes/react/components/PreviewProvider.d.ts +3 -5
  441. package/dist/types/runtimes/react/components/PreviewProvider.d.ts.map +1 -1
  442. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts +2 -2
  443. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts.map +1 -1
  444. package/dist/types/runtimes/react/controls/link.d.ts.map +1 -1
  445. package/dist/types/runtimes/react/controls/rich-text/rich-text.d.ts.map +1 -1
  446. package/dist/types/runtimes/react/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  447. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  448. package/dist/types/runtimes/react/hooks/makeswift-api.d.ts +2 -1
  449. package/dist/types/runtimes/react/hooks/makeswift-api.d.ts.map +1 -1
  450. package/dist/types/runtimes/react/hooks/use-document-key.d.ts.map +1 -1
  451. package/dist/types/runtimes/react/hooks/use-page-id.d.ts.map +1 -1
  452. package/dist/types/runtimes/react/hooks/use-store.d.ts.map +1 -1
  453. package/dist/types/runtimes/react/use-global-style.d.ts.map +1 -1
  454. package/dist/types/runtimes/react/use-style.d.ts.map +1 -1
  455. package/dist/types/state/actions.d.ts +1 -19
  456. package/dist/types/state/actions.d.ts.map +1 -1
  457. package/dist/types/state/react-builder-preview.d.ts +3 -3
  458. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  459. package/next/plugin/package.json +1 -0
  460. package/package.json +7 -10
  461. package/dist/cjs/next/dynamic.js +0 -52
  462. package/dist/cjs/next/dynamic.js.map +0 -1
  463. package/dist/cjs/prop-controllers/copy/link.js +0 -63
  464. package/dist/cjs/prop-controllers/copy/link.js.map +0 -1
  465. package/dist/esm/next/dynamic.js +0 -31
  466. package/dist/esm/next/dynamic.js.map +0 -1
  467. package/dist/esm/prop-controllers/copy/link.js +0 -39
  468. package/dist/esm/prop-controllers/copy/link.js.map +0 -1
  469. package/dist/types/next/dynamic.d.ts +0 -13
  470. package/dist/types/next/dynamic.d.ts.map +0 -1
  471. package/dist/types/prop-controllers/copy/link.d.ts +0 -4
  472. package/dist/types/prop-controllers/copy/link.d.ts.map +0 -1
@@ -1,13 +1,11 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import dynamic from "next/dynamic";
3
- import { useCallback } from "react";
4
- import { forwardNextDynamicRef } from "../../../../next/dynamic";
2
+ import { lazy, useCallback } from "react";
5
3
  import {
6
4
  isPropControllersHandle
7
5
  } from "../../../../state/modules/prop-controller-handles";
8
6
  import { useIsPreview } from "../../hooks/use-is-preview";
9
- const EditableText = forwardNextDynamicRef((patch) => dynamic(() => patch(import("./EditableText"))));
10
- const ReadOnlyText = forwardNextDynamicRef((patch) => dynamic(() => patch(import("./ReadOnlyText"))));
7
+ const EditableText = lazy(() => import("./EditableText"));
8
+ const ReadOnlyText = lazy(() => import("./ReadOnlyText"));
11
9
  function useRichText(data, control) {
12
10
  const textCallbackRef = useCallback(
13
11
  (handle) => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/controls/rich-text/rich-text.tsx"],"sourcesContent":["import dynamic from 'next/dynamic'\nimport { ReactNode, useCallback } from 'react'\nimport {\n RichTextControl,\n RichTextControlData,\n RichTextControlDefinition,\n} from '../../../../controls/rich-text'\nimport { forwardNextDynamicRef } from '../../../../next/dynamic'\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../../../state/modules/prop-controller-handles'\nimport { useIsPreview } from '../../hooks/use-is-preview'\n\nconst EditableText = forwardNextDynamicRef(patch => dynamic(() => patch(import('./EditableText'))))\nconst ReadOnlyText = forwardNextDynamicRef(patch => dynamic(() => patch(import('./ReadOnlyText'))))\n\nexport type RichTextControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextControlDefinition }\n\nexport function useRichText(data: RichTextControlData, control: RichTextControl | null) {\n const textCallbackRef = useCallback(\n (handle: PropControllersHandle<Descriptors> | HTMLDivElement) => {\n if (isPropControllersHandle(handle))\n handle?.setPropControllers?.(control == null ? null : { text: control })\n },\n [control],\n )\n\n const isPreview = useIsPreview()\n\n return isPreview ? (\n <EditableText text={data} ref={textCallbackRef} />\n ) : (\n <ReadOnlyText text={data} ref={textCallbackRef} />\n )\n}\n"],"mappings":"AAiCI;AAjCJ,OAAO,aAAa;AACpB,SAAoB,mBAAmB;AAMvC,SAAS,6BAA6B;AACtC;AAAA,EACE;AAAA,OAEK;AACP,SAAS,oBAAoB;AAE7B,MAAM,eAAe,sBAAsB,WAAS,QAAQ,MAAM,MAAM,OAAO,gBAAgB,CAAC,CAAC,CAAC;AAClG,MAAM,eAAe,sBAAsB,WAAS,QAAQ,MAAM,MAAM,OAAO,gBAAgB,CAAC,CAAC,CAAC;AAM3F,SAAS,YAAY,MAA2B,SAAiC;AACtF,QAAM,kBAAkB;AAAA,IACtB,CAAC,WAAgE;AAC/D,UAAI,wBAAwB,MAAM;AAChC,gBAAQ,qBAAqB,WAAW,OAAO,OAAO,EAAE,MAAM,QAAQ,CAAC;AAAA,IAC3E;AAAA,IACA,CAAC,OAAO;AAAA,EACV;AAEA,QAAM,YAAY,aAAa;AAE/B,SAAO,YACL,oBAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB,IAEhD,oBAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB;AAEpD;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/controls/rich-text/rich-text.tsx"],"sourcesContent":["import { ReactNode, lazy, useCallback } from 'react'\nimport {\n RichTextControl,\n RichTextControlData,\n RichTextControlDefinition,\n} from '../../../../controls/rich-text'\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../../../state/modules/prop-controller-handles'\nimport { useIsPreview } from '../../hooks/use-is-preview'\n\nconst EditableText = lazy(() => import('./EditableText'))\nconst ReadOnlyText = lazy(() => import('./ReadOnlyText'))\n\nexport type RichTextControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextControlDefinition }\n\nexport function useRichText(data: RichTextControlData, control: RichTextControl | null) {\n const textCallbackRef = useCallback(\n (handle: PropControllersHandle<Descriptors> | HTMLDivElement | null) => {\n if (isPropControllersHandle(handle))\n handle?.setPropControllers?.(control == null ? null : { text: control })\n },\n [control],\n )\n\n const isPreview = useIsPreview()\n\n return isPreview ? (\n <EditableText text={data} ref={textCallbackRef} />\n ) : (\n <ReadOnlyText text={data} ref={textCallbackRef} />\n )\n}\n"],"mappings":"AA+BI;AA/BJ,SAAoB,MAAM,mBAAmB;AAM7C;AAAA,EACE;AAAA,OAEK;AACP,SAAS,oBAAoB;AAE7B,MAAM,eAAe,KAAK,MAAM,OAAO,gBAAgB,CAAC;AACxD,MAAM,eAAe,KAAK,MAAM,OAAO,gBAAgB,CAAC;AAMjD,SAAS,YAAY,MAA2B,SAAiC;AACtF,QAAM,kBAAkB;AAAA,IACtB,CAAC,WAAuE;AACtE,UAAI,wBAAwB,MAAM;AAChC,gBAAQ,qBAAqB,WAAW,OAAO,OAAO,EAAE,MAAM,QAAQ,CAAC;AAAA,IAC3E;AAAA,IACA,CAAC,OAAO;AAAA,EACV;AAEA,QAAM,YAAY,aAAa;AAE/B,SAAO,YACL,oBAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB,IAEhD,oBAAC,gBAAa,MAAM,MAAM,KAAK,iBAAiB;AAEpD;","names":[]}
@@ -1,19 +1,12 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
+ import { lazy } from "react";
2
3
  import {
3
4
  isRichTextV1Data
4
5
  } from "../../../../controls";
5
6
  import { useIsPreview } from "../../../react";
6
- import { forwardNextDynamicRef } from "../../../../next/dynamic";
7
- import dynamic from "next/dynamic";
8
- const EditableText = forwardNextDynamicRef(
9
- (patch) => dynamic(() => patch(import("./EditableTextV2")))
10
- );
11
- const ReadOnlyText = forwardNextDynamicRef(
12
- (patch) => dynamic(() => patch(import("./ReadOnlyTextV2")))
13
- );
14
- const ReadOnlyTextV1 = forwardNextDynamicRef(
15
- (patch) => dynamic(() => patch(import("../rich-text/ReadOnlyText")))
16
- );
7
+ const EditableText = lazy(() => import("./EditableTextV2"));
8
+ const ReadOnlyText = lazy(() => import("./ReadOnlyTextV2"));
9
+ const ReadOnlyTextV1 = lazy(() => import("../rich-text/ReadOnlyText"));
17
10
  function useRichTextV2(data, definition, control) {
18
11
  const isPreview = useIsPreview();
19
12
  if (isRichTextV1Data(data)) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/runtimes/react/controls/rich-text-v2/rich-text-v2.tsx"],"sourcesContent":["import { ReactNode } from 'react'\n\nimport {\n RichTextControlData,\n RichTextV2Control,\n RichTextV2ControlData,\n RichTextV2ControlDefinition,\n isRichTextV1Data,\n} from '../../../../controls'\nimport { useIsPreview } from '../../../react'\nimport { forwardNextDynamicRef } from '../../../../next/dynamic'\nimport dynamic from 'next/dynamic'\n\nexport type RichTextV2ControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextV2ControlDefinition }\n\nconst EditableText = forwardNextDynamicRef(patch =>\n dynamic(() => patch(import('./EditableTextV2'))),\n)\nconst ReadOnlyText = forwardNextDynamicRef(patch =>\n dynamic(() => patch(import('./ReadOnlyTextV2'))),\n)\n\nconst ReadOnlyTextV1 = forwardNextDynamicRef(patch =>\n dynamic(() => patch(import('../rich-text/ReadOnlyText'))),\n)\n\nexport function useRichTextV2(\n data: RichTextV2ControlData | RichTextControlData,\n definition: RichTextV2ControlDefinition,\n control: RichTextV2Control | null,\n) {\n const isPreview = useIsPreview()\n\n if (isRichTextV1Data(data)) {\n return <ReadOnlyTextV1 text={data} />\n }\n\n return isPreview ? (\n <EditableText text={data} definition={definition} control={control} />\n ) : (\n <ReadOnlyText text={data} definition={definition} />\n )\n}\n"],"mappings":"AAoCW;AAlCX;AAAA,EAKE;AAAA,OACK;AACP,SAAS,oBAAoB;AAC7B,SAAS,6BAA6B;AACtC,OAAO,aAAa;AAMpB,MAAM,eAAe;AAAA,EAAsB,WACzC,QAAQ,MAAM,MAAM,OAAO,kBAAkB,CAAC,CAAC;AACjD;AACA,MAAM,eAAe;AAAA,EAAsB,WACzC,QAAQ,MAAM,MAAM,OAAO,kBAAkB,CAAC,CAAC;AACjD;AAEA,MAAM,iBAAiB;AAAA,EAAsB,WAC3C,QAAQ,MAAM,MAAM,OAAO,2BAA2B,CAAC,CAAC;AAC1D;AAEO,SAAS,cACd,MACA,YACA,SACA;AACA,QAAM,YAAY,aAAa;AAE/B,MAAI,iBAAiB,IAAI,GAAG;AAC1B,WAAO,oBAAC,kBAAe,MAAM,MAAM;AAAA,EACrC;AAEA,SAAO,YACL,oBAAC,gBAAa,MAAM,MAAM,YAAwB,SAAkB,IAEpE,oBAAC,gBAAa,MAAM,MAAM,YAAwB;AAEtD;","names":[]}
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/controls/rich-text-v2/rich-text-v2.tsx"],"sourcesContent":["import { ReactNode, lazy } from 'react'\n\nimport {\n RichTextControlData,\n RichTextV2Control,\n RichTextV2ControlData,\n RichTextV2ControlDefinition,\n isRichTextV1Data,\n} from '../../../../controls'\nimport { useIsPreview } from '../../../react'\n\nexport type RichTextV2ControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextV2ControlDefinition }\n\nconst EditableText = lazy(() => import('./EditableTextV2'))\nconst ReadOnlyText = lazy(() => import('./ReadOnlyTextV2'))\n\nconst ReadOnlyTextV1 = lazy(() => import('../rich-text/ReadOnlyText'))\n\nexport function useRichTextV2(\n data: RichTextV2ControlData | RichTextControlData,\n definition: RichTextV2ControlDefinition,\n control: RichTextV2Control | null,\n) {\n const isPreview = useIsPreview()\n\n if (isRichTextV1Data(data)) {\n return <ReadOnlyTextV1 text={data} />\n }\n\n return isPreview ? (\n <EditableText text={data} definition={definition} control={control} />\n ) : (\n <ReadOnlyText text={data} definition={definition} />\n )\n}\n"],"mappings":"AA4BW;AA5BX,SAAoB,YAAY;AAEhC;AAAA,EAKE;AAAA,OACK;AACP,SAAS,oBAAoB;AAM7B,MAAM,eAAe,KAAK,MAAM,OAAO,kBAAkB,CAAC;AAC1D,MAAM,eAAe,KAAK,MAAM,OAAO,kBAAkB,CAAC;AAE1D,MAAM,iBAAiB,KAAK,MAAM,OAAO,2BAA2B,CAAC;AAE9D,SAAS,cACd,MACA,YACA,SACA;AACA,QAAM,YAAY,aAAa;AAE/B,MAAI,iBAAiB,IAAI,GAAG;AAC1B,WAAO,oBAAC,kBAAe,MAAM,MAAM;AAAA,EACrC;AAEA,SAAO,YACL,oBAAC,gBAAa,MAAM,MAAM,YAAwB,SAAkB,IAEpE,oBAAC,gBAAa,MAAM,MAAM,YAAwB;AAEtD;","names":[]}
@@ -13,7 +13,8 @@ import {
13
13
  import {
14
14
  useBoxShadow,
15
15
  useResponsiveColor,
16
- useBorder as useBorderData
16
+ useBorder as useBorderData,
17
+ usePropControllerLinkData
17
18
  } from "../../components/hooks";
18
19
  import {
19
20
  useResponsiveBorder,
@@ -53,6 +54,7 @@ import { IconRadioGroupControlType } from "../../controls/icon-radio-group";
53
54
  import { useStore } from "./hooks/use-store";
54
55
  import { useDocumentKey } from "./hooks/use-document-key";
55
56
  import { useSelector } from "./hooks/use-selector";
57
+ import { Types as PropControllerTypes } from "@makeswift/prop-controllers";
56
58
  function useWidthStyle(value, descriptor) {
57
59
  return useStyle(useResponsiveWidth(value, descriptor.options.defaultValue));
58
60
  }
@@ -259,6 +261,16 @@ function PropsValue({ element, children }) {
259
261
  },
260
262
  descriptor.type
261
263
  );
264
+ case PropControllerTypes.Link:
265
+ return /* @__PURE__ */ jsx(
266
+ RenderHook,
267
+ {
268
+ hook: usePropControllerLinkData,
269
+ parameters: [props[propName]],
270
+ children: (value) => renderFn({ ...propsValue, [propName]: value })
271
+ },
272
+ descriptor.type
273
+ );
262
274
  default:
263
275
  return renderFn({ ...propsValue, [propName]: props[propName] });
264
276
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/controls.tsx"],"sourcesContent":["import { useRef } from 'react'\n\nimport * as ReactPage from '../../state/react-page'\nimport { Props } from '../../prop-controllers'\nimport {\n BorderDescriptor,\n BorderPropControllerFormat,\n BorderRadiusDescriptor,\n BorderRadiusPropControllerFormat,\n BorderRadiusValue,\n BorderValue,\n Descriptor,\n MarginDescriptor,\n MarginPropControllerFormat,\n MarginValue,\n PaddingDescriptor,\n PaddingPropControllerFormat,\n PaddingValue,\n ResolveOptions,\n ResponsiveValue,\n ShadowsDescriptor,\n ShadowsPropControllerFormat,\n ShadowsValue,\n WidthPropControllerFormat,\n WidthDescriptor,\n WidthValue,\n} from '../../prop-controllers/descriptors'\nimport {\n useBoxShadow,\n useResponsiveColor,\n useBorder as useBorderData,\n} from '../../components/hooks'\nimport type { ColorValue } from '../../components/utils/types'\nimport {\n useResponsiveBorder,\n useResponsiveBorderRadius,\n useResponsiveMargin,\n useResponsivePadding,\n useResponsiveShadow,\n useResponsiveWidth,\n} from '../../components/utils/responsive-style'\nimport {\n CheckboxControlType,\n ColorControlType,\n ComboboxControlType,\n ImageControlType,\n LinkControlType,\n ListControlType,\n NumberControlType,\n SelectControlType,\n ShapeControlType,\n SlotControl,\n SlotControlType,\n StyleControlType,\n TextAreaControlType,\n TextInputControlType,\n RichTextControl,\n RichTextControlType,\n StyleControl,\n RichTextV2Control,\n RichTextV2ControlType,\n StyleV2ControlType,\n TypographyControlType,\n} from '../../controls'\nimport { useFormattedStyle } from './controls/style'\nimport { ControlValue } from './controls/control'\nimport { RenderHook } from './components'\nimport { useSlot } from './controls/slot'\nimport { useStyle } from './use-style'\nimport { useRichText } from './controls/rich-text/rich-text'\nimport { useRichTextV2 } from './controls/rich-text-v2'\nimport { IconRadioGroupControlType } from '../../controls/icon-radio-group'\nimport { useStore } from './hooks/use-store'\nimport { useDocumentKey } from './hooks/use-document-key'\nimport { useSelector } from './hooks/use-selector'\n\nexport type ResponsiveColor = ResponsiveValue<ColorValue>\n\nfunction useWidthStyle(value: WidthValue | undefined, descriptor: WidthDescriptor): string {\n return useStyle(useResponsiveWidth(value, descriptor.options.defaultValue))\n}\n\nexport type ResolveWidthControlValue<T extends Descriptor> = T extends WidthDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? WidthValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof WidthPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof WidthPropControllerFormat.ResponsiveValue\n ? WidthValue | undefined\n : never\n : never\n\nfunction usePaddingStyle(value: PaddingValue | undefined): string {\n return useStyle(useResponsivePadding(value))\n}\n\nexport type ResolvePaddingControlValue<T extends Descriptor> = T extends PaddingDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? PaddingValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof PaddingPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof PaddingPropControllerFormat.ResponsiveValue\n ? PaddingValue | undefined\n : never\n : never\n\nfunction useMarginStyle(value: MarginValue | undefined): string {\n return useStyle(useResponsiveMargin(value))\n}\n\nexport type ResolveMarginControlValue<T extends Descriptor> = T extends MarginDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? MarginValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof MarginPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof MarginPropControllerFormat.ResponsiveValue\n ? MarginValue | undefined\n : never\n : never\n\nexport function useBorderRadiusStyle(value: BorderRadiusValue | undefined): string {\n return useStyle(useResponsiveBorderRadius(value))\n}\n\nexport function useShadowsStyle(\n value: ShadowsValue | undefined,\n): string | ShadowsValue | undefined {\n const shadowValue = useBoxShadow(value)\n\n return useStyle(useResponsiveShadow(shadowValue ?? undefined))\n}\n\nexport type ResolveBorderRadiusControlValue<T extends Descriptor> = T extends BorderRadiusDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? BorderRadiusValue | undefined\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderRadiusPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderRadiusPropControllerFormat.ResponsiveValue\n ? BorderRadiusValue | undefined\n : never\n : never\n\nexport function useBorderStyle(value: BorderValue | undefined): string | BorderValue | undefined {\n const borderData = useBorderData(value)\n\n return useStyle(useResponsiveBorder(borderData ?? undefined))\n}\nexport type ResolveShadowsControlValue<T extends Descriptor> = T extends ShadowsDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? ShadowsValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof ShadowsPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof ShadowsPropControllerFormat.ResponsiveValue\n ? ShadowsValue | undefined\n : never\n : never\n\nexport type ResolveBorderControlValue<T extends Descriptor> = T extends BorderDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? BorderValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof BorderPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderPropControllerFormat.ResponsiveValue\n ? BorderValue | undefined\n : never\n : never\n\ntype PropsValueProps = {\n element: ReactPage.ElementData\n children(props: Record<string, unknown>): JSX.Element\n}\n\nexport function PropsValue({ element, children }: PropsValueProps): JSX.Element {\n const store = useStore()\n const propControllerDescriptorsRef = useRef(\n ReactPage.getComponentPropControllerDescriptors(store.getState(), element.type) ?? {},\n )\n const props = element.props as Record<string, any>\n const documentKey = useDocumentKey()\n\n const propControllers = useSelector(state => {\n if (documentKey == null) return null\n\n return ReactPage.getPropControllers(state, documentKey, element.key)\n })\n\n return Object.entries(propControllerDescriptorsRef.current).reduceRight(\n (renderFn, [propName, descriptor]) =>\n propsValue => {\n switch (descriptor.type) {\n case CheckboxControlType:\n case NumberControlType:\n case TextInputControlType:\n case TextAreaControlType:\n case SelectControlType:\n case ColorControlType:\n case IconRadioGroupControlType:\n case ImageControlType:\n case ComboboxControlType:\n case ShapeControlType:\n case ListControlType:\n case LinkControlType:\n case StyleV2ControlType:\n case TypographyControlType:\n return (\n <ControlValue\n definition={descriptor}\n data={props[propName]}\n control={propControllers?.[propName]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </ControlValue>\n )\n\n case StyleControlType: {\n const control = (propControllers?.[propName] ?? null) as StyleControl | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useFormattedStyle}\n parameters={[props[propName], descriptor, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextControlType: {\n const control = (propControllers?.[propName] ?? null) as RichTextControl | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useRichText}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextV2ControlType: {\n const control = (propControllers?.[propName] ?? null) as RichTextV2Control | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useRichTextV2}\n parameters={[props[propName], descriptor, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case SlotControlType: {\n const control = (propControllers?.[propName] ?? null) as SlotControl | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useSlot}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case Props.Types.Width:\n switch (descriptor.options.format) {\n case WidthPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useWidthStyle}\n parameters={[props[propName], descriptor]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Padding:\n switch (descriptor.options.format) {\n case PaddingPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={usePaddingStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Margin:\n switch (descriptor.options.format) {\n case MarginPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useMarginStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.BorderRadius:\n switch (descriptor.options.format) {\n case BorderRadiusPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBorderRadiusStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Shadows:\n switch (descriptor.options.format) {\n case ShadowsPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useShadowsStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Border:\n switch (descriptor.options.format) {\n case BorderPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBorderStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.ResponsiveColor:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveColor}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n },\n children,\n )({})\n}\n"],"mappings":"AA2Nc;AA3Nd,SAAS,cAAc;AAEvB,YAAY,eAAe;AAC3B,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EAEA;AAAA,EAKA;AAAA,EAGA;AAAA,EAKA;AAAA,EAEA;AAAA,OAGK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA,aAAa;AAAA,OACR;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAC3B,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,mBAAmB;AAC5B,SAAS,qBAAqB;AAC9B,SAAS,iCAAiC;AAC1C,SAAS,gBAAgB;AACzB,SAAS,sBAAsB;AAC/B,SAAS,mBAAmB;AAI5B,SAAS,cAAc,OAA+B,YAAqC;AACzF,SAAO,SAAS,mBAAmB,OAAO,WAAW,QAAQ,YAAY,CAAC;AAC5E;AAcA,SAAS,gBAAgB,OAAyC;AAChE,SAAO,SAAS,qBAAqB,KAAK,CAAC;AAC7C;AAcA,SAAS,eAAe,OAAwC;AAC9D,SAAO,SAAS,oBAAoB,KAAK,CAAC;AAC5C;AAcO,SAAS,qBAAqB,OAA8C;AACjF,SAAO,SAAS,0BAA0B,KAAK,CAAC;AAClD;AAEO,SAAS,gBACd,OACmC;AACnC,QAAM,cAAc,aAAa,KAAK;AAEtC,SAAO,SAAS,oBAAoB,eAAe,MAAS,CAAC;AAC/D;AAgBO,SAAS,eAAe,OAAkE;AAC/F,QAAM,aAAa,cAAc,KAAK;AAEtC,SAAO,SAAS,oBAAoB,cAAc,MAAS,CAAC;AAC9D;AA8BO,SAAS,WAAW,EAAE,SAAS,SAAS,GAAiC;AAC9E,QAAM,QAAQ,SAAS;AACvB,QAAM,+BAA+B;AAAA,IACnC,UAAU,sCAAsC,MAAM,SAAS,GAAG,QAAQ,IAAI,KAAK,CAAC;AAAA,EACtF;AACA,QAAM,QAAQ,QAAQ;AACtB,QAAM,cAAc,eAAe;AAEnC,QAAM,kBAAkB,YAAY,WAAS;AAC3C,QAAI,eAAe;AAAM,aAAO;AAEhC,WAAO,UAAU,mBAAmB,OAAO,aAAa,QAAQ,GAAG;AAAA,EACrE,CAAC;AAED,SAAO,OAAO,QAAQ,6BAA6B,OAAO,EAAE;AAAA,IAC1D,CAAC,UAAU,CAAC,UAAU,UAAU,MAC9B,gBAAc;AACZ,cAAQ,WAAW,MAAM;AAAA,QACvB,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBACE;AAAA,YAAC;AAAA;AAAA,cACC,YAAY;AAAA,cACZ,MAAM,MAAM,QAAQ;AAAA,cACpB,SAAS,kBAAkB,QAAQ;AAAA,cAElC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,UACzD;AAAA,QAGJ,KAAK,kBAAkB;AACrB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,YAAY,OAAO;AAAA,cAEhD,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,qBAAqB;AACxB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,OAAO;AAAA,cAEpC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,uBAAuB;AAC1B,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,YAAY,OAAO;AAAA,cAEhD,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,iBAAiB;AACpB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,OAAO;AAAA,cAEpC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,0BAA0B;AAC7B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,GAAG,UAAU;AAAA,kBAEvC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,4BAA4B;AAC/B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,2BAA2B;AAC9B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,iCAAiC;AACpC,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,4BAA4B;AAC/B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,2BAA2B;AAC9B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,cAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAGJ;AACE,iBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,MAClE;AAAA,IACF;AAAA,IACF;AAAA,EACF,EAAE,CAAC,CAAC;AACN;","names":[]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/controls.tsx"],"sourcesContent":["import { useRef } from 'react'\n\nimport * as ReactPage from '../../state/react-page'\nimport { Props } from '../../prop-controllers'\nimport {\n BorderDescriptor,\n BorderPropControllerFormat,\n BorderRadiusDescriptor,\n BorderRadiusPropControllerFormat,\n BorderRadiusValue,\n BorderValue,\n Descriptor,\n MarginDescriptor,\n MarginPropControllerFormat,\n MarginValue,\n PaddingDescriptor,\n PaddingPropControllerFormat,\n PaddingValue,\n ResolveOptions,\n ResponsiveValue,\n ShadowsDescriptor,\n ShadowsPropControllerFormat,\n ShadowsValue,\n WidthPropControllerFormat,\n WidthDescriptor,\n WidthValue,\n} from '../../prop-controllers/descriptors'\nimport {\n useBoxShadow,\n useResponsiveColor,\n useBorder as useBorderData,\n usePropControllerLinkData,\n} from '../../components/hooks'\nimport type { ColorValue } from '../../components/utils/types'\nimport {\n useResponsiveBorder,\n useResponsiveBorderRadius,\n useResponsiveMargin,\n useResponsivePadding,\n useResponsiveShadow,\n useResponsiveWidth,\n} from '../../components/utils/responsive-style'\nimport {\n CheckboxControlType,\n ColorControlType,\n ComboboxControlType,\n ImageControlType,\n LinkControlType,\n ListControlType,\n NumberControlType,\n SelectControlType,\n ShapeControlType,\n SlotControl,\n SlotControlType,\n StyleControlType,\n TextAreaControlType,\n TextInputControlType,\n RichTextControl,\n RichTextControlType,\n StyleControl,\n RichTextV2Control,\n RichTextV2ControlType,\n StyleV2ControlType,\n TypographyControlType,\n} from '../../controls'\nimport { useFormattedStyle } from './controls/style'\nimport { ControlValue } from './controls/control'\nimport { RenderHook } from './components'\nimport { useSlot } from './controls/slot'\nimport { useStyle } from './use-style'\nimport { useRichText } from './controls/rich-text/rich-text'\nimport { useRichTextV2 } from './controls/rich-text-v2'\nimport { IconRadioGroupControlType } from '../../controls/icon-radio-group'\nimport { useStore } from './hooks/use-store'\nimport { useDocumentKey } from './hooks/use-document-key'\nimport { useSelector } from './hooks/use-selector'\nimport { Types as PropControllerTypes } from '@makeswift/prop-controllers'\n\nexport type ResponsiveColor = ResponsiveValue<ColorValue>\n\nfunction useWidthStyle(value: WidthValue | undefined, descriptor: WidthDescriptor): string {\n return useStyle(useResponsiveWidth(value, descriptor.options.defaultValue))\n}\n\nexport type ResolveWidthControlValue<T extends Descriptor> = T extends WidthDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? WidthValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof WidthPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof WidthPropControllerFormat.ResponsiveValue\n ? WidthValue | undefined\n : never\n : never\n\nfunction usePaddingStyle(value: PaddingValue | undefined): string {\n return useStyle(useResponsivePadding(value))\n}\n\nexport type ResolvePaddingControlValue<T extends Descriptor> = T extends PaddingDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? PaddingValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof PaddingPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof PaddingPropControllerFormat.ResponsiveValue\n ? PaddingValue | undefined\n : never\n : never\n\nfunction useMarginStyle(value: MarginValue | undefined): string {\n return useStyle(useResponsiveMargin(value))\n}\n\nexport type ResolveMarginControlValue<T extends Descriptor> = T extends MarginDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? MarginValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof MarginPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof MarginPropControllerFormat.ResponsiveValue\n ? MarginValue | undefined\n : never\n : never\n\nexport function useBorderRadiusStyle(value: BorderRadiusValue | undefined): string {\n return useStyle(useResponsiveBorderRadius(value))\n}\n\nexport function useShadowsStyle(\n value: ShadowsValue | undefined,\n): string | ShadowsValue | undefined {\n const shadowValue = useBoxShadow(value)\n\n return useStyle(useResponsiveShadow(shadowValue ?? undefined))\n}\n\nexport type ResolveBorderRadiusControlValue<T extends Descriptor> = T extends BorderRadiusDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? BorderRadiusValue | undefined\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderRadiusPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderRadiusPropControllerFormat.ResponsiveValue\n ? BorderRadiusValue | undefined\n : never\n : never\n\nexport function useBorderStyle(value: BorderValue | undefined): string | BorderValue | undefined {\n const borderData = useBorderData(value)\n\n return useStyle(useResponsiveBorder(borderData ?? undefined))\n}\nexport type ResolveShadowsControlValue<T extends Descriptor> = T extends ShadowsDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? ShadowsValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof ShadowsPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof ShadowsPropControllerFormat.ResponsiveValue\n ? ShadowsValue | undefined\n : never\n : never\n\nexport type ResolveBorderControlValue<T extends Descriptor> = T extends BorderDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? BorderValue | undefined\n : ResolveOptions<T['options']>['format'] extends typeof BorderPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderPropControllerFormat.ResponsiveValue\n ? BorderValue | undefined\n : never\n : never\n\ntype PropsValueProps = {\n element: ReactPage.ElementData\n children(props: Record<string, unknown>): JSX.Element\n}\n\nexport function PropsValue({ element, children }: PropsValueProps): JSX.Element {\n const store = useStore()\n const propControllerDescriptorsRef = useRef(\n ReactPage.getComponentPropControllerDescriptors(store.getState(), element.type) ?? {},\n )\n const props = element.props as Record<string, any>\n const documentKey = useDocumentKey()\n\n const propControllers = useSelector(state => {\n if (documentKey == null) return null\n\n return ReactPage.getPropControllers(state, documentKey, element.key)\n })\n\n return Object.entries(propControllerDescriptorsRef.current).reduceRight(\n (renderFn, [propName, descriptor]) =>\n propsValue => {\n switch (descriptor.type) {\n case CheckboxControlType:\n case NumberControlType:\n case TextInputControlType:\n case TextAreaControlType:\n case SelectControlType:\n case ColorControlType:\n case IconRadioGroupControlType:\n case ImageControlType:\n case ComboboxControlType:\n case ShapeControlType:\n case ListControlType:\n case LinkControlType:\n case StyleV2ControlType:\n case TypographyControlType:\n return (\n <ControlValue\n definition={descriptor}\n data={props[propName]}\n control={propControllers?.[propName]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </ControlValue>\n )\n\n case StyleControlType: {\n const control = (propControllers?.[propName] ?? null) as StyleControl | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useFormattedStyle}\n parameters={[props[propName], descriptor, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextControlType: {\n const control = (propControllers?.[propName] ?? null) as RichTextControl | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useRichText}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case RichTextV2ControlType: {\n const control = (propControllers?.[propName] ?? null) as RichTextV2Control | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useRichTextV2}\n parameters={[props[propName], descriptor, control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case SlotControlType: {\n const control = (propControllers?.[propName] ?? null) as SlotControl | null\n\n return (\n <RenderHook\n key={descriptor.type}\n hook={useSlot}\n parameters={[props[propName], control]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n }\n\n case Props.Types.Width:\n switch (descriptor.options.format) {\n case WidthPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useWidthStyle}\n parameters={[props[propName], descriptor]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Padding:\n switch (descriptor.options.format) {\n case PaddingPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={usePaddingStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Margin:\n switch (descriptor.options.format) {\n case MarginPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useMarginStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.BorderRadius:\n switch (descriptor.options.format) {\n case BorderRadiusPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBorderRadiusStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Shadows:\n switch (descriptor.options.format) {\n case ShadowsPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useShadowsStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.Border:\n switch (descriptor.options.format) {\n case BorderPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBorderStyle}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n\n case Props.Types.ResponsiveColor:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveColor}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Link:\n return (\n <RenderHook\n key={descriptor.type}\n hook={usePropControllerLinkData}\n parameters={[props[propName]]}\n >\n {value => renderFn({ ...propsValue, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...propsValue, [propName]: props[propName] })\n }\n },\n children,\n )({})\n}\n"],"mappings":"AA6Nc;AA7Nd,SAAS,cAAc;AAEvB,YAAY,eAAe;AAC3B,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EAEA;AAAA,EAKA;AAAA,EAGA;AAAA,EAKA;AAAA,EAEA;AAAA,OAGK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA,aAAa;AAAA,EACb;AAAA,OACK;AAEP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAEA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,yBAAyB;AAClC,SAAS,oBAAoB;AAC7B,SAAS,kBAAkB;AAC3B,SAAS,eAAe;AACxB,SAAS,gBAAgB;AACzB,SAAS,mBAAmB;AAC5B,SAAS,qBAAqB;AAC9B,SAAS,iCAAiC;AAC1C,SAAS,gBAAgB;AACzB,SAAS,sBAAsB;AAC/B,SAAS,mBAAmB;AAC5B,SAAS,SAAS,2BAA2B;AAI7C,SAAS,cAAc,OAA+B,YAAqC;AACzF,SAAO,SAAS,mBAAmB,OAAO,WAAW,QAAQ,YAAY,CAAC;AAC5E;AAcA,SAAS,gBAAgB,OAAyC;AAChE,SAAO,SAAS,qBAAqB,KAAK,CAAC;AAC7C;AAcA,SAAS,eAAe,OAAwC;AAC9D,SAAO,SAAS,oBAAoB,KAAK,CAAC;AAC5C;AAcO,SAAS,qBAAqB,OAA8C;AACjF,SAAO,SAAS,0BAA0B,KAAK,CAAC;AAClD;AAEO,SAAS,gBACd,OACmC;AACnC,QAAM,cAAc,aAAa,KAAK;AAEtC,SAAO,SAAS,oBAAoB,eAAe,MAAS,CAAC;AAC/D;AAgBO,SAAS,eAAe,OAAkE;AAC/F,QAAM,aAAa,cAAc,KAAK;AAEtC,SAAO,SAAS,oBAAoB,cAAc,MAAS,CAAC;AAC9D;AA8BO,SAAS,WAAW,EAAE,SAAS,SAAS,GAAiC;AAC9E,QAAM,QAAQ,SAAS;AACvB,QAAM,+BAA+B;AAAA,IACnC,UAAU,sCAAsC,MAAM,SAAS,GAAG,QAAQ,IAAI,KAAK,CAAC;AAAA,EACtF;AACA,QAAM,QAAQ,QAAQ;AACtB,QAAM,cAAc,eAAe;AAEnC,QAAM,kBAAkB,YAAY,WAAS;AAC3C,QAAI,eAAe;AAAM,aAAO;AAEhC,WAAO,UAAU,mBAAmB,OAAO,aAAa,QAAQ,GAAG;AAAA,EACrE,CAAC;AAED,SAAO,OAAO,QAAQ,6BAA6B,OAAO,EAAE;AAAA,IAC1D,CAAC,UAAU,CAAC,UAAU,UAAU,MAC9B,gBAAc;AACZ,cAAQ,WAAW,MAAM;AAAA,QACvB,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AAAA,QACL,KAAK;AACH,iBACE;AAAA,YAAC;AAAA;AAAA,cACC,YAAY;AAAA,cACZ,MAAM,MAAM,QAAQ;AAAA,cACpB,SAAS,kBAAkB,QAAQ;AAAA,cAElC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,UACzD;AAAA,QAGJ,KAAK,kBAAkB;AACrB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,YAAY,OAAO;AAAA,cAEhD,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,qBAAqB;AACxB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,OAAO;AAAA,cAEpC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,uBAAuB;AAC1B,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,YAAY,OAAO;AAAA,cAEhD,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,iBAAiB;AACpB,gBAAM,UAAW,kBAAkB,QAAQ,KAAK;AAEhD,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,GAAG,OAAO;AAAA,cAEpC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAEJ;AAAA,QAEA,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,0BAA0B;AAC7B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,GAAG,UAAU;AAAA,kBAEvC,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,4BAA4B;AAC/B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,2BAA2B;AAC9B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,iCAAiC;AACpC,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,4BAA4B;AAC/B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,kBAAQ,WAAW,QAAQ,QAAQ;AAAA,YACjC,KAAK,2BAA2B;AAC9B,qBACE;AAAA,gBAAC;AAAA;AAAA,kBAEC,MAAM;AAAA,kBACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,kBAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,gBAJlD,WAAW;AAAA,cAKlB;AAAA,YAGJ;AACE,qBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,UAClE;AAAA,QAEF,KAAK,MAAM,MAAM;AACf,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,cAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAGJ,KAAK,oBAAoB;AACvB,iBACE;AAAA,YAAC;AAAA;AAAA,cAEC,MAAM;AAAA,cACN,YAAY,CAAC,MAAM,QAAQ,CAAC;AAAA,cAE3B,qBAAS,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC;AAAA;AAAA,YAJlD,WAAW;AAAA,UAKlB;AAAA,QAGJ;AACE,iBAAO,SAAS,EAAE,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,QAAQ,EAAE,CAAC;AAAA,MAClE;AAAA,IACF;AAAA,IACF;AAAA,EACF,EAAE,CAAC,CAAC;AACN;","names":[]}
@@ -1,8 +1,9 @@
1
+ "use client";
1
2
  import { useEffect, useRef } from "react";
2
3
  import { useSyncExternalStore } from "use-sync-external-store/shim";
3
- import { useMakeswiftClient } from "../../../api/react";
4
+ import { useMakeswiftHostApiClient } from "../../../next/context/makeswift-host-api-client";
4
5
  function useSwatch(swatchId) {
5
- const client = useMakeswiftClient();
6
+ const client = useMakeswiftHostApiClient();
6
7
  const readSwatch = () => swatchId == null ? null : client.readSwatch(swatchId);
7
8
  const swatch = useSyncExternalStore(client.subscribe, readSwatch, readSwatch);
8
9
  useEffect(() => {
@@ -12,7 +13,7 @@ function useSwatch(swatchId) {
12
13
  return swatch;
13
14
  }
14
15
  function useSwatches(swatchIds) {
15
- const client = useMakeswiftClient();
16
+ const client = useMakeswiftHostApiClient();
16
17
  const lastSnapshot = useRef();
17
18
  function getSnapshot() {
18
19
  const swatches2 = swatchIds.map((swatchId) => client.readSwatch(swatchId));
@@ -28,7 +29,7 @@ function useSwatches(swatchIds) {
28
29
  return swatches;
29
30
  }
30
31
  function useFile(fileId) {
31
- const client = useMakeswiftClient();
32
+ const client = useMakeswiftHostApiClient();
32
33
  const readFile = () => fileId == null ? null : client.readFile(fileId);
33
34
  const file = useSyncExternalStore(client.subscribe, readFile, readFile);
34
35
  useEffect(() => {
@@ -38,7 +39,7 @@ function useFile(fileId) {
38
39
  return file;
39
40
  }
40
41
  function useFiles(fileIds) {
41
- const client = useMakeswiftClient();
42
+ const client = useMakeswiftHostApiClient();
42
43
  const lastSnapshot = useRef();
43
44
  function getSnapshot() {
44
45
  const files2 = fileIds.map((fileId) => client.readFile(fileId));
@@ -54,7 +55,7 @@ function useFiles(fileIds) {
54
55
  return files;
55
56
  }
56
57
  function useTypography(typographyId) {
57
- const client = useMakeswiftClient();
58
+ const client = useMakeswiftHostApiClient();
58
59
  const readTypography = () => typographyId == null ? null : client.readTypography(typographyId);
59
60
  const typography = useSyncExternalStore(client.subscribe, readTypography, readTypography);
60
61
  useEffect(() => {
@@ -64,7 +65,7 @@ function useTypography(typographyId) {
64
65
  return typography;
65
66
  }
66
67
  function useGlobalElement(globalElementId) {
67
- const client = useMakeswiftClient();
68
+ const client = useMakeswiftHostApiClient();
68
69
  const readGlobalElement = () => globalElementId == null ? null : client.readGlobalElement(globalElementId);
69
70
  const globalElement = useSyncExternalStore(client.subscribe, readGlobalElement, readGlobalElement);
70
71
  useEffect(() => {
@@ -74,7 +75,7 @@ function useGlobalElement(globalElementId) {
74
75
  return globalElement;
75
76
  }
76
77
  function useLocalizedGlobalElement(globalElementId) {
77
- const client = useMakeswiftClient();
78
+ const client = useMakeswiftHostApiClient();
78
79
  const readLocalizedGlobalElement = () => globalElementId == null ? null : client.readLocalizedGlobalElement(globalElementId);
79
80
  const localizedGlobalElement = useSyncExternalStore(
80
81
  client.subscribe,
@@ -89,7 +90,7 @@ function useLocalizedGlobalElement(globalElementId) {
89
90
  return localizedGlobalElement;
90
91
  }
91
92
  function usePagePathnameSlice(pageId) {
92
- const client = useMakeswiftClient();
93
+ const client = useMakeswiftHostApiClient();
93
94
  const readPagePathnameSlice = () => pageId == null ? null : client.readPagePathnameSlice(pageId);
94
95
  const pagePathnameSlice = useSyncExternalStore(
95
96
  client.subscribe,
@@ -103,7 +104,7 @@ function usePagePathnameSlice(pageId) {
103
104
  return pagePathnameSlice;
104
105
  }
105
106
  function useTable(tableId) {
106
- const client = useMakeswiftClient();
107
+ const client = useMakeswiftHostApiClient();
107
108
  const readTable = () => tableId == null ? null : client.readTable(tableId);
108
109
  const table = useSyncExternalStore(client.subscribe, readTable, readTable);
109
110
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/makeswift-api.ts"],"sourcesContent":["import { useEffect, useRef } from 'react'\nimport { useSyncExternalStore } from 'use-sync-external-store/shim'\nimport {\n File,\n GlobalElement,\n LocalizedGlobalElement,\n PagePathnameSlice,\n Swatch,\n Table,\n Typography,\n} from '../../../api'\nimport { useMakeswiftClient } from '../../../api/react'\n\nexport function useSwatch(swatchId: string | null): Swatch | null {\n const client = useMakeswiftClient()\n const readSwatch = () => (swatchId == null ? null : client.readSwatch(swatchId))\n const swatch = useSyncExternalStore(client.subscribe, readSwatch, readSwatch)\n\n useEffect(() => {\n if (swatchId != null) client.fetchSwatch(swatchId).catch(console.error)\n }, [client, swatchId])\n\n return swatch\n}\n\nexport function useSwatches(swatchIds: string[]): (Swatch | null)[] {\n const client = useMakeswiftClient()\n const lastSnapshot = useRef<(Swatch | null)[]>()\n\n function getSnapshot() {\n const swatches = swatchIds.map(swatchId => client.readSwatch(swatchId))\n\n if (\n lastSnapshot.current != null &&\n lastSnapshot.current.length === swatches.length &&\n lastSnapshot.current.every((swatch, idx) => swatches[idx] === swatch)\n ) {\n return lastSnapshot.current\n }\n\n return (lastSnapshot.current = swatches)\n }\n\n const swatches = useSyncExternalStore(client.subscribe, getSnapshot, getSnapshot)\n\n useEffect(() => {\n Promise.all(swatchIds.map(swatchId => client.fetchSwatch(swatchId))).catch(console.error)\n }, [client, swatchIds])\n\n return swatches\n}\n\nexport function useFile(fileId: string | null): File | null {\n const client = useMakeswiftClient()\n const readFile = () => (fileId == null ? null : client.readFile(fileId))\n const file = useSyncExternalStore(client.subscribe, readFile, readFile)\n\n useEffect(() => {\n if (fileId != null) client.fetchFile(fileId)\n }, [client, fileId])\n\n return file\n}\n\nexport function useFiles(fileIds: string[]): (File | null)[] {\n const client = useMakeswiftClient()\n const lastSnapshot = useRef<(File | null)[]>()\n\n function getSnapshot() {\n const files = fileIds.map(fileId => client.readFile(fileId))\n\n if (\n lastSnapshot.current != null &&\n lastSnapshot.current.length === files.length &&\n lastSnapshot.current.every((file, idx) => files[idx] === file)\n ) {\n return lastSnapshot.current\n }\n\n return (lastSnapshot.current = files)\n }\n\n const files = useSyncExternalStore(client.subscribe, getSnapshot, getSnapshot)\n\n useEffect(() => {\n Promise.all(fileIds.map(fileId => client.fetchFile(fileId))).catch(console.error)\n }, [client, fileIds])\n\n return files\n}\n\nexport function useTypography(typographyId: string | null): Typography | null {\n const client = useMakeswiftClient()\n const readTypography = () => (typographyId == null ? null : client.readTypography(typographyId))\n const typography = useSyncExternalStore(client.subscribe, readTypography, readTypography)\n\n useEffect(() => {\n if (typographyId != null) client.fetchTypography(typographyId).catch(console.error)\n }, [client, typographyId])\n\n return typography\n}\n\nexport function useGlobalElement(globalElementId: string | null): GlobalElement | null {\n const client = useMakeswiftClient()\n const readGlobalElement = () =>\n globalElementId == null ? null : client.readGlobalElement(globalElementId)\n const globalElement = useSyncExternalStore(client.subscribe, readGlobalElement, readGlobalElement)\n\n useEffect(() => {\n if (globalElementId != null) client.fetchGlobalElement(globalElementId).catch(console.error)\n }, [client, globalElementId])\n\n return globalElement\n}\n\nexport function useLocalizedGlobalElement(\n globalElementId: string | null,\n): LocalizedGlobalElement | null {\n const client = useMakeswiftClient()\n const readLocalizedGlobalElement = () =>\n globalElementId == null ? null : client.readLocalizedGlobalElement(globalElementId)\n const localizedGlobalElement = useSyncExternalStore(\n client.subscribe,\n readLocalizedGlobalElement,\n readLocalizedGlobalElement,\n )\n\n useEffect(() => {\n if (globalElementId != null) {\n client.fetchLocalizedGlobalElement(globalElementId).catch(console.error)\n }\n }, [client, globalElementId])\n\n return localizedGlobalElement\n}\n\nexport function usePagePathnameSlice(pageId: string | null): PagePathnameSlice | null {\n const client = useMakeswiftClient()\n const readPagePathnameSlice = () => (pageId == null ? null : client.readPagePathnameSlice(pageId))\n const pagePathnameSlice = useSyncExternalStore(\n client.subscribe,\n readPagePathnameSlice,\n readPagePathnameSlice,\n )\n\n useEffect(() => {\n if (pageId != null) client.fetchPagePathnameSlice(pageId).catch(console.error)\n }, [client, pageId])\n\n return pagePathnameSlice\n}\n\nexport function useTable(tableId: string | null): Table | null {\n const client = useMakeswiftClient()\n const readTable = () => (tableId == null ? null : client.readTable(tableId))\n const table = useSyncExternalStore(client.subscribe, readTable, readTable)\n\n useEffect(() => {\n if (tableId != null) client.fetchTable(tableId).catch(console.error)\n }, [client, tableId])\n\n return table\n}\n"],"mappings":"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","names":["swatches","files"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/makeswift-api.ts"],"sourcesContent":["'use client'\n\nimport { useEffect, useRef } from 'react'\nimport { useSyncExternalStore } from 'use-sync-external-store/shim'\nimport {\n File,\n GlobalElement,\n LocalizedGlobalElement,\n Swatch,\n Table,\n Typography,\n} from '../../../api'\nimport { PagePathnameSlice } from '../../../api/resource-types'\nimport { useMakeswiftHostApiClient } from '../../../next/context/makeswift-host-api-client'\n\nexport function useSwatch(swatchId: string | null): Swatch | null {\n const client = useMakeswiftHostApiClient()\n const readSwatch = () => (swatchId == null ? null : client.readSwatch(swatchId))\n const swatch = useSyncExternalStore(client.subscribe, readSwatch, readSwatch)\n\n useEffect(() => {\n if (swatchId != null) client.fetchSwatch(swatchId).catch(console.error)\n }, [client, swatchId])\n\n return swatch\n}\n\nexport function useSwatches(swatchIds: string[]): (Swatch | null)[] {\n const client = useMakeswiftHostApiClient()\n const lastSnapshot = useRef<(Swatch | null)[]>()\n\n function getSnapshot() {\n const swatches = swatchIds.map(swatchId => client.readSwatch(swatchId))\n\n if (\n lastSnapshot.current != null &&\n lastSnapshot.current.length === swatches.length &&\n lastSnapshot.current.every((swatch, idx) => swatches[idx] === swatch)\n ) {\n return lastSnapshot.current\n }\n\n return (lastSnapshot.current = swatches)\n }\n\n const swatches = useSyncExternalStore(client.subscribe, getSnapshot, getSnapshot)\n\n useEffect(() => {\n Promise.all(swatchIds.map(swatchId => client.fetchSwatch(swatchId))).catch(console.error)\n }, [client, swatchIds])\n\n return swatches\n}\n\nexport function useFile(fileId: string | null): File | null {\n const client = useMakeswiftHostApiClient()\n const readFile = () => (fileId == null ? null : client.readFile(fileId))\n const file = useSyncExternalStore(client.subscribe, readFile, readFile)\n\n useEffect(() => {\n if (fileId != null) client.fetchFile(fileId)\n }, [client, fileId])\n\n return file\n}\n\nexport function useFiles(fileIds: string[]): (File | null)[] {\n const client = useMakeswiftHostApiClient()\n const lastSnapshot = useRef<(File | null)[]>()\n\n function getSnapshot() {\n const files = fileIds.map(fileId => client.readFile(fileId))\n\n if (\n lastSnapshot.current != null &&\n lastSnapshot.current.length === files.length &&\n lastSnapshot.current.every((file, idx) => files[idx] === file)\n ) {\n return lastSnapshot.current\n }\n\n return (lastSnapshot.current = files)\n }\n\n const files = useSyncExternalStore(client.subscribe, getSnapshot, getSnapshot)\n\n useEffect(() => {\n Promise.all(fileIds.map(fileId => client.fetchFile(fileId))).catch(console.error)\n }, [client, fileIds])\n\n return files\n}\n\nexport function useTypography(typographyId: string | null): Typography | null {\n const client = useMakeswiftHostApiClient()\n const readTypography = () => (typographyId == null ? null : client.readTypography(typographyId))\n const typography = useSyncExternalStore(client.subscribe, readTypography, readTypography)\n\n useEffect(() => {\n if (typographyId != null) client.fetchTypography(typographyId).catch(console.error)\n }, [client, typographyId])\n\n return typography\n}\n\nexport function useGlobalElement(globalElementId: string | null): GlobalElement | null {\n const client = useMakeswiftHostApiClient()\n const readGlobalElement = () =>\n globalElementId == null ? null : client.readGlobalElement(globalElementId)\n const globalElement = useSyncExternalStore(client.subscribe, readGlobalElement, readGlobalElement)\n\n useEffect(() => {\n if (globalElementId != null) client.fetchGlobalElement(globalElementId).catch(console.error)\n }, [client, globalElementId])\n\n return globalElement\n}\n\nexport function useLocalizedGlobalElement(\n globalElementId: string | null,\n): LocalizedGlobalElement | null {\n const client = useMakeswiftHostApiClient()\n const readLocalizedGlobalElement = () =>\n globalElementId == null ? null : client.readLocalizedGlobalElement(globalElementId)\n const localizedGlobalElement = useSyncExternalStore(\n client.subscribe,\n readLocalizedGlobalElement,\n readLocalizedGlobalElement,\n )\n\n useEffect(() => {\n if (globalElementId != null) {\n client.fetchLocalizedGlobalElement(globalElementId).catch(console.error)\n }\n }, [client, globalElementId])\n\n return localizedGlobalElement\n}\n\nexport function usePagePathnameSlice(pageId: string | null): PagePathnameSlice | null {\n const client = useMakeswiftHostApiClient()\n const readPagePathnameSlice = () => (pageId == null ? null : client.readPagePathnameSlice(pageId))\n const pagePathnameSlice = useSyncExternalStore(\n client.subscribe,\n readPagePathnameSlice,\n readPagePathnameSlice,\n )\n\n useEffect(() => {\n if (pageId != null) client.fetchPagePathnameSlice(pageId).catch(console.error)\n }, [client, pageId])\n\n return pagePathnameSlice\n}\n\nexport function useTable(tableId: string | null): Table | null {\n const client = useMakeswiftHostApiClient()\n const readTable = () => (tableId == null ? null : client.readTable(tableId))\n const table = useSyncExternalStore(client.subscribe, readTable, readTable)\n\n useEffect(() => {\n if (tableId != null) client.fetchTable(tableId).catch(console.error)\n }, [client, tableId])\n\n return table\n}\n"],"mappings":"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","names":["swatches","files"]}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { createContext, useContext } from "react";
2
3
  const DocumentContext = createContext(null);
3
4
  function useDocumentKey() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-document-key.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\n\nexport const DocumentContext = createContext<string | null>(null)\n\nexport function useDocumentKey(): string | null {\n return useContext(DocumentContext)\n}\n"],"mappings":"AAAA,SAAS,eAAe,kBAAkB;AAEnC,MAAM,kBAAkB,cAA6B,IAAI;AAEzD,SAAS,iBAAgC;AAC9C,SAAO,WAAW,eAAe;AACnC;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-document-key.ts"],"sourcesContent":["'use client'\n\nimport { createContext, useContext } from 'react'\n\nexport const DocumentContext = createContext<string | null>(null)\n\nexport function useDocumentKey(): string | null {\n return useContext(DocumentContext)\n}\n"],"mappings":";AAEA,SAAS,eAAe,kBAAkB;AAEnC,MAAM,kBAAkB,cAA6B,IAAI;AAEzD,SAAS,iBAAgC;AAC9C,SAAO,WAAW,eAAe;AACnC;","names":[]}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { createContext, useContext } from "react";
2
3
  const PageContext = createContext(null);
3
4
  function usePageIdOrNull() {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-page-id.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\n\nexport const PageContext = createContext<string | null>(null)\n\nfunction usePageIdOrNull(): string | null {\n return useContext(PageContext)\n}\n\nexport function usePageId(): string {\n const pageIdOrNull = usePageIdOrNull()\n\n if (pageIdOrNull == null) throw new Error('`usePageId` must be used with `<PageProvider>`')\n\n return pageIdOrNull\n}\n"],"mappings":"AAAA,SAAS,eAAe,kBAAkB;AAEnC,MAAM,cAAc,cAA6B,IAAI;AAE5D,SAAS,kBAAiC;AACxC,SAAO,WAAW,WAAW;AAC/B;AAEO,SAAS,YAAoB;AAClC,QAAM,eAAe,gBAAgB;AAErC,MAAI,gBAAgB;AAAM,UAAM,IAAI,MAAM,gDAAgD;AAE1F,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-page-id.ts"],"sourcesContent":["'use client'\n\nimport { createContext, useContext } from 'react'\n\nexport const PageContext = createContext<string | null>(null)\n\nfunction usePageIdOrNull(): string | null {\n return useContext(PageContext)\n}\n\nexport function usePageId(): string {\n const pageIdOrNull = usePageIdOrNull()\n\n if (pageIdOrNull == null) throw new Error('`usePageId` must be used with `<PageProvider>`')\n\n return pageIdOrNull\n}\n"],"mappings":";AAEA,SAAS,eAAe,kBAAkB;AAEnC,MAAM,cAAc,cAA6B,IAAI;AAE5D,SAAS,kBAAiC;AACxC,SAAO,WAAW,WAAW;AAC/B;AAEO,SAAS,YAAoB;AAClC,QAAM,eAAe,gBAAgB;AAErC,MAAI,gBAAgB;AAAM,UAAM,IAAI,MAAM,gDAAgD;AAE1F,SAAO;AACT;","names":[]}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { createContext, useContext } from "react";
2
3
  import { ReactRuntime } from "../react-runtime";
3
4
  const StoreContext = createContext(ReactRuntime.store);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-store.ts"],"sourcesContent":["import { createContext, useContext } from 'react'\nimport { ReactRuntime } from '../react-runtime'\nimport { Store } from '../../../state/react-page'\n\nexport const StoreContext = createContext(ReactRuntime.store)\n\nexport function useStore(): Store {\n return useContext(StoreContext)\n}\n"],"mappings":"AAAA,SAAS,eAAe,kBAAkB;AAC1C,SAAS,oBAAoB;AAGtB,MAAM,eAAe,cAAc,aAAa,KAAK;AAErD,SAAS,WAAkB;AAChC,SAAO,WAAW,YAAY;AAChC;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-store.ts"],"sourcesContent":["'use client'\n\nimport { createContext, useContext } from 'react'\nimport { ReactRuntime } from '../react-runtime'\nimport { Store } from '../../../state/react-page'\n\nexport const StoreContext = createContext(ReactRuntime.store)\n\nexport function useStore(): Store {\n return useContext(StoreContext)\n}\n"],"mappings":";AAEA,SAAS,eAAe,kBAAkB;AAC1C,SAAS,oBAAoB;AAGtB,MAAM,eAAe,cAAc,aAAa,KAAK;AAErD,SAAS,WAAkB;AAChC,SAAO,WAAW,YAAY;AAChC;","names":[]}
@@ -1,15 +1,20 @@
1
+ "use client";
1
2
  import * as React from "react";
2
3
  import { useRef } from "react";
3
- import { cache, injectGlobal } from "@emotion/css";
4
4
  import { serializeStyles } from "@emotion/serialize";
5
5
  import { insertStyles } from "@emotion/utils";
6
+ import { useCache } from "../../next/root-style-registry";
6
7
  const isServer = typeof window === "undefined";
7
8
  const useInsertionEffectSpecifier = "useInsertionEffect";
8
9
  const useInsertionEffect = React[useInsertionEffectSpecifier] ?? React.useLayoutEffect;
9
10
  function useGlobalStyle(...args) {
10
- if (isServer)
11
- return injectGlobal(args);
11
+ const cache = useCache();
12
12
  const serialized = serializeStyles(args, cache.registered);
13
+ if (isServer) {
14
+ if (cache.inserted[serialized.name] === void 0) {
15
+ cache.insert("", serialized, cache.sheet, true);
16
+ }
17
+ }
13
18
  const sheetRef = useRef();
14
19
  useInsertionEffect(() => {
15
20
  const key = `${cache.key}-global`;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/use-global-style.ts"],"sourcesContent":["import * as React from 'react'\nimport { useRef } from 'react'\nimport { cache, injectGlobal } from '@emotion/css'\nimport { CSSInterpolation, serializeStyles } from '@emotion/serialize'\nimport { StyleSheet } from '@emotion/sheet'\nimport { insertStyles } from '@emotion/utils'\n\nconst isServer = typeof window === 'undefined'\nconst useInsertionEffectSpecifier = 'useInsertionEffect'\nconst useInsertionEffect = React[useInsertionEffectSpecifier] ?? React.useLayoutEffect\n\nexport function useGlobalStyle(...args: CSSInterpolation[]): void {\n if (isServer) return injectGlobal(args)\n\n const serialized = serializeStyles(args, cache.registered)\n const sheetRef = useRef<[StyleSheet, boolean]>()\n\n // Hydration\n useInsertionEffect(() => {\n const key = `${cache.key}-global`\n\n const cacheSheet = cache.sheet as StyleSheet\n const sheet = new (cacheSheet.constructor as typeof StyleSheet)({\n key,\n nonce: cacheSheet.nonce,\n container: cacheSheet.container,\n speedy: cacheSheet.isSpeedy,\n })\n\n const node = document.querySelector<HTMLStyleElement>(\n `style[data-emotion=\"${key} ${serialized.name}\"]`,\n )\n\n if (cache.sheet.tags.length > 0) {\n sheet.before = cache.sheet.tags[0]\n }\n\n let rehydrating = false\n\n if (node != null) {\n rehydrating = true\n node.setAttribute('data-emotion', key)\n sheet.hydrate([node])\n }\n\n sheetRef.current = [sheet, rehydrating]\n\n return () => {\n sheet.flush()\n }\n })\n\n // Insertion\n useInsertionEffect(() => {\n const [sheet, rehydrating] = sheetRef.current ?? []\n\n if (sheet == null || rehydrating == null) return\n\n if (rehydrating) {\n sheetRef.current = [sheet, false]\n\n return\n }\n\n if (serialized.next != null) {\n insertStyles(cache, serialized.next, true)\n }\n\n if (sheet.tags.length > 0) {\n const element = sheet.tags[sheet.tags.length - 1].nextElementSibling\n\n sheet.before = element\n\n sheet.flush()\n }\n\n cache.insert('', serialized, sheet, false)\n })\n}\n"],"mappings":"AAAA,YAAY,WAAW;AACvB,SAAS,cAAc;AACvB,SAAS,OAAO,oBAAoB;AACpC,SAA2B,uBAAuB;AAElD,SAAS,oBAAoB;AAE7B,MAAM,WAAW,OAAO,WAAW;AACnC,MAAM,8BAA8B;AACpC,MAAM,qBAAqB,MAAM,2BAA2B,KAAK,MAAM;AAEhE,SAAS,kBAAkB,MAAgC;AAChE,MAAI;AAAU,WAAO,aAAa,IAAI;AAEtC,QAAM,aAAa,gBAAgB,MAAM,MAAM,UAAU;AACzD,QAAM,WAAW,OAA8B;AAG/C,qBAAmB,MAAM;AACvB,UAAM,MAAM,GAAG,MAAM,GAAG;AAExB,UAAM,aAAa,MAAM;AACzB,UAAM,QAAQ,IAAK,WAAW,YAAkC;AAAA,MAC9D;AAAA,MACA,OAAO,WAAW;AAAA,MAClB,WAAW,WAAW;AAAA,MACtB,QAAQ,WAAW;AAAA,IACrB,CAAC;AAED,UAAM,OAAO,SAAS;AAAA,MACpB,uBAAuB,GAAG,IAAI,WAAW,IAAI;AAAA,IAC/C;AAEA,QAAI,MAAM,MAAM,KAAK,SAAS,GAAG;AAC/B,YAAM,SAAS,MAAM,MAAM,KAAK,CAAC;AAAA,IACnC;AAEA,QAAI,cAAc;AAElB,QAAI,QAAQ,MAAM;AAChB,oBAAc;AACd,WAAK,aAAa,gBAAgB,GAAG;AACrC,YAAM,QAAQ,CAAC,IAAI,CAAC;AAAA,IACtB;AAEA,aAAS,UAAU,CAAC,OAAO,WAAW;AAEtC,WAAO,MAAM;AACX,YAAM,MAAM;AAAA,IACd;AAAA,EACF,CAAC;AAGD,qBAAmB,MAAM;AACvB,UAAM,CAAC,OAAO,WAAW,IAAI,SAAS,WAAW,CAAC;AAElD,QAAI,SAAS,QAAQ,eAAe;AAAM;AAE1C,QAAI,aAAa;AACf,eAAS,UAAU,CAAC,OAAO,KAAK;AAEhC;AAAA,IACF;AAEA,QAAI,WAAW,QAAQ,MAAM;AAC3B,mBAAa,OAAO,WAAW,MAAM,IAAI;AAAA,IAC3C;AAEA,QAAI,MAAM,KAAK,SAAS,GAAG;AACzB,YAAM,UAAU,MAAM,KAAK,MAAM,KAAK,SAAS,CAAC,EAAE;AAElD,YAAM,SAAS;AAEf,YAAM,MAAM;AAAA,IACd;AAEA,UAAM,OAAO,IAAI,YAAY,OAAO,KAAK;AAAA,EAC3C,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/use-global-style.ts"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\nimport { useRef } from 'react'\nimport { CSSInterpolation, serializeStyles } from '@emotion/serialize'\nimport { StyleSheet } from '@emotion/sheet'\nimport { insertStyles } from '@emotion/utils'\nimport { useCache } from '../../next/root-style-registry'\n\nconst isServer = typeof window === 'undefined'\nconst useInsertionEffectSpecifier = 'useInsertionEffect'\nconst useInsertionEffect = React[useInsertionEffectSpecifier] ?? React.useLayoutEffect\n\nexport function useGlobalStyle(...args: CSSInterpolation[]): void {\n const cache = useCache()\n const serialized = serializeStyles(args, cache.registered)\n\n if (isServer) {\n if (cache.inserted[serialized.name] === undefined) {\n cache.insert('', serialized, cache.sheet, true)\n }\n }\n\n const sheetRef = useRef<[StyleSheet, boolean]>()\n\n // Hydration\n useInsertionEffect(() => {\n const key = `${cache.key}-global`\n\n const cacheSheet = cache.sheet as StyleSheet\n const sheet = new (cacheSheet.constructor as typeof StyleSheet)({\n key,\n nonce: cacheSheet.nonce,\n container: cacheSheet.container,\n speedy: cacheSheet.isSpeedy,\n })\n\n const node = document.querySelector<HTMLStyleElement>(\n `style[data-emotion=\"${key} ${serialized.name}\"]`,\n )\n\n if (cache.sheet.tags.length > 0) {\n sheet.before = cache.sheet.tags[0]\n }\n\n let rehydrating = false\n\n if (node != null) {\n rehydrating = true\n node.setAttribute('data-emotion', key)\n sheet.hydrate([node])\n }\n\n sheetRef.current = [sheet, rehydrating]\n\n return () => {\n sheet.flush()\n }\n })\n\n // Insertion\n useInsertionEffect(() => {\n const [sheet, rehydrating] = sheetRef.current ?? []\n\n if (sheet == null || rehydrating == null) return\n\n if (rehydrating) {\n sheetRef.current = [sheet, false]\n\n return\n }\n\n if (serialized.next != null) {\n insertStyles(cache, serialized.next, true)\n }\n\n if (sheet.tags.length > 0) {\n const element = sheet.tags[sheet.tags.length - 1].nextElementSibling\n\n sheet.before = element\n\n sheet.flush()\n }\n\n cache.insert('', serialized, sheet, false)\n })\n}\n"],"mappings":";AAEA,YAAY,WAAW;AACvB,SAAS,cAAc;AACvB,SAA2B,uBAAuB;AAElD,SAAS,oBAAoB;AAC7B,SAAS,gBAAgB;AAEzB,MAAM,WAAW,OAAO,WAAW;AACnC,MAAM,8BAA8B;AACpC,MAAM,qBAAqB,MAAM,2BAA2B,KAAK,MAAM;AAEhE,SAAS,kBAAkB,MAAgC;AAChE,QAAM,QAAQ,SAAS;AACvB,QAAM,aAAa,gBAAgB,MAAM,MAAM,UAAU;AAEzD,MAAI,UAAU;AACZ,QAAI,MAAM,SAAS,WAAW,IAAI,MAAM,QAAW;AACjD,YAAM,OAAO,IAAI,YAAY,MAAM,OAAO,IAAI;AAAA,IAChD;AAAA,EACF;AAEA,QAAM,WAAW,OAA8B;AAG/C,qBAAmB,MAAM;AACvB,UAAM,MAAM,GAAG,MAAM,GAAG;AAExB,UAAM,aAAa,MAAM;AACzB,UAAM,QAAQ,IAAK,WAAW,YAAkC;AAAA,MAC9D;AAAA,MACA,OAAO,WAAW;AAAA,MAClB,WAAW,WAAW;AAAA,MACtB,QAAQ,WAAW;AAAA,IACrB,CAAC;AAED,UAAM,OAAO,SAAS;AAAA,MACpB,uBAAuB,GAAG,IAAI,WAAW,IAAI;AAAA,IAC/C;AAEA,QAAI,MAAM,MAAM,KAAK,SAAS,GAAG;AAC/B,YAAM,SAAS,MAAM,MAAM,KAAK,CAAC;AAAA,IACnC;AAEA,QAAI,cAAc;AAElB,QAAI,QAAQ,MAAM;AAChB,oBAAc;AACd,WAAK,aAAa,gBAAgB,GAAG;AACrC,YAAM,QAAQ,CAAC,IAAI,CAAC;AAAA,IACtB;AAEA,aAAS,UAAU,CAAC,OAAO,WAAW;AAEtC,WAAO,MAAM;AACX,YAAM,MAAM;AAAA,IACd;AAAA,EACF,CAAC;AAGD,qBAAmB,MAAM;AACvB,UAAM,CAAC,OAAO,WAAW,IAAI,SAAS,WAAW,CAAC;AAElD,QAAI,SAAS,QAAQ,eAAe;AAAM;AAE1C,QAAI,aAAa;AACf,eAAS,UAAU,CAAC,OAAO,KAAK;AAEhC;AAAA,IACF;AAEA,QAAI,WAAW,QAAQ,MAAM;AAC3B,mBAAa,OAAO,WAAW,MAAM,IAAI;AAAA,IAC3C;AAEA,QAAI,MAAM,KAAK,SAAS,GAAG;AACzB,YAAM,UAAU,MAAM,KAAK,MAAM,KAAK,SAAS,CAAC,EAAE;AAElD,YAAM,SAAS;AAEf,YAAM,MAAM;AAAA,IACd;AAEA,UAAM,OAAO,IAAI,YAAY,OAAO,KAAK;AAAA,EAC3C,CAAC;AACH;","names":[]}
@@ -1,11 +1,12 @@
1
1
  import React from "react";
2
- import { cache } from "@emotion/css";
3
2
  import { serializeStyles } from "@emotion/serialize";
4
3
  import { registerStyles, insertStyles } from "@emotion/utils";
4
+ import { useCache } from "../../next/root-style-registry";
5
5
  const isServer = typeof window === "undefined";
6
6
  const useInsertionEffectSpecifier = "useInsertionEffect";
7
7
  const useInsertionEffect = React[useInsertionEffectSpecifier] ?? React.useLayoutEffect;
8
8
  function useStyle(style) {
9
+ const cache = useCache();
9
10
  const serialized = serializeStyles([style], cache.registered);
10
11
  registerStyles(cache, serialized, false);
11
12
  useInsertionEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/runtimes/react/use-style.ts"],"sourcesContent":["import React from 'react'\nimport { cache, CSSObject } from '@emotion/css'\nimport { serializeStyles } from '@emotion/serialize'\nimport { registerStyles, insertStyles } from '@emotion/utils'\n\nconst isServer = typeof window === 'undefined'\nconst useInsertionEffectSpecifier = 'useInsertionEffect'\nconst useInsertionEffect = React[useInsertionEffectSpecifier] ?? React.useLayoutEffect\n\nexport function useStyle(style: CSSObject): string {\n const serialized = serializeStyles([style], cache.registered)\n\n registerStyles(cache, serialized, false)\n\n useInsertionEffect(() => {\n insertStyles(cache, serialized, false)\n })\n\n if (isServer) insertStyles(cache, serialized, false)\n\n return `${cache.key}-${serialized.name}`\n}\n"],"mappings":"AAAA,OAAO,WAAW;AAClB,SAAS,aAAwB;AACjC,SAAS,uBAAuB;AAChC,SAAS,gBAAgB,oBAAoB;AAE7C,MAAM,WAAW,OAAO,WAAW;AACnC,MAAM,8BAA8B;AACpC,MAAM,qBAAqB,MAAM,2BAA2B,KAAK,MAAM;AAEhE,SAAS,SAAS,OAA0B;AACjD,QAAM,aAAa,gBAAgB,CAAC,KAAK,GAAG,MAAM,UAAU;AAE5D,iBAAe,OAAO,YAAY,KAAK;AAEvC,qBAAmB,MAAM;AACvB,iBAAa,OAAO,YAAY,KAAK;AAAA,EACvC,CAAC;AAED,MAAI;AAAU,iBAAa,OAAO,YAAY,KAAK;AAEnD,SAAO,GAAG,MAAM,GAAG,IAAI,WAAW,IAAI;AACxC;","names":[]}
1
+ {"version":3,"sources":["../../../../src/runtimes/react/use-style.ts"],"sourcesContent":["import React from 'react'\nimport { CSSObject } from '@emotion/css'\nimport { serializeStyles } from '@emotion/serialize'\nimport { registerStyles, insertStyles } from '@emotion/utils'\nimport { useCache } from '../../next/root-style-registry'\n\nconst isServer = typeof window === 'undefined'\nconst useInsertionEffectSpecifier = 'useInsertionEffect'\nconst useInsertionEffect = React[useInsertionEffectSpecifier] ?? React.useLayoutEffect\n\nexport function useStyle(style: CSSObject): string {\n const cache = useCache()\n const serialized = serializeStyles([style], cache.registered)\n\n registerStyles(cache, serialized, false)\n\n useInsertionEffect(() => {\n insertStyles(cache, serialized, false)\n })\n\n if (isServer) insertStyles(cache, serialized, false)\n\n return `${cache.key}-${serialized.name}`\n}\n"],"mappings":"AAAA,OAAO,WAAW;AAElB,SAAS,uBAAuB;AAChC,SAAS,gBAAgB,oBAAoB;AAC7C,SAAS,gBAAgB;AAEzB,MAAM,WAAW,OAAO,WAAW;AACnC,MAAM,8BAA8B;AACpC,MAAM,qBAAqB,MAAM,2BAA2B,KAAK,MAAM;AAEhE,SAAS,SAAS,OAA0B;AACjD,QAAM,QAAQ,SAAS;AACvB,QAAM,aAAa,gBAAgB,CAAC,KAAK,GAAG,MAAM,UAAU;AAE5D,iBAAe,OAAO,YAAY,KAAK;AAEvC,qBAAmB,MAAM;AACvB,iBAAa,OAAO,YAAY,KAAK;AAAA,EACvC,CAAC;AAED,MAAI;AAAU,iBAAa,OAAO,YAAY,KAAK;AAEnD,SAAO,GAAG,MAAM,GAAG,IAAI,WAAW,IAAI;AACxC;","names":[]}
@@ -36,9 +36,6 @@ const ActionTypes = {
36
36
  SET_BUILDER_EDIT_MODE: "SET_BUILDER_EDIT_MODE",
37
37
  MAKESWIFT_CONNECTION_INIT: "MAKESWIFT_CONNECTION_INIT",
38
38
  MAKESWIFT_CONNECTION_CHECK: "MAKESWIFT_CONNECTION_CHECK",
39
- CHANGE_PATHNAME: "CHANGE_PATHNAME",
40
- CHANGE_PATHNAME_START: "CHANGE_PATHNAME_START",
41
- CHANGE_PATHNAME_COMPLETE: "CHANGE_PATHNAME_COMPLETE",
42
39
  BUILDER_POINTER_MOVE: "BUILDER_POINTER_MOVE",
43
40
  ELEMENT_FROM_POINT_CHANGE: "ELEMENT_FROM_POINT_CHANGE",
44
41
  SET_BREAKPOINTS: "SET_BREAKPOINTS",
@@ -225,22 +222,6 @@ function setBuilderEditMode(editMode) {
225
222
  payload: { editMode }
226
223
  };
227
224
  }
228
- function changePathname(pathname) {
229
- return {
230
- type: ActionTypes.CHANGE_PATHNAME,
231
- payload: { pathname }
232
- };
233
- }
234
- function changePathnameStart() {
235
- return {
236
- type: ActionTypes.CHANGE_PATHNAME_START
237
- };
238
- }
239
- function changePathnameComplete() {
240
- return {
241
- type: ActionTypes.CHANGE_PATHNAME_COMPLETE
242
- };
243
- }
244
225
  function builderPointerMove(pointer) {
245
226
  return { type: ActionTypes.BUILDER_POINTER_MOVE, payload: { pointer } };
246
227
  }
@@ -274,9 +255,6 @@ export {
274
255
  changeDocumentElementScrollTop,
275
256
  changeDocumentElementSize,
276
257
  changeElementBoxModels,
277
- changePathname,
278
- changePathnameComplete,
279
- changePathnameStart,
280
258
  cleanUp,
281
259
  elementFromPointChange,
282
260
  evictApiResource,