@makeswift/runtime 0.0.0-ef05bba → 0.0.0-f5b044f

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 (227) hide show
  1. package/builder.js +1 -0
  2. package/dist/Page.cjs.js +215 -0
  3. package/dist/Page.cjs.js.map +1 -0
  4. package/dist/Page.es.js +209 -0
  5. package/dist/Page.es.js.map +1 -0
  6. package/dist/actions.cjs.js +43 -2
  7. package/dist/actions.cjs.js.map +1 -1
  8. package/dist/actions.es.js +37 -2
  9. package/dist/actions.es.js.map +1 -1
  10. package/dist/api.cjs.js +1 -2
  11. package/dist/api.cjs.js.map +1 -1
  12. package/dist/box-model.cjs.js +1 -2
  13. package/dist/box-model.cjs.js.map +1 -1
  14. package/dist/box-models.cjs.js +2 -0
  15. package/dist/box-models.cjs.js.map +1 -1
  16. package/dist/box-models.es.js +2 -0
  17. package/dist/box-models.es.js.map +1 -1
  18. package/dist/builder.cjs.js +10 -0
  19. package/dist/builder.cjs.js.map +1 -0
  20. package/dist/builder.es.js +3 -0
  21. package/dist/builder.es.js.map +1 -0
  22. package/dist/components.cjs.js +54 -38
  23. package/dist/components.cjs.js.map +1 -1
  24. package/dist/components.es.js +14 -7
  25. package/dist/components.es.js.map +1 -1
  26. package/dist/constants.cjs.js +96 -1
  27. package/dist/constants.cjs.js.map +1 -1
  28. package/dist/constants.es.js +96 -1
  29. package/dist/constants.es.js.map +1 -1
  30. package/dist/control-serialization.cjs.js +223 -0
  31. package/dist/control-serialization.cjs.js.map +1 -0
  32. package/dist/control-serialization.es.js +218 -0
  33. package/dist/control-serialization.es.js.map +1 -0
  34. package/dist/descriptors.cjs.js +17 -3
  35. package/dist/descriptors.cjs.js.map +1 -1
  36. package/dist/descriptors.es.js +14 -4
  37. package/dist/descriptors.es.js.map +1 -1
  38. package/dist/index.cjs.js +8037 -0
  39. package/dist/index.cjs.js.map +1 -0
  40. package/dist/index.es.js +7956 -0
  41. package/dist/index.es.js.map +1 -0
  42. package/dist/instances.cjs.js +17 -0
  43. package/dist/instances.cjs.js.map +1 -1
  44. package/dist/instances.es.js +17 -1
  45. package/dist/instances.es.js.map +1 -1
  46. package/dist/main.cjs.js +10 -2
  47. package/dist/main.cjs.js.map +1 -1
  48. package/dist/main.es.js +5 -1
  49. package/dist/main.es.js.map +1 -1
  50. package/dist/next.cjs.js +64 -22
  51. package/dist/next.cjs.js.map +1 -1
  52. package/dist/next.es.js +61 -19
  53. package/dist/next.es.js.map +1 -1
  54. package/dist/prop-controllers.cjs.js +2 -2
  55. package/dist/prop-controllers.es.js +1 -1
  56. package/dist/react-builder-preview.cjs.js +36 -39
  57. package/dist/react-builder-preview.cjs.js.map +1 -1
  58. package/dist/react-builder-preview.es.js +34 -37
  59. package/dist/react-builder-preview.es.js.map +1 -1
  60. package/dist/react-page.cjs.js +263 -0
  61. package/dist/react-page.cjs.js.map +1 -0
  62. package/dist/react-page.es.js +241 -0
  63. package/dist/react-page.es.js.map +1 -0
  64. package/dist/react.cjs.js +21 -14
  65. package/dist/react.cjs.js.map +1 -1
  66. package/dist/react.cjs2.js +2500 -567
  67. package/dist/react.cjs2.js.map +1 -1
  68. package/dist/react.es.js +13 -7
  69. package/dist/react.es.js.map +1 -1
  70. package/dist/react.es2.js +2488 -557
  71. package/dist/react.es2.js.map +1 -1
  72. package/dist/types/api/constants.d.ts.map +1 -1
  73. package/dist/types/api/generated/graphql.d.ts +59 -0
  74. package/dist/types/api/generated/graphql.d.ts.map +1 -1
  75. package/dist/types/api/react.d.ts +26 -4
  76. package/dist/types/api/react.d.ts.map +1 -1
  77. package/dist/types/api/types.d.ts +2 -2
  78. package/dist/types/api/types.d.ts.map +1 -1
  79. package/dist/types/builder/index.d.ts +2 -0
  80. package/dist/types/builder/index.d.ts.map +1 -0
  81. package/dist/types/builder/serialization/control-serialization.d.ts +144 -0
  82. package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -0
  83. package/dist/types/builder/serialization/function-serialization.d.ts +12 -0
  84. package/dist/types/builder/serialization/function-serialization.d.ts.map +1 -0
  85. package/dist/types/builder/serialization/index.d.ts +3 -0
  86. package/dist/types/builder/serialization/index.d.ts.map +1 -0
  87. package/dist/types/components/builtin/Box/Box.d.ts +2 -2
  88. package/dist/types/components/builtin/Box/Box.d.ts.map +1 -1
  89. package/dist/types/components/builtin/Button/Button.d.ts +5 -5
  90. package/dist/types/components/builtin/Button/Button.d.ts.map +1 -1
  91. package/dist/types/components/builtin/Carousel/Carousel.d.ts +6 -5
  92. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  93. package/dist/types/components/builtin/Countdown/Countdown.d.ts +6 -5
  94. package/dist/types/components/builtin/Countdown/Countdown.d.ts.map +1 -1
  95. package/dist/types/components/builtin/Divider/Divider.d.ts +4 -3
  96. package/dist/types/components/builtin/Divider/Divider.d.ts.map +1 -1
  97. package/dist/types/components/builtin/Embed/Embed.d.ts +2 -2
  98. package/dist/types/components/builtin/Embed/Embed.d.ts.map +1 -1
  99. package/dist/types/components/builtin/Form/Form.d.ts +42 -0
  100. package/dist/types/components/builtin/Form/Form.d.ts.map +1 -0
  101. package/dist/types/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +15 -0
  102. package/dist/types/components/builtin/Form/components/Field/components/Checkbox/index.d.ts.map +1 -0
  103. package/dist/types/components/builtin/Form/components/Field/components/CheckboxTableField/index.d.ts +15 -0
  104. package/dist/types/components/builtin/Form/components/Field/components/CheckboxTableField/index.d.ts.map +1 -0
  105. package/dist/types/components/builtin/Form/components/Field/components/EmailTableField/index.d.ts +11 -0
  106. package/dist/types/components/builtin/Form/components/Field/components/EmailTableField/index.d.ts.map +1 -0
  107. package/dist/types/components/builtin/Form/components/Field/components/Input/index.d.ts +14 -0
  108. package/dist/types/components/builtin/Form/components/Field/components/Input/index.d.ts.map +1 -0
  109. package/dist/types/components/builtin/Form/components/Field/components/Label/index.d.ts +16 -0
  110. package/dist/types/components/builtin/Form/components/Field/components/Label/index.d.ts.map +1 -0
  111. package/dist/types/components/builtin/Form/components/Field/components/LongTextTableField/index.d.ts +10 -0
  112. package/dist/types/components/builtin/Form/components/Field/components/LongTextTableField/index.d.ts.map +1 -0
  113. package/dist/types/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.d.ts +23 -0
  114. package/dist/types/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.d.ts.map +1 -0
  115. package/dist/types/components/builtin/Form/components/Field/components/NumberTableField/index.d.ts +11 -0
  116. package/dist/types/components/builtin/Form/components/Field/components/NumberTableField/index.d.ts.map +1 -0
  117. package/dist/types/components/builtin/Form/components/Field/components/PhoneNumberTableField/index.d.ts +11 -0
  118. package/dist/types/components/builtin/Form/components/Field/components/PhoneNumberTableField/index.d.ts.map +1 -0
  119. package/dist/types/components/builtin/Form/components/Field/components/PlaceholderTableField/index.d.ts +3 -0
  120. package/dist/types/components/builtin/Form/components/Field/components/PlaceholderTableField/index.d.ts.map +1 -0
  121. package/dist/types/components/builtin/Form/components/Field/components/RadioButton/index.d.ts +17 -0
  122. package/dist/types/components/builtin/Form/components/Field/components/RadioButton/index.d.ts.map +1 -0
  123. package/dist/types/components/builtin/Form/components/Field/components/SingleLineTextTableField/index.d.ts +11 -0
  124. package/dist/types/components/builtin/Form/components/Field/components/SingleLineTextTableField/index.d.ts.map +1 -0
  125. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.d.ts +23 -0
  126. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.d.ts.map +1 -0
  127. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.d.ts +19 -0
  128. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.d.ts.map +1 -0
  129. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/index.d.ts +24 -0
  130. package/dist/types/components/builtin/Form/components/Field/components/SingleSelectTableField/index.d.ts.map +1 -0
  131. package/dist/types/components/builtin/Form/components/Field/components/TextArea/index.d.ts +13 -0
  132. package/dist/types/components/builtin/Form/components/Field/components/TextArea/index.d.ts.map +1 -0
  133. package/dist/types/components/builtin/Form/components/Field/components/URLTableField/index.d.ts +11 -0
  134. package/dist/types/components/builtin/Form/components/Field/components/URLTableField/index.d.ts.map +1 -0
  135. package/dist/types/components/builtin/Form/components/Field/index.d.ts +19 -0
  136. package/dist/types/components/builtin/Form/components/Field/index.d.ts.map +1 -0
  137. package/dist/types/components/builtin/Form/components/Field/services/cssField.d.ts +11 -0
  138. package/dist/types/components/builtin/Form/components/Field/services/cssField.d.ts.map +1 -0
  139. package/dist/types/components/builtin/Form/components/Placeholder/index.d.ts +9 -0
  140. package/dist/types/components/builtin/Form/components/Placeholder/index.d.ts.map +1 -0
  141. package/dist/types/components/builtin/Form/components/Spinner/index.d.ts +3 -0
  142. package/dist/types/components/builtin/Form/components/Spinner/index.d.ts.map +1 -0
  143. package/dist/types/components/builtin/Form/context/FormContext.d.ts +33 -0
  144. package/dist/types/components/builtin/Form/context/FormContext.d.ts.map +1 -0
  145. package/dist/types/components/builtin/Form/index.d.ts +2 -0
  146. package/dist/types/components/builtin/Form/index.d.ts.map +1 -0
  147. package/dist/types/components/builtin/Image/Image.d.ts.map +1 -1
  148. package/dist/types/components/builtin/Navigation/Navigation.d.ts +6 -5
  149. package/dist/types/components/builtin/Navigation/Navigation.d.ts.map +1 -1
  150. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts +4 -3
  151. package/dist/types/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -1
  152. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts +5 -4
  153. package/dist/types/components/builtin/SocialLinks/SocialLinks.d.ts.map +1 -1
  154. package/dist/types/components/builtin/Text/Text.d.ts +2 -2
  155. package/dist/types/components/builtin/Text/Text.d.ts.map +1 -1
  156. package/dist/types/components/builtin/Video/Video.d.ts +15 -0
  157. package/dist/types/components/builtin/Video/Video.d.ts.map +1 -0
  158. package/dist/types/components/builtin/Video/index.d.ts +2 -0
  159. package/dist/types/components/builtin/Video/index.d.ts.map +1 -0
  160. package/dist/types/components/builtin/index.d.ts +1 -0
  161. package/dist/types/components/builtin/index.d.ts.map +1 -1
  162. package/dist/types/components/hooks/index.d.ts +1 -0
  163. package/dist/types/components/hooks/index.d.ts.map +1 -1
  164. package/dist/types/components/hooks/useTable.d.ts +66 -0
  165. package/dist/types/components/hooks/useTable.d.ts.map +1 -0
  166. package/dist/types/components/hooks/useTableFormFieldRefs.d.ts +8 -0
  167. package/dist/types/components/hooks/useTableFormFieldRefs.d.ts.map +1 -0
  168. package/dist/types/components/index.d.ts +2 -0
  169. package/dist/types/components/index.d.ts.map +1 -1
  170. package/dist/types/components/page/BodySnippet.d.ts +7 -0
  171. package/dist/types/components/page/BodySnippet.d.ts.map +1 -0
  172. package/dist/types/components/page/Page.d.ts +43 -0
  173. package/dist/types/components/page/Page.d.ts.map +1 -0
  174. package/dist/types/components/page/index.d.ts +2 -0
  175. package/dist/types/components/page/index.d.ts.map +1 -0
  176. package/dist/types/components/shared/BackgroundsContainer/components/Backgrounds/index.d.ts.map +1 -1
  177. package/dist/types/components/shared/FallbackComponent/FallbackComponent.d.ts +7 -0
  178. package/dist/types/components/shared/FallbackComponent/FallbackComponent.d.ts.map +1 -0
  179. package/dist/types/components/shared/FallbackComponent/index.d.ts +2 -0
  180. package/dist/types/components/shared/FallbackComponent/index.d.ts.map +1 -0
  181. package/dist/types/components/utils/placeholders.d.ts +7 -0
  182. package/dist/types/components/utils/placeholders.d.ts.map +1 -1
  183. package/dist/types/components/utils/queries.d.ts +1 -0
  184. package/dist/types/components/utils/queries.d.ts.map +1 -1
  185. package/dist/types/components/utils/responsive-style.d.ts +9 -0
  186. package/dist/types/components/utils/responsive-style.d.ts.map +1 -0
  187. package/dist/types/components/utils/types.d.ts +1 -2
  188. package/dist/types/components/utils/types.d.ts.map +1 -1
  189. package/dist/types/controls/select.d.ts +19 -0
  190. package/dist/types/controls/select.d.ts.map +1 -0
  191. package/dist/types/controls.d.ts +4 -0
  192. package/dist/types/controls.d.ts.map +1 -0
  193. package/dist/types/index.d.ts +2 -1
  194. package/dist/types/index.d.ts.map +1 -1
  195. package/dist/types/next.d.ts +8 -4
  196. package/dist/types/next.d.ts.map +1 -1
  197. package/dist/types/prop-controllers/descriptors.d.ts +58 -26
  198. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  199. package/dist/types/prop-controllers/index.d.ts +3 -3
  200. package/dist/types/prop-controllers/index.d.ts.map +1 -1
  201. package/dist/types/prop-controllers/instances/slot.d.ts +2 -0
  202. package/dist/types/prop-controllers/instances/slot.d.ts.map +1 -0
  203. package/dist/types/prop-controllers/instances.d.ts +36 -4
  204. package/dist/types/prop-controllers/instances.d.ts.map +1 -1
  205. package/dist/types/react.d.ts +1 -1
  206. package/dist/types/react.d.ts.map +1 -1
  207. package/dist/types/runtimes/index.d.ts +43 -0
  208. package/dist/types/runtimes/index.d.ts.map +1 -0
  209. package/dist/types/runtimes/react/controls.d.ts +10 -0
  210. package/dist/types/runtimes/react/controls.d.ts.map +1 -0
  211. package/dist/types/runtimes/react/index.d.ts +45 -0
  212. package/dist/types/runtimes/react/index.d.ts.map +1 -0
  213. package/dist/types/runtimes/react/react.d.ts +43 -0
  214. package/dist/types/runtimes/react/react.d.ts.map +1 -0
  215. package/dist/types/runtimes/react.d.ts +16 -9
  216. package/dist/types/runtimes/react.d.ts.map +1 -1
  217. package/dist/types/state/actions.d.ts +55 -1
  218. package/dist/types/state/actions.d.ts.map +1 -1
  219. package/dist/types/state/modules/box-models.d.ts.map +1 -1
  220. package/dist/types/state/modules/read-only-documents.d.ts +8 -4
  221. package/dist/types/state/modules/read-only-documents.d.ts.map +1 -1
  222. package/dist/types/state/modules/read-write-documents.d.ts +1 -1
  223. package/dist/types/state/modules/read-write-documents.d.ts.map +1 -1
  224. package/dist/types/state/react-builder-preview.d.ts.map +1 -1
  225. package/dist/types/state/react-page.d.ts +4 -3
  226. package/dist/types/state/react-page.d.ts.map +1 -1
  227. package/package.json +22 -7
