@makeswift/runtime 0.9.1 → 0.9.3

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 (206) hide show
  1. package/dist/Box.cjs.js +1 -4
  2. package/dist/Box.cjs.js.map +1 -1
  3. package/dist/Box.es.js +1 -4
  4. package/dist/Box.es.js.map +1 -1
  5. package/dist/Button.cjs.js +1 -4
  6. package/dist/Button.cjs.js.map +1 -1
  7. package/dist/Button.es.js +1 -4
  8. package/dist/Button.es.js.map +1 -1
  9. package/dist/Carousel.cjs.js +1 -4
  10. package/dist/Carousel.cjs.js.map +1 -1
  11. package/dist/Carousel.es.js +1 -4
  12. package/dist/Carousel.es.js.map +1 -1
  13. package/dist/Countdown.cjs.js +0 -3
  14. package/dist/Countdown.cjs.js.map +1 -1
  15. package/dist/Countdown.es.js +0 -3
  16. package/dist/Countdown.es.js.map +1 -1
  17. package/dist/Divider.cjs.js +1 -4
  18. package/dist/Divider.cjs.js.map +1 -1
  19. package/dist/Divider.es.js +1 -4
  20. package/dist/Divider.es.js.map +1 -1
  21. package/dist/Embed.cjs.js +0 -2
  22. package/dist/Embed.cjs.js.map +1 -1
  23. package/dist/Embed.es.js +0 -2
  24. package/dist/Embed.es.js.map +1 -1
  25. package/dist/Form.cjs.js +0 -3
  26. package/dist/Form.cjs.js.map +1 -1
  27. package/dist/Form.es.js +0 -3
  28. package/dist/Form.es.js.map +1 -1
  29. package/dist/Image.cjs.js +0 -3
  30. package/dist/Image.cjs.js.map +1 -1
  31. package/dist/Image.es.js +0 -3
  32. package/dist/Image.es.js.map +1 -1
  33. package/dist/LiveProvider.cjs.js +1 -4
  34. package/dist/LiveProvider.cjs.js.map +1 -1
  35. package/dist/LiveProvider.es.js +3 -6
  36. package/dist/LiveProvider.es.js.map +1 -1
  37. package/dist/Navigation.cjs.js +0 -3
  38. package/dist/Navigation.cjs.js.map +1 -1
  39. package/dist/Navigation.es.js +0 -3
  40. package/dist/Navigation.es.js.map +1 -1
  41. package/dist/PreviewProvider.cjs.js +2 -5
  42. package/dist/PreviewProvider.cjs.js.map +1 -1
  43. package/dist/PreviewProvider.es.js +2 -5
  44. package/dist/PreviewProvider.es.js.map +1 -1
  45. package/dist/ReadOnlyText.cjs.js +1 -1
  46. package/dist/ReadOnlyText.es.js +2 -2
  47. package/dist/ReadOnlyTextV2.cjs.js +1 -1
  48. package/dist/ReadOnlyTextV2.es.js +2 -2
  49. package/dist/Root.cjs.js +0 -3
  50. package/dist/Root.cjs.js.map +1 -1
  51. package/dist/Root.es.js +0 -3
  52. package/dist/Root.es.js.map +1 -1
  53. package/dist/SocialLinks.cjs.js +1 -4
  54. package/dist/SocialLinks.cjs.js.map +1 -1
  55. package/dist/SocialLinks.es.js +1 -4
  56. package/dist/SocialLinks.es.js.map +1 -1
  57. package/dist/Text.cjs.js +0 -3
  58. package/dist/Text.cjs.js.map +1 -1
  59. package/dist/Text.es.js +0 -3
  60. package/dist/Text.es.js.map +1 -1
  61. package/dist/Video.cjs.js +0 -2
  62. package/dist/Video.cjs.js.map +1 -1
  63. package/dist/Video.es.js +0 -2
  64. package/dist/Video.es.js.map +1 -1
  65. package/dist/builder.cjs.js +0 -3
  66. package/dist/builder.cjs.js.map +1 -1
  67. package/dist/builder.es.js +0 -3
  68. package/dist/builder.es.js.map +1 -1
  69. package/dist/components.cjs.js +0 -3
  70. package/dist/components.cjs.js.map +1 -1
  71. package/dist/components.es.js +0 -3
  72. package/dist/components.es.js.map +1 -1
  73. package/dist/control-serialization.cjs.js +0 -3
  74. package/dist/control-serialization.cjs.js.map +1 -1
  75. package/dist/control-serialization.es.js +1 -4
  76. package/dist/control-serialization.es.js.map +1 -1
  77. package/dist/controls.cjs.js +5 -5
  78. package/dist/controls.es.js +2 -5
  79. package/dist/controls.es.js.map +1 -1
  80. package/dist/index.cjs.js +86 -17
  81. package/dist/index.cjs.js.map +1 -1
  82. package/dist/index.cjs10.js +4 -4
  83. package/dist/index.cjs10.js.map +1 -1
  84. package/dist/index.cjs2.js +1 -3
  85. package/dist/index.cjs2.js.map +1 -1
  86. package/dist/index.cjs6.js +2 -1
  87. package/dist/index.cjs6.js.map +1 -1
  88. package/dist/index.cjs8.js +0 -3
  89. package/dist/index.cjs8.js.map +1 -1
  90. package/dist/index.cjs9.js +49 -13
  91. package/dist/index.cjs9.js.map +1 -1
  92. package/dist/index.es.js +82 -14
  93. package/dist/index.es.js.map +1 -1
  94. package/dist/index.es10.js +3 -3
  95. package/dist/index.es2.js +2 -4
  96. package/dist/index.es2.js.map +1 -1
  97. package/dist/index.es6.js +2 -1
  98. package/dist/index.es6.js.map +1 -1
  99. package/dist/index.es8.js +0 -3
  100. package/dist/index.es8.js.map +1 -1
  101. package/dist/index.es9.js +50 -14
  102. package/dist/index.es9.js.map +1 -1
  103. package/dist/leaf.es.js +1 -1
  104. package/dist/main.cjs.js +0 -3
  105. package/dist/main.cjs.js.map +1 -1
  106. package/dist/main.es.js +0 -3
  107. package/dist/main.es.js.map +1 -1
  108. package/dist/next.cjs.js +0 -3
  109. package/dist/next.cjs.js.map +1 -1
  110. package/dist/next.es.js +1 -4
  111. package/dist/next.es.js.map +1 -1
  112. package/dist/prop-controllers.cjs.js +0 -3
  113. package/dist/prop-controllers.cjs.js.map +1 -1
  114. package/dist/prop-controllers.es.js +0 -3
  115. package/dist/prop-controllers.es.js.map +1 -1
  116. package/dist/react-page.cjs.js +926 -1573
  117. package/dist/react-page.cjs.js.map +1 -1
  118. package/dist/react-page.es.js +922 -1559
  119. package/dist/react-page.es.js.map +1 -1
  120. package/dist/react.cjs.js +0 -3
  121. package/dist/react.cjs.js.map +1 -1
  122. package/dist/react.es.js +0 -3
  123. package/dist/react.es.js.map +1 -1
  124. package/dist/slate.cjs.js +391 -58
  125. package/dist/slate.cjs.js.map +1 -1
  126. package/dist/slate.es.js +387 -59
  127. package/dist/slate.es.js.map +1 -1
  128. package/dist/text-input.cjs.js +22 -0
  129. package/dist/text-input.cjs.js.map +1 -1
  130. package/dist/text-input.es.js +18 -1
  131. package/dist/text-input.es.js.map +1 -1
  132. package/dist/types/src/api/react.d.ts.map +1 -1
  133. package/dist/types/src/components/builtin/Button/Button.d.ts +1 -1
  134. package/dist/types/src/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
  135. package/dist/types/src/components/page/Page.d.ts.map +1 -1
  136. package/dist/types/src/controls/control.d.ts +3 -2
  137. package/dist/types/src/controls/control.d.ts.map +1 -1
  138. package/dist/types/src/controls/icon-radio-group.d.ts +32 -0
  139. package/dist/types/src/controls/icon-radio-group.d.ts.map +1 -0
  140. package/dist/types/src/controls/index.d.ts +1 -0
  141. package/dist/types/src/controls/index.d.ts.map +1 -1
  142. package/dist/types/src/controls/rich-text/translation.d.ts +1 -1
  143. package/dist/types/src/controls/rich-text/translation.d.ts.map +1 -1
  144. package/dist/types/src/controls/rich-text-v2/rich-text-v2.d.ts +7 -3
  145. package/dist/types/src/controls/rich-text-v2/rich-text-v2.d.ts.map +1 -1
  146. package/dist/types/src/controls/shape.d.ts +1 -2
  147. package/dist/types/src/controls/shape.d.ts.map +1 -1
  148. package/dist/types/src/controls/style-v2.d.ts +16 -7
  149. package/dist/types/src/controls/style-v2.d.ts.map +1 -1
  150. package/dist/types/src/next/client.d.ts.map +1 -1
  151. package/dist/types/src/next/document.d.ts.map +1 -1
  152. package/dist/types/src/prop-controllers/descriptors.d.ts +4 -2
  153. package/dist/types/src/prop-controllers/descriptors.d.ts.map +1 -1
  154. package/dist/types/src/prop-controllers/introspection.d.ts.map +1 -1
  155. package/dist/types/src/runtimes/react/controls/control.d.ts +3 -1
  156. package/dist/types/src/runtimes/react/controls/control.d.ts.map +1 -1
  157. package/dist/types/src/runtimes/react/controls/icon-radio-group.d.ts +4 -0
  158. package/dist/types/src/runtimes/react/controls/icon-radio-group.d.ts.map +1 -0
  159. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.d.ts.map +1 -1
  160. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts +10 -0
  161. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.d.ts.map +1 -0
  162. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts +10 -0
  163. package/dist/types/src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.d.ts.map +1 -0
  164. package/dist/types/src/runtimes/react/controls/style-v2.d.ts +10 -1
  165. package/dist/types/src/runtimes/react/controls/style-v2.d.ts.map +1 -1
  166. package/dist/types/src/runtimes/react/controls.d.ts.map +1 -1
  167. package/dist/types/src/runtimes/react/index.d.ts.map +1 -1
  168. package/dist/types/src/slate/BlockPlugin/index.d.ts +1 -0
  169. package/dist/types/src/slate/BlockPlugin/index.d.ts.map +1 -1
  170. package/dist/types/src/slate/ColorPlugin/index.d.ts +10 -0
  171. package/dist/types/src/slate/ColorPlugin/index.d.ts.map +1 -0
  172. package/dist/types/src/slate/InlineModePlugin/index.d.ts +1 -0
  173. package/dist/types/src/slate/InlineModePlugin/index.d.ts.map +1 -1
  174. package/dist/types/src/slate/InlinePlugin/getValue.d.ts +5 -0
  175. package/dist/types/src/slate/InlinePlugin/getValue.d.ts.map +1 -0
  176. package/dist/types/src/slate/InlinePlugin/index.d.ts +16 -0
  177. package/dist/types/src/slate/InlinePlugin/index.d.ts.map +1 -0
  178. package/dist/types/src/slate/InlinePlugin/onChange.d.ts +4 -0
  179. package/dist/types/src/slate/InlinePlugin/onChange.d.ts.map +1 -0
  180. package/dist/types/src/slate/InlinePlugin/types.d.ts +9 -0
  181. package/dist/types/src/slate/InlinePlugin/types.d.ts.map +1 -0
  182. package/dist/types/src/slate/LinkPlugin/getValue.d.ts +5 -0
  183. package/dist/types/src/slate/LinkPlugin/getValue.d.ts.map +1 -0
  184. package/dist/types/src/slate/LinkPlugin/index.d.ts +15 -0
  185. package/dist/types/src/slate/LinkPlugin/index.d.ts.map +1 -0
  186. package/dist/types/src/slate/LinkPlugin/onChange.d.ts +4 -0
  187. package/dist/types/src/slate/LinkPlugin/onChange.d.ts.map +1 -0
  188. package/dist/types/src/slate/LinkPlugin/types.d.ts +5 -0
  189. package/dist/types/src/slate/LinkPlugin/types.d.ts.map +1 -0
  190. package/dist/types/src/slate/TextAlignPlugin/index.d.ts +3 -1
  191. package/dist/types/src/slate/TextAlignPlugin/index.d.ts.map +1 -1
  192. package/dist/types/src/slate/index.d.ts +3 -0
  193. package/dist/types/src/slate/index.d.ts.map +1 -1
  194. package/dist/types/src/slate/types.d.ts +21 -0
  195. package/dist/types/src/slate/types.d.ts.map +1 -1
  196. package/dist/types/src/slate/utils/responsive.d.ts +16 -0
  197. package/dist/types/src/slate/utils/responsive.d.ts.map +1 -0
  198. package/dist/types.cjs2.js +753 -0
  199. package/dist/types.cjs2.js.map +1 -0
  200. package/dist/types.es2.js +736 -0
  201. package/dist/types.es2.js.map +1 -0
  202. package/package.json +1 -1
  203. package/dist/deepEqual.cjs.js +0 -40
  204. package/dist/deepEqual.cjs.js.map +0 -1
  205. package/dist/deepEqual.es.js +0 -39
  206. package/dist/deepEqual.es.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs9.js","sources":["../src/runtimes/react/controls/rich-text-v2/EditableTextV2/useSyncDOMSelection.tsx","../src/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.tsx"],"sourcesContent":["import { Editor, Range as SlateRange } from 'slate'\nimport { useIsomorphicLayoutEffect } from '../../../../../components/hooks/useIsomorphicLayoutEffect'\nimport { MutableRefObject } from 'react'\nimport { ReactEditor } from 'slate-react'\n\n/**\n * Clicking outside of the host blurs our `<Editable />`.\n * `<Editable />` only updates the DOM's selection to match slate when it is focused.\n * In the case of a panel being clicked this hook updates the DOM selection to match slate.\n */\nexport function useSyncDOMSelection(editor: Editor, isEnabled: MutableRefObject<boolean>) {\n useIsomorphicLayoutEffect(() => {\n if (!isEnabled.current || editor.selection == null || ReactEditor.isFocused(editor)) return\n try {\n const root = ReactEditor.findDocumentOrShadowRoot(editor) as Document\n const domSelection = root.getSelection()\n const newDomRange: Range | null = ReactEditor.toDOMRange(editor, editor.selection)\n\n if (newDomRange) {\n if (SlateRange.isBackward(editor.selection!)) {\n domSelection?.setBaseAndExtent(\n newDomRange.endContainer,\n newDomRange.endOffset,\n newDomRange.startContainer,\n newDomRange.startOffset,\n )\n } else {\n domSelection?.setBaseAndExtent(\n newDomRange.startContainer,\n newDomRange.startOffset,\n newDomRange.endContainer,\n newDomRange.endOffset,\n )\n }\n } else {\n domSelection?.removeAllRanges()\n }\n } catch (e) {\n console.error(e)\n }\n })\n}\n","import {\n FocusEvent,\n KeyboardEvent,\n MouseEvent,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react'\nimport { Descendant, createEditor } from 'slate'\nimport isHotkey from 'is-hotkey'\nimport { withHistory, HistoryEditor } from 'slate-history'\nimport {\n withReact,\n ReactEditor,\n RenderElementProps,\n RenderLeafProps,\n Slate,\n Editable,\n} from 'slate-react'\n\nimport {\n RichTextV2Control,\n RichTextV2ControlData,\n RichTextV2ControlDefinition,\n RichTextV2Mode,\n RichTextV2Plugin,\n} from '../../../../../controls'\nimport { useBuilderEditMode } from '../../..'\nimport { BuilderEditMode } from '../../../../../state/modules/builder-edit-mode'\nimport { pollBoxModel } from '../../../poll-box-model'\nimport { InlineModePlugin, withBuilder } from '../../../../../slate'\nimport { useSyncDOMSelection } from './useSyncDOMSelection'\nimport { BlockType } from '../../../../../slate'\nimport { useStyle } from '../../../use-style'\nimport { cx } from '@emotion/css'\nimport { ControlValue } from '../../control'\n\ntype RichTextV2ElementProps = RenderElementProps & {\n definition: RichTextV2ControlDefinition\n plugins: RichTextV2Plugin[]\n}\n\nfunction RichTextV2Element({ definition, plugins, ...props }: RichTextV2ElementProps) {\n const blockStyles = [useStyle({ margin: 0 })]\n\n function initialRenderElement(props: RenderElementProps) {\n switch (props.element.type) {\n case BlockType.Default:\n default:\n if (definition.config.mode === RichTextV2Mode.Inline) {\n return (\n <span {...props.attributes} className={cx(...blockStyles)}>\n {props.children}\n </span>\n )\n }\n\n return (\n <p {...props.attributes} className={cx(...blockStyles)}>\n {props.children}\n </p>\n )\n }\n }\n\n const renderElement = plugins.reduce(\n (renderFn, plugin) => (props: RenderElementProps) => {\n const { control, renderElement } = plugin\n\n if (control?.definition == null || renderElement == null) return renderFn(props)\n\n if (control.getElementValue == null) return renderElement(renderFn, undefined)(props)\n\n return (\n <ControlValue definition={control.definition} data={control.getElementValue(props.element)}>\n {value => renderElement(renderFn, value)(props)}\n </ControlValue>\n )\n },\n initialRenderElement,\n )\n\n return renderElement(props)\n}\n\nexport type RichTextV2ControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextV2ControlDefinition }\n\nconst defaultText: Descendant[] = [{ type: BlockType.Default, children: [{ text: '' }] }]\n\ntype Props = {\n text: RichTextV2ControlData\n definition: RichTextV2ControlDefinition\n control: RichTextV2Control | null\n}\n\nexport function EditableTextV2({ text, definition, control }: Props) {\n const plugins = useMemo(() => {\n const plugins = [\n ...(definition?.config?.plugins ?? []),\n ...(definition?.config?.mode === RichTextV2Mode.Inline ? [InlineModePlugin] : []),\n ]\n return plugins\n }, [definition])\n\n const [editor] = useState(() =>\n plugins.reduceRight(\n (editor, plugin) => plugin?.withPlugin?.(editor) ?? editor,\n withBuilder(withHistory(withReact(createEditor()))),\n ),\n )\n\n const isPreservingFocus = useRef(false)\n useSyncDOMSelection(editor, isPreservingFocus)\n\n const editMode = useBuilderEditMode()\n\n useEffect(() => {\n if (control == null) return\n\n const element = ReactEditor.toDOMNode(editor, editor)\n return pollBoxModel({\n element,\n onBoxModelChange: boxModel => control.changeBoxModel(boxModel),\n })\n }, [editor, control])\n\n const renderElement = useCallback(\n (props: RenderElementProps) => {\n return <RichTextV2Element {...props} definition={definition} plugins={plugins} />\n },\n [plugins, definition],\n )\n\n const renderLeaf = useCallback(({ attributes, children }: RenderLeafProps) => {\n return <span {...attributes}>{children}</span>\n }, [])\n\n const initialValue = useMemo(() => text ?? defaultText, [text])\n\n useEffect(() => {\n /**\n * This is required because clicking on the overlay has `relatedTarget` null just like the sidebar, but\n * - in the case of the overlay we switch to BUILD mode\n * - in the case of the sidebar we preserve the selection\n */\n if (editMode !== BuilderEditMode.CONTENT) {\n isPreservingFocus.current = false\n ReactEditor.deselect(editor)\n }\n }, [editMode])\n\n useEffect(() => {\n control?.setEditor(editor)\n control?.setDefaultValue(defaultText)\n }, [control, editor, defaultText])\n\n const handleFocus = useCallback(() => {\n isPreservingFocus.current = true\n control?.select()\n }, [control])\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (isHotkey('mod+shift+z', e)) return HistoryEditor.redo(editor)\n if (isHotkey('mod+z', e)) return HistoryEditor.undo(editor)\n if (isHotkey('escape')(e)) {\n isPreservingFocus.current = false\n ReactEditor.blur(editor)\n control?.switchToBuildMode()\n }\n\n plugins.forEach(plugin => plugin?.onKeyDown?.(e, editor))\n },\n [control, plugins, editor],\n )\n\n const handleKeyUp = useCallback(\n (e: KeyboardEvent) => {\n if (editMode === BuilderEditMode.CONTENT) e.preventDefault()\n },\n [control, editor, editMode],\n )\n\n const handleClick = useCallback(\n (e: MouseEvent) => {\n if (editMode === BuilderEditMode.CONTENT) e.stopPropagation()\n },\n [editMode],\n )\n\n const handleBlur = useCallback((e: FocusEvent) => {\n // outside of iframe (overlay, sidebar, etc)\n if (e.relatedTarget == null) return\n // another text\n if (e.relatedTarget?.getAttribute('contenteditable') === 'true')\n isPreservingFocus.current = false\n }, [])\n\n const handleOnChange = useCallback(\n (value: Descendant[]) => {\n control?.onChange(value)\n },\n [control],\n )\n\n return (\n <Slate editor={editor} onChange={handleOnChange} value={initialValue}>\n <Editable\n renderLeaf={renderLeaf}\n renderElement={renderElement}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n onClick={handleClick}\n onBlur={handleBlur}\n readOnly={editMode !== BuilderEditMode.CONTENT}\n placeholder=\"Write some text...\"\n />\n </Slate>\n )\n}\n\nexport default EditableTextV2\n"],"names":["editor","isEnabled","useIsomorphicLayoutEffect","current","selection","ReactEditor","isFocused","root","findDocumentOrShadowRoot","domSelection","getSelection","newDomRange","toDOMRange","SlateRange","isBackward","setBaseAndExtent","endContainer","endOffset","startContainer","startOffset","removeAllRanges","e","console","error","definition","plugins","props","blockStyles","useStyle","margin","element","type","BlockType","Default","config","mode","RichTextV2Mode","Inline","attributes","cx","children","renderElement","reduce","renderFn","plugin","control","getElementValue","undefined","ControlValue","value","initialRenderElement","defaultText","text","useMemo","InlineModePlugin","useState","reduceRight","withPlugin","withBuilder","withHistory","withReact","createEditor","isPreservingFocus","useRef","useSyncDOMSelection","editMode","useBuilderEditMode","useEffect","toDOMNode","pollBoxModel","onBoxModelChange","boxModel","changeBoxModel","useCallback","renderLeaf","initialValue","BuilderEditMode","CONTENT","deselect","setEditor","setDefaultValue","handleFocus","select","handleKeyDown","isHotkey","HistoryEditor","redo","undo","blur","switchToBuildMode","forEach","onKeyDown","handleKeyUp","preventDefault","handleClick","stopPropagation","handleBlur","relatedTarget","getAttribute","handleOnChange","onChange","Slate","Editable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,6BAA6BA,QAAgBC,WAAsC;AACxFC,4BAAAA,0BAA0B,MAAM;AAC1B,QAAA,CAACD,UAAUE,WAAWH,OAAOI,aAAa,QAAQC,WAAAA,YAAYC,UAAUN,MAAtB;AAA+B;AACjF,QAAA;AACIO,YAAAA,OAAOF,WAAAA,YAAYG,yBAAyBR,MAArC;AACPS,YAAAA,eAAeF,KAAKG;AAC1B,YAAMC,cAA4BN,WAAAA,YAAYO,WAAWZ,QAAQA,OAAOI,SAAtC;AAElC,UAAIO,aAAa;AACXE,YAAAA,YAAWC,WAAWd,OAAOI,SAA7B,GAA0C;AAC9BW,uDAAAA,iBACZJ,YAAYK,cACZL,YAAYM,WACZN,YAAYO,gBACZP,YAAYQ;AAAAA,QAJd,OAMK;AACSJ,uDAAAA,iBACZJ,YAAYO,gBACZP,YAAYQ,aACZR,YAAYK,cACZL,YAAYM;AAAAA,QAEf;AAAA,MAAA,OACI;AACLR,qDAAcW;AAAAA,MACf;AAAA,aACMC;AACPC,cAAQC,MAAMF,CAAd;AAAA,IACD;AAAA,EAAA,CA5BsB;AA8B1B;ACID,2BAA2B,IAA2D;AAA3D,eAAEG;AAAAA;AAAAA,IAAYC;AAAAA,MAAd,IAA0BC,kBAA1B,IAA0BA;AAAAA,IAAxBF;AAAAA,IAAYC;AAAAA;AACjCE,QAAAA,cAAc,CAACC,mBAAS;AAAA,IAAEC,QAAQ;AAAA,EAAX,CAAA,CAAT;AAEpB,gCAA8BH,QAA2B;AACvD,YAAQA,OAAMI,QAAQC;AAAAA,WACfC,UAAAA,UAAUC;AAAAA;AAETT,YAAAA,WAAWU,OAAOC,SAASC,UAAAA,eAAeC,QAAQ;AAElD,gDAAA,QAAA,iCAAUX,OAAMY,aAAhB;AAAA,YAA4B,WAAWC,IAAAA,GAAG,GAAGZ,WAAJ;AAAA,YAAzC,UACGD,OAAMc;AAAAA,UAAAA,EAFX;AAAA,QAKD;AAGC,8CAAA,KAAA,iCAAOd,OAAMY,aAAb;AAAA,UAAyB,WAAWC,IAAAA,GAAG,GAAGZ,WAAJ;AAAA,UAAtC,UACGD,OAAMc;AAAAA,QAAAA,EAFX;AAAA;AAAA,EAML;AAED,QAAMC,gBAAgBhB,QAAQiB,OAC5B,CAACC,UAAUC,WAAW,CAAClB,WAA8B;AAC7C,UAAA;AAAA,MAAEmB;AAAAA,MAASJ,eAAAA;AAAAA,QAAkBG;AAE/BC,QAAAA,oCAASrB,eAAc,QAAQiB,kBAAiB;AAAM,aAAOE,SAASjB,MAAD;AAEzE,QAAImB,QAAQC,mBAAmB;AAAM,aAAOL,eAAcE,UAAUI,MAAX,EAAsBrB,MAAnC;AAE5C,0CACGsB,KAAAA,cAAD;AAAA,MAAc,YAAYH,QAAQrB;AAAAA,MAAY,MAAMqB,QAAQC,gBAAgBpB,OAAMI,OAA9B;AAAA,MACjDmB,UAAAA,CAASR,UAAAA,eAAcE,UAAUM,KAAX,EAAkBvB,MAA/B;AAAA,IAAA,CAFd;AAAA,KAMFwB,oBAdoB;AAiBfT,SAAAA,cAAcf,KAAD;AACrB;AAMD,MAAMyB,cAA4B,CAAC;AAAA,EAAEpB,MAAMC,UAAUC,UAAAA;AAAAA,EAASO,UAAU,CAAC;AAAA,IAAEY,MAAM;AAAA,EAAA,CAAT;AAArC,CAAD;AAQH,wBAAA;AAAA,EAAEA;AAAAA,EAAM5B;AAAAA,EAAYqB;AAAAA,GAAkB;AAC7DpB,QAAAA,UAAU4B,MAAAA,QAAQ,MAAM;;AAC5B,UAAM5B,WAAU,CACd,GAAID,qDAAYU,WAAZV,mBAAoBC,YAApBD,YAA+B,CAAA,GACnC,GAAIA,gDAAYU,WAAZV,mBAAoBW,UAASC,UAAAA,eAAeC,SAAS,CAACiB,MAAD,gBAAA,IAAqB,CAAA,CAFhE;AAIT7B,WAAAA;AAAAA,EAAAA,GACN,CAACD,UAAD,CANoB;AAQjB,QAAA,CAACxB,UAAUuD,eAAS,MACxB9B,QAAQ+B,YACN,CAACxD,SAAQ4C;;AAAWA,wDAAQa,eAARb,gCAAqB5C,aAArB4C,YAAgC5C;AAAAA,KACpD0D,QAAAA,YAAYC,aAAYC,YAAAA,WAAAA,UAAUC,mBAAD,CAAA,CAAV,CAAZ,CAFb,CADuB;AAOnBC,QAAAA,oBAAoBC,aAAO,KAAD;AAChCC,sBAAoBhE,QAAQ8D,iBAAT;AAEbG,QAAAA,WAAWC,KAAAA;AAEjBC,QAAAA,UAAU,MAAM;AACVtB,QAAAA,WAAW;AAAM;AAEff,UAAAA,UAAUzB,WAAAA,YAAY+D,UAAUpE,QAAQA,MAA9B;AAChB,WAAOqE,kBAAa;AAAA,MAClBvC;AAAAA,MACAwC,kBAAkBC,CAAAA,aAAY1B,QAAQ2B,eAAeD,QAAvB;AAAA,IAAA,CAFb;AAAA,EAAA,GAIlB,CAACvE,QAAQ6C,OAAT,CARM;AAUHJ,QAAAA,gBAAgBgC,kBACpB,CAAC/C,UAA8B;AACtB,0CAAC,mBAAD,iCAAuBA,QAAvB;AAAA,MAA8B;AAAA,MAAwB;AAAA,IAAA,EAA7D;AAAA,EAAA,GAEF,CAACD,SAASD,UAAV,CAJ+B;AAO3BkD,QAAAA,aAAaD,MAAAA,YAAY,CAAC;AAAA,IAAEnC;AAAAA,IAAYE;AAAAA,QAAgC;AAC5E,mFAAiBF;MAAaE;AAAAA,IAAAA,EAA9B;AAAA,EAD4B,GAE3B,CAF2B,CAAA;AAI9B,QAAMmC,eAAetB,MAAAA,QAAQ,MAAMD,sBAAQD,aAAa,CAACC,IAAD,CAA5B;AAE5Be,QAAAA,UAAU,MAAM;AAMVF,QAAAA,aAAaW,0BAAgBC,SAAS;AACxCf,wBAAkB3D,UAAU;AAC5BE,6BAAYyE,SAAS9E,MAArB;AAAA,IACD;AAAA,EAAA,GACA,CAACiE,QAAD,CAVM;AAYTE,QAAAA,UAAU,MAAM;AACdtB,uCAASkC,UAAU/E;AACnB6C,uCAASmC,gBAAgB7B;AAAAA,EACxB,GAAA,CAACN,SAAS7C,QAAQmD,WAAlB,CAHM;AAKH8B,QAAAA,cAAcR,MAAAA,YAAY,MAAM;AACpCX,sBAAkB3D,UAAU;AAC5B0C,uCAASqC;AAAAA,EAAT,GACC,CAACrC,OAAD,CAH4B;AAKzBsC,QAAAA,gBAAgBV,kBACpB,CAACpD,MAAqB;AAChB+D,QAAAA,kBAAAA,WAAS,eAAe/D,CAAhB;AAA2BgE,aAAAA,aAAAA,cAAcC,KAAKtF,MAAnB;AACnCoF,QAAAA,kBAAAA,WAAS,SAAS/D,CAAV;AAAqBgE,aAAAA,aAAAA,cAAcE,KAAKvF,MAAnB;AACjC,QAAIoF,6BAAS,QAAD,EAAW/D,CAAnB,GAAuB;AACzByC,wBAAkB3D,UAAU;AAC5BE,6BAAYmF,KAAKxF,MAAjB;AACA6C,yCAAS4C;AAAAA,IACV;AAEDhE,YAAQiE,QAAQ9C,CAAUA,WAAAA;;AAAAA,oDAAQ+C,cAAR/C,gCAAoBvB,GAAGrB;AAAAA,KAAjD;AAAA,EAEF,GAAA,CAAC6C,SAASpB,SAASzB,MAAnB,CAZ+B;AAe3B4F,QAAAA,cAAcnB,kBAClB,CAACpD,MAAqB;AAChB4C,QAAAA,aAAaW,UAAAA,gBAAgBC;AAASxD,QAAEwE,eAAF;AAAA,EAE5C,GAAA,CAAChD,SAAS7C,QAAQiE,QAAlB,CAJ6B;AAOzB6B,QAAAA,cAAcrB,kBAClB,CAACpD,MAAkB;AACb4C,QAAAA,aAAaW,UAAAA,gBAAgBC;AAASxD,QAAE0E,gBAAF;AAAA,EAAA,GAE5C,CAAC9B,QAAD,CAJ6B;AAOzB+B,QAAAA,aAAavB,kBAAY,CAACpD,MAAkB;;AAEhD,QAAIA,EAAE4E,iBAAiB;AAAM;AAE7B,QAAI5E,SAAE4E,kBAAF5E,mBAAiB6E,aAAa,wBAAuB;AACvDpC,wBAAkB3D,UAAU;AAAA,EALF,GAM3B,CAN2B,CAAA;AAQxBgG,QAAAA,iBAAiB1B,kBACrB,CAACxB,UAAwB;AACvBJ,uCAASuD,SAASnD;AAAAA,EAAlB,GAEF,CAACJ,OAAD,CAJgC;AAOlC,wCACGwD,WAAAA,OAAD;AAAA,IAAO;AAAA,IAAgB,UAAUF;AAAAA,IAAgB,OAAOxB;AAAAA,IAAxD,yCACG2B,qBAAD;AAAA,MACE;AAAA,MACA;AAAA,MACA,SAASrB;AAAAA,MACT,WAAWE;AAAAA,MACX,SAASS;AAAAA,MACT,SAASE;AAAAA,MACT,QAAQE;AAAAA,MACR,UAAU/B,aAAaW,UAAAA,gBAAgBC;AAAAA,MACvC,aAAY;AAAA,IAAA,CATd;AAAA,EAAA,CAFJ;AAeD;;;"}
1
+ {"version":3,"file":"index.cjs9.js","sources":["../src/runtimes/react/controls/rich-text-v2/EditableTextV2/useSyncDOMSelection.tsx","../src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-element.tsx","../src/runtimes/react/controls/rich-text-v2/EditableTextV2/render-leaf.tsx","../src/runtimes/react/controls/rich-text-v2/EditableTextV2/editable-text-v2.tsx"],"sourcesContent":["import { Editor, Range as SlateRange } from 'slate'\nimport { useIsomorphicLayoutEffect } from '../../../../../components/hooks/useIsomorphicLayoutEffect'\nimport { MutableRefObject } from 'react'\nimport { ReactEditor } from 'slate-react'\n\n/**\n * Clicking outside of the host blurs our `<Editable />`.\n * `<Editable />` only updates the DOM's selection to match slate when it is focused.\n * In the case of a panel being clicked this hook updates the DOM selection to match slate.\n */\nexport function useSyncDOMSelection(editor: Editor, isEnabled: MutableRefObject<boolean>) {\n useIsomorphicLayoutEffect(() => {\n if (!isEnabled.current || editor.selection == null || ReactEditor.isFocused(editor)) return\n try {\n const root = ReactEditor.findDocumentOrShadowRoot(editor) as Document\n const domSelection = root.getSelection()\n const newDomRange: Range | null = ReactEditor.toDOMRange(editor, editor.selection)\n\n if (newDomRange) {\n if (SlateRange.isBackward(editor.selection!)) {\n domSelection?.setBaseAndExtent(\n newDomRange.endContainer,\n newDomRange.endOffset,\n newDomRange.startContainer,\n newDomRange.startOffset,\n )\n } else {\n domSelection?.setBaseAndExtent(\n newDomRange.startContainer,\n newDomRange.startOffset,\n newDomRange.endContainer,\n newDomRange.endOffset,\n )\n }\n } else {\n domSelection?.removeAllRanges()\n }\n } catch (e) {\n console.error(e)\n }\n })\n}\n","import { cx } from '@emotion/css'\nimport { RenderElementProps } from 'slate-react'\nimport {\n RichTextV2ControlDefinition,\n RichTextV2Plugin,\n RichTextV2Mode,\n} from '../../../../../controls'\nimport { BlockType } from '../../../../../slate'\nimport { useStyle } from '../../../use-style'\nimport { ControlValue } from '../../control'\n\ntype RichTextV2ElementProps = RenderElementProps & {\n definition: RichTextV2ControlDefinition\n plugins: RichTextV2Plugin[]\n}\n\nexport function RichTextV2Element({ definition, plugins, ...props }: RichTextV2ElementProps) {\n const blockStyles = [useStyle({ margin: 0 })]\n\n function initialRenderElement(props: RenderElementProps) {\n switch (props.element.type) {\n case BlockType.Default:\n default:\n if (definition.config.mode === RichTextV2Mode.Inline) {\n return (\n <span {...props.attributes} className={cx(...blockStyles)}>\n {props.children}\n </span>\n )\n }\n\n return (\n <p {...props.attributes} className={cx(...blockStyles)}>\n {props.children}\n </p>\n )\n }\n }\n\n const renderElement = plugins.reduce(\n (renderFn, plugin) => (props: RenderElementProps) => {\n const { control, renderElement } = plugin\n\n if (control?.definition == null || renderElement == null) return renderFn(props)\n\n if (control.getElementValue == null) return renderElement(renderFn, undefined)(props)\n\n return (\n <ControlValue definition={control.definition} data={control.getElementValue(props.element)}>\n {value => renderElement(renderFn, value)(props)}\n </ControlValue>\n )\n },\n initialRenderElement,\n )\n\n return renderElement(props)\n}\n","import { RenderLeafProps } from 'slate-react'\nimport { RichTextV2ControlDefinition, RichTextV2Plugin } from '../../../../../controls'\nimport { ControlValue } from '../../control'\n\ntype RichTextV2LeafProps = RenderLeafProps & {\n definition: RichTextV2ControlDefinition\n plugins: RichTextV2Plugin[]\n}\n\nexport function RichTextV2Leaf({ definition, plugins, ...props }: RichTextV2LeafProps) {\n function initialRenderLeaf({ attributes, children, leaf }: RenderLeafProps) {\n return (\n <span className={leaf.className} {...attributes}>\n {children}\n </span>\n )\n }\n\n const renderLeaf = plugins.reduce(\n (renderFn, plugin) => (props: RenderLeafProps) => {\n const { control, renderLeaf } = plugin\n\n if (control?.definition == null || renderLeaf == null) return renderFn(props)\n\n if (control.getLeafValue == null) return renderLeaf(renderFn, undefined)(props)\n\n return (\n <ControlValue definition={control.definition} data={control.getLeafValue(props.leaf)}>\n {value => renderLeaf(renderFn, value)(props)}\n </ControlValue>\n )\n },\n initialRenderLeaf,\n )\n\n return renderLeaf(props)\n}\n","import {\n FocusEvent,\n KeyboardEvent,\n MouseEvent,\n ReactNode,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react'\nimport { Descendant, createEditor } from 'slate'\nimport isHotkey from 'is-hotkey'\nimport { withHistory, HistoryEditor } from 'slate-history'\nimport {\n withReact,\n ReactEditor,\n RenderElementProps,\n RenderLeafProps,\n Slate,\n Editable,\n} from 'slate-react'\n\nimport {\n RichTextV2Control,\n RichTextV2ControlData,\n RichTextV2ControlDefinition,\n RichTextV2Mode,\n} from '../../../../../controls'\nimport { useBuilderEditMode } from '../../..'\nimport { BuilderEditMode } from '../../../../../state/modules/builder-edit-mode'\nimport { pollBoxModel } from '../../../poll-box-model'\nimport { InlineModePlugin, withBuilder } from '../../../../../slate'\nimport { useSyncDOMSelection } from './useSyncDOMSelection'\nimport { BlockType } from '../../../../../slate'\nimport { RichTextV2Element } from './render-element'\nimport { RichTextV2Leaf } from './render-leaf'\n\nexport type RichTextV2ControlValue = ReactNode\n\nexport type Descriptors = { text?: RichTextV2ControlDefinition }\n\nconst defaultText: Descendant[] = [{ type: BlockType.Default, children: [{ text: '' }] }]\n\ntype Props = {\n text: RichTextV2ControlData\n definition: RichTextV2ControlDefinition\n control: RichTextV2Control | null\n}\n\nexport function EditableTextV2({ text, definition, control }: Props) {\n const plugins = useMemo(() => {\n const plugins = [\n ...(definition?.config?.plugins ?? []),\n ...(definition?.config?.mode === RichTextV2Mode.Inline ? [InlineModePlugin] : []),\n ]\n return plugins\n }, [definition])\n\n const [editor] = useState(() =>\n plugins.reduceRight(\n (editor, plugin) => plugin?.withPlugin?.(editor) ?? editor,\n withBuilder(withHistory(withReact(createEditor()))),\n ),\n )\n\n const isPreservingFocus = useRef(false)\n useSyncDOMSelection(editor, isPreservingFocus)\n\n const editMode = useBuilderEditMode()\n\n useEffect(() => {\n if (control == null) return\n\n const element = ReactEditor.toDOMNode(editor, editor)\n return pollBoxModel({\n element,\n onBoxModelChange: boxModel => control.changeBoxModel(boxModel),\n })\n }, [editor, control])\n\n const renderElement = useCallback(\n (props: RenderElementProps) => {\n return <RichTextV2Element {...props} definition={definition} plugins={plugins} />\n },\n [plugins, definition],\n )\n\n const renderLeaf = useCallback(\n (props: RenderLeafProps) => {\n return <RichTextV2Leaf {...props} definition={definition} plugins={plugins} />\n },\n [plugins, definition],\n )\n\n const initialValue = useMemo(() => text ?? defaultText, [text])\n\n useEffect(() => {\n /**\n * This is required because clicking on the overlay has `relatedTarget` null just like the sidebar, but\n * - in the case of the overlay we switch to BUILD mode\n * - in the case of the sidebar we preserve the selection\n */\n if (editMode !== BuilderEditMode.CONTENT) {\n isPreservingFocus.current = false\n ReactEditor.deselect(editor)\n }\n }, [editMode])\n\n useEffect(() => {\n control?.setEditor(editor)\n control?.setDefaultValue(defaultText)\n }, [control, editor, defaultText])\n\n const handleFocus = useCallback(() => {\n isPreservingFocus.current = true\n control?.select()\n }, [control])\n\n const handleKeyDown = useCallback(\n (e: KeyboardEvent) => {\n if (isHotkey('mod+shift+z', e)) return HistoryEditor.redo(editor)\n if (isHotkey('mod+z', e)) return HistoryEditor.undo(editor)\n if (isHotkey('escape')(e)) {\n isPreservingFocus.current = false\n ReactEditor.blur(editor)\n control?.switchToBuildMode()\n }\n\n plugins.forEach(plugin => plugin?.onKeyDown?.(e, editor))\n },\n [control, plugins, editor],\n )\n\n const handleKeyUp = useCallback(\n (e: KeyboardEvent) => {\n if (editMode === BuilderEditMode.CONTENT) e.preventDefault()\n },\n [control, editor, editMode],\n )\n\n const handleClick = useCallback(\n (e: MouseEvent) => {\n if (editMode === BuilderEditMode.CONTENT) e.stopPropagation()\n },\n [editMode],\n )\n\n const handleBlur = useCallback((e: FocusEvent) => {\n // outside of iframe (overlay, sidebar, etc)\n if (e.relatedTarget == null) return\n // another text\n if (e.relatedTarget?.getAttribute('contenteditable') === 'true')\n isPreservingFocus.current = false\n }, [])\n\n const handleOnChange = useCallback(\n (value: Descendant[]) => {\n control?.onChange(value)\n },\n [control],\n )\n\n return (\n <Slate editor={editor} onChange={handleOnChange} value={initialValue}>\n <Editable\n renderLeaf={renderLeaf}\n renderElement={renderElement}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n onKeyUp={handleKeyUp}\n onClick={handleClick}\n onBlur={handleBlur}\n readOnly={editMode !== BuilderEditMode.CONTENT}\n placeholder=\"Write some text...\"\n />\n </Slate>\n )\n}\n\nexport default EditableTextV2\n"],"names":["editor","isEnabled","useIsomorphicLayoutEffect","current","selection","ReactEditor","isFocused","root","findDocumentOrShadowRoot","domSelection","getSelection","newDomRange","toDOMRange","SlateRange","isBackward","setBaseAndExtent","endContainer","endOffset","startContainer","startOffset","removeAllRanges","e","console","error","definition","plugins","props","blockStyles","useStyle","margin","element","type","BlockType","Default","config","mode","RichTextV2Mode","Inline","attributes","cx","children","renderElement","reduce","renderFn","plugin","control","getElementValue","undefined","ControlValue","value","initialRenderElement","leaf","className","renderLeaf","getLeafValue","initialRenderLeaf","defaultText","text","useMemo","InlineModePlugin","useState","reduceRight","withPlugin","withBuilder","withHistory","withReact","createEditor","isPreservingFocus","useRef","useSyncDOMSelection","editMode","useBuilderEditMode","useEffect","toDOMNode","pollBoxModel","onBoxModelChange","boxModel","changeBoxModel","useCallback","initialValue","BuilderEditMode","CONTENT","deselect","setEditor","setDefaultValue","handleFocus","select","handleKeyDown","isHotkey","HistoryEditor","redo","undo","blur","switchToBuildMode","forEach","onKeyDown","handleKeyUp","preventDefault","handleClick","stopPropagation","handleBlur","relatedTarget","getAttribute","handleOnChange","onChange","Slate","Editable"],"mappings":"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"}
package/dist/index.es.js CHANGED
@@ -38,20 +38,17 @@ import * as React from "react";
38
38
  import { useEffect, createContext, useContext, useState, useMemo, useRef, Children, createElement, forwardRef, memo, useId, useCallback, useImperativeHandle, Component, Suspense } from "react";
39
39
  import { useSyncExternalStoreWithSelector } from "use-sync-external-store/shim/with-selector";
40
40
  import dynamic from "next/dynamic";
41
- import { a as createDocumentReference, g as getPropControllerDescriptors, b as isElementReference, e as getElementSwatchIds, f as getFileIds, h as getTypographyIds, j as getTableIds, k as getPageIds, l as getElementChildren, S as ShapeControlType, L as ListControlType, m as Types, E as ElementID, B as Backgrounds, W as Width, n as ResponsiveIconRadioGroup, M as Margin, P as Padding, o as Border, p as BorderRadius, q as Shadows, G as GapY, r as GapX, s as ResponsiveSelect, t as ResponsiveNumber, u as Checkbox, v as Grid, w as TextInput, x as Link, y as ResponsiveColor, z as TextStyle, C as ComponentIcon, I as Images, N as Number$1, D as Date$1, F as Font, A as ResponsiveLength, H as TextArea, J as Table, K as TableFormFields, O as Image, Q as ResponsiveOpacity, U as NavigationLinks, V as SocialLinks, X as RichText, Y as Video, Z as useStyle, _ as getBorderSwatchIds, $ as isNonNullable, a0 as getBoxShadowsSwatchIds, a1 as getResponsiveColorSwatchIds, a2 as StyleControlProperty, a3 as ImageControlValueFormat, a4 as isPropControllersHandle, a5 as StyleV2ControlType, a6 as StyleControlType, a7 as RichTextV2ControlType, a8 as RichTextControlType, a9 as SlotControlType, aa as LinkControlType, ab as ImageControlType, ac as ColorControlType, ad as SelectControlType, ae as getComponentPropControllerDescriptors, af as getPropControllers, ag as BorderPropControllerFormat, ah as ShadowsPropControllerFormat, ai as BorderRadiusPropControllerFormat, aj as MarginPropControllerFormat, ak as PaddingPropControllerFormat, al as WidthPropControllerFormat, am as configureStore$1, an as copyElementTree, ao as getBreakpoints, ap as getDocument, aq as getElementId, ar as getIsPreview, as as getIsInBuilder, at as getReactComponent, au as getBuilderEditMode } from "./react-page.es.js";
41
+ import { a as createDocumentReference, g as getPropControllerDescriptors, b as isElementReference, e as getElementSwatchIds, f as getFileIds, h as getTypographyIds, j as getTableIds, k as getPageIds, l as getElementChildren, S as ShapeControlType, L as ListControlType, m as Types, E as ElementID, B as Backgrounds, W as Width, n as ResponsiveIconRadioGroup, M as Margin, P as Padding, o as Border, p as BorderRadius, q as Shadows, G as GapY, r as GapX, s as ResponsiveSelect, t as ResponsiveNumber, u as Checkbox, v as Grid, w as TextInput, x as Link, y as ResponsiveColor, z as TextStyle, C as ComponentIcon, I as Images, N as Number$1, D as Date$1, F as Font, A as ResponsiveLength, H as TextArea, J as Table, K as TableFormFields, O as Image, Q as ResponsiveOpacity, U as NavigationLinks, V as SocialLinks, X as RichText, Y as Video, Z as useStyle, _ as getBorderSwatchIds, $ as isNonNullable, a0 as getBoxShadowsSwatchIds, a1 as getResponsiveColorSwatchIds, a2 as StyleControlProperty, a3 as ImageControlValueFormat, a4 as isPropControllersHandle, a5 as StyleControlType, a6 as RichTextV2ControlType, a7 as RichTextControlType, a8 as SlotControlType, a9 as StyleV2ControlType, aa as LinkControlType, ab as ImageControlType, ac as ColorControlType, ad as getComponentPropControllerDescriptors, ae as getPropControllers, af as BorderPropControllerFormat, ag as ShadowsPropControllerFormat, ah as BorderRadiusPropControllerFormat, ai as MarginPropControllerFormat, aj as PaddingPropControllerFormat, ak as WidthPropControllerFormat, al as configureStore$1, am as copyElementTree, an as getBreakpoints, ao as getDocument, ap as getElementId, aq as getIsPreview, ar as getIsInBuilder, as as getReactComponent, at as getBuilderEditMode } from "./react-page.es.js";
42
42
  import { A as ActionTypes, n as apiResourceFulfilled, o as registerComponentEffect, p as registerReactComponentEffect, q as registerComponentHandleEffect, t as mountComponentEffect } from "./actions.es.js";
43
43
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
44
- import { T as TextAreaControlType, a as TextInputControlType, N as NumberControlType, C as CheckboxControlType } from "./text-input.es.js";
44
+ import { I as IconRadioGroupControlType, S as SelectControlType, T as TextAreaControlType, a as TextInputControlType, N as NumberControlType, C as CheckboxControlType } from "./text-input.es.js";
45
45
  import { C as ComboboxControlType } from "./combobox.es.js";
46
46
  import "slate";
47
- import { getBaseBreakpoint, findBreakpointOverride, DefaultBreakpointID, join, getBreakpoint, getBreakpointMediaQuery, parseBreakpointsInput } from "./state/breakpoints.es.js";
48
- import "is-hotkey";
49
- import "slate-react";
50
47
  import { useSyncExternalStore } from "use-sync-external-store/shim";
51
48
  import { createStore, applyMiddleware } from "redux";
52
49
  import thunk from "redux-thunk";
53
50
  import { A as APIResourceType } from "./types.es.js";
54
- import { d as deepEqual } from "./deepEqual.es.js";
51
+ import { getBaseBreakpoint, findBreakpointOverride, DefaultBreakpointID, join, getBreakpoint, getBreakpointMediaQuery, parseBreakpointsInput } from "./state/breakpoints.es.js";
55
52
  import { g as getBox, i as isMeasurable, m as measure } from "./box-models.es.js";
56
53
  import ColorHelper from "color";
57
54
  import { cache, cx } from "@emotion/css";
@@ -116,6 +113,43 @@ function BodySnippet({
116
113
  }, [code, cleanup]);
117
114
  return null;
118
115
  }
