@makeswift/runtime 0.28.6-canary.6 → 0.28.7-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 (286) hide show
  1. package/dist/cjs/api/client.js.map +1 -0
  2. package/dist/cjs/api/fragments.js.map +1 -0
  3. package/dist/cjs/api/graphql/client.js.map +1 -0
  4. package/dist/cjs/api/graphql/documents/index.js.map +1 -0
  5. package/dist/cjs/api/index.js.map +1 -0
  6. package/dist/cjs/api/site-version/index.js.map +1 -0
  7. package/dist/cjs/api-handler/cookies.js.map +1 -0
  8. package/dist/cjs/api-handler/cors.js.map +1 -0
  9. package/dist/cjs/api-handler/handlers/element-tree.js.map +1 -0
  10. package/dist/cjs/api-handler/handlers/fonts.js.map +1 -0
  11. package/dist/cjs/api-handler/handlers/manifest.js +1 -1
  12. package/dist/cjs/api-handler/handlers/webhook/index.js.map +1 -0
  13. package/dist/cjs/api-handler/index.js.map +1 -0
  14. package/dist/cjs/builder/breakpoints/index.js.map +1 -0
  15. package/dist/cjs/builder/core/index.js.map +1 -0
  16. package/dist/cjs/builder/host-api.js.map +1 -0
  17. package/dist/cjs/builder/host-to-builder-actions.js.map +1 -0
  18. package/dist/cjs/builder/index.js.map +1 -0
  19. package/dist/cjs/builder/unstructured-introspection/__fixtures__/index.js.map +1 -0
  20. package/dist/cjs/builder/unstructured-introspection/index.js.map +1 -0
  21. package/dist/cjs/client/index.js +3 -3
  22. package/dist/cjs/client/index.js.map +1 -0
  23. package/dist/cjs/components/builtin/Box/index.js.map +1 -0
  24. package/dist/cjs/components/builtin/Button/index.js.map +1 -0
  25. package/dist/cjs/components/builtin/Carousel/index.js.map +1 -0
  26. package/dist/cjs/components/builtin/Countdown/index.js.map +1 -0
  27. package/dist/cjs/components/builtin/Divider/index.js.map +1 -0
  28. package/dist/cjs/components/builtin/Embed/index.js.map +1 -0
  29. package/dist/cjs/components/builtin/Form/index.js.map +1 -0
  30. package/dist/cjs/components/builtin/Image/Image.js.map +1 -0
  31. package/dist/cjs/components/builtin/Image/index.js.map +1 -0
  32. package/dist/cjs/components/builtin/Navigation/index.js.map +1 -0
  33. package/dist/cjs/components/builtin/Root/index.js.map +1 -0
  34. package/dist/cjs/components/builtin/Slot/index.js.map +1 -0
  35. package/dist/cjs/components/builtin/SocialLinks/index.js.map +1 -0
  36. package/dist/cjs/components/builtin/Text/index.js.map +1 -0
  37. package/dist/cjs/components/builtin/Video/index.js.map +1 -0
  38. package/dist/cjs/components/builtin/constants.js.map +1 -0
  39. package/dist/cjs/components/hooks/index.js.map +1 -0
  40. package/dist/cjs/components/shared/BackgroundsContainer/index.js.map +1 -0
  41. package/dist/cjs/components/shared/ErrorBoundary.js.map +1 -0
  42. package/dist/cjs/components/shared/FallbackComponent/FallbackComponent.js +3 -2
  43. package/dist/cjs/components/shared/FallbackComponent/FallbackComponent.js.map +1 -1
  44. package/dist/cjs/components/shared/FallbackComponent/index.js.map +1 -0
  45. package/dist/cjs/components/shared/GutterContainer/index.js.map +1 -0
  46. package/dist/cjs/components/shared/Link/index.js.map +1 -0
  47. package/dist/cjs/components/shared/grid-item.js.map +1 -0
  48. package/dist/cjs/components/utils/drop-first.js.map +1 -0
  49. package/dist/cjs/controls/control.js.map +1 -0
  50. package/dist/cjs/controls/index.js +4 -0
  51. package/dist/cjs/controls/index.js.map +1 -0
  52. package/dist/cjs/controls/rich-text/index.js.map +1 -0
  53. package/dist/cjs/controls/rich-text-v2/index.js.map +1 -0
  54. package/dist/cjs/controls/serialization/base/index.js +1 -0
  55. package/dist/cjs/controls/serialization/base/index.js.map +1 -0
  56. package/dist/cjs/controls/serialization/index.js.map +1 -0
  57. package/dist/cjs/controls/serialization/message-port/index.js.map +1 -0
  58. package/dist/cjs/controls/style-v2/index.js.map +1 -0
  59. package/dist/cjs/global.d.js.map +1 -0
  60. package/dist/cjs/index.js.map +1 -0
  61. package/dist/cjs/next/api-handler/index.js.map +1 -0
  62. package/dist/cjs/next/client.js.map +1 -0
  63. package/dist/cjs/next/components/framework-provider/app-router/index.js.map +1 -0
  64. package/dist/cjs/next/components/framework-provider/index.js.map +1 -0
  65. package/dist/cjs/next/components/framework-provider/pages-router/index.js.map +1 -0
  66. package/dist/cjs/next/document.js.map +1 -0
  67. package/dist/cjs/next/fetch.js.map +1 -0
  68. package/dist/cjs/next/index.js.map +1 -0
  69. package/dist/cjs/next/middleware/index.js.map +1 -0
  70. package/dist/cjs/next/testing/element-data.js.map +1 -0
  71. package/dist/cjs/next/testing/index.js.map +1 -0
  72. package/dist/cjs/prop-controllers/copy.js.map +1 -0
  73. package/dist/cjs/prop-controllers/deleted.js.map +1 -0
  74. package/dist/cjs/prop-controllers/descriptors.js.map +1 -0
  75. package/dist/cjs/react/builtins/countdown.js.map +1 -0
  76. package/dist/cjs/react/builtins/divider.js.map +1 -0
  77. package/dist/cjs/react/builtins/embed.js.map +1 -0
  78. package/dist/cjs/react/builtins/form.js.map +1 -0
  79. package/dist/cjs/react/builtins/image.js.map +1 -0
  80. package/dist/cjs/react/builtins/index.js.map +1 -0
  81. package/dist/cjs/react/core/index.js.map +1 -0
  82. package/dist/cjs/react/index.js.map +1 -0
  83. package/dist/cjs/runtimes/react/components/index.js.map +1 -0
  84. package/dist/cjs/runtimes/react/components/page/index.js.map +1 -0
  85. package/dist/cjs/runtimes/react/controls/rich-text/components/Element/inline.js.map +1 -0
  86. package/dist/cjs/runtimes/react/controls/rich-text/components/Leaf/leaf.js.map +1 -0
  87. package/dist/cjs/runtimes/react/element-imperative-handle.js.map +1 -0
  88. package/dist/cjs/runtimes/react/find-dom-node.js.map +1 -0
  89. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js +5 -32
  90. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js.map +1 -1
  91. package/dist/cjs/runtimes/react/host-api-client.js.map +1 -0
  92. package/dist/cjs/runtimes/react/index.js.map +1 -0
  93. package/dist/cjs/runtimes/react/legacy-controls.js.map +1 -0
  94. package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js +59 -0
  95. package/dist/cjs/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
  96. package/dist/cjs/slate/BlockPlugin/indent.js.map +1 -0
  97. package/dist/cjs/slate/BlockPlugin/index.js.map +1 -0
  98. package/dist/cjs/slate/BuilderPlugin/index.js.map +1 -0
  99. package/dist/cjs/slate/InlineModePlugin/index.js.map +1 -0
  100. package/dist/cjs/slate/InlinePlugin/getValue.js.map +1 -0
  101. package/dist/cjs/slate/InlinePlugin/index.js.map +1 -0
  102. package/dist/cjs/slate/LinkPlugin/getValue.js.map +1 -0
  103. package/dist/cjs/slate/LinkPlugin/index.js.map +1 -0
  104. package/dist/cjs/slate/LocalChangesPlugin/index.js.map +1 -0
  105. package/dist/cjs/slate/TextAlignPlugin/getValue.js.map +1 -0
  106. package/dist/cjs/slate/TextAlignPlugin/index.js.map +1 -0
  107. package/dist/cjs/slate/TypographyPlugin/getValue.js.map +1 -0
  108. package/dist/cjs/slate/TypographyPlugin/index.js.map +1 -0
  109. package/dist/cjs/slate/index.js.map +1 -0
  110. package/dist/cjs/slate/utils/editor.js.map +1 -0
  111. package/dist/cjs/slate/utils/element.js.map +1 -0
  112. package/dist/cjs/slate/utils/filterForSubtreeRoots.js.map +1 -0
  113. package/dist/cjs/slate/utils/index.js.map +1 -0
  114. package/dist/cjs/state/actions/index.js.map +1 -0
  115. package/dist/cjs/state/actions/internal/index.js.map +1 -0
  116. package/dist/cjs/state/host-api.js.map +1 -0
  117. package/dist/cjs/state/middleware/read-write/builder-api/initialize-connection.js.map +1 -0
  118. package/dist/cjs/state/middleware/read-write/index.js.map +1 -0
  119. package/dist/cjs/state/modules/element-trees.js.map +1 -0
  120. package/dist/cjs/state/modules/is-in-builder.js.map +1 -0
  121. package/dist/cjs/state/modules/is-read-only.js.map +1 -0
  122. package/dist/cjs/testing/fixtures.js.map +1 -0
  123. package/dist/cjs/translations/index.js.map +1 -0
  124. package/dist/cjs/unstable-framework-support/index.js.map +1 -0
  125. package/dist/cjs/utils/deepEqual.js.map +1 -0
  126. package/dist/cjs/utils/deferred.js.map +1 -0
  127. package/dist/cjs/utils/deterministic-uuid.js.map +1 -0
  128. package/dist/cjs/utils/esm-compat.js.map +1 -0
  129. package/dist/cjs/utils/is-server.js.map +1 -0
  130. package/dist/cjs/utils/isNonNullable.js.map +1 -0
  131. package/dist/esm/api/graphql/documents/queries.js.map +1 -0
  132. package/dist/esm/api/graphql/generated/types.js.map +1 -0
  133. package/dist/esm/api-handler/handlers/manifest.js +1 -1
  134. package/dist/esm/api-handler/handlers/webhook/site-published.js.map +1 -0
  135. package/dist/esm/api-handler/handlers/webhook/types.js.map +1 -0
  136. package/dist/esm/client/index.js +3 -3
  137. package/dist/esm/components/builtin/Box/register.js.map +1 -0
  138. package/dist/esm/components/builtin/Button/register.js.map +1 -0
  139. package/dist/esm/components/builtin/Carousel/register.js.map +1 -0
  140. package/dist/esm/components/builtin/Countdown/register.js.map +1 -0
  141. package/dist/esm/components/builtin/Divider/register.js.map +1 -0
  142. package/dist/esm/components/builtin/Embed/register.js.map +1 -0
  143. package/dist/esm/components/builtin/Form/components/Field/services/responsiveField.js.map +1 -0
  144. package/dist/esm/components/builtin/Form/register.js.map +1 -0
  145. package/dist/esm/components/builtin/Form/types.js.map +1 -0
  146. package/dist/esm/components/builtin/Image/register.js.map +1 -0
  147. package/dist/esm/components/builtin/Navigation/register.js.map +1 -0
  148. package/dist/esm/components/builtin/Root/Root.js.map +1 -0
  149. package/dist/esm/components/builtin/Root/register.js.map +1 -0
  150. package/dist/esm/components/builtin/Slot/Slot.js.map +1 -0
  151. package/dist/esm/components/builtin/Slot/register.js.map +1 -0
  152. package/dist/esm/components/builtin/SocialLinks/SocialLinks.js.map +1 -0
  153. package/dist/esm/components/builtin/SocialLinks/options.js.map +1 -0
  154. package/dist/esm/components/builtin/SocialLinks/register.js.map +1 -0
  155. package/dist/esm/components/builtin/Text/Text.js.map +1 -0
  156. package/dist/esm/components/builtin/Text/register.js.map +1 -0
  157. package/dist/esm/components/builtin/Video/Video.js +49 -0
  158. package/dist/esm/components/builtin/Video/Video.js.map +1 -0
  159. package/dist/esm/components/builtin/Video/register.js.map +1 -0
  160. package/dist/esm/components/hooks/useTableFormFieldsPropControllerData.js +10 -0
  161. package/dist/esm/components/hooks/useTablePropControllerData.js +12 -0
  162. package/dist/esm/components/hooks/useTextAreaPropControllerData.js +12 -0
  163. package/dist/esm/components/hooks/useTextInputPropControllerData.js +10 -0
  164. package/dist/esm/components/hooks/useTextStylePropControllerData.js +12 -0
  165. package/dist/esm/components/hooks/useVideoPropControllerData.js +12 -0
  166. package/dist/esm/components/icons/Warning20.js +15 -0
  167. package/dist/esm/components/shared/FallbackComponent/FallbackComponent.js +3 -2
  168. package/dist/esm/components/shared/FallbackComponent/FallbackComponent.js.map +1 -1
  169. package/dist/esm/controls/index.js +4 -0
  170. package/dist/esm/controls/index.js.map +1 -1
  171. package/dist/esm/controls/rich-text-v2/translations/merge-translations.js.map +1 -0
  172. package/dist/esm/controls/rich-text-v2/translations/translations-core.js.map +1 -0
  173. package/dist/esm/controls/serialization/base/index.js +2 -0
  174. package/dist/esm/controls/serialization/base/index.js.map +1 -1
  175. package/dist/esm/controls/serialization/base/visitor.js +39 -0
  176. package/dist/esm/controls/serialization/base/visitor.js.map +1 -0
  177. package/dist/esm/controls/serialization/message-port/visitor.js +24 -0
  178. package/dist/esm/controls/serialization/message-port/visitor.js.map +1 -0
  179. package/dist/esm/next/api-handler/config/pages-router.js.map +1 -0
  180. package/dist/esm/next/api-handler/handlers/pages-router-redirect-preview.js.map +1 -0
  181. package/dist/esm/next/components/tests/__fixtures__/page-document.js.map +1 -0
  182. package/dist/esm/next/components/tests/__fixtures__/resources/page-pathname-slices.js.map +1 -0
  183. package/dist/esm/next/components/tests/__fixtures__/resources/swatches.js.map +1 -0
  184. package/dist/esm/next/components/tests/controls/fixtures/rich-text-v2.js.map +1 -0
  185. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -0
  186. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -0
  187. package/dist/esm/next/hooks/use-router-locale-sync.js.map +1 -0
  188. package/dist/esm/next/tests/__fixtures__/resources.js.map +1 -0
  189. package/dist/esm/next/tests/__fixtures__/translated-data.js.map +1 -0
  190. package/dist/esm/react/builtins/video.js +7 -0
  191. package/dist/esm/react/builtins/video.js.map +1 -0
  192. package/dist/esm/runtimes/react/components/MakeswiftComponent.js.map +1 -0
  193. package/dist/esm/runtimes/react/components/MakeswiftFonts.js.map +1 -0
  194. package/dist/esm/runtimes/react/components/RuntimeProvider.js.map +1 -0
  195. package/dist/esm/runtimes/react/components/Slot.js.map +1 -0
  196. package/dist/esm/runtimes/react/components/SlotProvider.js.map +1 -0
  197. package/dist/esm/runtimes/react/components/hooks/use-framework-context.js.map +1 -0
  198. package/dist/esm/runtimes/react/components/hooks/use-page-snippets.js.map +1 -0
  199. package/dist/esm/runtimes/react/components/page/Page.js.map +1 -0
  200. package/dist/esm/runtimes/react/components/page/PageHead.js.map +1 -0
  201. package/dist/esm/runtimes/react/components/page/page-seo-settings.js.map +1 -0
  202. package/dist/esm/runtimes/react/components/preview-switcher/preview-switcher.js.map +1 -0
  203. package/dist/esm/runtimes/react/components/preview-switcher/preview-toolbar.js.map +1 -0
  204. package/dist/esm/runtimes/react/components/render-hook.js.map +1 -0
  205. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncDOMSelection.js +39 -0
  206. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncDOMSelection.js.map +1 -0
  207. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js +35 -0
  208. package/dist/esm/runtimes/react/controls/rich-text/EditableText/useSyncWithBuilder.js.map +1 -0
  209. package/dist/esm/runtimes/react/controls/rich-text/ReadOnlyText.js.map +1 -0
  210. package/dist/esm/runtimes/react/controls/rich-text/rich-text.js.map +1 -0
  211. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.js.map +1 -0
  212. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.js.map +1 -0
  213. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -0
  214. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useRemoteChanges.js.map +1 -0
  215. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useSyncDOMSelection.js +39 -0
  216. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/useSyncDOMSelection.js.map +1 -0
  217. package/dist/esm/runtimes/react/controls/rich-text-v2/ReadOnlyTextV2.js.map +1 -0
  218. package/dist/esm/runtimes/react/controls/rich-text-v2/rich-text-v2.js.map +1 -0
  219. package/dist/esm/runtimes/react/controls/slot.js.map +1 -0
  220. package/dist/esm/runtimes/react/controls/style.js.map +1 -0
  221. package/dist/esm/runtimes/react/controls/typography.js.map +1 -0
  222. package/dist/esm/runtimes/react/hooks/makeswift-api.js.map +1 -0
  223. package/dist/esm/runtimes/react/hooks/use-async-effect.js.map +1 -0
  224. package/dist/esm/runtimes/react/hooks/use-breakpoints.js.map +1 -0
  225. package/dist/esm/runtimes/react/hooks/use-builtin-suspense.js.map +1 -0
  226. package/dist/esm/runtimes/react/hooks/use-cache-data.js.map +1 -0
  227. package/dist/esm/runtimes/react/hooks/use-component.js.map +1 -0
  228. package/dist/esm/runtimes/react/hooks/use-css-id.js.map +1 -0
  229. package/dist/esm/runtimes/react/hooks/use-current-breakpoint.js.map +1 -0
  230. package/dist/esm/runtimes/react/hooks/use-disable-register-element.js.map +1 -0
  231. package/dist/esm/runtimes/react/hooks/use-dispatch.js.map +1 -0
  232. package/dist/esm/runtimes/react/hooks/use-document-context.js.map +1 -0
  233. package/dist/esm/runtimes/react/hooks/use-document-cycles.js.map +1 -0
  234. package/dist/esm/runtimes/react/hooks/use-document.js.map +1 -0
  235. package/dist/esm/runtimes/react/hooks/use-element-id.js.map +1 -0
  236. package/dist/esm/runtimes/react/hooks/use-is-in-builder.js.map +1 -0
  237. package/dist/esm/runtimes/react/hooks/use-is-read-only.js.map +1 -0
  238. package/dist/esm/runtimes/react/hooks/use-react-runtime.js.map +1 -0
  239. package/dist/esm/runtimes/react/hooks/use-register-document.js.map +1 -0
  240. package/dist/esm/runtimes/react/hooks/use-resolvable-record.js.map +1 -0
  241. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -0
  242. package/dist/esm/runtimes/react/hooks/use-resolved-value.js.map +1 -0
  243. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js.map +1 -0
  244. package/dist/esm/runtimes/react/hooks/use-selector.js.map +1 -0
  245. package/dist/esm/runtimes/react/hooks/use-store.js.map +1 -0
  246. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js +5 -34
  247. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js.map +1 -0
  248. package/dist/esm/runtimes/react/hooks/use-universal-dispatch.js.map +1 -0
  249. package/dist/esm/runtimes/react/lib/react-dom.js.map +1 -0
  250. package/dist/esm/runtimes/react/lib/resolved-style-to-css.js +38 -0
  251. package/dist/esm/runtimes/react/lib/resolved-style-to-css.js.map +1 -0
  252. package/dist/esm/runtimes/react/testing/react-runtime.js.map +1 -0
  253. package/dist/esm/runtimes/react/use-global-style.js.map +1 -0
  254. package/dist/esm/runtimes/react/use-style.js.map +1 -0
  255. package/dist/esm/runtimes/react/utils/prop-error-handling-proxy.js.map +1 -0
  256. package/dist/esm/runtimes/react/utils/suppress-ref-warning.js.map +1 -0
  257. package/dist/esm/slate/BlockPlugin/utils/location.js.map +1 -0
  258. package/dist/esm/slate/BlockPlugin/wrapInline.js +12 -0
  259. package/dist/esm/slate/BlockPlugin/wrapInline.js.map +1 -0
  260. package/dist/esm/slate/BlockPlugin/wrapList.js +44 -0
  261. package/dist/esm/slate/BlockPlugin/wrapList.js.map +1 -0
  262. package/dist/esm/slate/utils/responsive.js.map +1 -0
  263. package/dist/esm/slate/utils/toText.js.map +1 -0
  264. package/dist/esm/slate/utils/unhangRange.js.map +1 -0
  265. package/dist/esm/state/actions/internal/read-only-actions.js.map +1 -0
  266. package/dist/esm/state/actions/internal/read-write-actions.js.map +1 -0
  267. package/dist/esm/state/builder-api/proxy.js.map +1 -0
  268. package/dist/esm/state/middleware/read-only-element-tree.js.map +1 -0
  269. package/dist/esm/state/middleware/read-write/measure-box-models.js.map +1 -0
  270. package/dist/esm/state/middleware/read-write/prop-controller-handles.js.map +1 -0
  271. package/dist/esm/state/middleware/read-write/update-element-tree.js.map +1 -0
  272. package/dist/esm/state/modules/prop-controllers.js.map +1 -0
  273. package/dist/esm/state/modules/react-components.js.map +1 -0
  274. package/dist/esm/state/modules/read-only-documents.js.map +1 -0
  275. package/dist/esm/state/modules/read-write/pointer.js.map +1 -0
  276. package/dist/esm/state/modules/read-write/read-write-documents.js.map +1 -0
  277. package/dist/esm/state/modules/site-version.js.map +1 -0
  278. package/dist/types/components/shared/FallbackComponent/FallbackComponent.d.ts +1 -0
  279. package/dist/types/components/shared/FallbackComponent/FallbackComponent.d.ts.map +1 -1
  280. package/dist/types/controls/index.d.ts +1 -1
  281. package/dist/types/controls/index.d.ts.map +1 -1
  282. package/dist/types/controls/serialization/base/index.d.ts.map +1 -1
  283. package/dist/types/runtimes/react/hooks/use-stylesheet-factory.d.ts.map +1 -1
  284. package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts +4 -0
  285. package/dist/types/runtimes/react/lib/resolved-style-to-css.d.ts.map +1 -0
  286. package/package.json +3 -3