@@ -76,14 +76,31 @@ class RichTextPropController extends PropController {
76
76
  this.send({ type: RichTextPropControllerMessageType.REDO });
77
77
  }
78
78
  }
79
+ const TableFormFieldsMessageType = {
80
+ TABLE_FORM_LAYOUT_CHANGE: "TABLE_FORM_LAYOUT_CHANGE",
81
+ TABLE_FORM_FIELD_LAYOUT_CHANGE: "TABLE_FORM_FIELD_LAYOUT_CHANGE"
82
+ };
83
+ class TableFormFieldsPropController extends PropController {
84
+ recv() {
85
+ }
86
+ tableFormLayoutChange(payload) {
87
+ this.send({ type: TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE, payload });
88
+ }
89
+ tableFormFieldLayoutChange(payload) {
90
+ this.send({ type: TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE, payload });
91
+ }
92
+ }
79
93
  function createPropController(descriptor, send) {
80
94
  switch (descriptor.type) {
81
95
  case descriptors.Types.RichText:
82
96
  return new RichTextPropController(send);
97
+ case descriptors.Types.TableFormFields:
98
+ return new TableFormFieldsPropController(send);
83
99
  default:
84
100
  return new DefaultPropController(send);
85
101
  }
86
102
  }
87
103
  exports.RichTextPropControllerMessageType = RichTextPropControllerMessageType;
104
+ exports.TableFormFieldsMessageType = TableFormFieldsMessageType;
88
105
  exports.createPropController = createPropController;
89
106
  //# sourceMappingURL=instances.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instances.cjs.js","sources":["../src/utils/constants.ts","../src/prop-controllers/instances.ts"],"sourcesContent":["export const BuilderEditMode = {\n BUILD: 'build',\n CONTENT: 'content',\n} as const\n\nexport type BuilderEditMode = typeof BuilderEditMode[keyof typeof BuilderEditMode]\n","import { Editor } from 'slate-react'\nimport { ValueJSON } from 'slate'\nimport { OnChangeParam } from 'slate-react'\nimport { Descriptor, RichTextDescriptor, Types } from './descriptors'\nimport { BuilderEditMode } from '../utils/constants'\n\nexport const RichTextPropControllerMessageType = {\n CHANGE_BUILDER_EDIT_MODE: 'CHANGE_BUILDER_EDIT_MODE',\n INITIALIZE_EDITOR: 'INITIALIZE_EDITOR',\n CHANGE_EDITOR_VALUE: 'CHANGE_EDITOR_VALUE',\n FOCUS: 'FOCUS',\n BLUR: 'BLUR',\n UNDO: 'UNDO',\n REDO: 'REDO',\n} as const\n\ntype ChangeBuilderEditModeRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE\n editMode: BuilderEditMode\n}\n\ntype InitializeEditorRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.INITIALIZE_EDITOR\n value: ValueJSON\n}\n\ntype ChangeEditorValueRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE\n value: ValueJSON\n}\n\ntype FocusRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.FOCUS }\n\ntype BlurRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.BLUR }\n\ntype UndoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.UNDO }\n\ntype RedoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.REDO }\n\nexport type RichTextPropControllerMessage =\n | ChangeBuilderEditModeRichTextPropControllerMessage\n | InitializeEditorRichTextPropControllerMessage\n | ChangeEditorValueRichTextPropControllerMessage\n | FocusRichTextPropControllerMessage\n | BlurRichTextPropControllerMessage\n | UndoRichTextPropControllerMessage\n | RedoRichTextPropControllerMessage\n\nexport type PropControllerMessage = RichTextPropControllerMessage\n\ntype Send<T = PropControllerMessage> = (message: T) => void\n\nexport abstract class PropController<T = PropControllerMessage> {\n protected send: Send<T>\n\n constructor(send: Send<T>) {\n this.send = send\n }\n\n abstract recv(message: T): void\n}\n\nclass DefaultPropController extends PropController {\n recv(_message: PropControllerMessage): void {\n // Do nothing.\n }\n}\n\nclass RichTextPropController extends PropController<RichTextPropControllerMessage> {\n private editor: Editor | null = null\n\n recv(message: RichTextPropControllerMessage): void {\n switch (message.type) {\n case RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE: {\n switch (message.editMode) {\n case BuilderEditMode.BUILD:\n this.editor?.deselect().blur()\n break\n\n case BuilderEditMode.CONTENT:\n this.editor?.focus().moveToRangeOfDocument()\n break\n }\n\n break\n }\n }\n }\n\n setSlateEditor(editor: Editor) {\n this.editor = editor\n\n this.send({\n type: RichTextPropControllerMessageType.INITIALIZE_EDITOR,\n value: editor.value.toJSON({ preserveSelection: false }),\n })\n }\n\n onChange(change: OnChangeParam) {\n this.send({\n type: RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE,\n value: change.value.toJSON({ preserveSelection: true }),\n })\n }\n\n focus() {\n this.send({ type: RichTextPropControllerMessageType.FOCUS })\n }\n\n blur() {\n this.send({ type: RichTextPropControllerMessageType.BLUR })\n }\n\n undo() {\n this.send({ type: RichTextPropControllerMessageType.UNDO })\n }\n\n redo() {\n this.send({ type: RichTextPropControllerMessageType.REDO })\n }\n}\n\ntype DescriptorPropController<T extends Descriptor> = T extends { type: typeof Types.RichText }\n ? RichTextPropController\n : DefaultPropController\n\nexport type DescriptorsPropControllers<T extends Record<string, Descriptor>> = {\n [K in keyof T]: undefined extends T[K]\n ? DescriptorPropController<Exclude<T[K], undefined>>\n : DescriptorPropController<T[K]>\n}\n\nexport function createPropController(\n descriptor: RichTextDescriptor,\n send: Send<RichTextPropControllerMessage>,\n): RichTextPropController\nexport function createPropController(descriptor: Descriptor, send: Send): PropController\nexport function createPropController(descriptor: Descriptor, send: Send): PropController {\n switch (descriptor.type) {\n case Types.RichText:\n return new RichTextPropController(send)\n\n default:\n return new DefaultPropController(send)\n }\n}\n"],"names":["Types"],"mappings":";;;;;;;;MAAa,kBAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,SAAS;AAAA;MCIE,oCAAoC;AAAA,EAC/C,0BAA0B;AAAA,EAC1B,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA;qBAuCwD;AAAA,EAG9D,YAAY,MAAe;AAFjB;SAGH,OAAO;AAAA;AAAA;AAMhB,oCAAoC,eAAe;AAAA,EACjD,KAAK,UAAuC;AAAA;AAAA;AAK9C,qCAAqC,eAA8C;AAAA,EAAnF;AAAA;AACU,kCAAwB;AAAA;AAAA,EAEhC,KAAK,SAA8C;;YACzC,QAAQ;AAAA,WACT,kCAAkC,0BAA0B;gBACvD,QAAQ;AAAA,eACT,gBAAgB;uBACd,8BAAQ,WAAW;;eAGrB,gBAAgB;uBACd,8BAAQ,QAAQ;;;;;;;EAS/B,eAAe,QAAgB;SACxB,SAAS;SAET,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB;AAAA;AAAA;AAAA,EAIpD,SAAS,QAAuB;SACzB,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB;AAAA;AAAA;AAAA,EAIpD,QAAQ;SACD,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA,EAGtD,OAAO;SACA,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA,EAGtD,OAAO;SACA,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA,EAGtD,OAAO;SACA,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA;8BAmBnB,YAAwB,MAA4B;UAC/E,WAAW;AAAA,SACZA,kBAAM;aACF,IAAI,uBAAuB;AAAA;aAG3B,IAAI,sBAAsB;AAAA;AAAA;;;"}