116
+ function is(x, y) {
117
+ if (x === y)
118
+ return x !== 0 || y !== 0 || 1 / x === 1 / y;
119
+ return x !== x && y !== y;
120
+ }
121
+ const { hasOwnProperty: hasOwnProperty$1 } = Object.prototype;
122
+ const shallowEqual = (a, b) => {
123
+ if (is(a, b))
124
+ return true;
125
+ if (typeof a !== "object" || a === null || typeof b !== "object" || b === null)
126
+ return false;
127
+ const keysA = Object.keys(a);
128
+ const keysB = Object.keys(b);
129
+ if (keysA.length !== keysB.length)
130
+ return false;
131
+ for (let i = 0; i < keysA.length; i += 1) {
132
+ if (!hasOwnProperty$1.call(b, keysA[i]) || !is(a[keysA[i]], b[keysA[i]]))
133
+ return false;
134
+ }
135
+ return true;
136
+ };
137
+ const { hasOwnProperty } = Object.prototype;
138
+ const deepEqual = (a, b) => {
139
+ if (shallowEqual(a, b))
140
+ return true;
141
+ if (typeof a !== "object" || a === null || typeof b !== "object" || b === null)
142
+ return false;
143
+ const keysA = Object.keys(a);
144
+ const keysB = Object.keys(b);
145
+ if (keysA.length !== keysB.length)
146
+ return false;
147
+ for (let i = 0; i < keysA.length; i += 1) {
148
+ if (!hasOwnProperty.call(b, keysA[i]) || !deepEqual(a[keysA[i]], b[keysA[i]]))
149
+ return false;
150
+ }
151
+ return true;
152
+ };
119
153
  function getInitialState(serializedState = {
120
154
  Swatch: [],
121
155
  File: [],
@@ -1114,7 +1148,7 @@ async function fonts(_req, res, { getFonts } = {}) {
1114
1148
  const fonts2 = (_a = await (getFonts == null ? void 0 : getFonts())) != null ? _a : [];
1115
1149
  return res.json(fonts2);
1116
1150
  }
1117
- const version = "0.9.1";
1151
+ const version = "0.9.3";
1118
1152
  async function handler(req, res, { apiKey, unstable_siteVersions }) {
1119
1153
  if (req.query.secret !== apiKey) {
1120
1154
  return res.status(401).json({ message: "Unauthorized" });
@@ -2956,6 +2990,9 @@ function useColorValue(data, definition) {
2956
2990
  function useComboboxControlValue(data) {
2957
2991
  return data == null ? void 0 : data.value;
2958
2992
  }
2993
+ function useIconRadioGroupValue(iconRadioGroupControlData, controlDefinition) {
2994
+ return iconRadioGroupControlData != null ? iconRadioGroupControlData : controlDefinition.config.defaultValue;
2995
+ }
2959
2996
  function useImageControlValue(data, definition) {
2960
2997
  var _a;
2961
2998
  const format = (_a = definition.config.format) != null ? _a : ImageControlValueFormat.URL;
@@ -3280,6 +3317,29 @@ function useFormattedStyleV2(styleControlData, controlDefinition) {
3280
3317
  const styles = useStyleControlCssObject(styleControlData, controlDefinition);
3281
3318
  return useStyle(styles);
3282
3319
  }
3320
+ function StyleV2ControlValue({
3321
+ definition,
3322
+ data,
3323
+ children,
3324
+ control
3325
+ }) {
3326
+ return (data != null ? data : []).reduceRight((renderFn, deviceOverrideData) => (responsiveValue) => {
3327
+ return /* @__PURE__ */ jsx(ControlValue, {
3328
+ definition: definition.config.type,
3329
+ data: deviceOverrideData.value,
3330
+ control: control == null ? void 0 : control.control,
3331
+ children: (value) => renderFn([__spreadProps(__spreadValues({}, deviceOverrideData), {
3332
+ value
3333
+ }), ...responsiveValue])
3334
+ });
3335
+ }, (value) => {
3336
+ return /* @__PURE__ */ jsx(RenderHook, {
3337
+ hook: useFormattedStyleV2,
3338
+ parameters: [value, definition],
3339
+ children: (value2) => children(value2)
3340
+ }, definition.type);
3341
+ })([]);
3342
+ }
3283
3343
  function useTextAreaValue(data, definition) {
3284
3344
  return data != null ? data : definition.config.defaultValue;
3285
3345
  }
@@ -3329,6 +3389,12 @@ function ControlValue({
3329
3389
  parameters: [data, definition],
3330
3390
  children: (value) => children(value)
3331
3391
  }, definition.type);
3392
+ case IconRadioGroupControlType:
3393
+ return /* @__PURE__ */ jsx(RenderHook, {
3394
+ hook: useIconRadioGroupValue,
3395
+ parameters: [data, definition],
3396
+ children: (value) => children(value)
3397
+ }, definition.type);
3332
3398
  case ImageControlType:
3333
3399
  return /* @__PURE__ */ jsx(RenderHook, {
3334
3400
  hook: useImageControlValue,
@@ -3361,6 +3427,13 @@ function ControlValue({
3361
3427
  control,
3362
3428
  children: (value) => children(value)
3363
3429
  });
3430
+ case StyleV2ControlType:
3431
+ return /* @__PURE__ */ jsx(StyleV2ControlValue, {
3432
+ data,
3433
+ definition,
3434
+ control,
3435
+ children: (value) => children(value)
3436
+ }, definition.type);
3364
3437
  case SlotControlType:
3365
3438
  return /* @__PURE__ */ jsx(RenderHook, {
3366
3439
  hook: useSlot,
@@ -3385,12 +3458,6 @@ function ControlValue({
3385
3458
  parameters: [data, definition, control],
3386
3459
  children: (value) => children(value)
3387
3460
  }, definition.type);
3388
- case StyleV2ControlType:
3389
- return /* @__PURE__ */ jsx(RenderHook, {
3390
- hook: useFormattedStyleV2,
3391
- parameters: [data, definition],
3392
- children: (value) => children(value)
3393
- }, definition.type);
3394
3461
  default:
3395
3462
  return children(data);
3396
3463
  }
@@ -3438,6 +3505,7 @@ function PropsValue({
3438
3505
  case TextAreaControlType:
3439
3506
  case SelectControlType:
3440
3507
  case ColorControlType:
3508
+ case IconRadioGroupControlType:
3441
3509
  case ImageControlType:
3442
3510
  case ComboboxControlType:
3443
3511
  case ShapeControlType:
@@ -3937,5 +4005,5 @@ const DocumentReference = memo(forwardRef(function DocumentReference2({
3937
4005
  document: document2
3938
4006
  });
3939
4007
  }));
3940
- export { MakeswiftApiHandler as $, Alignments as A, forwardNextDynamicRef as B, Contrasts as C, DocumentReference as D, Element$1 as E, useIsPreview as F, useFiles as G, useSwatches as H, usePagePathnameSlice as I, useElementId as J, ElementImperativeHandle as K, StoreContext as L, MakeswiftProvider as M, useBuilderEditMode as N, pollBoxModel as O, PageProvider as P, ControlValue as Q, RuntimeProvider as R, Shapes as S, useTypography as T, getStaticPaths as U, getStaticProps as V, getServerSideProps as W, Page as X, Makeswift as Y, PreviewModeScript as Z, Document$1 as _, ReactRuntime as a, usePageId as b, DEFAULT_BOX_ANIMATE_TYPE as c, DEFAULT_BOX_ANIMATE_DELAY as d, DEFAULT_BOX_ANIMATE_DURATION as e, DEFAULT_ITEM_ANIMATE_TYPE as f, DEFAULT_ITEM_ANIMATE_DELAY as g, DEFAULT_ITEM_ANIMATE_DURATION as h, DEFAULT_ITEM_STAGGER_DURATION as i, useBorder as j, useBoxShadow as k, useResponsiveColor as l, Page$1 as m, useResponsiveStyle as n, useResponsiveWidth as o, useResponsiveTextStyle as p, colorToString as q, useBreakpoints as r, Sizes as s, useFormContext as t, useIsInBuilder as u, useResponsiveGridItem as v, useTable as w, useMakeswiftClient as x, Provider as y, useFile as z };
4008
+ export { Document$1 as $, Alignments as A, forwardNextDynamicRef as B, Contrasts as C, DocumentReference as D, Element$1 as E, useIsPreview as F, useFiles as G, useSwatches as H, usePagePathnameSlice as I, useElementId as J, deepEqual as K, ElementImperativeHandle as L, StoreContext as M, MakeswiftProvider as N, ControlValue as O, PageProvider as P, useBuilderEditMode as Q, RuntimeProvider as R, Shapes as S, pollBoxModel as T, useTypography as U, getStaticPaths as V, getStaticProps as W, getServerSideProps as X, Page as Y, Makeswift as Z, PreviewModeScript as _, ReactRuntime as a, MakeswiftApiHandler as a0, usePageId as b, DEFAULT_BOX_ANIMATE_TYPE as c, DEFAULT_BOX_ANIMATE_DELAY as d, DEFAULT_BOX_ANIMATE_DURATION as e, DEFAULT_ITEM_ANIMATE_TYPE as f, DEFAULT_ITEM_ANIMATE_DELAY as g, DEFAULT_ITEM_ANIMATE_DURATION as h, DEFAULT_ITEM_STAGGER_DURATION as i, useBorder as j, useBoxShadow as k, useResponsiveColor as l, Page$1 as m, useResponsiveStyle as n, useResponsiveWidth as o, useResponsiveTextStyle as p, colorToString as q, useBreakpoints as r, Sizes as s, useFormContext as t, useIsInBuilder as u, useResponsiveGridItem as v, useTable as w, useMakeswiftClient as x, Provider as y, useFile as z };
3941
4009
  //# sourceMappingURL=index.es.js.map