@@ -54,6 +54,7 @@ function deserializeUnifiedControlDef(record) {
54
54
  [import__.RichTextV2Definition.type]: (record2) => import__.RichTextV2Definition.deserialize(record2, deserializeUnifiedControlDef),
55
55
  [import__.SelectDefinition.type]: import__.SelectDefinition.deserialize,
56
56
  [import__.ShapeDefinition.type]: (record2) => import__.ShapeDefinition.deserialize(record2, deserializeUnifiedControlDef),
57
+ [import__.SliderDefinition.type]: import__.SliderDefinition.deserialize,
57
58
  [import_controls.ShapeV2Definition.type]: (record2) => import_controls.ShapeV2Definition.deserialize(record2, deserializeUnifiedControlDef),
58
59
  [import__.SlotDefinition.type]: import__.SlotDefinition.deserialize,
59
60
  [import__.StyleDefinition.type]: import__.StyleDefinition.deserialize,
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/controls/serialization/base/index.ts"],"sourcesContent":["import {\n ControlDefinition,\n type SerializedRecord,\n type DeserializedRecord,\n ShapeV2Definition,\n DeserializationPlugin,\n deserializeRecord,\n} from '@makeswift/controls'\n\nimport {\n CheckboxDefinition,\n CodeDefinition,\n ColorDefinition,\n ComboboxDefinition,\n FontDefinition,\n GroupDefinition,\n IconRadioGroupDefinition,\n ImageDefinition,\n LinkDefinition,\n ListDefinition,\n NumberDefinition,\n RichTextV1Definition,\n RichTextV2Definition,\n SelectDefinition,\n ShapeDefinition,\n SliderDefinition,\n SlotDefinition,\n StyleDefinition,\n StyleV2Definition,\n TextAreaDefinition,\n TextInputDefinition,\n unstable_TypographyDefinition,\n} from '../../index'\n\nimport { BaseControlSerializationVisitor } from './visitor'\n\nexport { type SerializedRecord, type DeserializedRecord } from '@makeswift/controls'\n\nexport function serializeControls(\n controls: Record<string, ControlDefinition>,\n visitor: BaseControlSerializationVisitor,\n): Record<string, SerializedRecord> {\n return Object.entries(controls).reduce<Record<string, SerializedRecord>>(\n (acc, [key, control]) => {\n return { ...acc, [key]: control.accept(visitor) }\n },\n {},\n )\n}\n\nexport type DeserializeControlOptions = {\n plugins: DeserializationPlugin<any>[]\n}\n\nexport function deserializeControl(\n serializedControl: SerializedRecord,\n options: DeserializeControlOptions,\n): ControlDefinition {\n const plugins = options?.plugins ?? []\n\n return deserializeUnifiedControlDef(deserializeRecord(serializedControl, plugins))\n}\n\nexport function deserializeUnifiedControlDef(record: DeserializedRecord): ControlDefinition {\n type DeserializeMethod = (data: DeserializedRecord) => ControlDefinition\n const deserializeMethod: Record<string, DeserializeMethod> = {\n [CheckboxDefinition.type]: CheckboxDefinition.deserialize,\n [CodeDefinition.type]: CodeDefinition.deserialize,\n [ColorDefinition.type]: ColorDefinition.deserialize,\n [ComboboxDefinition.type]: ComboboxDefinition.deserialize,\n [FontDefinition.type]: FontDefinition.deserialize,\n [GroupDefinition.type]: record =>\n GroupDefinition.deserialize(record, deserializeUnifiedControlDef),\n [IconRadioGroupDefinition.type]: IconRadioGroupDefinition.deserialize,\n [ImageDefinition.type]: ImageDefinition.deserialize,\n [LinkDefinition.type]: LinkDefinition.deserialize,\n [ListDefinition.type]: record =>\n ListDefinition.deserialize(record, deserializeUnifiedControlDef),\n [NumberDefinition.type]: NumberDefinition.deserialize,\n [RichTextV1Definition.type]: RichTextV1Definition.deserialize,\n [RichTextV2Definition.type]: record =>\n RichTextV2Definition.deserialize(record, deserializeUnifiedControlDef),\n [SelectDefinition.type]: SelectDefinition.deserialize,\n [ShapeDefinition.type]: record =>\n ShapeDefinition.deserialize(record, deserializeUnifiedControlDef),\n [SliderDefinition.type]: SliderDefinition.deserialize,\n [ShapeV2Definition.type]: record =>\n ShapeV2Definition.deserialize(record, deserializeUnifiedControlDef),\n [SlotDefinition.type]: SlotDefinition.deserialize,\n [StyleDefinition.type]: StyleDefinition.deserialize,\n [StyleV2Definition.type]: record =>\n StyleV2Definition.deserialize(record, deserializeUnifiedControlDef),\n [TextAreaDefinition.type]: TextAreaDefinition.deserialize,\n [TextInputDefinition.type]: TextInputDefinition.deserialize,\n [unstable_TypographyDefinition.type]: unstable_TypographyDefinition.deserialize,\n } as const\n\n const deserialize = deserializeMethod[record.type] ?? null\n if (deserialize == null) {\n throw new Error(`Unknown control type: ${record.type}`)\n }\n\n return deserialize(record)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAOO;AAEP,eAuBO;AAMA,SAAS,kBACd,UACA,SACkC;AAClC,SAAO,OAAO,QAAQ,QAAQ,EAAE;AAAA,IAC9B,CAAC,KAAK,CAAC,KAAK,OAAO,MAAM;AACvB,aAAO,EAAE,GAAG,KAAK,CAAC,GAAG,GAAG,QAAQ,OAAO,OAAO,EAAE;AAAA,IAClD;AAAA,IACA,CAAC;AAAA,EACH;AACF;AAMO,SAAS,mBACd,mBACA,SACmB;AACnB,QAAM,UAAU,SAAS,WAAW,CAAC;AAErC,SAAO,iCAA6B,mCAAkB,mBAAmB,OAAO,CAAC;AACnF;AAEO,SAAS,6BAA6B,QAA+C;AAE1F,QAAM,oBAAuD;AAAA,IAC3D,CAAC,4BAAmB,IAAI,GAAG,4BAAmB;AAAA,IAC9C,CAAC,wBAAe,IAAI,GAAG,wBAAe;AAAA,IACtC,CAAC,yBAAgB,IAAI,GAAG,yBAAgB;AAAA,IACxC,CAAC,4BAAmB,IAAI,GAAG,4BAAmB;AAAA,IAC9C,CAAC,wBAAe,IAAI,GAAG,wBAAe;AAAA,IACtC,CAAC,yBAAgB,IAAI,GAAG,CAAAA,YACtB,yBAAgB,YAAYA,SAAQ,4BAA4B;AAAA,IAClE,CAAC,kCAAyB,IAAI,GAAG,kCAAyB;AAAA,IAC1D,CAAC,yBAAgB,IAAI,GAAG,yBAAgB;AAAA,IACxC,CAAC,wBAAe,IAAI,GAAG,wBAAe;AAAA,IACtC,CAAC,wBAAe,IAAI,GAAG,CAAAA,YACrB,wBAAe,YAAYA,SAAQ,4BAA4B;AAAA,IACjE,CAAC,0BAAiB,IAAI,GAAG,0BAAiB;AAAA,IAC1C,CAAC,8BAAqB,IAAI,GAAG,8BAAqB;AAAA,IAClD,CAAC,8BAAqB,IAAI,GAAG,CAAAA,YAC3B,8BAAqB,YAAYA,SAAQ,4BAA4B;AAAA,IACvE,CAAC,0BAAiB,IAAI,GAAG,0BAAiB;AAAA,IAC1C,CAAC,yBAAgB,IAAI,GAAG,CAAAA,YACtB,yBAAgB,YAAYA,SAAQ,4BAA4B;AAAA,IAClE,CAAC,0BAAiB,IAAI,GAAG,0BAAiB;AAAA,IAC1C,CAAC,kCAAkB,IAAI,GAAG,CAAAA,YACxB,kCAAkB,YAAYA,SAAQ,4BAA4B;AAAA,IACpE,CAAC,wBAAe,IAAI,GAAG,wBAAe;AAAA,IACtC,CAAC,yBAAgB,IAAI,GAAG,yBAAgB;AAAA,IACxC,CAAC,2BAAkB,IAAI,GAAG,CAAAA,YACxB,2BAAkB,YAAYA,SAAQ,4BAA4B;AAAA,IACpE,CAAC,4BAAmB,IAAI,GAAG,4BAAmB;AAAA,IAC9C,CAAC,6BAAoB,IAAI,GAAG,6BAAoB;AAAA,IAChD,CAAC,uCAA8B,IAAI,GAAG,uCAA8B;AAAA,EACtE;AAEA,QAAM,cAAc,kBAAkB,OAAO,IAAI,KAAK;AACtD,MAAI,eAAe,MAAM;AACvB,UAAM,IAAI,MAAM,yBAAyB,OAAO,IAAI,EAAE;AAAA,EACxD;AAEA,SAAO,YAAY,MAAM;AAC3B;","names":["record"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/controls/serialization/index.ts"],"sourcesContent":["import { type SerializedRecord, type DeserializeControlOptions } from './base'\n\nexport function isSerializedRecord(r: unknown): r is SerializedRecord {\n return r != null && typeof r === 'object' && 'type' in r && typeof r.type === 'string'\n}\n\nexport type DeserializeControlRecordsOptions = {\n onError?: (err: Error, context: { key: string; serializedControl: unknown }) => void\n} & Partial<Pick<DeserializeControlOptions, 'plugins'>>\n\nexport function deserializeControlRecords<T>(\n serializedControls: Record<string, unknown>,\n deserialize: (\n serializedControl: SerializedRecord,\n options?: Partial<DeserializeControlOptions>,\n ) => T,\n { onError, plugins }: DeserializeControlRecordsOptions = {},\n): Record<string, T> {\n return Object.entries(serializedControls).reduce<Record<string, T>>(\n (deserializedControls, [key, serializedControl]) => {\n try {\n if (!isSerializedRecord(serializedControl)) {\n throw new Error(\n `Expected serialized control data, got ${JSON.stringify(serializedControl)}`,\n )\n }\n const deserializedControl = deserialize(serializedControl, { plugins })\n return { ...deserializedControls, [key]: deserializedControl }\n } catch (err: unknown) {\n const error =\n err instanceof Error\n ? new Error(`Could not deserialize control for \"${key}\": ${err.message}`, {\n cause: err,\n })\n : new Error(`Could not deserialize control for \"${key}\", unknown error: ${err}`)\n\n onError?.(error, { key, serializedControl })\n\n return deserializedControls\n }\n },\n {},\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,SAAS,mBAAmB,GAAmC;AACpE,SAAO,KAAK,QAAQ,OAAO,MAAM,YAAY,UAAU,KAAK,OAAO,EAAE,SAAS;AAChF;AAMO,SAAS,0BACd,oBACA,aAIA,EAAE,SAAS,QAAQ,IAAsC,CAAC,GACvC;AACnB,SAAO,OAAO,QAAQ,kBAAkB,EAAE;AAAA,IACxC,CAAC,sBAAsB,CAAC,KAAK,iBAAiB,MAAM;AAClD,UAAI;AACF,YAAI,CAAC,mBAAmB,iBAAiB,GAAG;AAC1C,gBAAM,IAAI;AAAA,YACR,yCAAyC,KAAK,UAAU,iBAAiB,CAAC;AAAA,UAC5E;AAAA,QACF;AACA,cAAM,sBAAsB,YAAY,mBAAmB,EAAE,QAAQ,CAAC;AACtE,eAAO,EAAE,GAAG,sBAAsB,CAAC,GAAG,GAAG,oBAAoB;AAAA,MAC/D,SAAS,KAAc;AACrB,cAAM,QACJ,eAAe,QACX,IAAI,MAAM,sCAAsC,GAAG,MAAM,IAAI,OAAO,IAAI;AAAA,UACtE,OAAO;AAAA,QACT,CAAC,IACD,IAAI,MAAM,sCAAsC,GAAG,qBAAqB,GAAG,EAAE;AAEnF,kBAAU,OAAO,EAAE,KAAK,kBAAkB,CAAC;AAE3C,eAAO;AAAA,MACT;AAAA,IACF;AAAA,IACA,CAAC;AAAA,EACH;AACF;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/controls/serialization/message-port/index.ts"],"sourcesContent":["export * from './function-serialization'\nexport * from './visitor'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,iCAAc,qCAAd;AACA,iCAAc,sBADd;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/controls/style-v2/index.ts"],"sourcesContent":["export * from './style-v2'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,6BAAc,uBAAd;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/global.d.ts"],"sourcesContent":["import '@emotion/jest'\n\ndeclare global {\n const PACKAGE_VERSION: string\n\n // partial typings for the new Navigation API, see\n // https://developer.mozilla.org/en-US/docs/Web/API/Navigation_API\n interface NavigateEvent extends Event {\n readonly navigationType: 'push' | 'reload' | 'replace' | 'traverse'\n readonly destination: {\n readonly id: string\n readonly index: number\n readonly key: string\n readonly sameDocument: boolean\n readonly url: string\n }\n\n readonly hashChange: boolean\n readonly userInitiated: boolean\n }\n\n interface NavigationHistoryEntry {\n readonly id: string\n readonly index: number\n readonly key: string\n readonly sameDocument: boolean\n readonly url: string | null\n }\n\n interface Navigation {\n addEventListener(type: 'navigate', listener: (event: NavigateEvent) => void): void\n removeEventListener(type: 'navigate', listener: (event: NavigateEvent) => void): void\n addEventListener(type: 'navigatesuccess', listener: (event: Event) => void): void\n removeEventListener(type: 'navigatesuccess', listener: (event: Event) => void): void\n\n readonly currentEntry: NavigationHistoryEntry\n }\n\n interface Window {\n navigation?: Navigation\n }\n}\n\nexport {}\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;AAAA,kBAAO;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["export type { ComponentMeta } from './state/modules/components-meta'\nexport { ComponentIcon } from './state/modules/components-meta'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,6BAA8B;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/next/api-handler/index.ts"],"sourcesContent":["import { match } from 'ts-pattern'\n\nimport { Makeswift as MakeswiftClient } from '../client'\n\nimport { type ApiHandlerUserConfig, createApiHandler } from '../../api-handler'\n\nimport * as AppRouter from './config/app-router'\nimport * as PagesRouter from './config/pages-router'\n\n/**\n * @deprecated This type is deprecated and will be removed in a future release.\n */\nexport type MakeswiftApiHandlerResponse = any\n\ntype ApiHandlerArgs = AppRouter.ApiHandlerArgs | PagesRouter.ApiHandlerArgs\n\nexport function MakeswiftApiHandler(\n apiKey: string,\n { runtime, ...userConfig }: ApiHandlerUserConfig,\n): (...args: ApiHandlerArgs) => Promise<Response> | Promise<void> {\n const client = new MakeswiftClient(apiKey, { runtime })\n\n async function handler(...args: ApiHandlerArgs): Promise<Response | void> {\n const { req, route, sendResponse, customRoutes, ...handlerConfig } = await match(args)\n .with(AppRouter.argsPattern, ([req, context]) => AppRouter.config({ req, context, client }))\n .with(PagesRouter.argsPattern, ([req, res]) => PagesRouter.config({ req, res, client }))\n .exhaustive()\n\n const apiHandler = createApiHandler(apiKey, {\n ...userConfig,\n ...handlerConfig,\n runtime,\n client,\n })\n\n const customRouteResponse = await customRoutes(route)\n if (customRouteResponse) {\n return customRouteResponse.res\n }\n\n return sendResponse(await apiHandler(req, route))\n }\n\n // Next 15.5.0 performs type validations on the API handler. It expects a\n // return type of void | Promise<void> | Response | Promise<Response>, but\n // Typescript will not allow you to define an async function that returns a\n // union of two different Promises:\n\n // The return type of an async function or method must be the global\n // Promise<T> type. Did you mean to write 'Promise<void | Response>'?\n\n // This cast converts our handler's Promise<Response | void> return type to\n // Promise<Response> | Promise<void> to satisfy Next.js validations and bypass\n // the Typescript restriction. Ultimately, the value of the resolved type is\n // the same (Response | void).\n return handler as (...args: ApiHandlerArgs) => Promise<Response> | Promise<void>\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAsB;AAEtB,oBAA6C;AAE7C,yBAA4D;AAE5D,gBAA2B;AAC3B,kBAA6B;AAStB,SAAS,oBACd,QACA,EAAE,SAAS,GAAG,WAAW,GACuC;AAChE,QAAM,SAAS,IAAI,cAAAA,UAAgB,QAAQ,EAAE,QAAQ,CAAC;AAEtD,iBAAe,WAAW,MAAgD;AACxE,UAAM,EAAE,KAAK,OAAO,cAAc,cAAc,GAAG,cAAc,IAAI,UAAM,yBAAM,IAAI,EAClF,KAAK,UAAU,aAAa,CAAC,CAACC,MAAK,OAAO,MAAM,UAAU,OAAO,EAAE,KAAAA,MAAK,SAAS,OAAO,CAAC,CAAC,EAC1F,KAAK,YAAY,aAAa,CAAC,CAACA,MAAK,GAAG,MAAM,YAAY,OAAO,EAAE,KAAAA,MAAK,KAAK,OAAO,CAAC,CAAC,EACtF,WAAW;AAEd,UAAM,iBAAa,qCAAiB,QAAQ;AAAA,MAC1C,GAAG;AAAA,MACH,GAAG;AAAA,MACH;AAAA,MACA;AAAA,IACF,CAAC;AAED,UAAM,sBAAsB,MAAM,aAAa,KAAK;AACpD,QAAI,qBAAqB;AACvB,aAAO,oBAAoB;AAAA,IAC7B;AAEA,WAAO,aAAa,MAAM,WAAW,KAAK,KAAK,CAAC;AAAA,EAClD;AAcA,SAAO;AACT;","names":["MakeswiftClient","req"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/next/client.ts"],"sourcesContent":["import { PreviewData } from 'next'\nimport { z } from 'zod'\n\nimport { deserializeSiteVersion, type SiteVersion } from '../api/site-version'\n\nimport { MakeswiftClient } from '../client'\nimport { MAKESWIFT_CACHE_TAG } from './cache'\n\nconst previewDataSchema = z.object({\n siteVersion: z.string(),\n})\n\nexport class Makeswift extends MakeswiftClient {\n static getSiteVersion(previewData: PreviewData): SiteVersion | null {\n const parsedSiteVersion = previewDataSchema.safeParse(previewData)\n if (!parsedSiteVersion.success) return null\n\n return deserializeSiteVersion(parsedSiteVersion.data.siteVersion)\n }\n\n static getPreviewMode(previewData: PreviewData): boolean {\n return this.getSiteVersion(previewData) != null\n }\n\n fetchOptions(_siteVersion: SiteVersion): Record<string, unknown> {\n return {\n next: {\n tags: [MAKESWIFT_CACHE_TAG],\n },\n }\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,iBAAkB;AAElB,0BAAyD;AAEzD,oBAAgC;AAChC,mBAAoC;AAEpC,MAAM,oBAAoB,aAAE,OAAO;AAAA,EACjC,aAAa,aAAE,OAAO;AACxB,CAAC;AAEM,MAAM,kBAAkB,8BAAgB;AAAA,EAC7C,OAAO,eAAe,aAA8C;AAClE,UAAM,oBAAoB,kBAAkB,UAAU,WAAW;AACjE,QAAI,CAAC,kBAAkB;AAAS,aAAO;AAEvC,eAAO,4CAAuB,kBAAkB,KAAK,WAAW;AAAA,EAClE;AAAA,EAEA,OAAO,eAAe,aAAmC;AACvD,WAAO,KAAK,eAAe,WAAW,KAAK;AAAA,EAC7C;AAAA,EAEA,aAAa,cAAoD;AAC/D,WAAO;AAAA,MACL,MAAM;AAAA,QACJ,MAAM,CAAC,gCAAmB;AAAA,MAC5B;AAAA,IACF;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/next/components/framework-provider/app-router/index.ts"],"sourcesContent":["import {\n type FrameworkContext,\n DefaultHead,\n} from '../../../../runtimes/react/components/framework-context'\n\nimport { HeadSnippet } from './HeadSnippet'\n\nexport const context: Pick<FrameworkContext, 'Head' | 'HeadSnippet'> = {\n // The App Router uses built-in React Canary releases, which include all stable\n // React 19 features, so we can simply use our default head implementation\n Head: DefaultHead,\n HeadSnippet,\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAGO;AAEP,yBAA4B;AAErB,MAAM,UAA0D;AAAA;AAAA;AAAA,EAGrE,MAAM;AAAA,EACN;AACF;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/next/components/framework-provider/index.tsx"],"sourcesContent":["'use client'\n\nimport { type PropsWithChildren, useMemo } from 'react'\nimport NextImage from 'next/image'\n\nimport { useIsPagesRouter } from '../../hooks/use-is-pages-router'\nimport { FrameworkContext } from '../../../runtimes/react/components/framework-context'\n\nimport { context as appRouterContext } from './app-router'\nimport { context as pagesRouterContext } from './pages-router'\nimport { Link } from './link'\n\nexport function FrameworkProvider({\n children,\n forcePagesRouter,\n}: PropsWithChildren<{ forcePagesRouter?: boolean }>) {\n const isPagesRouter = useIsPagesRouter() || forcePagesRouter\n const context = useMemo<FrameworkContext>(\n () => ({\n ...(isPagesRouter ? pagesRouterContext : appRouterContext),\n Image: NextImage,\n Link,\n }),\n [isPagesRouter],\n )\n\n return <FrameworkContext.Provider value={context}>{children}</FrameworkContext.Provider>\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA0BS;AAxBT,mBAAgD;AAChD,mBAAsB;AAEtB,iCAAiC;AACjC,+BAAiC;AAEjC,wBAA4C;AAC5C,0BAA8C;AAC9C,kBAAqB;AAEd,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AACF,GAAsD;AACpD,QAAM,oBAAgB,6CAAiB,KAAK;AAC5C,QAAM,cAAU;AAAA,IACd,OAAO;AAAA,MACL,GAAI,gBAAgB,oBAAAA,UAAqB,kBAAAC;AAAA,MACzC,OAAO,aAAAC;AAAA,MACP;AAAA,IACF;AAAA,IACA,CAAC,aAAa;AAAA,EAChB;AAEA,SAAO,4CAAC,0CAAiB,UAAjB,EAA0B,OAAO,SAAU,UAAS;AAC9D;","names":["pagesRouterContext","appRouterContext","NextImage"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/next/components/framework-provider/pages-router/index.tsx"],"sourcesContent":["import Head from 'next/head'\n\nimport { type FrameworkContext } from '../../../../runtimes/react/components/framework-context'\n\nimport { HeadSnippet } from './HeadSnippet'\n\nexport const context: Pick<FrameworkContext, 'Head' | 'HeadSnippet'> = {\n Head,\n HeadSnippet,\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAiB;AAIjB,yBAA4B;AAErB,MAAM,UAA0D;AAAA,EACrE,kBAAAA;AAAA,EACA;AACF;","names":["Head"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/next/document.tsx"],"sourcesContent":["'use client'\n\nimport { cache } from '@emotion/css'\nimport createEmotionServer from '@emotion/server/create-instance'\nimport NextDocument, {\n DocumentContext,\n DocumentInitialProps,\n Head,\n Html,\n Main,\n NextScript,\n} from 'next/document'\n\nimport { StyleTagSSR } from '../runtimes/react/root-style-registry'\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const initialProps = await NextDocument.getInitialProps(ctx)\n\n const { extractCritical } = createEmotionServer(cache)\n const { ids, css } = extractCritical(initialProps.html)\n\n return {\n ...initialProps,\n styles: (\n <>\n {initialProps.styles}\n <StyleTagSSR cacheKey={cache.key} classNames={ids} css={css} />\n </>\n ),\n }\n }\n\n render() {\n return (\n <Html>\n <Head />\n <body>\n <Main />\n <NextScript />\n </body>\n </Html>\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAyBQ;AAvBR,iBAAsB;AACtB,6BAAgC;AAChC,sBAOO;AAEP,iCAA4B;AAErB,MAAM,iBAAiB,gBAAAA,QAAa;AAAA,EACzC,aAAa,gBAAgB,KAAqD;AAChF,UAAM,eAAe,MAAM,gBAAAA,QAAa,gBAAgB,GAAG;AAE3D,UAAM,EAAE,gBAAgB,QAAI,uBAAAC,SAAoB,gBAAK;AACrD,UAAM,EAAE,KAAK,IAAI,IAAI,gBAAgB,aAAa,IAAI;AAEtD,WAAO;AAAA,MACL,GAAG;AAAA,MACH,QACE,4EACG;AAAA,qBAAa;AAAA,QACd,4CAAC,0CAAY,UAAU,iBAAM,KAAK,YAAY,KAAK,KAAU;AAAA,SAC/D;AAAA,IAEJ;AAAA,EACF;AAAA,EAEA,SAAS;AACP,WACE,6CAAC,wBACC;AAAA,kDAAC,wBAAK;AAAA,MACN,6CAAC,UACC;AAAA,oDAAC,wBAAK;AAAA,QACN,4CAAC,8BAAW;AAAA,SACd;AAAA,OACF;AAAA,EAEJ;AACF;","names":["NextDocument","createEmotionServer"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/next/fetch.ts"],"sourcesContent":["import { type HttpFetch } from '../state/makeswift-api-client'\n\nimport { MAKESWIFT_CACHE_TAG } from './cache'\n\nexport const fetch: HttpFetch = (url, init) =>\n globalThis.fetch(url, { ...init, next: { tags: [MAKESWIFT_CACHE_TAG] } })\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAoC;AAE7B,MAAM,QAAmB,CAAC,KAAK,SACpC,WAAW,MAAM,KAAK,EAAE,GAAG,MAAM,MAAM,EAAE,MAAM,CAAC,gCAAmB,EAAE,EAAE,CAAC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/next/index.tsx"],"sourcesContent":["export type { PageProps } from './components/page'\nexport { Page } from './components/page'\nexport { MakeswiftComponent } from '../runtimes/react/components/MakeswiftComponent'\nexport { Slot } from '../runtimes/react/components/Slot'\nexport type {\n MakeswiftPage,\n MakeswiftPageDocument,\n MakeswiftPageSnapshot,\n Sitemap,\n} from '../client'\nexport { Makeswift } from './client'\nexport { type SiteVersion } from '../api/site-version'\nexport { NextRootStyleRegistry as RootStyleRegistry } from './root-style-registry'\nexport { NextRuntimeProvider as ReactRuntimeProvider } from './runtime-provider'\nexport { NextReactRuntime as ReactRuntime } from './runtime'\nexport { fetch } from './fetch'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAqB;AACrB,gCAAmC;AACnC,kBAAqB;AAOrB,oBAA0B;AAE1B,iCAA2D;AAC3D,8BAA4D;AAC5D,qBAAiD;AACjD,mBAAsB;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/next/middleware/index.ts"],"sourcesContent":["export { isDraftModeRequest as unstable_isDraftModeRequest } from './request-utils'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAAkE;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/next/testing/element-data.ts"],"sourcesContent":["import { randomUUID } from 'crypto'\n\nimport {\n type MakeswiftPageSnapshot,\n type MakeswiftPageDocument,\n type MakeswiftComponentSnapshot,\n} from '../../client'\nimport { CacheData } from '../../api/client'\nimport { type ElementData } from '../../state/read-only-state'\nimport { MakeswiftComponentType } from '../../components/builtin/constants'\n\nexport function createRootComponent(elements: ElementData[], rootId?: string) {\n return {\n key: rootId ?? randomUUID(),\n type: MakeswiftComponentType.Root,\n props: {\n children: {\n columns: [\n {\n deviceId: 'desktop',\n value: {\n count: 12,\n spans: elements?.map(() => [12]),\n },\n },\n ],\n elements,\n },\n },\n }\n}\n\nconst isDocument = (\n elementDataOrDocument: ElementData | MakeswiftPageDocument,\n): elementDataOrDocument is MakeswiftPageDocument =>\n 'snippets' in elementDataOrDocument ||\n 'fonts' in elementDataOrDocument ||\n 'meta' in elementDataOrDocument ||\n 'seo' in elementDataOrDocument\n\nexport function createMakeswiftPageSnapshot(\n elementDataOrDocument: ElementData | MakeswiftPageDocument,\n {\n cacheData = {},\n locale = null,\n }: { cacheData?: Partial<MakeswiftPageSnapshot['cacheData']>; locale?: string | null } = {},\n): MakeswiftPageSnapshot {\n return {\n document: isDocument(elementDataOrDocument)\n ? elementDataOrDocument\n : {\n id: 'test-page-id',\n site: { id: 'test-site-id' },\n data: elementDataOrDocument,\n snippets: [],\n fonts: [],\n meta: {},\n seo: {},\n localizedPages: [],\n locale,\n },\n cacheData: {\n ...CacheData.empty(),\n ...cacheData,\n },\n }\n}\n\nexport function createMakeswiftComponentSnapshot(\n elementData: ElementData | null,\n {\n cacheData = {},\n locale = null,\n }: { cacheData?: Partial<MakeswiftComponentSnapshot['cacheData']>; locale?: string | null } = {},\n): MakeswiftComponentSnapshot {\n return {\n key: randomUUID(),\n document: {\n id: 'test-component-id',\n name: 'Test Component Document',\n siteId: 'test-site-id',\n data: elementData,\n inheritsFromParent: false,\n locale,\n },\n meta: {\n allowLocaleFallback: false,\n requestedLocale: locale,\n },\n cacheData: {\n ...CacheData.empty(),\n ...cacheData,\n },\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAO3B,IAAAA,iBAA0B;AAE1B,uBAAuC;AAEhC,SAAS,oBAAoB,UAAyB,QAAiB;AAC5E,SAAO;AAAA,IACL,KAAK,cAAU,0BAAW;AAAA,IAC1B,MAAM,wCAAuB;AAAA,IAC7B,OAAO;AAAA,MACL,UAAU;AAAA,QACR,SAAS;AAAA,UACP;AAAA,YACE,UAAU;AAAA,YACV,OAAO;AAAA,cACL,OAAO;AAAA,cACP,OAAO,UAAU,IAAI,MAAM,CAAC,EAAE,CAAC;AAAA,YACjC;AAAA,UACF;AAAA,QACF;AAAA,QACA;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAEA,MAAM,aAAa,CACjB,0BAEA,cAAc,yBACd,WAAW,yBACX,UAAU,yBACV,SAAS;AAEJ,SAAS,4BACd,uBACA;AAAA,EACE,YAAY,CAAC;AAAA,EACb,SAAS;AACX,IAAyF,CAAC,GACnE;AACvB,SAAO;AAAA,IACL,UAAU,WAAW,qBAAqB,IACtC,wBACA;AAAA,MACE,IAAI;AAAA,MACJ,MAAM,EAAE,IAAI,eAAe;AAAA,MAC3B,MAAM;AAAA,MACN,UAAU,CAAC;AAAA,MACX,OAAO,CAAC;AAAA,MACR,MAAM,CAAC;AAAA,MACP,KAAK,CAAC;AAAA,MACN,gBAAgB,CAAC;AAAA,MACjB;AAAA,IACF;AAAA,IACJ,WAAW;AAAA,MACT,GAAG,yBAAU,MAAM;AAAA,MACnB,GAAG;AAAA,IACL;AAAA,EACF;AACF;AAEO,SAAS,iCACd,aACA;AAAA,EACE,YAAY,CAAC;AAAA,EACb,SAAS;AACX,IAA8F,CAAC,GACnE;AAC5B,SAAO;AAAA,IACL,SAAK,0BAAW;AAAA,IAChB,UAAU;AAAA,MACR,IAAI;AAAA,MACJ,MAAM;AAAA,MACN,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,oBAAoB;AAAA,MACpB;AAAA,IACF;AAAA,IACA,MAAM;AAAA,MACJ,qBAAqB;AAAA,MACrB,iBAAiB;AAAA,IACnB;AAAA,IACA,WAAW;AAAA,MACT,GAAG,yBAAU,MAAM;AAAA,MACnB,GAAG;AAAA,IACL;AAAA,EACF;AACF;","names":["import_client"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/next/testing/index.ts"],"sourcesContent":["export * from './breakpoints'\nexport * from './element-data'\nexport * from './react-provider'\nexport * from './react-runtime'\nexport * from './page-rendering'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,4BAAc,0BAAd;AACA,4BAAc,2BADd;AAEA,4BAAc,6BAFd;AAGA,4BAAc,4BAHd;AAIA,4BAAc,6BAJd;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/prop-controllers/copy.ts"],"sourcesContent":["import { type CopyContext } from '@makeswift/controls'\n\nimport {\n copyLinkPropControllerData,\n copyShadowsPropControllerData,\n copyBorderPropControllerData,\n copyElementIDPropControllerData,\n copyGridPropControllerData,\n copyImagePropControllerData,\n copyImagesPropControllerData,\n copyBackgroundsPropControllerData,\n copyResponsiveColorPropControllerData,\n copyTablePropControllerData,\n copyTableFormFieldsPropControllerData,\n copyNavigationLinksPropControllerData,\n Types as PropControllerTypes,\n} from '@makeswift/prop-controllers'\n\nimport { isLegacyDescriptor, type Descriptor } from './descriptors'\n\n// @note: note typing value, because would then have to type narrow `Data` per case\nexport function copy(descriptor: Descriptor, value: any, context: CopyContext) {\n if (!isLegacyDescriptor(descriptor)) {\n return descriptor.copyData(value, context)\n }\n\n switch (descriptor.type) {\n case PropControllerTypes.Backgrounds:\n return copyBackgroundsPropControllerData(descriptor, value, context)\n\n case PropControllerTypes.Grid:\n return copyGridPropControllerData(value, context)\n\n case PropControllerTypes.NavigationLinks:\n return copyNavigationLinksPropControllerData(value, context)\n\n case PropControllerTypes.Link:\n return copyLinkPropControllerData(value, context)\n\n case PropControllerTypes.Shadows:\n return copyShadowsPropControllerData(value, context)\n\n case PropControllerTypes.Image:\n return copyImagePropControllerData(value, context)\n\n case PropControllerTypes.Images:\n return copyImagesPropControllerData(value, context)\n\n case PropControllerTypes.ResponsiveColor:\n return copyResponsiveColorPropControllerData(value, context)\n\n case PropControllerTypes.TableFormFields:\n return copyTableFormFieldsPropControllerData(value, context)\n\n case PropControllerTypes.Table:\n return copyTablePropControllerData(value, context)\n\n case PropControllerTypes.Border:\n return copyBorderPropControllerData(value, context)\n\n case PropControllerTypes.ElementID:\n return copyElementIDPropControllerData(value, context)\n\n // FIXME: DELETED_PROP_CONTROLLER_TYPES.RichText ??\n\n default:\n return value\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,8BAcO;AAEP,yBAAoD;AAG7C,SAAS,KAAK,YAAwB,OAAY,SAAsB;AAC7E,MAAI,KAAC,uCAAmB,UAAU,GAAG;AACnC,WAAO,WAAW,SAAS,OAAO,OAAO;AAAA,EAC3C;AAEA,UAAQ,WAAW,MAAM;AAAA,IACvB,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,2DAAkC,YAAY,OAAO,OAAO;AAAA,IAErE,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,oDAA2B,OAAO,OAAO;AAAA,IAElD,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,+DAAsC,OAAO,OAAO;AAAA,IAE7D,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,oDAA2B,OAAO,OAAO;AAAA,IAElD,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,uDAA8B,OAAO,OAAO;AAAA,IAErD,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,qDAA4B,OAAO,OAAO;AAAA,IAEnD,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,sDAA6B,OAAO,OAAO;AAAA,IAEpD,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,+DAAsC,OAAO,OAAO;AAAA,IAE7D,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,+DAAsC,OAAO,OAAO;AAAA,IAE7D,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,qDAA4B,OAAO,OAAO;AAAA,IAEnD,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,sDAA6B,OAAO,OAAO;AAAA,IAEpD,KAAK,wBAAAA,MAAoB;AACvB,iBAAO,yDAAgC,OAAO,OAAO;AAAA,IAIvD;AACE,aAAO;AAAA,EACX;AACF;","names":["PropControllerTypes"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/prop-controllers/deleted.ts"],"sourcesContent":["import { type RichTextValue } from '@makeswift/controls'\nimport { Data, DescriptorValueType, PanelDescriptor } from './descriptors'\n\nexport const DELETED_PROP_CONTROLLER_TYPES = {\n List: 'List',\n RichText: 'RichText',\n Shape: 'Shape',\n Typeahead: 'Typeahead',\n} as const\n\nexport type DeletedPropControllerDescriptor<T extends Data = Data> =\n | ListDescriptor<T extends ListValue ? T : ListValue>\n | RichTextDescriptor<T>\n | ShapeDescriptor<T extends ShapeValue ? T : ShapeValue, any>\n | TypeaheadDescriptor<T extends TypeaheadValue ? T : TypeaheadValue>\n\ntype ListValueItem<T extends Data> = { id: string; value?: T }\n\nexport type ListValue<T extends Data = Data> = ListValueItem<T>[]\n\nexport type ListOptions<T extends Data> = {\n type: PanelDescriptor<T>\n label?: string\n getItemLabel?: ((value: T | undefined) => string) | ((value: T | undefined) => Promise<string>)\n preset?: ListValue<T>\n defaultValue?: ListValue<T>\n}\n\nexport type ListDescriptor<T extends ListValue = ListValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.List\n options: ListOptions<T extends ListValue<infer U> ? U : never>\n}\n\nexport type RichTextOptions = { preset?: RichTextValue }\n\nexport type RichTextDescriptor<_T extends Data = RichTextValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.RichText\n options: RichTextOptions\n}\n\nexport type ShapeValue<T extends Data = Data> = Record<string, T>\n\ntype ShapeOptions<T extends Record<string, PanelDescriptor>> = {\n type: T\n preset?: { [K in keyof T]?: DescriptorValueType<T[K]> }\n}\n\nexport type ShapeDescriptor<\n _T extends Record<string, Data>,\n U extends Record<string, PanelDescriptor>,\n> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.Shape\n options: ShapeOptions<U>\n}\n\nexport type TypeaheadValue<T extends Data = Data> = {\n id: string\n label: string\n value: T\n}\n\nexport type TypeaheadOptions<T extends Data> = {\n getItems: (query: string) => Promise<TypeaheadValue<T>[]>\n label?: string\n preset?: TypeaheadValue<T>\n defaultValue?: TypeaheadValue<T>\n}\n\nexport type TypeaheadDescriptor<T extends TypeaheadValue = TypeaheadValue> = {\n type: typeof DELETED_PROP_CONTROLLER_TYPES.Typeahead\n options: TypeaheadOptions<T extends TypeaheadValue<infer U> ? U : never>\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,MAAM,gCAAgC;AAAA,EAC3C,MAAM;AAAA,EACN,UAAU;AAAA,EACV,OAAO;AAAA,EACP,WAAW;AACb;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/prop-controllers/descriptors.ts"],"sourcesContent":["import {\n type ResolvedValueType,\n ControlDefinition as UnifiedControlDefinition,\n} from '@makeswift/controls'\n\nimport { type ResponsiveColor } from '../components/utils/types'\nimport type { Data } from '../state/read-only-state'\nimport {\n BorderDescriptor,\n CheckboxDescriptor,\n LinkDescriptor,\n ResolveLinkPropControllerValue,\n Types as PropControllerTypes,\n ShadowsDescriptor,\n ResolveShadowsPropControllerValue,\n ResponsiveLengthDescriptor,\n ResolveResponsiveLengthPropControllerValue,\n NumberDescriptor,\n ResolveNumberPropControllerValue,\n ResponsiveColorDescriptor,\n ResolveCheckboxPropControllerValue,\n BorderRadiusDescriptor,\n ResolveBorderPropControllerValue,\n ResolveBorderRadiusPropControllerValue,\n DateDescriptor,\n ResolveDatePropControllerValue,\n FontDescriptor,\n ResolveFontPropControllerValue,\n VideoDescriptor,\n ResolveVideoPropControllerValue,\n TableDescriptor,\n ResolveTablePropControllerValue,\n MarginDescriptor,\n ResolveMarginPropControllerValue,\n PaddingDescriptor,\n ResolvePaddingPropControllerValue,\n WidthDescriptor,\n ResolveWidthPropControllerValue,\n TextStyleDescriptor,\n ResolveTextStylePropControllerValue,\n NavigationLinksDescriptor,\n ResolveNavigationLinksPropControllerValue,\n TextAreaDescriptor,\n ResolveTextAreaPropControllerValue,\n GapX,\n ResponsiveNumber,\n ResponsiveSelect,\n ResolveGapYPropControllerValue,\n GapYDescriptor,\n ElementIDDescriptor,\n ResolveElementIDPropControllerValue,\n TableFormFieldsDescriptor,\n ResolveTableFormFieldsPropControllerValue,\n GridDescriptor,\n ResolveGridPropControllerValue,\n ImageDescriptor,\n ResolveImagePropControllerValue,\n ImagesDescriptor,\n ResolveImagesPropControllerValue,\n BackgroundsDescriptor,\n ResolveBackgroundsPropControllerValue,\n ResponsiveOpacity,\n ResponsiveIconRadioGroup,\n ResolveSocialLinksPropControllerValue,\n SocialLinksDescriptor,\n TextInputDescriptor,\n ResolveTextInputPropControllerValue,\n type Descriptor as PropDescriptor,\n type Value as PropValue,\n} from '@makeswift/prop-controllers'\n\nimport { DeletedPropControllerDescriptor } from './deleted'\n\nexport type { Data }\n\nexport type Gap = { value: number; unit: 'px' }\n\ntype PropControllerDescriptor<T extends Data = Data> =\n | DeletedPropControllerDescriptor<T>\n | BackgroundsDescriptor<T>\n | BorderDescriptor<T>\n | BorderRadiusDescriptor<T>\n | CheckboxDescriptor<T>\n | DateDescriptor<T>\n | ElementIDDescriptor<T>\n | FontDescriptor<T>\n | PropDescriptor<typeof GapX>\n | GapYDescriptor<T>\n | GridDescriptor<T>\n | ImageDescriptor<T>\n | ImagesDescriptor<T>\n | LinkDescriptor<T>\n | MarginDescriptor<T>\n | NavigationLinksDescriptor<T>\n | NumberDescriptor<T>\n | PaddingDescriptor<T>\n | ResponsiveColorDescriptor<T>\n | ResponsiveLengthDescriptor<T>\n | PropDescriptor<typeof ResponsiveIconRadioGroup>\n | PropDescriptor<typeof ResponsiveNumber>\n | PropDescriptor<typeof ResponsiveOpacity>\n | PropDescriptor<typeof ResponsiveSelect>\n | ShadowsDescriptor<T>\n | SocialLinksDescriptor<T>\n | TableDescriptor<T>\n | TableFormFieldsDescriptor<T>\n | TextAreaDescriptor<T>\n | TextInputDescriptor<T>\n | TextStyleDescriptor<T>\n | VideoDescriptor<T>\n | WidthDescriptor<T>\n\nexport type LegacyDescriptor<T extends Data = Data> = PropControllerDescriptor<T>\n\nexport type Descriptor<T extends Data = Data> = LegacyDescriptor<T> | UnifiedControlDefinition\n\nexport function isLegacyDescriptor<T extends Data>(\n control: Descriptor<T>,\n): control is LegacyDescriptor<T> {\n return !(control instanceof UnifiedControlDefinition)\n}\n\nexport type PanelDescriptorType =\n | typeof PropControllerTypes.Backgrounds\n | typeof PropControllerTypes.ResponsiveIconRadioGroup\n | typeof PropControllerTypes.Margin\n | typeof PropControllerTypes.Padding\n | typeof PropControllerTypes.Shadows\n | typeof PropControllerTypes.Border\n | typeof PropControllerTypes.GapY\n | typeof PropControllerTypes.GapX\n | typeof PropControllerTypes.BorderRadius\n | typeof PropControllerTypes.Checkbox\n | typeof PropControllerTypes.TextInput\n | typeof PropControllerTypes.Link\n | typeof PropControllerTypes.ResponsiveSelect\n | typeof PropControllerTypes.ResponsiveColor\n | typeof PropControllerTypes.TextStyle\n | typeof PropControllerTypes.Images\n | typeof PropControllerTypes.ResponsiveNumber\n | typeof PropControllerTypes.Number\n | typeof PropControllerTypes.Date\n | typeof PropControllerTypes.Font\n | typeof PropControllerTypes.TextArea\n | typeof PropControllerTypes.Table\n | typeof PropControllerTypes.Image\n | typeof PropControllerTypes.ResponsiveOpacity\n | typeof PropControllerTypes.SocialLinks\n | typeof PropControllerTypes.Video\n | typeof PropControllerTypes.NavigationLinks\n\nexport type PanelDescriptor<T extends Data = Data> = Extract<\n Descriptor<T>,\n { type: PanelDescriptorType }\n>\n\n// see https://github.com/prettier/prettier/issues/7940#issuecomment-2074455883\n// prettier-ignore\nexport type PropControllerDescriptorValueType<T extends PropControllerDescriptor> = T['type'] extends typeof PropControllerTypes.ResponsiveColor\n ? // TODO(miguel): We're not importing a resolver type from `@makeswift/prop-controllers` because\n // the resolved type is tightly coupled with the runtime (i.e., it's the result of an API call).\n // This means that we probably want to rethink how types are resolved and where that lives.\n ResponsiveColor | null | undefined\n : T['type'] extends typeof PropControllerTypes.Backgrounds\n ? ResolveBackgroundsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.Backgrounds }>\n >\n : T['type'] extends typeof PropControllerTypes.Checkbox\n ? ResolveCheckboxPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Checkbox }>>\n : T['type'] extends typeof PropControllerTypes.Date\n ? ResolveDatePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Date }>>\n : T['type'] extends typeof PropControllerTypes.ElementID\n ? ResolveElementIDPropControllerValue<Extract<T, { type: typeof PropControllerTypes.ElementID }>>\n : T['type'] extends typeof PropControllerTypes.Font\n ? ResolveFontPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Font }>>\n : T['type'] extends typeof PropControllerTypes.GapX\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.GapY\n ? ResolveGapYPropControllerValue<Extract<T, { type: typeof PropControllerTypes.GapY }>>\n : T['type'] extends typeof PropControllerTypes.Grid\n ? ResolveGridPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Grid }>>\n : T['type'] extends typeof PropControllerTypes.Image\n ? ResolveImagePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Image }>>\n : T['type'] extends typeof PropControllerTypes.Images\n ? ResolveImagesPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Images }>>\n : T['type'] extends typeof PropControllerTypes.ResponsiveIconRadioGroup\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveNumber\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveOpacity\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.ResponsiveSelect\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.Link\n ? ResolveLinkPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Link }>>\n : T['type'] extends typeof PropControllerTypes.Width\n ? ResolveWidthPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Width }>>\n : T['type'] extends typeof PropControllerTypes.Padding\n ? ResolvePaddingPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Padding }>>\n : T['type'] extends typeof PropControllerTypes.Margin\n ? ResolveMarginPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Margin }>>\n : T['type'] extends typeof PropControllerTypes.NavigationLinks\n ? ResolveNavigationLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.NavigationLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.BorderRadius\n ? ResolveBorderRadiusPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.BorderRadius }>\n >\n : T['type'] extends typeof PropControllerTypes.Shadows\n ? ResolveShadowsPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Shadows }>>\n : T['type'] extends typeof PropControllerTypes.SocialLinks\n ? ResolveSocialLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.SocialLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.ResponsiveLength\n ? ResolveResponsiveLengthPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.ResponsiveLength }>\n >\n : T['type'] extends typeof PropControllerTypes.Border\n ? ResolveBorderPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Border }>>\n : T['type'] extends typeof PropControllerTypes.Number\n ? ResolveNumberPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Number }>>\n : T['type'] extends typeof PropControllerTypes.Table\n ? ResolveTablePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Table }>>\n : T['type'] extends typeof PropControllerTypes.TableFormFields\n ? ResolveTableFormFieldsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.TableFormFields }>\n >\n : T['type'] extends typeof PropControllerTypes.TextStyle\n ? ResolveTextStylePropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextStyle }>>\n : T['type'] extends typeof PropControllerTypes.TextArea\n ? ResolveTextAreaPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextArea }>>\n : T['type'] extends typeof PropControllerTypes.TextInput\n ? ResolveTextInputPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextInput }>>\n : T['type'] extends typeof PropControllerTypes.Video\n ? ResolveVideoPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Video }>>\n : T extends Descriptor<infer U>\n ? U | undefined\n : never\n\nexport type DescriptorValueType<T extends Descriptor> = T extends PropControllerDescriptor\n ? PropControllerDescriptorValueType<T>\n : T extends UnifiedControlDefinition\n ? ResolvedValueType<T>\n : T extends Descriptor<infer U>\n ? U | undefined\n : never\n\nexport type PanelDescriptorValueType<T extends PanelDescriptor> =\n T extends PanelDescriptor<infer U> ? U : never\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAGO;AAiHA,SAAS,mBACd,SACgC;AAChC,SAAO,EAAE,mBAAmB,gBAAAA;AAC9B;","names":["UnifiedControlDefinition"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/react/builtins/countdown.ts"],"sourcesContent":["export { registerComponent as registerCountdownComponent } from '../../components/builtin/Countdown/register'\nexport { default as Countdown } from '../../components/builtin/Countdown/Countdown'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAgE;AAChE,uBAAqC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/react/builtins/divider.ts"],"sourcesContent":["export { registerComponent as registerDividerComponent } from '../../components/builtin/Divider/register'\nexport { default as Divider } from '../../components/builtin/Divider/Divider'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA8D;AAC9D,qBAAmC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/react/builtins/embed.ts"],"sourcesContent":["export { registerComponent as registerEmbedComponent } from '../../components/builtin/Embed/register'\nexport { default as Embed } from '../../components/builtin/Embed/Embed'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA4D;AAC5D,mBAAiC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/react/builtins/form.ts"],"sourcesContent":["export { registerComponent as registerFormComponent } from '../../components/builtin/Form/register'\nexport { default as Form } from '../../components/builtin/Form/Form'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA2D;AAC3D,kBAAgC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/react/builtins/image.ts"],"sourcesContent":["export { registerComponent as registerImageComponent } from '../../components/builtin/Image/register'\nexport { default as Image } from '../../components/builtin/Image/Image'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA4D;AAC5D,mBAAiC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/react/builtins/index.ts"],"sourcesContent":["export { MakeswiftComponentType } from '../../components/builtin/constants'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAuC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/react/core/index.ts"],"sourcesContent":["export { ReactRuntimeCore } from '../../runtimes/react/react-runtime-core'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gCAAiC;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/react/index.ts"],"sourcesContent":["export { useIsInBuilder } from '../runtimes/react/hooks/use-is-in-builder'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAA+B;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/components/index.ts"],"sourcesContent":["export * from './render-hook'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,+BAAc,0BAAd;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/runtimes/react/components/page/index.tsx"],"sourcesContent":["import { useMemo, memo, type ComponentProps } from 'react'\n\nimport { useCacheData } from '../../hooks/use-cache-data'\n\nimport { type MakeswiftPageSnapshot, pageToRootDocument } from '../../../../client'\n\nimport { type PageMetadataSettings } from './page-seo-settings'\nimport { Page as PageComponent } from './Page'\nimport { useRegisterDocument } from '../../hooks/use-register-document'\nimport { ActivityOrFallback } from '../activity-with-fallback'\n\nexport { type PageMetadataSettings } from './page-seo-settings'\n\n/**\n * @param snapshot - The snapshot of the page to render, from\n * `client.getPageSnapshot()`.\n * @param metadata - Allows control over whether to use data from Makeswift for\n * rendering metadata tags in the `<head>` of the page. Pass `true` (default if\n * not provided) to render all metadata tags, or `false` to not render any. For\n * more granular control, pass an object with boolean values for specific\n * metadata fields. Valid fields include:\n * - `title`\n * - `description`\n * - `keywords`\n * - `socialImage`\n * - `canonicalUrl`\n * - `indexingBlocked`\n * - `favicon`\n *\n * If a field is not provided, it will default to `false`.\n */\nexport const Page = memo(\n ({\n snapshot,\n metadata = true,\n }: {\n snapshot: MakeswiftPageSnapshot\n metadata?: boolean | PageMetadataSettings\n }) => {\n useCacheData(snapshot.cacheData)\n\n const rootDocument = useMemo(() => pageToRootDocument(snapshot.document), [snapshot.document])\n useRegisterDocument(rootDocument)\n\n return (\n <ActivityOrFallback>\n {/* We use a key here to reset the Snippets state in the PageMeta component */}\n <PageComponent\n key={snapshot.document.data.key}\n page={snapshot.document}\n rootDocument={rootDocument}\n metadata={metadata}\n />\n </ActivityOrFallback>\n )\n },\n)\n\nexport type PageProps = ComponentProps<typeof Page>\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA+CQ;AA/CR,mBAAmD;AAEnD,4BAA6B;AAE7B,oBAA+D;AAG/D,kBAAsC;AACtC,mCAAoC;AACpC,oCAAmC;AAsB5B,MAAM,WAAO;AAAA,EAClB,CAAC;AAAA,IACC;AAAA,IACA,WAAW;AAAA,EACb,MAGM;AACJ,4CAAa,SAAS,SAAS;AAE/B,UAAM,mBAAe,sBAAQ,UAAM,kCAAmB,SAAS,QAAQ,GAAG,CAAC,SAAS,QAAQ,CAAC;AAC7F,0DAAoB,YAAY;AAEhC,WACE,4CAAC,oDAEC;AAAA,MAAC,YAAAA;AAAA,MAAA;AAAA,QAEC,MAAM,SAAS;AAAA,QACf;AAAA,QACA;AAAA;AAAA,MAHK,SAAS,SAAS,KAAK;AAAA,IAI9B,GACF;AAAA,EAEJ;AACF;","names":["PageComponent"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../src/runtimes/react/controls/rich-text/components/Element/inline.tsx"],"sourcesContent":["import { cx } from '@emotion/css'\nimport { ComponentPropsWithoutRef } from 'react'\nimport { RenderElementProps } from 'slate-react'\nimport { Slate } from '@makeswift/controls'\n\nimport { useStyle } from '../../../../use-style'\nimport { Link } from '../../../../../../components/shared/Link'\nimport { InlineType } from '../../../../../../slate/types'\n\nfunction StyledLink({ className, ...restOfProps }: ComponentPropsWithoutRef<typeof Link>) {\n return <Link {...restOfProps} className={cx(useStyle({ textDecoration: 'none' }), className)} />\n}\n\nexport interface InlineRenderElementProps extends RenderElementProps {\n element: Slate.Inline\n}\n\nexport function InlineElement({ element, attributes, children }: InlineRenderElementProps) {\n switch (element.type) {\n case InlineType.Code:\n return <code {...attributes}>{children}</code>\n\n case InlineType.SuperScript:\n return <sup {...attributes}>{children}</sup>\n\n case InlineType.SubScript:\n return <sub {...attributes}>{children}</sub>\n\n case InlineType.Link:\n return (\n <StyledLink {...attributes} link={element.link ?? undefined}>\n {children}\n </StyledLink>\n )\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUS;AAVT,iBAAmB;AAKnB,uBAAyB;AACzB,kBAAqB;AACrB,mBAA2B;AAE3B,SAAS,WAAW,EAAE,WAAW,GAAG,YAAY,GAA0C;AACxF,SAAO,4CAAC,oBAAM,GAAG,aAAa,eAAW,mBAAG,2BAAS,EAAE,gBAAgB,OAAO,CAAC,GAAG,SAAS,GAAG;AAChG;AAMO,SAAS,cAAc,EAAE,SAAS,YAAY,SAAS,GAA6B;AACzF,UAAQ,QAAQ,MAAM;AAAA,IACpB,KAAK,wBAAW;AACd,aAAO,4CAAC,UAAM,GAAG,YAAa,UAAS;AAAA,IAEzC,KAAK,wBAAW;AACd,aAAO,4CAAC,SAAK,GAAG,YAAa,UAAS;AAAA,IAExC,KAAK,wBAAW;AACd,aAAO,4CAAC,SAAK,GAAG,YAAa,UAAS;AAAA,IAExC,KAAK,wBAAW;AACd,aACE,4CAAC,cAAY,GAAG,YAAY,MAAM,QAAQ,QAAQ,QAC/C,UACH;AAAA,EAEN;AACF;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../../src/runtimes/react/controls/rich-text/components/Leaf/leaf.tsx"],"sourcesContent":["import { RenderLeafProps } from 'slate-react'\nimport useEnhancedTypography, { useTypographyClassName } from '../../../typography'\n\nexport function Leaf({ leaf, ...props }: RenderLeafProps) {\n // for each breakpoint fetch related resources and merge its value with its override\n const enhancedTypography = useEnhancedTypography(leaf.typography)\n\n // for each breakpoint shallow merge back up through the breakpoints and create a className\n const typographyClassName = useTypographyClassName(enhancedTypography)\n\n return (\n <span {...props.attributes} className={typographyClassName}>\n {props.children}\n </span>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAWI;AAVJ,wBAA8D;AAEvD,SAAS,KAAK,EAAE,MAAM,GAAG,MAAM,GAAoB;AAExD,QAAM,yBAAqB,kBAAAA,SAAsB,KAAK,UAAU;AAGhE,QAAM,0BAAsB,0CAAuB,kBAAkB;AAErE,SACE,4CAAC,UAAM,GAAG,MAAM,YAAY,WAAW,qBACpC,gBAAM,UACT;AAEJ;","names":["useEnhancedTypography"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/runtimes/react/element-imperative-handle.ts"],"sourcesContent":["import { BoxModelHandle, type BoxDisplayModel } from '../../state/modules/read-write/box-models'\nimport { Descriptor } from '../../prop-controllers/descriptors'\nimport { DescriptorsPropControllers } from '../../prop-controllers/instances'\nimport { isMeasurable, measure } from '../../state/modules/read-write/box-models'\nimport {\n isPropControllersHandle,\n PropControllersHandle,\n} from '../../state/modules/prop-controller-handles'\n\nexport class ElementImperativeHandle<\n T extends Record<string, Descriptor> = Record<string, Descriptor>,\n >\n implements BoxModelHandle, PropControllersHandle<T>\n{\n private getCurrent: () => unknown = () => null\n private lastPropControllers: DescriptorsPropControllers<T> | null = null\n\n callback(getCurrent: () => unknown) {\n const current = this.getCurrent()\n\n if (current === null) this.setPropControllers(null)\n\n this.getCurrent = getCurrent\n\n if (this.lastPropControllers !== null) this.setPropControllers(this.lastPropControllers)\n }\n\n getBoxModel(): BoxDisplayModel | null {\n const current = this.getCurrent()\n\n return isMeasurable(current) ? measure(current) : null\n }\n\n setPropControllers(propControllers: DescriptorsPropControllers<T> | null): void {\n const current = this.getCurrent()\n\n if (isPropControllersHandle(current)) current.setPropControllers(propControllers)\n\n this.lastPropControllers = propControllers\n }\n\n getDomNode(): Element | null {\n const current = this.getCurrent()\n\n if (isDomNodeHandle(current)) return current.getDomNode()\n\n return current instanceof Element ? current : null\n }\n}\n\ntype DomNodeHandle = {\n getDomNode(): Element | null\n}\n\nexport function isDomNodeHandle(value: unknown): value is DomNodeHandle {\n if (\n typeof value === 'object' &&\n value !== null &&\n 'getDomNode' in value &&\n typeof (value as { getDomNode: unknown }).getDomNode === 'function'\n ) {\n return true\n }\n\n return false\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,IAAAA,qBAAsC;AACtC,qCAGO;AAEA,MAAM,wBAIb;AAAA,EACU,aAA4B,MAAM;AAAA,EAClC,sBAA4D;AAAA,EAEpE,SAAS,YAA2B;AAClC,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,YAAY;AAAM,WAAK,mBAAmB,IAAI;AAElD,SAAK,aAAa;AAElB,QAAI,KAAK,wBAAwB;AAAM,WAAK,mBAAmB,KAAK,mBAAmB;AAAA,EACzF;AAAA,EAEA,cAAsC;AACpC,UAAM,UAAU,KAAK,WAAW;AAEhC,eAAO,iCAAa,OAAO,QAAI,4BAAQ,OAAO,IAAI;AAAA,EACpD;AAAA,EAEA,mBAAmB,iBAA6D;AAC9E,UAAM,UAAU,KAAK,WAAW;AAEhC,YAAI,wDAAwB,OAAO;AAAG,cAAQ,mBAAmB,eAAe;AAEhF,SAAK,sBAAsB;AAAA,EAC7B;AAAA,EAEA,aAA6B;AAC3B,UAAM,UAAU,KAAK,WAAW;AAEhC,QAAI,gBAAgB,OAAO;AAAG,aAAO,QAAQ,WAAW;AAExD,WAAO,mBAAmB,UAAU,UAAU;AAAA,EAChD;AACF;AAMO,SAAS,gBAAgB,OAAwC;AACtE,MACE,OAAO,UAAU,YACjB,UAAU,QACV,gBAAgB,SAChB,OAAQ,MAAkC,eAAe,YACzD;AACA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;","names":["import_box_models"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/runtimes/react/find-dom-node.tsx"],"sourcesContent":["import {\n Component,\n MutableRefObject,\n ReactNode,\n forwardRef,\n useImperativeHandle,\n useRef,\n} from 'react'\n\nimport { findDOMNode } from './lib/react-dom'\n\n/**\n * @see https://github.com/facebook/react/blob/a2505792ed17fd4d7ddc69561053c3ac90899491/packages/react-reconciler/src/ReactFiberReconciler.new.js#L179-L244\n * @see https://github.com/facebook/react/commit/c3b283964108b0e8dbcf1f9eb2e7e67815e39dfb\n */\nfunction suppressWarningAndFindDomNode(\n instance: Component | null | undefined,\n): Element | Text | null {\n const error = console.error\n\n console.error = (...args) => {\n if (typeof args[0] === 'string' && args[0].includes('%s is deprecated in StrictMode.')) return\n if (typeof args[0] === 'string' && args[0].includes('findDOMNode is deprecated')) return\n\n return error.apply(console, args)\n }\n\n const foundDomNode = findDOMNode(instance)\n\n console.error = error\n\n return foundDomNode\n}\n\ntype FindDomNodeClassComponentProps = {\n innerRef: MutableRefObject<(() => Element | Text | null) | null>\n children?: ReactNode\n}\n\nclass FindDomNodeClassComponent extends Component<FindDomNodeClassComponentProps> {\n constructor(props: FindDomNodeClassComponentProps) {\n super(props)\n\n this.props.innerRef.current = () => suppressWarningAndFindDomNode(this)\n }\n\n render() {\n return <>{this.props.children}</>\n }\n}\n\ntype FindDomNodeProps = {\n children?: ReactNode\n}\n\nexport const FindDomNode = forwardRef<() => Element | Text | null, FindDomNodeProps>(\n function FindDomNode(props, ref) {\n const findDomNodeRef = useRef<() => Element | Text | null>(null)\n\n useImperativeHandle(ref, () => () => findDomNodeRef.current?.() ?? null, [])\n\n return <FindDomNodeClassComponent {...props} innerRef={findDomNodeRef} />\n },\n)\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA+CW;AA/CX,mBAOO;AAEP,uBAA4B;AAM5B,SAAS,8BACP,UACuB;AACvB,QAAM,QAAQ,QAAQ;AAEtB,UAAQ,QAAQ,IAAI,SAAS;AAC3B,QAAI,OAAO,KAAK,CAAC,MAAM,YAAY,KAAK,CAAC,EAAE,SAAS,iCAAiC;AAAG;AACxF,QAAI,OAAO,KAAK,CAAC,MAAM,YAAY,KAAK,CAAC,EAAE,SAAS,2BAA2B;AAAG;AAElF,WAAO,MAAM,MAAM,SAAS,IAAI;AAAA,EAClC;AAEA,QAAM,mBAAe,8BAAY,QAAQ;AAEzC,UAAQ,QAAQ;AAEhB,SAAO;AACT;AAOA,MAAM,kCAAkC,uBAA0C;AAAA,EAChF,YAAY,OAAuC;AACjD,UAAM,KAAK;AAEX,SAAK,MAAM,SAAS,UAAU,MAAM,8BAA8B,IAAI;AAAA,EACxE;AAAA,EAEA,SAAS;AACP,WAAO,2EAAG,eAAK,MAAM,UAAS;AAAA,EAChC;AACF;AAMO,MAAM,kBAAc;AAAA,EACzB,SAASA,aAAY,OAAO,KAAK;AAC/B,UAAM,qBAAiB,qBAAoC,IAAI;AAE/D,0CAAoB,KAAK,MAAM,MAAM,eAAe,UAAU,KAAK,MAAM,CAAC,CAAC;AAE3E,WAAO,4CAAC,6BAA2B,GAAG,OAAO,UAAU,gBAAgB;AAAA,EACzE;AACF;","names":["FindDomNode"]}
@@ -25,8 +25,7 @@ var import_react = require("react");
25
25
  var import_serialize = require("@emotion/serialize");
26
26
  var import_controls = require("@makeswift/controls");
27
27
  var import_root_style_registry = require("../root-style-registry");
28
- var import_style = require("../controls/style");
29
- var import_typography = require("../controls/typography");
28
+ var import_resolved_style_to_css = require("../lib/resolved-style-to-css");
30
29
  var import_use_breakpoints = require("./use-breakpoints");
31
30
  var import_use_css_id = require("./use-css-id");
32
31
  var import_use_style = require("../use-style");
@@ -36,7 +35,9 @@ function useStylesheetFactory() {
36
35
  const cache = (0, import_root_style_registry.useCache)();
37
36
  const componentUid = (0, import_use_css_id.useCssId)();
38
37
  const computedStyles = (0, import_react.useRef)({}).current;
39
- const boxModelCallbacks = (0, import_react.useRef)({}).current;
38
+ const boxModelCallbacks = (0, import_react.useRef)(
39
+ {}
40
+ ).current;
40
41
  return (0, import_react.useMemo)(() => {
41
42
  const getStylesheet = (styleSheetId) => ({
42
43
  breakpoints() {
@@ -75,36 +76,8 @@ function useStylesheetFactory() {
75
76
  };
76
77
  }, [breakpoints, cache, componentUid]);
77
78
  }
78
- function isTypographyStyle(style) {
79
- return Array.isArray(style);
80
- }
81
- function isStyleV2(style) {
82
- return typeof style === "object" && "getStyle" in style && typeof style.getStyle === "function";
83
- }
84
- function styleV2Css(breakpoints, style) {
85
- return {
86
- ...style.getStyle((0, import_controls.getBaseBreakpoint)(breakpoints)),
87
- ...breakpoints.reduce(
88
- (styles, breakpoint) => ({
89
- ...styles,
90
- [(0, import_controls.getBreakpointMediaQuery)(breakpoint)]: style.getStyle(breakpoint)
91
- }),
92
- {}
93
- )
94
- };
95
- }
96
- function resolvedStyleToCss(breakpoints, style) {
97
- if (isTypographyStyle(style)) {
98
- return (0, import_typography.typographyCss)(breakpoints, style);
99
- }
100
- if (isStyleV2(style)) {
101
- return styleV2Css(breakpoints, style);
102
- }
103
- const { properties, styleData } = style;
104
- return (0, import_style.styleV1Css)(breakpoints, styleData, properties);
105
- }
106
79
  function serializeStyle(breakpoints, style, cache) {
107
- const css = resolvedStyleToCss(breakpoints, style);
80
+ const css = (0, import_resolved_style_to_css.resolvedStyleToCss)(breakpoints, style);
108
81
  return (0, import_serialize.serializeStyles)([css], cache.registered);
109
82
  }
110
83
  // Annotate the CommonJS export names for ESM import in node:
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-stylesheet-factory.ts"],"sourcesContent":["import { useMemo, useEffect, useRef } from 'react'\nimport { type CSSObject, serializeStyles } from '@emotion/serialize'\nimport { type EmotionCache } from '@emotion/cache'\nimport { type SerializedStyles } from '@emotion/utils'\n\nimport {\n type BoxDisplayModel,\n type Breakpoints,\n type Stylesheet,\n type ResolvedStyle,\n type ResolvedStyleV2,\n type ResolvedTypographyStyle,\n isNotNil,\n getBaseBreakpoint,\n getBreakpointMediaQuery,\n} from '@makeswift/controls'\n\nimport { useCache } from '../root-style-registry'\nimport { styleV1Css } from '../controls/style'\nimport { typographyCss } from '../controls/typography'\n\nimport { useBreakpoints } from './use-breakpoints'\nimport { useCssId } from './use-css-id'\nimport { useStyles, serializedStyleClassName } from '../use-style'\nimport { pollBoxModel } from '../poll-box-model'\n\nexport type StylesheetFactory = {\n get(propName: string): Stylesheet\n useDefinedStyles(): void\n}\n\nexport function useStylesheetFactory(): StylesheetFactory {\n const breakpoints = useBreakpoints()\n const cache = useCache()\n const componentUid = useCssId()\n\n const computedStyles = useRef<Record<string, SerializedStyles>>({}).current\n const boxModelCallbacks = useRef<Record<string, (boxModel: BoxDisplayModel | null) => void>>({}).current\n\n return useMemo(() => {\n const getStylesheet = (styleSheetId: string): Stylesheet => ({\n breakpoints(): Breakpoints {\n return breakpoints\n },\n\n defineStyle(\n style: ResolvedStyle,\n onBoxModelChange?: (boxModel: BoxDisplayModel | null) => void,\n ): string {\n const serialized = serializeStyle(breakpoints, style, cache)\n const uid = `u-${componentUid}-${styleSheetId}`\n computedStyles[uid] = serialized\n\n const className = serializedStyleClassName(cache, serialized)\n if (!onBoxModelChange) return className\n\n boxModelCallbacks[uid] = onBoxModelChange\n return `${className} ${uid}`\n },\n\n child(id: string): Stylesheet {\n return getStylesheet(`${styleSheetId}-${id}`)\n },\n })\n\n return {\n get(propName: string): Stylesheet {\n return getStylesheet(propName)\n },\n\n useDefinedStyles() {\n useStyles(cache, Object.values(computedStyles))\n\n useEffect(() => {\n const unsubscribes = Object.entries(boxModelCallbacks)\n .map(([uid, callback]) =>\n callback != null\n ? pollBoxModel({\n element: document.querySelector(`.${uid}`),\n onBoxModelChange: callback,\n })\n : undefined,\n )\n .filter(isNotNil)\n\n return () => unsubscribes.forEach(fn => fn())\n }, [Object.keys(boxModelCallbacks).join(' ')])\n },\n }\n }, [breakpoints, cache, componentUid])\n}\n\nfunction isTypographyStyle(style: ResolvedStyle): style is ResolvedTypographyStyle {\n return Array.isArray(style)\n}\n\nfunction isStyleV2(style: ResolvedStyle): style is ResolvedStyleV2 {\n return typeof style === 'object' && 'getStyle' in style && typeof style.getStyle === 'function'\n}\n\nfunction styleV2Css(breakpoints: Breakpoints, style: ResolvedStyleV2<CSSObject>): CSSObject {\n return {\n ...style.getStyle(getBaseBreakpoint(breakpoints)),\n ...breakpoints.reduce(\n (styles, breakpoint) => ({\n ...styles,\n [getBreakpointMediaQuery(breakpoint)]: style.getStyle(breakpoint),\n }),\n {},\n ),\n }\n}\n\nfunction resolvedStyleToCss(breakpoints: Breakpoints, style: ResolvedStyle) {\n if (isTypographyStyle(style)) {\n return typographyCss(breakpoints, style)\n }\n\n if (isStyleV2(style)) {\n return styleV2Css(breakpoints, style as ResolvedStyleV2<CSSObject>)\n }\n\n const { properties, styleData } = style\n return styleV1Css(breakpoints, styleData, properties)\n}\n\nfunction serializeStyle(\n breakpoints: Breakpoints,\n style: ResolvedStyle,\n cache: EmotionCache,\n): SerializedStyles {\n const css = resolvedStyleToCss(breakpoints, style)\n return serializeStyles([css], cache.registered)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2C;AAC3C,uBAAgD;AAIhD,sBAUO;AAEP,iCAAyB;AACzB,mBAA2B;AAC3B,wBAA8B;AAE9B,6BAA+B;AAC/B,wBAAyB;AACzB,uBAAoD;AACpD,4BAA6B;AAOtB,SAAS,uBAA0C;AACxD,QAAM,kBAAc,uCAAe;AACnC,QAAM,YAAQ,qCAAS;AACvB,QAAM,mBAAe,4BAAS;AAE9B,QAAM,qBAAiB,qBAAyC,CAAC,CAAC,EAAE;AACpE,QAAM,wBAAoB,qBAAmE,CAAC,CAAC,EAAE;AAEjG,aAAO,sBAAQ,MAAM;AACnB,UAAM,gBAAgB,CAAC,kBAAsC;AAAA,MAC3D,cAA2B;AACzB,eAAO;AAAA,MACT;AAAA,MAEA,YACE,OACA,kBACQ;AACR,cAAM,aAAa,eAAe,aAAa,OAAO,KAAK;AAC3D,cAAM,MAAM,KAAK,YAAY,IAAI,YAAY;AAC7C,uBAAe,GAAG,IAAI;AAEtB,cAAM,gBAAY,2CAAyB,OAAO,UAAU;AAC5D,YAAI,CAAC;AAAkB,iBAAO;AAE9B,0BAAkB,GAAG,IAAI;AACzB,eAAO,GAAG,SAAS,IAAI,GAAG;AAAA,MAC5B;AAAA,MAEA,MAAM,IAAwB;AAC5B,eAAO,cAAc,GAAG,YAAY,IAAI,EAAE,EAAE;AAAA,MAC9C;AAAA,IACF;AAEA,WAAO;AAAA,MACL,IAAI,UAA8B;AAChC,eAAO,cAAc,QAAQ;AAAA,MAC/B;AAAA,MAEA,mBAAmB;AACjB,wCAAU,OAAO,OAAO,OAAO,cAAc,CAAC;AAE9C,oCAAU,MAAM;AACd,gBAAM,eAAe,OAAO,QAAQ,iBAAiB,EAClD;AAAA,YAAI,CAAC,CAAC,KAAK,QAAQ,MAClB,YAAY,WACR,oCAAa;AAAA,cACX,SAAS,SAAS,cAAc,IAAI,GAAG,EAAE;AAAA,cACzC,kBAAkB;AAAA,YACpB,CAAC,IACD;AAAA,UACN,EACC,OAAO,wBAAQ;AAElB,iBAAO,MAAM,aAAa,QAAQ,QAAM,GAAG,CAAC;AAAA,QAC9C,GAAG,CAAC,OAAO,KAAK,iBAAiB,EAAE,KAAK,GAAG,CAAC,CAAC;AAAA,MAC/C;AAAA,IACF;AAAA,EACF,GAAG,CAAC,aAAa,OAAO,YAAY,CAAC;AACvC;AAEA,SAAS,kBAAkB,OAAwD;AACjF,SAAO,MAAM,QAAQ,KAAK;AAC5B;AAEA,SAAS,UAAU,OAAgD;AACjE,SAAO,OAAO,UAAU,YAAY,cAAc,SAAS,OAAO,MAAM,aAAa;AACvF;AAEA,SAAS,WAAW,aAA0B,OAA8C;AAC1F,SAAO;AAAA,IACL,GAAG,MAAM,aAAS,mCAAkB,WAAW,CAAC;AAAA,IAChD,GAAG,YAAY;AAAA,MACb,CAAC,QAAQ,gBAAgB;AAAA,QACvB,GAAG;AAAA,QACH,KAAC,yCAAwB,UAAU,CAAC,GAAG,MAAM,SAAS,UAAU;AAAA,MAClE;AAAA,MACA,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEA,SAAS,mBAAmB,aAA0B,OAAsB;AAC1E,MAAI,kBAAkB,KAAK,GAAG;AAC5B,eAAO,iCAAc,aAAa,KAAK;AAAA,EACzC;AAEA,MAAI,UAAU,KAAK,GAAG;AACpB,WAAO,WAAW,aAAa,KAAmC;AAAA,EACpE;AAEA,QAAM,EAAE,YAAY,UAAU,IAAI;AAClC,aAAO,yBAAW,aAAa,WAAW,UAAU;AACtD;AAEA,SAAS,eACP,aACA,OACA,OACkB;AAClB,QAAM,MAAM,mBAAmB,aAAa,KAAK;AACjD,aAAO,kCAAgB,CAAC,GAAG,GAAG,MAAM,UAAU;AAChD;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/hooks/use-stylesheet-factory.ts"],"sourcesContent":["import { useMemo, useEffect, useRef } from 'react'\nimport { serializeStyles } from '@emotion/serialize'\nimport { type EmotionCache } from '@emotion/cache'\nimport { type SerializedStyles } from '@emotion/utils'\n\nimport {\n type BoxDisplayModel,\n type Breakpoints,\n type Stylesheet,\n type ResolvedStyle,\n isNotNil,\n} from '@makeswift/controls'\n\nimport { useCache } from '../root-style-registry'\nimport { resolvedStyleToCss } from '../lib/resolved-style-to-css'\n\nimport { useBreakpoints } from './use-breakpoints'\nimport { useCssId } from './use-css-id'\nimport { useStyles, serializedStyleClassName } from '../use-style'\nimport { pollBoxModel } from '../poll-box-model'\n\nexport type StylesheetFactory = {\n get(propName: string): Stylesheet\n useDefinedStyles(): void\n}\n\nexport function useStylesheetFactory(): StylesheetFactory {\n const breakpoints = useBreakpoints()\n const cache = useCache()\n const componentUid = useCssId()\n\n const computedStyles = useRef<Record<string, SerializedStyles>>({}).current\n const boxModelCallbacks = useRef<Record<string, (boxModel: BoxDisplayModel | null) => void>>(\n {},\n ).current\n\n return useMemo(() => {\n const getStylesheet = (styleSheetId: string): Stylesheet => ({\n breakpoints(): Breakpoints {\n return breakpoints\n },\n\n defineStyle(\n style: ResolvedStyle,\n onBoxModelChange?: (boxModel: BoxDisplayModel | null) => void,\n ): string {\n const serialized = serializeStyle(breakpoints, style, cache)\n const uid = `u-${componentUid}-${styleSheetId}`\n computedStyles[uid] = serialized\n\n const className = serializedStyleClassName(cache, serialized)\n if (!onBoxModelChange) return className\n\n boxModelCallbacks[uid] = onBoxModelChange\n return `${className} ${uid}`\n },\n\n child(id: string): Stylesheet {\n return getStylesheet(`${styleSheetId}-${id}`)\n },\n })\n\n return {\n get(propName: string): Stylesheet {\n return getStylesheet(propName)\n },\n\n useDefinedStyles() {\n useStyles(cache, Object.values(computedStyles))\n\n useEffect(() => {\n const unsubscribes = Object.entries(boxModelCallbacks)\n .map(([uid, callback]) =>\n callback != null\n ? pollBoxModel({\n element: document.querySelector(`.${uid}`),\n onBoxModelChange: callback,\n })\n : undefined,\n )\n .filter(isNotNil)\n\n return () => unsubscribes.forEach(fn => fn())\n }, [Object.keys(boxModelCallbacks).join(' ')])\n },\n }\n }, [breakpoints, cache, componentUid])\n}\n\nfunction serializeStyle(\n breakpoints: Breakpoints,\n style: ResolvedStyle,\n cache: EmotionCache,\n): SerializedStyles {\n const css = resolvedStyleToCss(breakpoints, style)\n return serializeStyles([css], cache.registered)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2C;AAC3C,uBAAgC;AAIhC,sBAMO;AAEP,iCAAyB;AACzB,mCAAmC;AAEnC,6BAA+B;AAC/B,wBAAyB;AACzB,uBAAoD;AACpD,4BAA6B;AAOtB,SAAS,uBAA0C;AACxD,QAAM,kBAAc,uCAAe;AACnC,QAAM,YAAQ,qCAAS;AACvB,QAAM,mBAAe,4BAAS;AAE9B,QAAM,qBAAiB,qBAAyC,CAAC,CAAC,EAAE;AACpE,QAAM,wBAAoB;AAAA,IACxB,CAAC;AAAA,EACH,EAAE;AAEF,aAAO,sBAAQ,MAAM;AACnB,UAAM,gBAAgB,CAAC,kBAAsC;AAAA,MAC3D,cAA2B;AACzB,eAAO;AAAA,MACT;AAAA,MAEA,YACE,OACA,kBACQ;AACR,cAAM,aAAa,eAAe,aAAa,OAAO,KAAK;AAC3D,cAAM,MAAM,KAAK,YAAY,IAAI,YAAY;AAC7C,uBAAe,GAAG,IAAI;AAEtB,cAAM,gBAAY,2CAAyB,OAAO,UAAU;AAC5D,YAAI,CAAC;AAAkB,iBAAO;AAE9B,0BAAkB,GAAG,IAAI;AACzB,eAAO,GAAG,SAAS,IAAI,GAAG;AAAA,MAC5B;AAAA,MAEA,MAAM,IAAwB;AAC5B,eAAO,cAAc,GAAG,YAAY,IAAI,EAAE,EAAE;AAAA,MAC9C;AAAA,IACF;AAEA,WAAO;AAAA,MACL,IAAI,UAA8B;AAChC,eAAO,cAAc,QAAQ;AAAA,MAC/B;AAAA,MAEA,mBAAmB;AACjB,wCAAU,OAAO,OAAO,OAAO,cAAc,CAAC;AAE9C,oCAAU,MAAM;AACd,gBAAM,eAAe,OAAO,QAAQ,iBAAiB,EAClD;AAAA,YAAI,CAAC,CAAC,KAAK,QAAQ,MAClB,YAAY,WACR,oCAAa;AAAA,cACX,SAAS,SAAS,cAAc,IAAI,GAAG,EAAE;AAAA,cACzC,kBAAkB;AAAA,YACpB,CAAC,IACD;AAAA,UACN,EACC,OAAO,wBAAQ;AAElB,iBAAO,MAAM,aAAa,QAAQ,QAAM,GAAG,CAAC;AAAA,QAC9C,GAAG,CAAC,OAAO,KAAK,iBAAiB,EAAE,KAAK,GAAG,CAAC,CAAC;AAAA,MAC/C;AAAA,IACF;AAAA,EACF,GAAG,CAAC,aAAa,OAAO,YAAY,CAAC;AACvC;AAEA,SAAS,eACP,aACA,OACA,OACkB;AAClB,QAAM,UAAM,iDAAmB,aAAa,KAAK;AACjD,aAAO,kCAAgB,CAAC,GAAG,GAAG,MAAM,UAAU;AAChD;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/runtimes/react/host-api-client.tsx"],"sourcesContent":["'use client'\n\nimport { MakeswiftHostApiClient } from '../../api/client'\n\nimport { useStore } from './hooks/use-store'\n\nexport function useMakeswiftHostApiClient(): MakeswiftHostApiClient {\n return useStore().hostApiClient\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAIA,uBAAyB;AAElB,SAAS,4BAAoD;AAClE,aAAO,2BAAS,EAAE;AACpB;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/runtimes/react/index.ts"],"sourcesContent":["export { Element } from './components/Element'\nexport { DocumentRoot } from './components/DocumentRoot'\nexport { RuntimeProvider } from './components/RuntimeProvider'\n\nexport { useBreakpoints } from './hooks/use-breakpoints'\nexport { useBuilderEditMode } from './hooks/use-builder-edit-mode'\nexport { useDocumentKey } from './hooks/use-document-context'\nexport { useElementId } from './hooks/use-element-id'\nexport { useIsInBuilder } from './hooks/use-is-in-builder'\nexport { useIsReadOnly } from './hooks/use-is-read-only'\nexport { useSelector } from './hooks/use-selector'\nexport { useStore } from './hooks/use-store'\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAwB;AACxB,0BAA6B;AAC7B,6BAAgC;AAEhC,6BAA+B;AAC/B,mCAAmC;AACnC,kCAA+B;AAC/B,4BAA6B;AAC7B,+BAA+B;AAC/B,8BAA8B;AAC9B,0BAA4B;AAC5B,uBAAyB;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/runtimes/react/legacy-controls.tsx"],"sourcesContent":["import { ReactNode } from 'react'\nimport {\n useBoxShadow,\n useBorder as useBorderData,\n useLinkPropControllerData,\n useCheckboxPropControllerData,\n useDatePropControllerData,\n useFontPropControllerData,\n useVideoPropControllerData,\n useTablePropControllerData,\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'\n\nimport { RenderHook } from './components'\nimport { useStyle } from './use-style'\n\nimport {\n Types as PropControllerTypes,\n getShadowsPropControllerDataResponsiveShadowsData,\n ShadowsPropControllerData,\n Shadows,\n ResponsiveValue,\n BorderPropControllerFormat,\n ResponsiveBorderData,\n BorderPropControllerData,\n getBorderPropControllerDataResponsiveBorderData,\n getBorderRadiusPropControllerDataResponsiveBorderRadiusData,\n BorderRadiusPropControllerData,\n BorderRadiusPropControllerFormat,\n MarginPropControllerFormat,\n MarginPropControllerData,\n getMarginPropControllerDataResponsiveMarginData,\n PaddingPropControllerData,\n getPaddingPropControllerDataResponsivePaddingData,\n PaddingPropControllerFormat,\n WidthPropControllerData,\n getWidthPropControllerDataResponsiveLengthData,\n WidthPropControllerFormat,\n WidthDescriptor,\n GapX,\n ResponsiveNumber,\n ResponsiveIconRadioGroup,\n ResponsiveSelect,\n ResponsiveOpacity,\n getSocialLinksPropControllerDataSocialLinksData,\n} from '@makeswift/prop-controllers'\n\nimport { LegacyDescriptor } from '../../prop-controllers/descriptors'\nimport { useResponsiveLengthPropControllerData } from '../../components/hooks/useResponsiveLengthPropControllerData'\nimport { useNumberPropControllerData } from '../../components/hooks/useNumberPropControllerData'\nimport { useResponsiveColorPropControllerData } from '../../components/hooks/useResponsiveColorPropControllerData'\nimport { useTextStylePropControllerData } from '../../components/hooks/useTextStylePropControllerData'\nimport { useNavigationLinksPropControllerData } from '../../components/hooks/useNavigationLinksPropControllerData'\nimport { useTextAreaPropControllerData } from '../../components/hooks/useTextAreaPropControllerData'\nimport { usePropValue } from '../../components/hooks/usePropValue'\nimport { useGapYPropControllerData } from '../../components/hooks/useGapYPropControllerData'\nimport { useElementIDPropControllerData } from '../../components/hooks/useElementIDPropControllerData'\nimport { useTableFormFieldsPropControllerData } from '../../components/hooks/useTableFormFieldsPropControllerData'\nimport { useGridPropControllerData } from '../../components/hooks/useGridPropControllerData'\nimport { useImagePropControllerData } from '../../components/hooks/useImagePropControllerData'\nimport { useImagesPropControllerData } from '../../components/hooks/useImagesPropControllerData'\nimport { useBackgroundsPropControllerData } from '../../components/hooks/useBackgroundsPropControllerData'\nimport { useTextInputPropControllerData } from '../../components/hooks/useTextInputPropControllerData'\n\nexport type ResponsiveColor = ResponsiveValue<ColorValue>\n\nfunction useWidthStyle(\n data: WidthPropControllerData | undefined,\n descriptor: WidthDescriptor,\n): string {\n const value = getWidthPropControllerDataResponsiveLengthData(data)\n\n return useStyle(useResponsiveWidth(value, descriptor.options.defaultValue))\n}\n\nfunction usePaddingStyle(data: PaddingPropControllerData | undefined): string {\n const value = getPaddingPropControllerDataResponsivePaddingData(data)\n\n return useStyle(useResponsivePadding(value))\n}\n\nfunction useMarginStyle(data: MarginPropControllerData | undefined): string {\n const value = getMarginPropControllerDataResponsiveMarginData(data)\n\n return useStyle(useResponsiveMargin(value))\n}\n\nfunction useBorderRadiusStyle(data: BorderRadiusPropControllerData | undefined): string {\n const value = getBorderRadiusPropControllerDataResponsiveBorderRadiusData(data)\n\n return useStyle(useResponsiveBorderRadius(value))\n}\n\nfunction useShadowsStyle(data: ShadowsPropControllerData | undefined): string {\n return useStyle(useResponsiveShadow(useBoxShadow(data) ?? undefined))\n}\n\nfunction useBorderStyle(\n data: BorderPropControllerData | undefined,\n): string | ResponsiveBorderData | undefined {\n const value = getBorderPropControllerDataResponsiveBorderData(data)\n const borderData = useBorderData(value)\n\n return useStyle(useResponsiveBorder(borderData ?? undefined))\n}\n\nexport function resolveLegacyDescriptorProp(\n descriptor: LegacyDescriptor,\n propName: string,\n propData: any,\n props: Record<string, any>,\n renderFn: (props: Record<string, unknown>) => ReactNode,\n) {\n switch (descriptor.type) {\n case PropControllerTypes.Width:\n switch (descriptor.options.format) {\n case WidthPropControllerFormat.ClassName:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useWidthStyle}\n parameters={[propData, descriptor]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case WidthPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getWidthPropControllerDataResponsiveLengthData(propData),\n })\n }\n\n case PropControllerTypes.Padding:\n switch (descriptor.options.format) {\n case PaddingPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={usePaddingStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PaddingPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getPaddingPropControllerDataResponsivePaddingData(propData),\n })\n }\n\n case PropControllerTypes.Margin:\n switch (descriptor.options.format) {\n case MarginPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useMarginStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case MarginPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getMarginPropControllerDataResponsiveMarginData(propData),\n })\n }\n\n case PropControllerTypes.BorderRadius:\n switch (descriptor.options.format) {\n case BorderRadiusPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useBorderRadiusStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case BorderRadiusPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getBorderRadiusPropControllerDataResponsiveBorderRadiusData(propData),\n })\n }\n\n case PropControllerTypes.Backgrounds:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useBackgroundsPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Image:\n return (\n <RenderHook key={descriptor.type} hook={useImagePropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Images:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useImagesPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Number:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useNumberPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveNumber:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveNumber, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveIconRadioGroup:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveIconRadioGroup, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveSelect:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveSelect, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveOpacity:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(ResponsiveOpacity, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ResponsiveLength:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveLengthPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Shadows:\n switch (descriptor.options.format) {\n case Shadows.Format.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useShadowsStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case Shadows.Format.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getShadowsPropControllerDataResponsiveShadowsData(propData),\n })\n }\n\n case PropControllerTypes.Border:\n switch (descriptor.options.format) {\n case BorderPropControllerFormat.ClassName:\n return (\n <RenderHook key={descriptor.type} hook={useBorderStyle} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case BorderPropControllerFormat.ResponsiveValue:\n default:\n return renderFn({\n ...props,\n [propName]: getBorderPropControllerDataResponsiveBorderData(propData),\n })\n }\n\n case PropControllerTypes.ResponsiveColor:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useResponsiveColorPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Link:\n return (\n <RenderHook key={descriptor.type} hook={useLinkPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Checkbox:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useCheckboxPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Date:\n return (\n <RenderHook key={descriptor.type} hook={useDatePropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Font:\n return (\n <RenderHook key={descriptor.type} hook={useFontPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Video:\n return (\n <RenderHook key={descriptor.type} hook={useVideoPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.Table:\n return (\n <RenderHook key={descriptor.type} hook={useTablePropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextStyle:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextStylePropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.NavigationLinks:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useNavigationLinksPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextInput:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextInputPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TextArea:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTextAreaPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.GapX:\n return (\n <RenderHook\n key={descriptor.type}\n hook={data => usePropValue(GapX, data)}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.GapY:\n return (\n <RenderHook key={descriptor.type} hook={useGapYPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.ElementID:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useElementIDPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.TableFormFields:\n return (\n <RenderHook\n key={descriptor.type}\n hook={useTableFormFieldsPropControllerData}\n parameters={[propData]}\n >\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n case PropControllerTypes.SocialLinks:\n return renderFn({\n ...props,\n [propName]: getSocialLinksPropControllerDataSocialLinksData(propData),\n })\n\n case PropControllerTypes.Grid:\n return (\n <RenderHook key={descriptor.type} hook={useGridPropControllerData} parameters={[propData]}>\n {value => renderFn({ ...props, [propName]: value })}\n </RenderHook>\n )\n\n default:\n return renderFn({ ...props, [propName]: propData })\n }\n}\n"],"mappings":"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","names":["useBorderData","PropControllerTypes"]}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var resolved_style_to_css_exports = {};
20
+ __export(resolved_style_to_css_exports, {
21
+ resolvedStyleToCss: () => resolvedStyleToCss
22
+ });
23
+ module.exports = __toCommonJS(resolved_style_to_css_exports);
24
+ var import_controls = require("@makeswift/controls");
25
+ var import_style = require("../controls/style");
26
+ var import_typography = require("../controls/typography");
27
+ function isTypographyStyle(style) {
28
+ return Array.isArray(style);
29
+ }
30
+ function isStyleV2(style) {
31
+ return typeof style === "object" && "getStyle" in style && typeof style.getStyle === "function";
32
+ }
33
+ function styleV2Css(breakpoints, style) {
34
+ return {
35
+ ...style.getStyle((0, import_controls.getBaseBreakpoint)(breakpoints)),
36
+ ...breakpoints.reduce(
37
+ (styles, breakpoint) => ({
38
+ ...styles,
39
+ [(0, import_controls.getBreakpointMediaQuery)(breakpoint)]: style.getStyle(breakpoint)
40
+ }),
41
+ {}
42
+ )
43
+ };
44
+ }
45
+ function resolvedStyleToCss(breakpoints, style) {
46
+ if (isTypographyStyle(style)) {
47
+ return (0, import_typography.typographyCss)(breakpoints, style);
48
+ }
49
+ if (isStyleV2(style)) {
50
+ return styleV2Css(breakpoints, style);
51
+ }
52
+ const { properties, styleData } = style;
53
+ return (0, import_style.styleV1Css)(breakpoints, styleData, properties);
54
+ }
55
+ // Annotate the CommonJS export names for ESM import in node:
56
+ 0 && (module.exports = {
57
+ resolvedStyleToCss
58
+ });
59
+ //# sourceMappingURL=resolved-style-to-css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/lib/resolved-style-to-css.ts"],"sourcesContent":["import { type CSSObject } from '@emotion/serialize'\n\nimport {\n type Breakpoints,\n type ResolvedStyle,\n type ResolvedStyleV2,\n type ResolvedTypographyStyle,\n getBaseBreakpoint,\n getBreakpointMediaQuery,\n} from '@makeswift/controls'\n\nimport { styleV1Css } from '../controls/style'\nimport { typographyCss } from '../controls/typography'\n\nfunction isTypographyStyle(style: ResolvedStyle): style is ResolvedTypographyStyle {\n return Array.isArray(style)\n}\n\nfunction isStyleV2(style: ResolvedStyle): style is ResolvedStyleV2 {\n return typeof style === 'object' && 'getStyle' in style && typeof style.getStyle === 'function'\n}\n\nfunction styleV2Css(breakpoints: Breakpoints, style: ResolvedStyleV2<CSSObject>): CSSObject {\n return {\n ...style.getStyle(getBaseBreakpoint(breakpoints)),\n ...breakpoints.reduce(\n (styles, breakpoint) => ({\n ...styles,\n [getBreakpointMediaQuery(breakpoint)]: style.getStyle(breakpoint),\n }),\n {},\n ),\n }\n}\n\nexport function resolvedStyleToCss(breakpoints: Breakpoints, style: ResolvedStyle): CSSObject {\n if (isTypographyStyle(style)) {\n return typographyCss(breakpoints, style)\n }\n\n if (isStyleV2(style)) {\n return styleV2Css(breakpoints, style as ResolvedStyleV2<CSSObject>)\n }\n\n const { properties, styleData } = style\n return styleV1Css(breakpoints, styleData, properties)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,sBAOO;AAEP,mBAA2B;AAC3B,wBAA8B;AAE9B,SAAS,kBAAkB,OAAwD;AACjF,SAAO,MAAM,QAAQ,KAAK;AAC5B;AAEA,SAAS,UAAU,OAAgD;AACjE,SAAO,OAAO,UAAU,YAAY,cAAc,SAAS,OAAO,MAAM,aAAa;AACvF;AAEA,SAAS,WAAW,aAA0B,OAA8C;AAC1F,SAAO;AAAA,IACL,GAAG,MAAM,aAAS,mCAAkB,WAAW,CAAC;AAAA,IAChD,GAAG,YAAY;AAAA,MACb,CAAC,QAAQ,gBAAgB;AAAA,QACvB,GAAG;AAAA,QACH,KAAC,yCAAwB,UAAU,CAAC,GAAG,MAAM,SAAS,UAAU;AAAA,MAClE;AAAA,MACA,CAAC;AAAA,IACH;AAAA,EACF;AACF;AAEO,SAAS,mBAAmB,aAA0B,OAAiC;AAC5F,MAAI,kBAAkB,KAAK,GAAG;AAC5B,eAAO,iCAAc,aAAa,KAAK;AAAA,EACzC;AAEA,MAAI,UAAU,KAAK,GAAG;AACpB,WAAO,WAAW,aAAa,KAAmC;AAAA,EACpE;AAEA,QAAM,EAAE,YAAY,UAAU,IAAI;AAClC,aAAO,yBAAW,aAAa,WAAW,UAAU;AACtD;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/slate/BlockPlugin/indent.ts"],"sourcesContent":["import { Editor, Node, Path, Transforms } from 'slate'\nimport { Slate } from '@makeswift/controls'\n\nimport { ElementUtils } from '../utils/element'\nimport { LIST_ITEM_LIST_POSITION } from './constants'\nimport { filterForSubtreeRoots } from './utils/filterForSubtreeRoots'\nimport { getSelectedListItems } from './utils/getSelectedListItems'\n\nexport function indentPath(editor: Editor, path: Path) {\n const parent = Node.parent(editor, path)\n if (!path || !Path.hasPrevious(path) || !Slate.isList(parent)) return\n\n const previosPath = Path.previous(path)\n\n const previousChildListPath = [...previosPath, LIST_ITEM_LIST_POSITION]\n const previousHasChildList = Node.has(editor, previousChildListPath)\n\n Editor.withoutNormalizing(editor, () => {\n if (!previousHasChildList) {\n Transforms.insertNodes(editor, ElementUtils.createList(parent.type), {\n at: previousChildListPath,\n })\n }\n\n const previousChildList = Node.get(editor, previousChildListPath)\n\n if (Slate.isList(previousChildList)) {\n const index = previousHasChildList ? previousChildList.children.length : 0\n Transforms.moveNodes(editor, {\n at: path,\n to: [...previousChildListPath, index],\n })\n }\n })\n}\n\nexport function indent(editor: Editor) {\n if (!editor.selection) return\n\n const listItems = getSelectedListItems(editor)\n const subRoots = filterForSubtreeRoots(listItems)\n const refs = subRoots.map(([_, path]) => Editor.pathRef(editor, path))\n\n refs.forEach(ref => {\n if (ref.current) {\n indentPath(editor, ref.current)\n }\n ref.unref()\n })\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA+C;AAC/C,sBAAsB;AAEtB,qBAA6B;AAC7B,uBAAwC;AACxC,mCAAsC;AACtC,kCAAqC;AAE9B,SAAS,WAAW,QAAgB,MAAY;AACrD,QAAM,SAAS,kBAAK,OAAO,QAAQ,IAAI;AACvC,MAAI,CAAC,QAAQ,CAAC,kBAAK,YAAY,IAAI,KAAK,CAAC,sBAAM,OAAO,MAAM;AAAG;AAE/D,QAAM,cAAc,kBAAK,SAAS,IAAI;AAEtC,QAAM,wBAAwB,CAAC,GAAG,aAAa,wCAAuB;AACtE,QAAM,uBAAuB,kBAAK,IAAI,QAAQ,qBAAqB;AAEnE,sBAAO,mBAAmB,QAAQ,MAAM;AACtC,QAAI,CAAC,sBAAsB;AACzB,8BAAW,YAAY,QAAQ,4BAAa,WAAW,OAAO,IAAI,GAAG;AAAA,QACnE,IAAI;AAAA,MACN,CAAC;AAAA,IACH;AAEA,UAAM,oBAAoB,kBAAK,IAAI,QAAQ,qBAAqB;AAEhE,QAAI,sBAAM,OAAO,iBAAiB,GAAG;AACnC,YAAM,QAAQ,uBAAuB,kBAAkB,SAAS,SAAS;AACzE,8BAAW,UAAU,QAAQ;AAAA,QAC3B,IAAI;AAAA,QACJ,IAAI,CAAC,GAAG,uBAAuB,KAAK;AAAA,MACtC,CAAC;AAAA,IACH;AAAA,EACF,CAAC;AACH;AAEO,SAAS,OAAO,QAAgB;AACrC,MAAI,CAAC,OAAO;AAAW;AAEvB,QAAM,gBAAY,kDAAqB,MAAM;AAC7C,QAAM,eAAW,oDAAsB,SAAS;AAChD,QAAM,OAAO,SAAS,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,oBAAO,QAAQ,QAAQ,IAAI,CAAC;AAErE,OAAK,QAAQ,SAAO;AAClB,QAAI,IAAI,SAAS;AACf,iBAAW,QAAQ,IAAI,OAAO;AAAA,IAChC;AACA,QAAI,MAAM;AAAA,EACZ,CAAC;AACH;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/slate/BlockPlugin/index.tsx"],"sourcesContent":["import type { KeyboardEvent } from 'react'\nimport { cx } from '@emotion/css'\nimport { Editor, Transforms, Range, Node, PathRef, Text } from 'slate'\nimport { type RenderElementProps } from 'slate-react'\nimport { Select, Slate, type DataType } from '@makeswift/controls'\n\nimport { setBlockKeyForDevice } from './setBlockKeyForDevice'\nimport { clearBlockKeyForDevice } from './clearBlockKeyForDevice'\nimport { wrapInline } from './wrapInline'\nimport { unwrapInline } from './unwrapInline'\nimport { getSelection } from '../selectors'\nimport { ElementUtils } from '../utils/element'\nimport { getActiveBlockType } from '../selectors'\nimport { unwrapList } from './unwrapList'\nimport { wrapList } from './wrapList'\nimport { indent } from './indent'\nimport { dedent } from './dedent'\nimport { toggleList } from './toggleList'\nimport { EditorUtils } from '../utils/editor'\nimport isHotkey from 'is-hotkey'\nimport { LIST_ITEM_CHILD_POSITION } from './constants'\nimport { useStyle } from '../../runtimes/react/use-style'\nimport { type RenderElement, Plugin } from '../../controls/rich-text-v2/plugin'\nimport { BlockType } from '../../slate/types'\n\nexport const BlockActions = {\n setBlockKeyForDevice,\n clearBlockKeyForDevice,\n wrapInline,\n unwrapInline,\n}\n\n// TODO: This API is still litered with artifacts from the list plugin being seperated out.\n// This plugin needs to be rewritten to be assumptionless.\nexport const ListActions = {\n unwrapList,\n wrapList,\n indent,\n dedent,\n toggleList,\n}\n\nexport function onKeyDown(e: KeyboardEvent, editor: Editor) {\n if (\n !editor.selection ||\n Array.from(Editor.nodes(editor, { match: node => Slate.isListItem(node) })).length === 0\n )\n return\n\n if (isHotkey('shift+tab', e)) {\n e.preventDefault()\n ListActions.dedent(editor)\n }\n\n if (isHotkey('tab', e)) {\n e.preventDefault()\n ListActions.indent(editor)\n }\n\n if (isHotkey('backspace', e)) {\n if (!editor.selection) return\n if (Range.isExpanded(editor.selection)) return\n const listItem = EditorUtils.getFirstAncestorListItem(editor, editor.selection.anchor.path)\n if (editor.selection.anchor.offset === 0 && listItem) {\n e.preventDefault()\n const parentListItem = EditorUtils.getFirstAncestorListItem(editor, listItem[1])\n const list = EditorUtils.getFirstAncestorList(editor, listItem[1])\n\n if (parentListItem) {\n ListActions.dedent(editor)\n } else if (list) {\n ListActions.unwrapList(editor)\n }\n return\n }\n }\n\n if (isHotkey('enter', e)) {\n e.preventDefault()\n\n if (!editor.selection) return\n\n if (Range.isExpanded(editor.selection)) {\n Transforms.delete(editor)\n return\n }\n\n const listItem = EditorUtils.getFirstAncestorListItem(editor, editor.selection.anchor.path)\n if (\n editor.selection.anchor.offset === 0 &&\n listItem &&\n Editor.string(editor, listItem[1]) === ''\n ) {\n const parentListItem = EditorUtils.getFirstAncestorListItem(editor, listItem[1])\n\n if (parentListItem) {\n ListActions.dedent(editor)\n } else {\n ListActions.unwrapList(editor)\n }\n return\n }\n\n Transforms.splitNodes(editor, {\n at: editor.selection,\n always: true,\n match: node => Slate.isListItem(node),\n })\n }\n\n if (isHotkey('shift+enter', e)) {\n e.preventDefault()\n editor.insertText('\\n')\n }\n}\n\nexport function withBlock(editor: Editor) {\n const { normalizeNode } = editor\n\n editor.isInline = entry => {\n return Slate.isInline(entry)\n }\n\n editor.normalizeNode = entry => {\n const [normalizationNode, normalizationPath] = entry\n // Normalization textAlign with empty array of values\n if (Slate.isBlock(normalizationNode) && normalizationNode?.textAlign?.length == 0) {\n Transforms.unsetNodes(editor, 'textAlign', { at: normalizationPath })\n return\n }\n\n // Normalization for preventing non-list root blocks from being nested.\n if (\n normalizationPath.length === 1 &&\n Slate.isRootBlock(normalizationNode) &&\n !Slate.isList(normalizationNode)\n ) {\n const children = Array.from(Node.children(editor, normalizationPath))\n if (children.findIndex(([child]) => Slate.isRootBlock(child)) !== -1) {\n Transforms.unwrapNodes(editor, { at: normalizationPath })\n return\n }\n }\n\n // Normalization for converting children of list items to list item children\n // In the case of backspace from position 0 of node into a list this converts the node into a list item.\n if (Slate.isListItem(normalizationNode)) {\n const pathToListItemText = [...normalizationPath, LIST_ITEM_CHILD_POSITION]\n\n if (Node.has(editor, pathToListItemText)) {\n const nodeInListItemTextPosition = Node.get(editor, pathToListItemText)\n if (Slate.isRootBlock(nodeInListItemTextPosition)) {\n Transforms.setNodes(\n editor,\n { type: BlockType.ListItemChild },\n {\n at: pathToListItemText,\n },\n )\n return\n }\n } else {\n Transforms.insertNodes(editor, ElementUtils.createListItem(), {\n at: pathToListItemText,\n })\n return\n }\n }\n\n // Normalization for merging adjacent lists of the same type\n if (!Text.isText(normalizationNode)) {\n const mergeableChildren = Array.from(Node.children(editor, normalizationPath))\n .map((child, index, children) => {\n const potentialNodeToBeMerged = children.at(index + 1)\n if (\n !potentialNodeToBeMerged ||\n !Slate.isList(potentialNodeToBeMerged[0]) ||\n !Slate.isList(child[0]) ||\n potentialNodeToBeMerged[0].type !== child[0].type\n ) {\n return null\n }\n return [\n Editor.pathRef(editor, child[1]),\n Editor.pathRef(editor, potentialNodeToBeMerged[1]),\n ]\n })\n .filter((mergeableNodes): mergeableNodes is PathRef[] => Boolean(mergeableNodes))\n\n if (mergeableChildren.length !== 0) {\n mergeableChildren.reverse().forEach(([nodePathRef, nodeToBeMergedPathRef]) => {\n const nodePath = nodePathRef.current\n const nodeToBeMergedPath = nodeToBeMergedPathRef.current\n if (nodePath == null || nodeToBeMergedPath == null) return\n const nodeChildren = Array.from(Node.children(editor, nodePath))\n const childrenToBeMerged = Array.from(Node.children(editor, nodeToBeMergedPath))\n Editor.withoutNormalizing(editor, () => {\n childrenToBeMerged.reverse().forEach(([_, childPath]) => {\n Transforms.moveNodes(editor, {\n at: childPath,\n to: [...nodePath, nodeChildren.length],\n })\n })\n Transforms.removeNodes(editor, { at: nodeToBeMergedPath })\n })\n nodePathRef.unref()\n nodeToBeMergedPathRef.unref()\n })\n return\n }\n }\n\n normalizeNode(entry)\n }\n\n return editor\n}\n\nconst definition = Select({\n label: 'Block',\n labelOrientation: 'horizontal',\n options: [\n {\n value: BlockType.Paragraph,\n label: 'Paragraph',\n },\n {\n value: BlockType.Heading1,\n label: 'Heading 1',\n },\n {\n value: BlockType.Heading2,\n label: 'Heading 2',\n },\n {\n value: BlockType.Heading3,\n label: 'Heading 3',\n },\n {\n value: BlockType.Heading4,\n label: 'Heading 4',\n },\n {\n value: BlockType.Heading5,\n label: 'Heading 5',\n },\n {\n value: BlockType.Heading6,\n label: 'Heading 6',\n },\n {\n value: BlockType.UnorderedList,\n label: 'Bulleted list',\n },\n {\n value: BlockType.OrderedList,\n label: 'Numbered list',\n },\n {\n value: BlockType.BlockQuote,\n label: 'Quote',\n },\n ],\n defaultValue: BlockType.Paragraph,\n})\n\nexport function BlockPlugin() {\n return Plugin({\n withPlugin: withBlock,\n onKeyDown: onKeyDown,\n control: {\n definition,\n onChange: (editor, value: DataType<typeof definition>) => {\n // TODO: This onChange being so complex is an artifact of how the List plugin used to be seperated out from the block plugin.\n // Would be great to refactor and simplify here.\n\n const activeBlockType = getActiveBlockType(editor)\n if (value === BlockType.UnorderedList || value === BlockType.OrderedList) {\n ListActions.toggleList(editor, {\n type: value,\n at: getSelection(editor),\n })\n } else if (activeBlockType === value) {\n Transforms.setNodes(\n editor,\n {\n type: BlockType.Default,\n },\n { at: getSelection(editor) },\n )\n } else {\n ListActions.unwrapList(editor, {\n at: getSelection(editor),\n })\n Transforms.setNodes(\n editor,\n {\n type: value ?? BlockType.Default,\n },\n { at: getSelection(editor) },\n )\n }\n },\n getValue: editor => {\n const activeBlock = getActiveBlockType(editor)\n\n if (activeBlock == null) return undefined\n if (activeBlock === Slate.RootBlockType.Default) return undefined\n\n return activeBlock\n },\n },\n renderElement: renderElement => props => (\n <BlockPluginComponent {...props} renderElement={renderElement} />\n ),\n })\n}\n\nfunction BlockPluginComponent({\n renderElement,\n ...props\n}: RenderElementProps & { renderElement: RenderElement }) {\n const blockStyles = [useStyle({ margin: 0 }), props.element.className]\n const quoteStyles = useStyle({\n padding: '0.5em 10px',\n fontSize: '1.25em',\n fontWeight: '300',\n borderLeft: '5px solid rgba(0, 0, 0, 0.1)',\n })\n\n const unorderedListStyles = useStyle({\n listStylePosition: 'inside',\n paddingInlineStart: '20px',\n listStyleType: 'disc',\n ul: {\n listStyleType: 'circle',\n },\n 'ul ul': {\n listStyleType: 'square',\n },\n })\n\n const orderedListStyles = useStyle({\n listStylePosition: 'inside',\n paddingInlineStart: '20px',\n listStyleType: 'decimal',\n })\n\n switch (props.element.type) {\n case BlockType.Default:\n case BlockType.Paragraph:\n return (\n <p {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </p>\n )\n case BlockType.Heading1:\n return (\n <h1 {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </h1>\n )\n case BlockType.Heading2:\n return (\n <h2 {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </h2>\n )\n case BlockType.Heading3:\n return (\n <h3 {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </h3>\n )\n case BlockType.Heading4:\n return (\n <h4 {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </h4>\n )\n case BlockType.Heading5:\n return (\n <h5 {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </h5>\n )\n case BlockType.Heading6:\n return (\n <h6 {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </h6>\n )\n case BlockType.BlockQuote:\n return (\n <blockquote {...props.attributes} className={cx(...blockStyles, quoteStyles)}>\n {renderElement(props)}\n </blockquote>\n )\n case BlockType.OrderedList:\n return (\n <ol {...props.attributes} className={cx(...blockStyles, orderedListStyles)}>\n {renderElement(props)}\n </ol>\n )\n case BlockType.UnorderedList:\n return (\n <ul {...props.attributes} className={cx(...blockStyles, unorderedListStyles)}>\n {renderElement(props)}\n </ul>\n )\n case BlockType.ListItem:\n return (\n <li {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </li>\n )\n case BlockType.ListItemChild:\n return (\n <span {...props.attributes} className={cx(...blockStyles)}>\n {renderElement(props)}\n </span>\n )\n default:\n return <>{renderElement(props)}</>\n }\n}\n"],"mappings":"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","names":["import_selectors","isHotkey"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/slate/BuilderPlugin/index.ts"],"sourcesContent":["import { BaseEditor, Descendant, Editor, Transforms, Text, Node } from 'slate'\nimport { ReactEditor } from 'slate-react'\nimport { Slate } from '@makeswift/controls'\n\nexport interface BuilderEditor extends BaseEditor {\n focusAndSelectAll: () => void\n deselectAndBlur: () => void\n resetValue: (value: Descendant[]) => void\n}\n\nexport function withBuilder(editor: Editor) {\n editor.resetValue = function (value: Descendant[]) {\n const firstRootBlock = Node.has(editor, [0]) && Node.get(editor, [0])\n const textAlignOfFirstBlock =\n firstRootBlock && Slate.isRootBlock(firstRootBlock) ? firstRootBlock.textAlign : undefined\n const typographyOfFirstText = Array.from(Node.texts(editor)).at(0)?.[0].typography\n\n ReactEditor.deselect(editor)\n ReactEditor.blur(editor)\n\n editor.children = value\n editor.onChange()\n\n if (typographyOfFirstText) {\n Transforms.setNodes(\n editor,\n { typography: typographyOfFirstText },\n {\n match: Text.isText,\n at: {\n anchor: Editor.start(editor, []),\n focus: Editor.end(editor, []),\n },\n },\n )\n }\n if (textAlignOfFirstBlock) {\n Transforms.setNodes(\n editor,\n { textAlign: textAlignOfFirstBlock },\n {\n match: Slate.isRootBlock,\n at: {\n anchor: Editor.start(editor, []),\n focus: Editor.end(editor, []),\n },\n },\n )\n }\n }\n editor.deselectAndBlur = function () {\n ReactEditor.deselect(editor)\n ReactEditor.blur(editor)\n }\n\n editor.focusAndSelectAll = function () {\n ReactEditor.focus(editor)\n Transforms.select(editor, {\n anchor: Editor.start(editor, []),\n focus: Editor.end(editor, []),\n })\n }\n\n return editor\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAuE;AACvE,yBAA4B;AAC5B,sBAAsB;AAQf,SAAS,YAAY,QAAgB;AAC1C,SAAO,aAAa,SAAU,OAAqB;AACjD,UAAM,iBAAiB,kBAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,kBAAK,IAAI,QAAQ,CAAC,CAAC,CAAC;AACpE,UAAM,wBACJ,kBAAkB,sBAAM,YAAY,cAAc,IAAI,eAAe,YAAY;AACnF,UAAM,wBAAwB,MAAM,KAAK,kBAAK,MAAM,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE;AAExE,mCAAY,SAAS,MAAM;AAC3B,mCAAY,KAAK,MAAM;AAEvB,WAAO,WAAW;AAClB,WAAO,SAAS;AAEhB,QAAI,uBAAuB;AACzB,8BAAW;AAAA,QACT;AAAA,QACA,EAAE,YAAY,sBAAsB;AAAA,QACpC;AAAA,UACE,OAAO,kBAAK;AAAA,UACZ,IAAI;AAAA,YACF,QAAQ,oBAAO,MAAM,QAAQ,CAAC,CAAC;AAAA,YAC/B,OAAO,oBAAO,IAAI,QAAQ,CAAC,CAAC;AAAA,UAC9B;AAAA,QACF;AAAA,MACF;AAAA,IACF;AACA,QAAI,uBAAuB;AACzB,8BAAW;AAAA,QACT;AAAA,QACA,EAAE,WAAW,sBAAsB;AAAA,QACnC;AAAA,UACE,OAAO,sBAAM;AAAA,UACb,IAAI;AAAA,YACF,QAAQ,oBAAO,MAAM,QAAQ,CAAC,CAAC;AAAA,YAC/B,OAAO,oBAAO,IAAI,QAAQ,CAAC,CAAC;AAAA,UAC9B;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,SAAO,kBAAkB,WAAY;AACnC,mCAAY,SAAS,MAAM;AAC3B,mCAAY,KAAK,MAAM;AAAA,EACzB;AAEA,SAAO,oBAAoB,WAAY;AACrC,mCAAY,MAAM,MAAM;AACxB,4BAAW,OAAO,QAAQ;AAAA,MACxB,QAAQ,oBAAO,MAAM,QAAQ,CAAC,CAAC;AAAA,MAC/B,OAAO,oBAAO,IAAI,QAAQ,CAAC,CAAC;AAAA,IAC9B,CAAC;AAAA,EACH;AAEA,SAAO;AACT;","names":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/slate/InlineModePlugin/index.tsx"],"sourcesContent":["import { type KeyboardEvent } from 'react'\nimport { type Editor, Path, Text, Transforms } from 'slate'\nimport { type RenderElementProps } from 'slate-react'\nimport isHotkey from 'is-hotkey'\n\nimport { Slate } from '@makeswift/controls'\n\nimport { type RenderElement, Plugin } from '../../controls/rich-text-v2/plugin'\n\nconst BLOCK_ONE_PATH = [0]\nconst BLOCK_TWO_PATH = [1]\n\nexport function withInlineMode(editor: Editor): Editor {\n const { normalizeNode } = editor\n editor.normalizeNode = entry => {\n const [normalizationNode, normalizationPath] = entry\n\n /**\n * Merge root nodes past the first one\n */\n if (Path.equals(BLOCK_TWO_PATH, normalizationPath)) {\n Transforms.mergeNodes(editor, { at: BLOCK_TWO_PATH })\n return\n }\n /**\n * Unwrap non text nodes of first root node\n */\n if (Path.isAncestor(BLOCK_ONE_PATH, normalizationPath) && Slate.isBlock(normalizationNode)) {\n Transforms.unwrapNodes(editor, {\n at: normalizationPath,\n })\n return\n }\n /**\n * Update type of root nodes to be `text-block`\n */\n if (Path.equals(BLOCK_ONE_PATH, normalizationPath)) {\n Transforms.setNodes(editor, { type: Slate.BlockType.Default }, { at: normalizationPath })\n return\n }\n\n normalizeNode(entry)\n }\n\n return editor\n}\n\nexport function InlineModePlugin() {\n return Plugin({\n onKeyDown: (e: KeyboardEvent) => {\n if (isHotkey('enter', e)) e.preventDefault()\n },\n withPlugin: withInlineMode,\n renderElement: renderElement => props => (\n <InlineModePluginComponent {...props} renderElement={renderElement} />\n ),\n })\n}\n\nconst minWidth = `${'Write some text...'.length}ch`\n\nfunction InlineModePluginComponent({\n renderElement,\n ...props\n}: RenderElementProps & { renderElement: RenderElement }) {\n if (props.element.children.length === 1) {\n const text = props.element.children[0]\n\n if (Text.isText(text) && text.text === '') {\n return (\n <span style={{ display: 'inline-block', minWidth }} {...props.attributes}>\n {renderElement(props)}\n </span>\n )\n }\n }\n\n return (\n <span style={{ minWidth }} {...props.attributes}>\n {renderElement(props)}\n </span>\n )\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsDM;AArDN,mBAAoD;AAEpD,uBAAqB;AAErB,sBAAsB;AAEtB,oBAA2C;AAE3C,MAAM,iBAAiB,CAAC,CAAC;AACzB,MAAM,iBAAiB,CAAC,CAAC;AAElB,SAAS,eAAe,QAAwB;AACrD,QAAM,EAAE,cAAc,IAAI;AAC1B,SAAO,gBAAgB,WAAS;AAC9B,UAAM,CAAC,mBAAmB,iBAAiB,IAAI;AAK/C,QAAI,kBAAK,OAAO,gBAAgB,iBAAiB,GAAG;AAClD,8BAAW,WAAW,QAAQ,EAAE,IAAI,eAAe,CAAC;AACpD;AAAA,IACF;AAIA,QAAI,kBAAK,WAAW,gBAAgB,iBAAiB,KAAK,sBAAM,QAAQ,iBAAiB,GAAG;AAC1F,8BAAW,YAAY,QAAQ;AAAA,QAC7B,IAAI;AAAA,MACN,CAAC;AACD;AAAA,IACF;AAIA,QAAI,kBAAK,OAAO,gBAAgB,iBAAiB,GAAG;AAClD,8BAAW,SAAS,QAAQ,EAAE,MAAM,sBAAM,UAAU,QAAQ,GAAG,EAAE,IAAI,kBAAkB,CAAC;AACxF;AAAA,IACF;AAEA,kBAAc,KAAK;AAAA,EACrB;AAEA,SAAO;AACT;AAEO,SAAS,mBAAmB;AACjC,aAAO,sBAAO;AAAA,IACZ,WAAW,CAAC,MAAqB;AAC/B,cAAI,iBAAAA,SAAS,SAAS,CAAC;AAAG,UAAE,eAAe;AAAA,IAC7C;AAAA,IACA,YAAY;AAAA,IACZ,eAAe,mBAAiB,WAC9B,4CAAC,6BAA2B,GAAG,OAAO,eAA8B;AAAA,EAExE,CAAC;AACH;AAEA,MAAM,WAAW,GAAG,qBAAqB,MAAM;AAE/C,SAAS,0BAA0B;AAAA,EACjC;AAAA,EACA,GAAG;AACL,GAA0D;AACxD,MAAI,MAAM,QAAQ,SAAS,WAAW,GAAG;AACvC,UAAM,OAAO,MAAM,QAAQ,SAAS,CAAC;AAErC,QAAI,kBAAK,OAAO,IAAI,KAAK,KAAK,SAAS,IAAI;AACzC,aACE,4CAAC,UAAK,OAAO,EAAE,SAAS,gBAAgB,SAAS,GAAI,GAAG,MAAM,YAC3D,wBAAc,KAAK,GACtB;AAAA,IAEJ;AAAA,EACF;AAEA,SACE,4CAAC,UAAK,OAAO,EAAE,SAAS,GAAI,GAAG,MAAM,YAClC,wBAAc,KAAK,GACtB;AAEJ;","names":["isHotkey"]}
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/slate/InlinePlugin/getValue.ts"],"sourcesContent":["import { Editor, NodeEntry, Text } from 'slate'\nimport { Slate } from '@makeswift/controls'\n\nimport { getSelection } from '../selectors'\nimport { filterForSubtreeRoots } from '../BlockPlugin/utils/filterForSubtreeRoots'\nimport { SupportedInline, isSupportedInlineType, isSupportedInlineEntry } from './types'\n\nexport function getSupportedInlinesAndTextInSelection(\n editor: Editor,\n): NodeEntry<SupportedInline | Text>[] {\n return Array.from(\n Editor.nodes(editor, {\n at: getSelection(editor),\n match: node =>\n (Slate.isInline(node) && isSupportedInlineType(node.type)) || Text.isText(node),\n }),\n ) as NodeEntry<Text | SupportedInline>[]\n}\n\nexport const getValue = (editor: Editor) => {\n const roots = filterForSubtreeRoots(getSupportedInlinesAndTextInSelection(editor))\n const areAllRootsSupportedInlineTypesOrText = roots.every(\n entry => isSupportedInlineEntry(entry) || Text.isText(entry[0]),\n )\n\n if (!areAllRootsSupportedInlineTypesOrText) return undefined\n\n const matchingValues = roots.filter(isSupportedInlineEntry).map(([node]) => node)\n\n const match = matchingValues.reduce(\n (a, b) => (a?.type === b?.type ? b : undefined),\n matchingValues.at(0) ?? undefined,\n )\n\n return match == null ? null : match.type\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAwC;AACxC,sBAAsB;AAEtB,uBAA6B;AAC7B,mCAAsC;AACtC,mBAA+E;AAExE,SAAS,sCACd,QACqC;AACrC,SAAO,MAAM;AAAA,IACX,oBAAO,MAAM,QAAQ;AAAA,MACnB,QAAI,+BAAa,MAAM;AAAA,MACvB,OAAO,UACJ,sBAAM,SAAS,IAAI,SAAK,oCAAsB,KAAK,IAAI,KAAM,kBAAK,OAAO,IAAI;AAAA,IAClF,CAAC;AAAA,EACH;AACF;AAEO,MAAM,WAAW,CAAC,WAAmB;AAC1C,QAAM,YAAQ,oDAAsB,sCAAsC,MAAM,CAAC;AACjF,QAAM,wCAAwC,MAAM;AAAA,IAClD,eAAS,qCAAuB,KAAK,KAAK,kBAAK,OAAO,MAAM,CAAC,CAAC;AAAA,EAChE;AAEA,MAAI,CAAC;AAAuC,WAAO;AAEnD,QAAM,iBAAiB,MAAM,OAAO,mCAAsB,EAAE,IAAI,CAAC,CAAC,IAAI,MAAM,IAAI;AAEhF,QAAM,QAAQ,eAAe;AAAA,IAC3B,CAAC,GAAG,MAAO,GAAG,SAAS,GAAG,OAAO,IAAI;AAAA,IACrC,eAAe,GAAG,CAAC,KAAK;AAAA,EAC1B;AAEA,SAAO,SAAS,OAAO,OAAO,MAAM;AACtC;","names":[]}