1
+ {"version":3,"file":"instances.cjs.js","sources":["../src/utils/constants.ts","../src/prop-controllers/instances.ts"],"sourcesContent":["export const BuilderEditMode = {\n BUILD: 'build',\n CONTENT: 'content',\n} as const\n\nexport type BuilderEditMode = typeof BuilderEditMode[keyof typeof BuilderEditMode]\n","import { Editor } from 'slate-react'\nimport { ValueJSON } from 'slate'\nimport { OnChangeParam } from 'slate-react'\nimport { Descriptor, RichTextDescriptor, TableFormFieldsDescriptor, Types } from './descriptors'\nimport { BuilderEditMode } from '../utils/constants'\nimport { BoxModel } from '../state/modules/box-models'\n\nexport const RichTextPropControllerMessageType = {\n CHANGE_BUILDER_EDIT_MODE: 'CHANGE_BUILDER_EDIT_MODE',\n INITIALIZE_EDITOR: 'INITIALIZE_EDITOR',\n CHANGE_EDITOR_VALUE: 'CHANGE_EDITOR_VALUE',\n FOCUS: 'FOCUS',\n BLUR: 'BLUR',\n UNDO: 'UNDO',\n REDO: 'REDO',\n} as const\n\ntype ChangeBuilderEditModeRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE\n editMode: BuilderEditMode\n}\n\ntype InitializeEditorRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.INITIALIZE_EDITOR\n value: ValueJSON\n}\n\ntype ChangeEditorValueRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE\n value: ValueJSON\n}\n\ntype FocusRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.FOCUS }\n\ntype BlurRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.BLUR }\n\ntype UndoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.UNDO }\n\ntype RedoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.REDO }\n\nexport type RichTextPropControllerMessage =\n | ChangeBuilderEditModeRichTextPropControllerMessage\n | InitializeEditorRichTextPropControllerMessage\n | ChangeEditorValueRichTextPropControllerMessage\n | FocusRichTextPropControllerMessage\n | BlurRichTextPropControllerMessage\n | UndoRichTextPropControllerMessage\n | RedoRichTextPropControllerMessage\n\nexport type PropControllerMessage = RichTextPropControllerMessage | TableFormFieldsMessage\n\ntype Send<T = PropControllerMessage> = (message: T) => void\n\nexport abstract class PropController<T = PropControllerMessage> {\n protected send: Send<T>\n\n constructor(send: Send<T>) {\n this.send = send\n }\n\n abstract recv(message: T): void\n}\n\nclass DefaultPropController extends PropController {\n recv(_message: PropControllerMessage): void {\n // Do nothing.\n }\n}\n\nclass RichTextPropController extends PropController<RichTextPropControllerMessage> {\n private editor: Editor | null = null\n\n recv(message: RichTextPropControllerMessage): void {\n switch (message.type) {\n case RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE: {\n switch (message.editMode) {\n case BuilderEditMode.BUILD:\n this.editor?.deselect().blur()\n break\n\n case BuilderEditMode.CONTENT:\n this.editor?.focus().moveToRangeOfDocument()\n break\n }\n\n break\n }\n }\n }\n\n setSlateEditor(editor: Editor) {\n this.editor = editor\n\n this.send({\n type: RichTextPropControllerMessageType.INITIALIZE_EDITOR,\n value: editor.value.toJSON({ preserveSelection: false }),\n })\n }\n\n onChange(change: OnChangeParam) {\n this.send({\n type: RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE,\n value: change.value.toJSON({ preserveSelection: true }),\n })\n }\n\n focus() {\n this.send({ type: RichTextPropControllerMessageType.FOCUS })\n }\n\n blur() {\n this.send({ type: RichTextPropControllerMessageType.BLUR })\n }\n\n undo() {\n this.send({ type: RichTextPropControllerMessageType.UNDO })\n }\n\n redo() {\n this.send({ type: RichTextPropControllerMessageType.REDO })\n }\n}\n\nexport const TableFormFieldsMessageType = {\n TABLE_FORM_LAYOUT_CHANGE: 'TABLE_FORM_LAYOUT_CHANGE',\n TABLE_FORM_FIELD_LAYOUT_CHANGE: 'TABLE_FORM_FIELD_LAYOUT_CHANGE',\n} as const\n\ntype TableLayoutTableFormFieldsMessage = {\n type: typeof TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE\n payload: { layout: BoxModel }\n}\n\ntype TableFieldLayoutTableFormFieldsMessage = {\n type: typeof TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE\n payload: { layout: BoxModel; index: number }\n}\n\nexport type TableFormFieldsMessage =\n | TableLayoutTableFormFieldsMessage\n | TableFieldLayoutTableFormFieldsMessage\n\nexport class TableFormFieldsPropController extends PropController<TableFormFieldsMessage> {\n recv(): void {}\n\n tableFormLayoutChange(payload: { layout: BoxModel }) {\n this.send({ type: TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE, payload })\n }\n\n tableFormFieldLayoutChange(payload: { layout: BoxModel; index: number }) {\n this.send({ type: TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE, payload })\n }\n}\n\ntype DescriptorPropController<T extends Descriptor> = T extends { type: typeof Types.RichText }\n ? RichTextPropController\n : T extends { type: typeof Types.TableFormFields }\n ? TableFormFieldsPropController\n : DefaultPropController\n\nexport type DescriptorsPropControllers<T extends Record<string, Descriptor>> = {\n [K in keyof T]: undefined extends T[K]\n ? DescriptorPropController<Exclude<T[K], undefined>>\n : DescriptorPropController<T[K]>\n}\n\ntype AnyPropController =\n | DefaultPropController\n | RichTextPropController\n | TableFormFieldsPropController\n\nexport function createPropController(\n descriptor: RichTextDescriptor,\n send: Send<RichTextPropControllerMessage>,\n): RichTextPropController\nexport function createPropController(\n descriptor: TableFormFieldsDescriptor,\n send: Send<TableFormFieldsMessage>,\n): TableFormFieldsPropController\nexport function createPropController(descriptor: Descriptor, send: Send): DefaultPropController\nexport function createPropController<T extends PropControllerMessage>(\n descriptor: Descriptor,\n send: Send<T>,\n): AnyPropController {\n switch (descriptor.type) {\n case Types.RichText:\n return new RichTextPropController(send as Send<RichTextPropControllerMessage>)\n\n case Types.TableFormFields:\n return new TableFormFieldsPropController(send as Send<TableFormFieldsMessage>)\n\n default:\n return new DefaultPropController(send as Send)\n }\n}\n"],"names":["Types"],"mappings":";;;;;;;;AAAO,MAAM,kBAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,SAAS;AACX;ACIO,MAAM,oCAAoC;AAAA,EAC/C,0BAA0B;AAAA,EAC1B,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACR;AAsCO,MAAe,eAA0C;AAAA,EAG9D,YAAY,MAAe;AAFjB;AAGR,SAAK,OAAO;AAAA,EACd;AAGF;AAEA,MAAM,8BAA8B,eAAe;AAAA,EACjD,KAAK,UAAuC;AAAA,EAE5C;AACF;AAEA,MAAM,+BAA+B,eAA8C;AAAA,EAAnF;AAAA;AACU,kCAAwB;AAAA;AAAA,EAEhC,KAAK,SAA8C;;AACjD,YAAQ,QAAQ;AAAA,WACT,kCAAkC,0BAA0B;AAC/D,gBAAQ,QAAQ;AAAA,eACT,gBAAgB;AACd,uBAAA,WAAA,mBAAQ,WAAW;AACxB;AAAA,eAEG,gBAAgB;AACd,uBAAA,WAAA,mBAAQ,QAAQ;AACrB;AAAA;AAGJ;AAAA,MACF;AAAA;AAAA,EAEJ;AAAA,EAEA,eAAe,QAAgB;AAC7B,SAAK,SAAS;AAEd,SAAK,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB,OAAO;AAAA,IAAA,CACxD;AAAA,EACH;AAAA,EAEA,SAAS,QAAuB;AAC9B,SAAK,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB,MAAM;AAAA,IAAA,CACvD;AAAA,EACH;AAAA,EAEA,QAAQ;AACN,SAAK,KAAK,EAAE,MAAM,kCAAkC,MAAO,CAAA;AAAA,EAC7D;AAAA,EAEA,OAAO;AACL,SAAK,KAAK,EAAE,MAAM,kCAAkC,KAAM,CAAA;AAAA,EAC5D;AAAA,EAEA,OAAO;AACL,SAAK,KAAK,EAAE,MAAM,kCAAkC,KAAM,CAAA;AAAA,EAC5D;AAAA,EAEA,OAAO;AACL,SAAK,KAAK,EAAE,MAAM,kCAAkC,KAAM,CAAA;AAAA,EAC5D;AACF;AAEO,MAAM,6BAA6B;AAAA,EACxC,0BAA0B;AAAA,EAC1B,gCAAgC;AAClC;AAgBO,MAAM,sCAAsC,eAAuC;AAAA,EACxF,OAAa;AAAA,EAAC;AAAA,EAEd,sBAAsB,SAA+B;AACnD,SAAK,KAAK,EAAE,MAAM,2BAA2B,0BAA0B,SAAS;AAAA,EAClF;AAAA,EAEA,2BAA2B,SAA8C;AACvE,SAAK,KAAK,EAAE,MAAM,2BAA2B,gCAAgC,SAAS;AAAA,EACxF;AACF;AA4BO,8BACL,YACA,MACmB;AACnB,UAAQ,WAAW;AAAA,SACZA,YAAM,MAAA;AACF,aAAA,IAAI,uBAAuB,IAA2C;AAAA,SAE1EA,YAAM,MAAA;AACF,aAAA,IAAI,8BAA8B,IAAoC;AAAA;AAGtE,aAAA,IAAI,sBAAsB,IAAY;AAAA;AAEnD;;;;"}
@@ -75,13 +75,29 @@ class RichTextPropController extends PropController {
75
75
  this.send({ type: RichTextPropControllerMessageType.REDO });
76
76
  }
77
77
  }
78
+ const TableFormFieldsMessageType = {
79
+ TABLE_FORM_LAYOUT_CHANGE: "TABLE_FORM_LAYOUT_CHANGE",
80
+ TABLE_FORM_FIELD_LAYOUT_CHANGE: "TABLE_FORM_FIELD_LAYOUT_CHANGE"
81
+ };
82
+ class TableFormFieldsPropController extends PropController {
83
+ recv() {
84
+ }
85
+ tableFormLayoutChange(payload) {
86
+ this.send({ type: TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE, payload });
87
+ }
88
+ tableFormFieldLayoutChange(payload) {
89
+ this.send({ type: TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE, payload });
90
+ }
91
+ }
78
92
  function createPropController(descriptor, send) {
79
93
  switch (descriptor.type) {
80
94
  case Types.RichText:
81
95
  return new RichTextPropController(send);
96
+ case Types.TableFormFields:
97
+ return new TableFormFieldsPropController(send);
82
98
  default:
83
99
  return new DefaultPropController(send);
84
100
  }
85
101
  }
86
- export { RichTextPropControllerMessageType as R, createPropController as c };
102
+ export { RichTextPropControllerMessageType as R, TableFormFieldsMessageType as T, createPropController as c };
87
103
  //# sourceMappingURL=instances.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"instances.es.js","sources":["../src/utils/constants.ts","../src/prop-controllers/instances.ts"],"sourcesContent":["export const BuilderEditMode = {\n BUILD: 'build',\n CONTENT: 'content',\n} as const\n\nexport type BuilderEditMode = typeof BuilderEditMode[keyof typeof BuilderEditMode]\n","import { Editor } from 'slate-react'\nimport { ValueJSON } from 'slate'\nimport { OnChangeParam } from 'slate-react'\nimport { Descriptor, RichTextDescriptor, Types } from './descriptors'\nimport { BuilderEditMode } from '../utils/constants'\n\nexport const RichTextPropControllerMessageType = {\n CHANGE_BUILDER_EDIT_MODE: 'CHANGE_BUILDER_EDIT_MODE',\n INITIALIZE_EDITOR: 'INITIALIZE_EDITOR',\n CHANGE_EDITOR_VALUE: 'CHANGE_EDITOR_VALUE',\n FOCUS: 'FOCUS',\n BLUR: 'BLUR',\n UNDO: 'UNDO',\n REDO: 'REDO',\n} as const\n\ntype ChangeBuilderEditModeRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE\n editMode: BuilderEditMode\n}\n\ntype InitializeEditorRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.INITIALIZE_EDITOR\n value: ValueJSON\n}\n\ntype ChangeEditorValueRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE\n value: ValueJSON\n}\n\ntype FocusRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.FOCUS }\n\ntype BlurRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.BLUR }\n\ntype UndoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.UNDO }\n\ntype RedoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.REDO }\n\nexport type RichTextPropControllerMessage =\n | ChangeBuilderEditModeRichTextPropControllerMessage\n | InitializeEditorRichTextPropControllerMessage\n | ChangeEditorValueRichTextPropControllerMessage\n | FocusRichTextPropControllerMessage\n | BlurRichTextPropControllerMessage\n | UndoRichTextPropControllerMessage\n | RedoRichTextPropControllerMessage\n\nexport type PropControllerMessage = RichTextPropControllerMessage\n\ntype Send<T = PropControllerMessage> = (message: T) => void\n\nexport abstract class PropController<T = PropControllerMessage> {\n protected send: Send<T>\n\n constructor(send: Send<T>) {\n this.send = send\n }\n\n abstract recv(message: T): void\n}\n\nclass DefaultPropController extends PropController {\n recv(_message: PropControllerMessage): void {\n // Do nothing.\n }\n}\n\nclass RichTextPropController extends PropController<RichTextPropControllerMessage> {\n private editor: Editor | null = null\n\n recv(message: RichTextPropControllerMessage): void {\n switch (message.type) {\n case RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE: {\n switch (message.editMode) {\n case BuilderEditMode.BUILD:\n this.editor?.deselect().blur()\n break\n\n case BuilderEditMode.CONTENT:\n this.editor?.focus().moveToRangeOfDocument()\n break\n }\n\n break\n }\n }\n }\n\n setSlateEditor(editor: Editor) {\n this.editor = editor\n\n this.send({\n type: RichTextPropControllerMessageType.INITIALIZE_EDITOR,\n value: editor.value.toJSON({ preserveSelection: false }),\n })\n }\n\n onChange(change: OnChangeParam) {\n this.send({\n type: RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE,\n value: change.value.toJSON({ preserveSelection: true }),\n })\n }\n\n focus() {\n this.send({ type: RichTextPropControllerMessageType.FOCUS })\n }\n\n blur() {\n this.send({ type: RichTextPropControllerMessageType.BLUR })\n }\n\n undo() {\n this.send({ type: RichTextPropControllerMessageType.UNDO })\n }\n\n redo() {\n this.send({ type: RichTextPropControllerMessageType.REDO })\n }\n}\n\ntype DescriptorPropController<T extends Descriptor> = T extends { type: typeof Types.RichText }\n ? RichTextPropController\n : DefaultPropController\n\nexport type DescriptorsPropControllers<T extends Record<string, Descriptor>> = {\n [K in keyof T]: undefined extends T[K]\n ? DescriptorPropController<Exclude<T[K], undefined>>\n : DescriptorPropController<T[K]>\n}\n\nexport function createPropController(\n descriptor: RichTextDescriptor,\n send: Send<RichTextPropControllerMessage>,\n): RichTextPropController\nexport function createPropController(descriptor: Descriptor, send: Send): PropController\nexport function createPropController(descriptor: Descriptor, send: Send): PropController {\n switch (descriptor.type) {\n case Types.RichText:\n return new RichTextPropController(send)\n\n default:\n return new DefaultPropController(send)\n }\n}\n"],"names":[],"mappings":";;;;;;;MAAa,kBAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,SAAS;AAAA;MCIE,oCAAoC;AAAA,EAC/C,0BAA0B;AAAA,EAC1B,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA;qBAuCwD;AAAA,EAG9D,YAAY,MAAe;AAFjB;SAGH,OAAO;AAAA;AAAA;AAMhB,oCAAoC,eAAe;AAAA,EACjD,KAAK,UAAuC;AAAA;AAAA;AAK9C,qCAAqC,eAA8C;AAAA,EAAnF;AAAA;AACU,kCAAwB;AAAA;AAAA,EAEhC,KAAK,SAA8C;;YACzC,QAAQ;AAAA,WACT,kCAAkC,0BAA0B;gBACvD,QAAQ;AAAA,eACT,gBAAgB;uBACd,8BAAQ,WAAW;;eAGrB,gBAAgB;uBACd,8BAAQ,QAAQ;;;;;;;EAS/B,eAAe,QAAgB;SACxB,SAAS;SAET,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB;AAAA;AAAA;AAAA,EAIpD,SAAS,QAAuB;SACzB,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB;AAAA;AAAA;AAAA,EAIpD,QAAQ;SACD,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA,EAGtD,OAAO;SACA,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA,EAGtD,OAAO;SACA,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA,EAGtD,OAAO;SACA,KAAK,EAAE,MAAM,kCAAkC;AAAA;AAAA;8BAmBnB,YAAwB,MAA4B;UAC/E,WAAW;AAAA,SACZ,MAAM;aACF,IAAI,uBAAuB;AAAA;aAG3B,IAAI,sBAAsB;AAAA;AAAA;;"}
1
+ {"version":3,"file":"instances.es.js","sources":["../src/utils/constants.ts","../src/prop-controllers/instances.ts"],"sourcesContent":["export const BuilderEditMode = {\n BUILD: 'build',\n CONTENT: 'content',\n} as const\n\nexport type BuilderEditMode = typeof BuilderEditMode[keyof typeof BuilderEditMode]\n","import { Editor } from 'slate-react'\nimport { ValueJSON } from 'slate'\nimport { OnChangeParam } from 'slate-react'\nimport { Descriptor, RichTextDescriptor, TableFormFieldsDescriptor, Types } from './descriptors'\nimport { BuilderEditMode } from '../utils/constants'\nimport { BoxModel } from '../state/modules/box-models'\n\nexport const RichTextPropControllerMessageType = {\n CHANGE_BUILDER_EDIT_MODE: 'CHANGE_BUILDER_EDIT_MODE',\n INITIALIZE_EDITOR: 'INITIALIZE_EDITOR',\n CHANGE_EDITOR_VALUE: 'CHANGE_EDITOR_VALUE',\n FOCUS: 'FOCUS',\n BLUR: 'BLUR',\n UNDO: 'UNDO',\n REDO: 'REDO',\n} as const\n\ntype ChangeBuilderEditModeRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE\n editMode: BuilderEditMode\n}\n\ntype InitializeEditorRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.INITIALIZE_EDITOR\n value: ValueJSON\n}\n\ntype ChangeEditorValueRichTextPropControllerMessage = {\n type: typeof RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE\n value: ValueJSON\n}\n\ntype FocusRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.FOCUS }\n\ntype BlurRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.BLUR }\n\ntype UndoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.UNDO }\n\ntype RedoRichTextPropControllerMessage = { type: typeof RichTextPropControllerMessageType.REDO }\n\nexport type RichTextPropControllerMessage =\n | ChangeBuilderEditModeRichTextPropControllerMessage\n | InitializeEditorRichTextPropControllerMessage\n | ChangeEditorValueRichTextPropControllerMessage\n | FocusRichTextPropControllerMessage\n | BlurRichTextPropControllerMessage\n | UndoRichTextPropControllerMessage\n | RedoRichTextPropControllerMessage\n\nexport type PropControllerMessage = RichTextPropControllerMessage | TableFormFieldsMessage\n\ntype Send<T = PropControllerMessage> = (message: T) => void\n\nexport abstract class PropController<T = PropControllerMessage> {\n protected send: Send<T>\n\n constructor(send: Send<T>) {\n this.send = send\n }\n\n abstract recv(message: T): void\n}\n\nclass DefaultPropController extends PropController {\n recv(_message: PropControllerMessage): void {\n // Do nothing.\n }\n}\n\nclass RichTextPropController extends PropController<RichTextPropControllerMessage> {\n private editor: Editor | null = null\n\n recv(message: RichTextPropControllerMessage): void {\n switch (message.type) {\n case RichTextPropControllerMessageType.CHANGE_BUILDER_EDIT_MODE: {\n switch (message.editMode) {\n case BuilderEditMode.BUILD:\n this.editor?.deselect().blur()\n break\n\n case BuilderEditMode.CONTENT:\n this.editor?.focus().moveToRangeOfDocument()\n break\n }\n\n break\n }\n }\n }\n\n setSlateEditor(editor: Editor) {\n this.editor = editor\n\n this.send({\n type: RichTextPropControllerMessageType.INITIALIZE_EDITOR,\n value: editor.value.toJSON({ preserveSelection: false }),\n })\n }\n\n onChange(change: OnChangeParam) {\n this.send({\n type: RichTextPropControllerMessageType.CHANGE_EDITOR_VALUE,\n value: change.value.toJSON({ preserveSelection: true }),\n })\n }\n\n focus() {\n this.send({ type: RichTextPropControllerMessageType.FOCUS })\n }\n\n blur() {\n this.send({ type: RichTextPropControllerMessageType.BLUR })\n }\n\n undo() {\n this.send({ type: RichTextPropControllerMessageType.UNDO })\n }\n\n redo() {\n this.send({ type: RichTextPropControllerMessageType.REDO })\n }\n}\n\nexport const TableFormFieldsMessageType = {\n TABLE_FORM_LAYOUT_CHANGE: 'TABLE_FORM_LAYOUT_CHANGE',\n TABLE_FORM_FIELD_LAYOUT_CHANGE: 'TABLE_FORM_FIELD_LAYOUT_CHANGE',\n} as const\n\ntype TableLayoutTableFormFieldsMessage = {\n type: typeof TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE\n payload: { layout: BoxModel }\n}\n\ntype TableFieldLayoutTableFormFieldsMessage = {\n type: typeof TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE\n payload: { layout: BoxModel; index: number }\n}\n\nexport type TableFormFieldsMessage =\n | TableLayoutTableFormFieldsMessage\n | TableFieldLayoutTableFormFieldsMessage\n\nexport class TableFormFieldsPropController extends PropController<TableFormFieldsMessage> {\n recv(): void {}\n\n tableFormLayoutChange(payload: { layout: BoxModel }) {\n this.send({ type: TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE, payload })\n }\n\n tableFormFieldLayoutChange(payload: { layout: BoxModel; index: number }) {\n this.send({ type: TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE, payload })\n }\n}\n\ntype DescriptorPropController<T extends Descriptor> = T extends { type: typeof Types.RichText }\n ? RichTextPropController\n : T extends { type: typeof Types.TableFormFields }\n ? TableFormFieldsPropController\n : DefaultPropController\n\nexport type DescriptorsPropControllers<T extends Record<string, Descriptor>> = {\n [K in keyof T]: undefined extends T[K]\n ? DescriptorPropController<Exclude<T[K], undefined>>\n : DescriptorPropController<T[K]>\n}\n\ntype AnyPropController =\n | DefaultPropController\n | RichTextPropController\n | TableFormFieldsPropController\n\nexport function createPropController(\n descriptor: RichTextDescriptor,\n send: Send<RichTextPropControllerMessage>,\n): RichTextPropController\nexport function createPropController(\n descriptor: TableFormFieldsDescriptor,\n send: Send<TableFormFieldsMessage>,\n): TableFormFieldsPropController\nexport function createPropController(descriptor: Descriptor, send: Send): DefaultPropController\nexport function createPropController<T extends PropControllerMessage>(\n descriptor: Descriptor,\n send: Send<T>,\n): AnyPropController {\n switch (descriptor.type) {\n case Types.RichText:\n return new RichTextPropController(send as Send<RichTextPropControllerMessage>)\n\n case Types.TableFormFields:\n return new TableFormFieldsPropController(send as Send<TableFormFieldsMessage>)\n\n default:\n return new DefaultPropController(send as Send)\n }\n}\n"],"names":[],"mappings":";;;;;;;AAAO,MAAM,kBAAkB;AAAA,EAC7B,OAAO;AAAA,EACP,SAAS;AACX;ACIO,MAAM,oCAAoC;AAAA,EAC/C,0BAA0B;AAAA,EAC1B,mBAAmB;AAAA,EACnB,qBAAqB;AAAA,EACrB,OAAO;AAAA,EACP,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACR;AAsCO,MAAe,eAA0C;AAAA,EAG9D,YAAY,MAAe;AAFjB;AAGR,SAAK,OAAO;AAAA,EACd;AAGF;AAEA,MAAM,8BAA8B,eAAe;AAAA,EACjD,KAAK,UAAuC;AAAA,EAE5C;AACF;AAEA,MAAM,+BAA+B,eAA8C;AAAA,EAAnF;AAAA;AACU,kCAAwB;AAAA;AAAA,EAEhC,KAAK,SAA8C;;AACjD,YAAQ,QAAQ;AAAA,WACT,kCAAkC,0BAA0B;AAC/D,gBAAQ,QAAQ;AAAA,eACT,gBAAgB;AACd,uBAAA,WAAA,mBAAQ,WAAW;AACxB;AAAA,eAEG,gBAAgB;AACd,uBAAA,WAAA,mBAAQ,QAAQ;AACrB;AAAA;AAGJ;AAAA,MACF;AAAA;AAAA,EAEJ;AAAA,EAEA,eAAe,QAAgB;AAC7B,SAAK,SAAS;AAEd,SAAK,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB,OAAO;AAAA,IAAA,CACxD;AAAA,EACH;AAAA,EAEA,SAAS,QAAuB;AAC9B,SAAK,KAAK;AAAA,MACR,MAAM,kCAAkC;AAAA,MACxC,OAAO,OAAO,MAAM,OAAO,EAAE,mBAAmB,MAAM;AAAA,IAAA,CACvD;AAAA,EACH;AAAA,EAEA,QAAQ;AACN,SAAK,KAAK,EAAE,MAAM,kCAAkC,MAAO,CAAA;AAAA,EAC7D;AAAA,EAEA,OAAO;AACL,SAAK,KAAK,EAAE,MAAM,kCAAkC,KAAM,CAAA;AAAA,EAC5D;AAAA,EAEA,OAAO;AACL,SAAK,KAAK,EAAE,MAAM,kCAAkC,KAAM,CAAA;AAAA,EAC5D;AAAA,EAEA,OAAO;AACL,SAAK,KAAK,EAAE,MAAM,kCAAkC,KAAM,CAAA;AAAA,EAC5D;AACF;AAEO,MAAM,6BAA6B;AAAA,EACxC,0BAA0B;AAAA,EAC1B,gCAAgC;AAClC;AAgBO,MAAM,sCAAsC,eAAuC;AAAA,EACxF,OAAa;AAAA,EAAC;AAAA,EAEd,sBAAsB,SAA+B;AACnD,SAAK,KAAK,EAAE,MAAM,2BAA2B,0BAA0B,SAAS;AAAA,EAClF;AAAA,EAEA,2BAA2B,SAA8C;AACvE,SAAK,KAAK,EAAE,MAAM,2BAA2B,gCAAgC,SAAS;AAAA,EACxF;AACF;AA4BO,8BACL,YACA,MACmB;AACnB,UAAQ,WAAW;AAAA,SACZ,MAAM;AACF,aAAA,IAAI,uBAAuB,IAA2C;AAAA,SAE1E,MAAM;AACF,aAAA,IAAI,8BAA8B,IAAoC;AAAA;AAGtE,aAAA,IAAI,sBAAsB,IAAY;AAAA;AAEnD;;"}
package/dist/main.cjs.js CHANGED
@@ -1,12 +1,20 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports[Symbol.toStringTag] = "Module";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
4
3
  var actions = require("./actions.cjs.js");
4
+ var reactPage = require("./react-page.cjs.js");
5
+ require("redux");
6
+ require("redux-thunk");
7
+ require("./descriptors.cjs.js");
5
8
  exports.ActionTypes = actions.ActionTypes;
6
9
  exports.changeApiResource = actions.changeApiResource;
7
10
  exports.changeDocument = actions.changeDocument;
8
11
  exports.changeDocumentElementScrollTop = actions.changeDocumentElementScrollTop;
9
12
  exports.cleanUp = actions.cleanUp;
13
+ exports.evictApiResource = actions.evictApiResource;
10
14
  exports.init = actions.init;
11
15
  exports.messageHostPropController = actions.messageHostPropController;
16
+ exports.registerDocument = actions.registerDocument;
17
+ exports.scrollDocumentElement = actions.scrollDocumentElement;
18
+ exports.unregisterDocument = actions.unregisterDocument;
19
+ exports.createDocument = reactPage.createDocument;
12
20
  //# sourceMappingURL=main.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"main.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;"}
package/dist/main.es.js CHANGED
@@ -1,2 +1,6 @@
1
- export { A as ActionTypes, d as changeApiResource, c as changeDocument, a as changeDocumentElementScrollTop, b as cleanUp, i as init, m as messageHostPropController } from "./actions.es.js";
1
+ export { A as ActionTypes, d as changeApiResource, c as changeDocument, a as changeDocumentElementScrollTop, b as cleanUp, e as evictApiResource, i as init, m as messageHostPropController, r as registerDocument, s as scrollDocumentElement, u as unregisterDocument } from "./actions.es.js";
2
+ export { c as createDocument } from "./react-page.es.js";
3
+ import "redux";
4
+ import "redux-thunk";
5
+ import "./descriptors.es.js";
2
6
  //# sourceMappingURL=main.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"main.es.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
package/dist/next.cjs.js CHANGED
@@ -18,32 +18,39 @@ var __spreadValues = (a, b) => {
18
18
  return a;
19
19
  };
20
20
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
- Object.defineProperty(exports, "__esModule", { value: true });
22
- exports[Symbol.toStringTag] = "Module";
21
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
23
22
  var NextDocument = require("next/document");
23
+ var React = require("react");
24
24
  var styled = require("styled-components");
25
- var react = require("./react.cjs2.js");
25
+ var slate = require("slate");
26
+ var createEmotionServer = require("@emotion/server/create-instance");
27
+ var css = require("@emotion/css");
28
+ var index = require("./index.cjs.js");
29
+ var Page$1 = require("./Page.cjs.js");
26
30
  var jsxRuntime = require("react/jsx-runtime");
27
- require("react");
28
31
  require("use-sync-external-store/shim/with-selector");
29
32
  require("@apollo/client");
33
+ require("./react-page.cjs.js");
30
34
  require("redux");
31
35
  require("redux-thunk");
32
36
  require("./actions.cjs.js");
33
37
  require("./descriptors.cjs.js");
34
38
  require("framer-motion");
35
- require("./box-models.cjs.js");
36
- require("css-box-model");
37
- require("next/image");
38
- require("react-player");
39
+ require("@apollo/client/react/ssr");
40
+ require("uuid/v4");
41
+ require("html-react-parser");
42
+ require("next/head");
39
43
  require("color");
40
44
  require("scroll-into-view-if-needed");
41
45
  require("next/link");
42
46
  require("react-use-gesture");
43
47
  require("@popmotion/popcorn");
44
- require("uuid/v4");
48
+ require("next/image");
49
+ require("formik");
50
+ require("./box-models.cjs.js");
51
+ require("css-box-model");
45
52
  require("polished");
46
- require("slate");
53
+ require("react-player");
47
54
  require("slate-hotkeys");
48
55
  require("corporate-ipsum");
49
56
  require("slate-react");
@@ -52,6 +59,7 @@ function _interopDefaultLegacy(e) {
52
59
  return e && typeof e === "object" && "default" in e ? e : { "default": e };
53
60
  }
54
61
  var NextDocument__default = /* @__PURE__ */ _interopDefaultLegacy(NextDocument);
62
+ var createEmotionServer__default = /* @__PURE__ */ _interopDefaultLegacy(createEmotionServer);
55
63
  class Document extends NextDocument__default["default"] {
56
64
  static async getInitialProps(ctx) {
57
65
  const sheet = new styled.ServerStyleSheet();
@@ -61,9 +69,22 @@ class Document extends NextDocument__default["default"] {
61
69
  enhanceApp: (App) => (props) => sheet.collectStyles(/* @__PURE__ */ jsxRuntime.jsx(App, __spreadValues({}, props)))
62
70
  });
63
71
  const initialProps = await NextDocument__default["default"].getInitialProps(ctx);
72
+ slate.KeyUtils.resetGenerator();
73
+ const {
74
+ extractCritical
75
+ } = createEmotionServer__default["default"](css.cache);
76
+ const {
77
+ ids,
78
+ css: css$1
79
+ } = extractCritical(initialProps.html);
64
80
  return __spreadProps(__spreadValues({}, initialProps), {
65
81
  styles: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, {
66
- children: [initialProps.styles, sheet.getStyleElement()]
82
+ children: [initialProps.styles, sheet.getStyleElement(), /* @__PURE__ */ jsxRuntime.jsx("style", {
83
+ "data-emotion": `css ${ids.join(" ")}`,
84
+ dangerouslySetInnerHTML: {
85
+ __html: css$1
86
+ }
87
+ })]
67
88
  })
68
89
  });
69
90
  } finally {
@@ -94,11 +115,17 @@ async function getServerSideProps({
94
115
  return {
95
116
  notFound: true
96
117
  };
118
+ const makeswiftApiEndpoint = `${process["env"].MAKESWIFT_API_HOST}/graphql`;
119
+ const client = new index.MakeswiftClient({
120
+ uri: makeswiftApiEndpoint
121
+ });
122
+ const cacheData = await client.prefetch(page.data);
97
123
  return {
98
124
  props: {
99
- pageId: page.id,
125
+ page,
100
126
  rootElement: page.data,
101
- makeswiftApiEndpoint: `${process["env"].MAKESWIFT_API_HOST}/graphql`
127
+ makeswiftApiEndpoint,
128
+ cacheData
102
129
  }
103
130
  };
104
131
  }
@@ -132,11 +159,17 @@ async function getStaticProps({
132
159
  notFound: true,
133
160
  revalidate: REVALIDATE_SECONDS
134
161
  };
162
+ const makeswiftApiEndpoint = `${process["env"].MAKESWIFT_API_HOST}/graphql`;
163
+ const client = new index.MakeswiftClient({
164
+ uri: makeswiftApiEndpoint
165
+ });
166
+ const cacheData = await client.prefetch(page.data);
135
167
  return {
136
168
  props: {
137
- pageId: page.id,
169
+ page,
138
170
  rootElement: page.data,
139
- makeswiftApiEndpoint: `${process["env"].MAKESWIFT_API_HOST}/graphql`
171
+ makeswiftApiEndpoint,
172
+ cacheData
140
173
  },
141
174
  revalidate: REVALIDATE_SECONDS
142
175
  };
@@ -148,18 +181,27 @@ async function getStaticPaths() {
148
181
  };
149
182
  }
150
183
  function Page({
151
- pageId,
184
+ page,
152
185
  rootElement,
153
- makeswiftApiEndpoint
186
+ makeswiftApiEndpoint,
187
+ cacheData
154
188
  }) {
155
- return /* @__PURE__ */ jsxRuntime.jsx(react.RuntimeProvider, {
156
- defaultRootElements: /* @__PURE__ */ new Map([[pageId, rootElement]]),
157
- makeswiftApiEndpoint,
158
- children: /* @__PURE__ */ jsxRuntime.jsx(react.Document, {
159
- documentKey: pageId
189
+ const [client] = React.useState(() => new index.MakeswiftClient({
190
+ uri: makeswiftApiEndpoint,
191
+ cacheData
192
+ }));
193
+ React.useEffect(() => {
194
+ client.updateCacheData(cacheData);
195
+ }, [client, cacheData]);
196
+ return /* @__PURE__ */ jsxRuntime.jsx(index.RuntimeProvider, {
197
+ client,
198
+ rootElements: /* @__PURE__ */ new Map([[page.id, rootElement]]),
199
+ children: /* @__PURE__ */ jsxRuntime.jsx(Page$1.Page, {
200
+ page
160
201
  })
161
202
  });
162
203
  }
204
+ exports.MakeswiftClient = index.MakeswiftClient;
163
205
  exports.Document = Document;
164
206
  exports.Page = Page;
165
207
  exports.getServerSideProps = getServerSideProps;
@@ -1 +1 @@
1
- {"version":3,"file":"next.cjs.js","sources":["../src/next.tsx"],"sourcesContent":["import {\n GetServerSidePropsContext,\n GetServerSidePropsResult,\n GetStaticPathsResult,\n GetStaticPropsContext,\n GetStaticPropsResult,\n} from 'next'\nimport NextDocument, { DocumentContext, DocumentInitialProps } from 'next/document'\nimport { ServerStyleSheet } from 'styled-components'\n\nimport { RuntimeProvider, Document as DocumentComponent } from './runtimes/react'\nimport { Element } from './state/react-page'\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const sheet = new ServerStyleSheet()\n const originalRenderPage = ctx.renderPage\n\n try {\n ctx.renderPage = () =>\n originalRenderPage({\n enhanceApp: App => props => sheet.collectStyles(<App {...props} />),\n })\n\n const initialProps = await NextDocument.getInitialProps(ctx)\n\n return {\n ...initialProps,\n styles: (\n <>\n {initialProps.styles}\n {sheet.getStyleElement()}\n </>\n ),\n }\n } finally {\n sheet.seal()\n }\n }\n}\n\nconst REVALIDATE_SECONDS = 1\n\ntype PageProps = {\n pageId: string\n rootElement: Element\n makeswiftApiEndpoint: string\n}\n\nexport async function getServerSideProps({\n query: { pageId },\n}: GetServerSidePropsContext): Promise<GetServerSidePropsResult<PageProps>> {\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/preview-page-data?id=${pageId}`\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true }\n }\n\n const page = await res.json()\n\n if (page == null) return { notFound: true }\n\n return {\n props: {\n pageId: page.id,\n rootElement: page.data,\n makeswiftApiEndpoint: `${process['env'].MAKESWIFT_API_HOST}/graphql`,\n },\n }\n}\n\nexport async function getStaticProps({\n params,\n}: GetStaticPropsContext<{ path: string[] }>): Promise<GetStaticPropsResult<PageProps>> {\n if (params == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n const { path = [] } = params\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/live-page-data?path=${path.join('/')}`\n\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true, revalidate: REVALIDATE_SECONDS }\n }\n\n const page = await res.json()\n\n if (page == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n\n return {\n props: {\n pageId: page.id,\n rootElement: page.data,\n makeswiftApiEndpoint: `${process['env'].MAKESWIFT_API_HOST}/graphql`,\n },\n revalidate: REVALIDATE_SECONDS,\n }\n}\n\nexport async function getStaticPaths(): Promise<GetStaticPathsResult> {\n return { paths: [], fallback: 'blocking' }\n}\n\nexport function Page({ pageId, rootElement, makeswiftApiEndpoint }: PageProps) {\n return (\n <RuntimeProvider\n defaultRootElements={new Map([[pageId, rootElement]])}\n makeswiftApiEndpoint={makeswiftApiEndpoint}\n >\n <DocumentComponent documentKey={pageId} />\n </RuntimeProvider>\n )\n}\n"],"names":["NextDocument","getInitialProps","ctx","sheet","ServerStyleSheet","originalRenderPage","renderPage","enhanceApp","App","props","collectStyles","initialProps","styles","getStyleElement","seal","REVALIDATE_SECONDS","query","pageId","url","process","MAKESWIFT_API_HOST","res","fetch","headers","MAKESWIFT_SITE_API_KEY","status","error","json","notFound","page","id","rootElement","data","makeswiftApiEndpoint","params","revalidate","path","join","paths","fallback","RuntimeProvider","Map","DocumentComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAa8BA,iCAAa;AAAA,eAC5BC,gBAAgBC,KAAqD;UAC1EC,QAAQ,IAAIC;UACZC,qBAAqBH,IAAII;QAE3B;UACEA,aAAa,MACfD,mBAAmB;AAAA,QACjBE,YAAYC,SAAOC,WAASN,MAAMO,6CAAe,wBAAQD;AAAAA;YAGvDE,eAAe,MAAMX,iCAAaC,gBAAgBC;aAEjD,iCACFS,eADE;AAAA,QAELC;qBAEKD,aAAaC,QACbT,MAAMU;AAAAA;AAAAA;AAAAA;YAKPC;AAAAA;AAAAA;AAAAA;AAKZ,MAAMC,qBAAqB;kCAQc;AAAA,EACvCC,OAAO;AAAA,IAAEC;AAAAA;AAAAA,GACiE;QACpEC,MAAO,GAAEC,QAAQ,OAAOC,8CAA8CH;QACtEI,MAAM,MAAMC,MAAMJ,KAAK;AAAA,IAC3BK,SAAS;AAAA,mBAAeJ,QAAQ,OAAOK;AAAAA;AAAAA;MAGrCH,IAAII,WAAW,KAAK;YACdC,MAAM,MAAML,IAAIM;WAEjB;AAAA,MAAEC,UAAU;AAAA;AAAA;QAGfC,OAAO,MAAMR,IAAIM;MAEnBE,QAAQ;WAAa;AAAA,MAAED,UAAU;AAAA;SAE9B;AAAA,IACLnB,OAAO;AAAA,MACLQ,QAAQY,KAAKC;AAAAA,MACbC,aAAaF,KAAKG;AAAAA,MAClBC,sBAAuB,GAAEd,QAAQ,OAAOC;AAAAA;AAAAA;AAAAA;8BAKT;AAAA,EACnCc;AAAAA,GACsF;MAClFA,UAAU;WAAa;AAAA,MAAEN,UAAU;AAAA,MAAMO,YAAYpB;AAAAA;QACnD;AAAA,IAAEqB,OAAO;AAAA,MAAOF;QAChBhB,MAAO,GAAEC,QAAQ,OAAOC,6CAA6CgB,KAAKC,KAAK;QAE/EhB,MAAM,MAAMC,MAAMJ,KAAK;AAAA,IAC3BK,SAAS;AAAA,mBAAeJ,QAAQ,OAAOK;AAAAA;AAAAA;MAGrCH,IAAII,WAAW,KAAK;YACdC,MAAM,MAAML,IAAIM;WAEjB;AAAA,MAAEC,UAAU;AAAA,MAAMO,YAAYpB;AAAAA;AAAAA;QAGjCc,OAAO,MAAMR,IAAIM;MAEnBE,QAAQ;WAAa;AAAA,MAAED,UAAU;AAAA,MAAMO,YAAYpB;AAAAA;SAEhD;AAAA,IACLN,OAAO;AAAA,MACLQ,QAAQY,KAAKC;AAAAA,MACbC,aAAaF,KAAKG;AAAAA,MAClBC,sBAAuB,GAAEd,QAAQ,OAAOC;AAAAA;AAAAA,IAE1Ce,YAAYpB;AAAAA;AAAAA;gCAIsD;SAC7D;AAAA,IAAEuB,OAAO;AAAA,IAAIC,UAAU;AAAA;AAAA;cAGX;AAAA,EAAEtB;AAAAA,EAAQc;AAAAA,EAAaE;AAAAA,GAAmC;wCAE1EO;IACC,yCAAyBC,IAAI,CAAC,CAACxB,QAAQc;AAAAA,IACvC;AAAA,6CAECW;MAAkB,aAAazB;AAAAA;AAAAA;AAAAA;;;;;;"}
1
+ {"version":3,"file":"next.cjs.js","sources":["../src/next.tsx"],"sourcesContent":["import { NormalizedCacheObject } from '@apollo/client'\nimport {\n GetServerSidePropsContext,\n GetServerSidePropsResult,\n GetStaticPathsResult,\n GetStaticPropsContext,\n GetStaticPropsResult,\n} from 'next'\nimport NextDocument, { DocumentContext, DocumentInitialProps } from 'next/document'\nimport { useEffect, useState } from 'react'\nimport { ServerStyleSheet } from 'styled-components'\nimport { KeyUtils } from 'slate'\nimport createEmotionServer from '@emotion/server/create-instance'\nimport { cache } from '@emotion/css'\n\nimport { MakeswiftClient } from './api/react'\nimport { Element } from './state/react-page'\nimport { RuntimeProvider } from './runtimes/react'\nimport { Page as PageMeta, PageData } from './components'\n\nexport { MakeswiftClient }\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const sheet = new ServerStyleSheet()\n const originalRenderPage = ctx.renderPage\n\n try {\n ctx.renderPage = () =>\n originalRenderPage({\n enhanceApp: App => props => sheet.collectStyles(<App {...props} />),\n })\n\n const initialProps = await NextDocument.getInitialProps(ctx)\n\n KeyUtils.resetGenerator()\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 {sheet.getStyleElement()}\n <style\n data-emotion={`css ${ids.join(' ')}`}\n dangerouslySetInnerHTML={{ __html: css }}\n />\n </>\n ),\n }\n } finally {\n sheet.seal()\n }\n }\n}\n\nconst REVALIDATE_SECONDS = 1\n\nexport type PageProps = {\n page: PageData\n rootElement: Element\n makeswiftApiEndpoint: string\n cacheData: NormalizedCacheObject\n}\n\ntype APIResult = PageData & {\n data: any\n}\n\nexport async function getServerSideProps({\n query: { pageId },\n}: GetServerSidePropsContext): Promise<GetServerSidePropsResult<PageProps>> {\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/preview-page-data?id=${pageId}`\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true }\n }\n\n const page: APIResult = await res.json()\n\n if (page == null) return { notFound: true }\n\n const makeswiftApiEndpoint = `${process['env'].MAKESWIFT_API_HOST}/graphql`\n const client = new MakeswiftClient({ uri: makeswiftApiEndpoint })\n const cacheData = await client.prefetch(page.data)\n\n return {\n props: {\n page,\n rootElement: page.data,\n makeswiftApiEndpoint,\n cacheData,\n },\n }\n}\n\nexport async function getStaticProps({\n params,\n}: GetStaticPropsContext<{ path: string[] }>): Promise<GetStaticPropsResult<PageProps>> {\n if (params == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n const { path = [] } = params\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/live-page-data?path=${path.join('/')}`\n\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true, revalidate: REVALIDATE_SECONDS }\n }\n\n const page: APIResult = await res.json()\n\n if (page == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n\n const makeswiftApiEndpoint = `${process['env'].MAKESWIFT_API_HOST}/graphql`\n const client = new MakeswiftClient({ uri: makeswiftApiEndpoint })\n const cacheData = await client.prefetch(page.data)\n\n return {\n props: {\n page,\n rootElement: page.data,\n makeswiftApiEndpoint,\n cacheData,\n },\n revalidate: REVALIDATE_SECONDS,\n }\n}\n\nexport async function getStaticPaths(): Promise<GetStaticPathsResult> {\n return { paths: [], fallback: 'blocking' }\n}\n\nexport function Page({ page, rootElement, makeswiftApiEndpoint, cacheData }: PageProps) {\n const [client] = useState(() => new MakeswiftClient({ uri: makeswiftApiEndpoint, cacheData }))\n\n useEffect(() => {\n client.updateCacheData(cacheData)\n }, [client, cacheData])\n\n return (\n <RuntimeProvider client={client} rootElements={new Map([[page.id, rootElement]])}>\n <PageMeta page={page} />\n </RuntimeProvider>\n )\n}\n"],"names":["Document","NextDocument","getInitialProps","ctx","sheet","ServerStyleSheet","originalRenderPage","renderPage","enhanceApp","App","props","collectStyles","initialProps","KeyUtils","resetGenerator","extractCritical","createEmotionServer","cache","ids","css","html","styles","_Fragment","getStyleElement","join","__html","seal","REVALIDATE_SECONDS","query","pageId","url","process","MAKESWIFT_API_HOST","res","fetch","headers","MAKESWIFT_SITE_API_KEY","status","console","error","json","notFound","page","makeswiftApiEndpoint","client","MakeswiftClient","uri","cacheData","prefetch","data","rootElement","params","revalidate","path","paths","fallback","useState","useEffect","updateCacheData","RuntimeProvider","Map","id","PageMeta"],"mappings":"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"}
package/dist/next.es.js CHANGED
@@ -18,29 +18,38 @@ var __spreadValues = (a, b) => {
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  import NextDocument from "next/document";
21
+ import { useState, useEffect } from "react";
21
22
  import { ServerStyleSheet } from "styled-components";
22
- import { R as RuntimeProvider, D as Document$1 } from "./react.es2.js";
23
+ import { KeyUtils } from "slate";
24
+ import createEmotionServer from "@emotion/server/create-instance";
25
+ import { cache } from "@emotion/css";
26
+ import { Q as MakeswiftClient, R as RuntimeProvider } from "./index.es.js";
27
+ export { Q as MakeswiftClient } from "./index.es.js";
28
+ import { P as Page$1 } from "./Page.es.js";
23
29
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
24
- import "react";
25
30
  import "use-sync-external-store/shim/with-selector";
26
31
  import "@apollo/client";
32
+ import "./react-page.es.js";
27
33
  import "redux";
28
34
  import "redux-thunk";
29
35
  import "./actions.es.js";
30
36
  import "./descriptors.es.js";
31
37
  import "framer-motion";
32
- import "./box-models.es.js";
33
- import "css-box-model";
34
- import "next/image";
35
- import "react-player";
38
+ import "@apollo/client/react/ssr";
39
+ import "uuid/v4";
40
+ import "html-react-parser";
41
+ import "next/head";
36
42
  import "color";
37
43
  import "scroll-into-view-if-needed";
38
44
  import "next/link";
39
45
  import "react-use-gesture";
40
46
  import "@popmotion/popcorn";
41
- import "uuid/v4";
47
+ import "next/image";
48
+ import "formik";
49
+ import "./box-models.es.js";
50
+ import "css-box-model";
42
51
  import "polished";
43
- import "slate";
52
+ import "react-player";
44
53
  import "slate-hotkeys";
45
54
  import "corporate-ipsum";
46
55
  import "slate-react";
@@ -54,9 +63,22 @@ class Document extends NextDocument {
54
63
  enhanceApp: (App) => (props) => sheet.collectStyles(/* @__PURE__ */ jsx(App, __spreadValues({}, props)))
55
64
  });
56
65
  const initialProps = await NextDocument.getInitialProps(ctx);
66
+ KeyUtils.resetGenerator();
67
+ const {
68
+ extractCritical
69
+ } = createEmotionServer(cache);
70
+ const {
71
+ ids,
72
+ css
73
+ } = extractCritical(initialProps.html);
57
74
  return __spreadProps(__spreadValues({}, initialProps), {
58
75
  styles: /* @__PURE__ */ jsxs(Fragment, {
59
- children: [initialProps.styles, sheet.getStyleElement()]
76
+ children: [initialProps.styles, sheet.getStyleElement(), /* @__PURE__ */ jsx("style", {
77
+ "data-emotion": `css ${ids.join(" ")}`,
78
+ dangerouslySetInnerHTML: {
79
+ __html: css
80
+ }
81
+ })]
60
82
  })
61
83
  });
62
84
  } finally {
@@ -87,11 +109,17 @@ async function getServerSideProps({
87
109
  return {
88
110
  notFound: true
89
111
  };
112
+ const makeswiftApiEndpoint = `${process["env"].MAKESWIFT_API_HOST}/graphql`;
113
+ const client = new MakeswiftClient({
114
+ uri: makeswiftApiEndpoint
115
+ });
116
+ const cacheData = await client.prefetch(page.data);
90
117
  return {
91
118
  props: {
92
- pageId: page.id,
119
+ page,
93
120
  rootElement: page.data,
94
- makeswiftApiEndpoint: `${process["env"].MAKESWIFT_API_HOST}/graphql`
121
+ makeswiftApiEndpoint,
122
+ cacheData
95
123
  }
96
124
  };
97
125
  }
@@ -125,11 +153,17 @@ async function getStaticProps({
125
153
  notFound: true,
126
154
  revalidate: REVALIDATE_SECONDS
127
155
  };
156
+ const makeswiftApiEndpoint = `${process["env"].MAKESWIFT_API_HOST}/graphql`;
157
+ const client = new MakeswiftClient({
158
+ uri: makeswiftApiEndpoint
159
+ });
160
+ const cacheData = await client.prefetch(page.data);
128
161
  return {
129
162
  props: {
130
- pageId: page.id,
163
+ page,
131
164
  rootElement: page.data,
132
- makeswiftApiEndpoint: `${process["env"].MAKESWIFT_API_HOST}/graphql`
165
+ makeswiftApiEndpoint,
166
+ cacheData
133
167
  },
134
168
  revalidate: REVALIDATE_SECONDS
135
169
  };
@@ -141,15 +175,23 @@ async function getStaticPaths() {
141
175
  };
142
176
  }
143
177
  function Page({
144
- pageId,
178
+ page,
145
179
  rootElement,
146
- makeswiftApiEndpoint
180
+ makeswiftApiEndpoint,
181
+ cacheData
147
182
  }) {
183
+ const [client] = useState(() => new MakeswiftClient({
184
+ uri: makeswiftApiEndpoint,
185
+ cacheData
186
+ }));
187
+ useEffect(() => {
188
+ client.updateCacheData(cacheData);
189
+ }, [client, cacheData]);
148
190
  return /* @__PURE__ */ jsx(RuntimeProvider, {
149
- defaultRootElements: /* @__PURE__ */ new Map([[pageId, rootElement]]),
150
- makeswiftApiEndpoint,
151
- children: /* @__PURE__ */ jsx(Document$1, {
152
- documentKey: pageId
191
+ client,
192
+ rootElements: /* @__PURE__ */ new Map([[page.id, rootElement]]),
193
+ children: /* @__PURE__ */ jsx(Page$1, {
194
+ page
153
195
  })
154
196
  });
155
197
  }
@@ -1 +1 @@
1
- {"version":3,"file":"next.es.js","sources":["../src/next.tsx"],"sourcesContent":["import {\n GetServerSidePropsContext,\n GetServerSidePropsResult,\n GetStaticPathsResult,\n GetStaticPropsContext,\n GetStaticPropsResult,\n} from 'next'\nimport NextDocument, { DocumentContext, DocumentInitialProps } from 'next/document'\nimport { ServerStyleSheet } from 'styled-components'\n\nimport { RuntimeProvider, Document as DocumentComponent } from './runtimes/react'\nimport { Element } from './state/react-page'\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const sheet = new ServerStyleSheet()\n const originalRenderPage = ctx.renderPage\n\n try {\n ctx.renderPage = () =>\n originalRenderPage({\n enhanceApp: App => props => sheet.collectStyles(<App {...props} />),\n })\n\n const initialProps = await NextDocument.getInitialProps(ctx)\n\n return {\n ...initialProps,\n styles: (\n <>\n {initialProps.styles}\n {sheet.getStyleElement()}\n </>\n ),\n }\n } finally {\n sheet.seal()\n }\n }\n}\n\nconst REVALIDATE_SECONDS = 1\n\ntype PageProps = {\n pageId: string\n rootElement: Element\n makeswiftApiEndpoint: string\n}\n\nexport async function getServerSideProps({\n query: { pageId },\n}: GetServerSidePropsContext): Promise<GetServerSidePropsResult<PageProps>> {\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/preview-page-data?id=${pageId}`\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true }\n }\n\n const page = await res.json()\n\n if (page == null) return { notFound: true }\n\n return {\n props: {\n pageId: page.id,\n rootElement: page.data,\n makeswiftApiEndpoint: `${process['env'].MAKESWIFT_API_HOST}/graphql`,\n },\n }\n}\n\nexport async function getStaticProps({\n params,\n}: GetStaticPropsContext<{ path: string[] }>): Promise<GetStaticPropsResult<PageProps>> {\n if (params == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n const { path = [] } = params\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/live-page-data?path=${path.join('/')}`\n\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true, revalidate: REVALIDATE_SECONDS }\n }\n\n const page = await res.json()\n\n if (page == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n\n return {\n props: {\n pageId: page.id,\n rootElement: page.data,\n makeswiftApiEndpoint: `${process['env'].MAKESWIFT_API_HOST}/graphql`,\n },\n revalidate: REVALIDATE_SECONDS,\n }\n}\n\nexport async function getStaticPaths(): Promise<GetStaticPathsResult> {\n return { paths: [], fallback: 'blocking' }\n}\n\nexport function Page({ pageId, rootElement, makeswiftApiEndpoint }: PageProps) {\n return (\n <RuntimeProvider\n defaultRootElements={new Map([[pageId, rootElement]])}\n makeswiftApiEndpoint={makeswiftApiEndpoint}\n >\n <DocumentComponent documentKey={pageId} />\n </RuntimeProvider>\n )\n}\n"],"names":["NextDocument","getInitialProps","ctx","sheet","ServerStyleSheet","originalRenderPage","renderPage","enhanceApp","App","props","collectStyles","initialProps","styles","getStyleElement","seal","REVALIDATE_SECONDS","query","pageId","url","process","MAKESWIFT_API_HOST","res","fetch","headers","MAKESWIFT_SITE_API_KEY","status","error","json","notFound","page","id","rootElement","data","makeswiftApiEndpoint","params","revalidate","path","join","paths","fallback","Map","DocumentComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAa8BA,aAAa;AAAA,eAC5BC,gBAAgBC,KAAqD;UAC1EC,QAAQ,IAAIC;UACZC,qBAAqBH,IAAII;QAE3B;UACEA,aAAa,MACfD,mBAAmB;AAAA,QACjBE,YAAYC,SAAOC,WAASN,MAAMO,kCAAe,wBAAQD;AAAAA;YAGvDE,eAAe,MAAMX,aAAaC,gBAAgBC;aAEjD,iCACFS,eADE;AAAA,QAELC;qBAEKD,aAAaC,QACbT,MAAMU;AAAAA;AAAAA;AAAAA;YAKPC;AAAAA;AAAAA;AAAAA;AAKZ,MAAMC,qBAAqB;kCAQc;AAAA,EACvCC,OAAO;AAAA,IAAEC;AAAAA;AAAAA,GACiE;QACpEC,MAAO,GAAEC,QAAQ,OAAOC,8CAA8CH;QACtEI,MAAM,MAAMC,MAAMJ,KAAK;AAAA,IAC3BK,SAAS;AAAA,mBAAeJ,QAAQ,OAAOK;AAAAA;AAAAA;MAGrCH,IAAII,WAAW,KAAK;YACdC,MAAM,MAAML,IAAIM;WAEjB;AAAA,MAAEC,UAAU;AAAA;AAAA;QAGfC,OAAO,MAAMR,IAAIM;MAEnBE,QAAQ;WAAa;AAAA,MAAED,UAAU;AAAA;SAE9B;AAAA,IACLnB,OAAO;AAAA,MACLQ,QAAQY,KAAKC;AAAAA,MACbC,aAAaF,KAAKG;AAAAA,MAClBC,sBAAuB,GAAEd,QAAQ,OAAOC;AAAAA;AAAAA;AAAAA;8BAKT;AAAA,EACnCc;AAAAA,GACsF;MAClFA,UAAU;WAAa;AAAA,MAAEN,UAAU;AAAA,MAAMO,YAAYpB;AAAAA;QACnD;AAAA,IAAEqB,OAAO;AAAA,MAAOF;QAChBhB,MAAO,GAAEC,QAAQ,OAAOC,6CAA6CgB,KAAKC,KAAK;QAE/EhB,MAAM,MAAMC,MAAMJ,KAAK;AAAA,IAC3BK,SAAS;AAAA,mBAAeJ,QAAQ,OAAOK;AAAAA;AAAAA;MAGrCH,IAAII,WAAW,KAAK;YACdC,MAAM,MAAML,IAAIM;WAEjB;AAAA,MAAEC,UAAU;AAAA,MAAMO,YAAYpB;AAAAA;AAAAA;QAGjCc,OAAO,MAAMR,IAAIM;MAEnBE,QAAQ;WAAa;AAAA,MAAED,UAAU;AAAA,MAAMO,YAAYpB;AAAAA;SAEhD;AAAA,IACLN,OAAO;AAAA,MACLQ,QAAQY,KAAKC;AAAAA,MACbC,aAAaF,KAAKG;AAAAA,MAClBC,sBAAuB,GAAEd,QAAQ,OAAOC;AAAAA;AAAAA,IAE1Ce,YAAYpB;AAAAA;AAAAA;gCAIsD;SAC7D;AAAA,IAAEuB,OAAO;AAAA,IAAIC,UAAU;AAAA;AAAA;cAGX;AAAA,EAAEtB;AAAAA,EAAQc;AAAAA,EAAaE;AAAAA,GAAmC;6BAE1E;IACC,yCAAyBO,IAAI,CAAC,CAACvB,QAAQc;AAAAA,IACvC;AAAA,kCAECU;MAAkB,aAAaxB;AAAAA;AAAAA;AAAAA;;"}
1
+ {"version":3,"file":"next.es.js","sources":["../src/next.tsx"],"sourcesContent":["import { NormalizedCacheObject } from '@apollo/client'\nimport {\n GetServerSidePropsContext,\n GetServerSidePropsResult,\n GetStaticPathsResult,\n GetStaticPropsContext,\n GetStaticPropsResult,\n} from 'next'\nimport NextDocument, { DocumentContext, DocumentInitialProps } from 'next/document'\nimport { useEffect, useState } from 'react'\nimport { ServerStyleSheet } from 'styled-components'\nimport { KeyUtils } from 'slate'\nimport createEmotionServer from '@emotion/server/create-instance'\nimport { cache } from '@emotion/css'\n\nimport { MakeswiftClient } from './api/react'\nimport { Element } from './state/react-page'\nimport { RuntimeProvider } from './runtimes/react'\nimport { Page as PageMeta, PageData } from './components'\n\nexport { MakeswiftClient }\n\nexport class Document extends NextDocument {\n static async getInitialProps(ctx: DocumentContext): Promise<DocumentInitialProps> {\n const sheet = new ServerStyleSheet()\n const originalRenderPage = ctx.renderPage\n\n try {\n ctx.renderPage = () =>\n originalRenderPage({\n enhanceApp: App => props => sheet.collectStyles(<App {...props} />),\n })\n\n const initialProps = await NextDocument.getInitialProps(ctx)\n\n KeyUtils.resetGenerator()\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 {sheet.getStyleElement()}\n <style\n data-emotion={`css ${ids.join(' ')}`}\n dangerouslySetInnerHTML={{ __html: css }}\n />\n </>\n ),\n }\n } finally {\n sheet.seal()\n }\n }\n}\n\nconst REVALIDATE_SECONDS = 1\n\nexport type PageProps = {\n page: PageData\n rootElement: Element\n makeswiftApiEndpoint: string\n cacheData: NormalizedCacheObject\n}\n\ntype APIResult = PageData & {\n data: any\n}\n\nexport async function getServerSideProps({\n query: { pageId },\n}: GetServerSidePropsContext): Promise<GetServerSidePropsResult<PageProps>> {\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/preview-page-data?id=${pageId}`\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true }\n }\n\n const page: APIResult = await res.json()\n\n if (page == null) return { notFound: true }\n\n const makeswiftApiEndpoint = `${process['env'].MAKESWIFT_API_HOST}/graphql`\n const client = new MakeswiftClient({ uri: makeswiftApiEndpoint })\n const cacheData = await client.prefetch(page.data)\n\n return {\n props: {\n page,\n rootElement: page.data,\n makeswiftApiEndpoint,\n cacheData,\n },\n }\n}\n\nexport async function getStaticProps({\n params,\n}: GetStaticPropsContext<{ path: string[] }>): Promise<GetStaticPropsResult<PageProps>> {\n if (params == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n const { path = [] } = params\n const url = `${process['env'].MAKESWIFT_API_HOST}/v0/live-page-data?path=${path.join('/')}`\n\n const res = await fetch(url, {\n headers: { 'x-api-key': process['env'].MAKESWIFT_SITE_API_KEY! },\n })\n\n if (res.status !== 200) {\n console.error(await res.json())\n\n return { notFound: true, revalidate: REVALIDATE_SECONDS }\n }\n\n const page: APIResult = await res.json()\n\n if (page == null) return { notFound: true, revalidate: REVALIDATE_SECONDS }\n\n const makeswiftApiEndpoint = `${process['env'].MAKESWIFT_API_HOST}/graphql`\n const client = new MakeswiftClient({ uri: makeswiftApiEndpoint })\n const cacheData = await client.prefetch(page.data)\n\n return {\n props: {\n page,\n rootElement: page.data,\n makeswiftApiEndpoint,\n cacheData,\n },\n revalidate: REVALIDATE_SECONDS,\n }\n}\n\nexport async function getStaticPaths(): Promise<GetStaticPathsResult> {\n return { paths: [], fallback: 'blocking' }\n}\n\nexport function Page({ page, rootElement, makeswiftApiEndpoint, cacheData }: PageProps) {\n const [client] = useState(() => new MakeswiftClient({ uri: makeswiftApiEndpoint, cacheData }))\n\n useEffect(() => {\n client.updateCacheData(cacheData)\n }, [client, cacheData])\n\n return (\n <RuntimeProvider client={client} rootElements={new Map([[page.id, rootElement]])}>\n <PageMeta page={page} />\n </RuntimeProvider>\n )\n}\n"],"names":["Document","NextDocument","getInitialProps","ctx","sheet","ServerStyleSheet","originalRenderPage","renderPage","enhanceApp","App","props","collectStyles","initialProps","KeyUtils","resetGenerator","extractCritical","createEmotionServer","cache","ids","css","html","styles","_Fragment","getStyleElement","join","__html","seal","REVALIDATE_SECONDS","query","pageId","url","process","MAKESWIFT_API_HOST","res","fetch","headers","MAKESWIFT_SITE_API_KEY","status","console","error","json","notFound","page","makeswiftApiEndpoint","client","MakeswiftClient","uri","cacheData","prefetch","data","rootElement","params","revalidate","path","paths","fallback","useState","useEffect","updateCacheData","Map","id","PageMeta"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports[Symbol.toStringTag] = "Module";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
4
3
  var descriptors = require("./descriptors.cjs.js");
5
4
  var instances = require("./instances.cjs.js");
6
5
  exports.Props = descriptors.descriptors;
7
6
  exports.RichTextPropControllerMessageType = instances.RichTextPropControllerMessageType;
7
+ exports.TableFormFieldsMessageType = instances.TableFormFieldsMessageType;
8
8
  //# sourceMappingURL=prop-controllers.cjs.js.map
@@ -1,3 +1,3 @@
1
1
  export { d as Props } from "./descriptors.es.js";
2
- export { R as RichTextPropControllerMessageType } from "./instances.es.js";
2
+ export { R as RichTextPropControllerMessageType, T as TableFormFieldsMessageType } from "./instances.es.js";
3
3
  //# sourceMappingURL=prop-controllers.es.js.map