@webiny/app-website-builder 6.0.0 → 6.1.0-beta.1

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 (358) hide show
  1. package/BaseEditor/commandHandlers/CreateElement.js +8 -1
  2. package/BaseEditor/commandHandlers/CreateElement.js.map +1 -1
  3. package/BaseEditor/commandHandlers/DeleteElement.js +8 -3
  4. package/BaseEditor/commandHandlers/DeleteElement.js.map +1 -1
  5. package/BaseEditor/commandHandlers/MoveElement.js +12 -1
  6. package/BaseEditor/commandHandlers/MoveElement.js.map +1 -1
  7. package/BaseEditor/commands.d.ts +4 -0
  8. package/BaseEditor/commands.js +2 -0
  9. package/BaseEditor/commands.js.map +1 -1
  10. package/BaseEditor/config/EditorConfig.d.ts +494 -2
  11. package/BaseEditor/config/EditorConfig.js +20 -5
  12. package/BaseEditor/config/EditorConfig.js.map +1 -1
  13. package/BaseEditor/config/Element.d.ts +2 -2
  14. package/BaseEditor/config/Element.js.map +1 -1
  15. package/BaseEditor/config/ElementOverlay.d.ts +18 -0
  16. package/BaseEditor/config/ElementOverlay.js +49 -0
  17. package/BaseEditor/config/ElementOverlay.js.map +1 -0
  18. package/BaseEditor/config/IconButton.d.ts +1 -1
  19. package/BaseEditor/config/IconButton.js.map +1 -1
  20. package/BaseEditor/config/IsNotReadOnly.d.ts +5 -0
  21. package/BaseEditor/config/IsNotReadOnly.js +13 -0
  22. package/BaseEditor/config/IsNotReadOnly.js.map +1 -0
  23. package/BaseEditor/config/IsReadOnly.d.ts +5 -0
  24. package/BaseEditor/config/IsReadOnly.js +13 -0
  25. package/BaseEditor/config/IsReadOnly.js.map +1 -0
  26. package/BaseEditor/config/Layout.js +13 -4
  27. package/BaseEditor/config/Layout.js.map +1 -1
  28. package/BaseEditor/config/Sidebar/Layout.js +2 -0
  29. package/BaseEditor/config/Sidebar/Layout.js.map +1 -1
  30. package/BaseEditor/config/Sidebar/Tab.d.ts +1 -1
  31. package/BaseEditor/config/Sidebar/Tab.js +1 -1
  32. package/BaseEditor/config/Sidebar/Tab.js.map +1 -1
  33. package/BaseEditor/config/Toolbar/Layout.js +1 -1
  34. package/BaseEditor/config/Toolbar/Layout.js.map +1 -1
  35. package/BaseEditor/config/Toolbar/Toolbar.js +2 -1
  36. package/BaseEditor/config/Toolbar/Toolbar.js.map +1 -1
  37. package/BaseEditor/config/TopBar/Layout.js +1 -0
  38. package/BaseEditor/config/TopBar/Layout.js.map +1 -1
  39. package/BaseEditor/config/TopBar/MenuItem.d.ts +1 -1
  40. package/BaseEditor/config/TopBar/MenuItem.js.map +1 -1
  41. package/BaseEditor/defaultConfig/Content/{Preview → AddressBar}/AddressBar.js +7 -6
  42. package/BaseEditor/defaultConfig/Content/AddressBar/AddressBar.js.map +1 -0
  43. package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/PreviewDomain.js +2 -2
  44. package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/RefreshPreview.js +2 -2
  45. package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/usePreviewLink.js +2 -2
  46. package/BaseEditor/defaultConfig/Content/Breadcrumbs/Breadcrumbs.js +2 -1
  47. package/BaseEditor/defaultConfig/Content/Breadcrumbs/Breadcrumbs.js.map +1 -1
  48. package/BaseEditor/defaultConfig/Content/Breadcrumbs/styles.js +9 -67
  49. package/BaseEditor/defaultConfig/Content/Breadcrumbs/styles.js.map +1 -1
  50. package/BaseEditor/defaultConfig/Content/ContentPreviewConfig.d.ts +2 -0
  51. package/BaseEditor/defaultConfig/Content/ContentPreviewConfig.js +22 -0
  52. package/BaseEditor/defaultConfig/Content/ContentPreviewConfig.js.map +1 -0
  53. package/BaseEditor/defaultConfig/Content/Preview/DropZoneManager.d.ts +1 -0
  54. package/BaseEditor/defaultConfig/Content/Preview/DropZoneManager.js +54 -11
  55. package/BaseEditor/defaultConfig/Content/Preview/DropZoneManager.js.map +1 -1
  56. package/BaseEditor/defaultConfig/Content/Preview/Iframe.js +27 -13
  57. package/BaseEditor/defaultConfig/Content/Preview/Iframe.js.map +1 -1
  58. package/BaseEditor/defaultConfig/Content/Preview/KeyboardShortcuts.js +4 -11
  59. package/BaseEditor/defaultConfig/Content/Preview/KeyboardShortcuts.js.map +1 -1
  60. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementDropLines.d.ts +1 -1
  61. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementDropLines.js +44 -4
  62. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementDropLines.js.map +1 -1
  63. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlay.d.ts +1 -10
  64. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlay.js +13 -8
  65. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlay.js.map +1 -1
  66. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlayProvider.d.ts +16 -0
  67. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlayProvider.js +19 -0
  68. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlayProvider.js.map +1 -0
  69. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlays.js +9 -10
  70. package/BaseEditor/defaultConfig/Content/Preview/Overlays/ElementOverlays.js.map +1 -1
  71. package/BaseEditor/defaultConfig/Content/Preview/Preview.js +2 -3
  72. package/BaseEditor/defaultConfig/Content/Preview/Preview.js.map +1 -1
  73. package/BaseEditor/defaultConfig/Content/Preview/PreviewContainer.d.ts +6 -0
  74. package/BaseEditor/defaultConfig/Content/Preview/PreviewContainer.js +16 -0
  75. package/BaseEditor/defaultConfig/Content/Preview/PreviewContainer.js.map +1 -0
  76. package/BaseEditor/defaultConfig/Content/Preview/PreviewEvents.js +36 -1
  77. package/BaseEditor/defaultConfig/Content/Preview/PreviewEvents.js.map +1 -1
  78. package/BaseEditor/defaultConfig/Content/Preview/useElementComponentManifest.d.ts +1 -1
  79. package/BaseEditor/defaultConfig/Content/Preview/useElementComponentManifest.js +6 -5
  80. package/BaseEditor/defaultConfig/Content/Preview/useElementComponentManifest.js.map +1 -1
  81. package/BaseEditor/defaultConfig/Content/Preview/useIframeUrl.js +1 -1
  82. package/BaseEditor/defaultConfig/Content/Preview/useIframeUrl.js.map +1 -1
  83. package/BaseEditor/defaultConfig/Content/Preview/useProximityDropzone.d.ts +2 -1
  84. package/BaseEditor/defaultConfig/Content/Preview/useProximityDropzone.js +4 -2
  85. package/BaseEditor/defaultConfig/Content/Preview/useProximityDropzone.js.map +1 -1
  86. package/BaseEditor/defaultConfig/Content/Preview/useResponsiveContainer.d.ts +3 -3
  87. package/BaseEditor/defaultConfig/Content/Preview/useResponsiveContainer.js +18 -13
  88. package/BaseEditor/defaultConfig/Content/Preview/useResponsiveContainer.js.map +1 -1
  89. package/BaseEditor/defaultConfig/Content/{Preview/usePreviewDomain.js → usePreviewDomain.js} +1 -1
  90. package/BaseEditor/defaultConfig/DefaultEditorConfig.js +2 -9
  91. package/BaseEditor/defaultConfig/DefaultEditorConfig.js.map +1 -1
  92. package/BaseEditor/defaultConfig/Sidebar/ElementSettings/ElementInputs.d.ts +19 -1
  93. package/BaseEditor/defaultConfig/Sidebar/ElementSettings/ElementInputs.js +3 -2
  94. package/BaseEditor/defaultConfig/Sidebar/ElementSettings/ElementInputs.js.map +1 -1
  95. package/BaseEditor/defaultConfig/Sidebar/ElementSettings/useBindingsForElement.d.ts +11 -11
  96. package/BaseEditor/defaultConfig/Sidebar/ElementSettings/useInputValue.js +15 -4
  97. package/BaseEditor/defaultConfig/Sidebar/ElementSettings/useInputValue.js.map +1 -1
  98. package/BaseEditor/defaultConfig/Toolbar/InsertElements/useComponentGroups.js +3 -2
  99. package/BaseEditor/defaultConfig/Toolbar/InsertElements/useComponentGroups.js.map +1 -1
  100. package/BaseEditor/hooks/useCreateElement.d.ts +5 -0
  101. package/BaseEditor/hooks/useCreateElement.js +14 -0
  102. package/BaseEditor/hooks/useCreateElement.js.map +1 -0
  103. package/BaseEditor/hooks/useDeleteElement.d.ts +3 -0
  104. package/BaseEditor/hooks/useDeleteElement.js +16 -0
  105. package/BaseEditor/hooks/useDeleteElement.js.map +1 -0
  106. package/BaseEditor/hooks/useElementInputs.d.ts +10 -0
  107. package/BaseEditor/hooks/useElementInputs.js +33 -0
  108. package/BaseEditor/hooks/useElementInputs.js.map +1 -0
  109. package/BaseEditor/hooks/useElementOverlay.d.ts +1 -0
  110. package/BaseEditor/hooks/useElementOverlay.js +3 -0
  111. package/BaseEditor/hooks/useElementOverlay.js.map +1 -0
  112. package/BaseEditor/hooks/useHighlightedElement.d.ts +2 -0
  113. package/BaseEditor/hooks/useHighlightedElement.js +26 -0
  114. package/BaseEditor/hooks/useHighlightedElement.js.map +1 -0
  115. package/BaseEditor/hooks/useReservedUISpace.d.ts +10 -0
  116. package/BaseEditor/hooks/useReservedUISpace.js +48 -0
  117. package/BaseEditor/hooks/useReservedUISpace.js.map +1 -0
  118. package/BaseEditor/hooks/useUpdateElement.d.ts +3 -0
  119. package/BaseEditor/hooks/useUpdateElement.js +14 -0
  120. package/BaseEditor/hooks/useUpdateElement.js.map +1 -0
  121. package/DocumentEditor/StateInspector.js +16 -43
  122. package/DocumentEditor/StateInspector.js.map +1 -1
  123. package/Extension.js +1 -8
  124. package/Extension.js.map +1 -1
  125. package/components/TrashBin/adapters/TrashBinBulkActionsGraphQLGateway.d.ts +16 -0
  126. package/components/TrashBin/adapters/TrashBinBulkActionsGraphQLGateway.js +30 -0
  127. package/components/TrashBin/adapters/TrashBinBulkActionsGraphQLGateway.js.map +1 -0
  128. package/components/TrashBin/adapters/TrashBinDeletePageGraphQLGateway.d.ts +11 -0
  129. package/components/TrashBin/adapters/TrashBinDeletePageGraphQLGateway.js +30 -0
  130. package/components/TrashBin/adapters/TrashBinDeletePageGraphQLGateway.js.map +1 -0
  131. package/components/TrashBin/adapters/TrashBinItemMapper.d.ts +5 -0
  132. package/components/TrashBin/adapters/TrashBinItemMapper.js +18 -0
  133. package/components/TrashBin/adapters/TrashBinItemMapper.js.map +1 -0
  134. package/components/TrashBin/adapters/TrashBinListPagesGraphQLGateway.d.ts +16 -0
  135. package/components/TrashBin/adapters/TrashBinListPagesGraphQLGateway.js +32 -0
  136. package/components/TrashBin/adapters/TrashBinListPagesGraphQLGateway.js.map +1 -0
  137. package/components/TrashBin/adapters/TrashBinRestorePageGraphQLGateway.d.ts +14 -0
  138. package/components/TrashBin/adapters/TrashBinRestorePageGraphQLGateway.js +30 -0
  139. package/components/TrashBin/adapters/TrashBinRestorePageGraphQLGateway.js.map +1 -0
  140. package/components/TrashBin/adapters/graphql/bulkActionsMutation.d.ts +15 -0
  141. package/components/TrashBin/adapters/graphql/bulkActionsMutation.js +20 -0
  142. package/components/TrashBin/adapters/graphql/bulkActionsMutation.js.map +1 -0
  143. package/components/TrashBin/adapters/graphql/listQuery.d.ts +21 -0
  144. package/components/TrashBin/adapters/graphql/listQuery.js +20 -0
  145. package/components/TrashBin/adapters/graphql/listQuery.js.map +1 -0
  146. package/components/TrashBin/adapters/graphql/permanentDeleteMutation.d.ts +15 -0
  147. package/components/TrashBin/adapters/graphql/permanentDeleteMutation.js +18 -0
  148. package/components/TrashBin/adapters/graphql/permanentDeleteMutation.js.map +1 -0
  149. package/components/TrashBin/adapters/graphql/restoreMutation.d.ts +14 -0
  150. package/components/TrashBin/adapters/graphql/restoreMutation.js +20 -0
  151. package/components/TrashBin/adapters/graphql/restoreMutation.js.map +1 -0
  152. package/components/TrashBin/adapters/index.d.ts +6 -0
  153. package/components/TrashBin/adapters/index.js +8 -0
  154. package/components/TrashBin/adapters/index.js.map +1 -0
  155. package/components/TrashBin/adapters/usePageFields.d.ts +1 -0
  156. package/components/TrashBin/adapters/usePageFields.js +14 -0
  157. package/components/TrashBin/adapters/usePageFields.js.map +1 -0
  158. package/components/TrashBin/components/TrashBin.d.ts +2 -0
  159. package/components/TrashBin/components/TrashBin.js +70 -0
  160. package/components/TrashBin/components/TrashBin.js.map +1 -0
  161. package/components/TrashBin/components/TrashBin.styled.d.ts +13 -0
  162. package/components/TrashBin/components/TrashBin.styled.js +44 -0
  163. package/components/TrashBin/components/TrashBin.styled.js.map +1 -0
  164. package/components/TrashBin/components/TrashBinButton.d.ts +5 -0
  165. package/components/TrashBin/components/TrashBinButton.js +17 -0
  166. package/components/TrashBin/components/TrashBinButton.js.map +1 -0
  167. package/components/TrashBin/components/index.d.ts +1 -0
  168. package/components/TrashBin/components/index.js +3 -0
  169. package/components/TrashBin/components/index.js.map +1 -0
  170. package/components/TrashBin/index.d.ts +1 -0
  171. package/components/TrashBin/index.js +3 -0
  172. package/components/TrashBin/index.js.map +1 -0
  173. package/editorSdk/Editor.d.ts +6 -0
  174. package/editorSdk/Editor.js +8 -1
  175. package/editorSdk/Editor.js.map +1 -1
  176. package/editorSdk/utils/$createElement.d.ts +2 -1
  177. package/editorSdk/utils/$createElement.js +40 -1
  178. package/editorSdk/utils/$createElement.js.map +1 -1
  179. package/editorSdk/utils/$deleteElement.d.ts +2 -2
  180. package/editorSdk/utils/$deleteElement.js +58 -14
  181. package/editorSdk/utils/$deleteElement.js.map +1 -1
  182. package/editorSdk/utils/$getElementInputValues.d.ts +5 -0
  183. package/editorSdk/utils/$getElementInputValues.js +76 -0
  184. package/editorSdk/utils/$getElementInputValues.js.map +1 -0
  185. package/editorSdk/utils/$getElementsOfType.d.ts +2 -0
  186. package/editorSdk/utils/$getElementsOfType.js +5 -0
  187. package/editorSdk/utils/$getElementsOfType.js.map +1 -0
  188. package/editorSdk/utils/$getFirstElementOfType.d.ts +2 -0
  189. package/editorSdk/utils/$getFirstElementOfType.js +5 -0
  190. package/editorSdk/utils/$getFirstElementOfType.js.map +1 -0
  191. package/editorSdk/utils/$moveElement.d.ts +3 -2
  192. package/editorSdk/utils/$moveElement.js +14 -1
  193. package/editorSdk/utils/$moveElement.js.map +1 -1
  194. package/editorSdk/utils/$previewElementInputs.d.ts +6 -0
  195. package/editorSdk/utils/$previewElementInputs.js +39 -0
  196. package/editorSdk/utils/$previewElementInputs.js.map +1 -0
  197. package/editorSdk/utils/$updateElementInputs.d.ts +7 -0
  198. package/editorSdk/utils/$updateElementInputs.js +50 -0
  199. package/editorSdk/utils/$updateElementInputs.js.map +1 -0
  200. package/editorSdk/utils/executeOnChange.d.ts +33 -0
  201. package/editorSdk/utils/executeOnChange.js +246 -0
  202. package/editorSdk/utils/executeOnChange.js.map +1 -0
  203. package/editorSdk/utils/index.d.ts +6 -0
  204. package/editorSdk/utils/index.js +6 -0
  205. package/editorSdk/utils/index.js.map +1 -1
  206. package/exports/admin/website-builder/page/editor.d.ts +34 -2
  207. package/exports/admin/website-builder/page/editor.js +34 -2
  208. package/exports/admin/website-builder/page/editor.js.map +1 -1
  209. package/exports/admin/website-builder.d.ts +1 -0
  210. package/exports/admin/website-builder.js +1 -0
  211. package/exports/admin/website-builder.js.map +1 -1
  212. package/features/pages/deletePage/DeletePage.test.js +2 -1
  213. package/features/pages/deletePage/DeletePage.test.js.map +1 -1
  214. package/features/pages/deletePage/DeletePageGqlGateway.d.ts +2 -1
  215. package/features/pages/deletePage/DeletePageGqlGateway.js +3 -2
  216. package/features/pages/deletePage/DeletePageGqlGateway.js.map +1 -1
  217. package/features/pages/deletePage/DeletePageRepository.d.ts +1 -1
  218. package/features/pages/deletePage/DeletePageRepository.js +2 -2
  219. package/features/pages/deletePage/DeletePageRepository.js.map +1 -1
  220. package/features/pages/deletePage/DeletePageUseCase.js +1 -1
  221. package/features/pages/deletePage/DeletePageUseCase.js.map +1 -1
  222. package/features/pages/deletePage/IDeletePageGateway.d.ts +1 -1
  223. package/features/pages/deletePage/IDeletePageGateway.js.map +1 -1
  224. package/features/pages/deletePage/IDeletePageRepository.d.ts +1 -1
  225. package/features/pages/deletePage/IDeletePageRepository.js.map +1 -1
  226. package/features/pages/deletePage/IDeletePageUseCase.d.ts +1 -0
  227. package/features/pages/deletePage/IDeletePageUseCase.js.map +1 -1
  228. package/index.d.ts +1 -1
  229. package/index.js +1 -1
  230. package/index.js.map +1 -1
  231. package/modules/pages/PageEditor/DefaultPageEditorConfig.js +6 -5
  232. package/modules/pages/PageEditor/DefaultPageEditorConfig.js.map +1 -1
  233. package/modules/pages/PageEditor/PageAutoSave.js +5 -5
  234. package/modules/pages/PageEditor/PageAutoSave.js.map +1 -1
  235. package/modules/pages/PageEditor/PageEditorConfig.d.ts +569 -88
  236. package/modules/pages/PageEditor/PageEditorConfig.js +23 -3
  237. package/modules/pages/PageEditor/PageEditorConfig.js.map +1 -1
  238. package/modules/pages/PageEditor/PageSettings/PageSettings.d.ts +30 -0
  239. package/modules/pages/PageEditor/PageSettings/PageSettings.js +84 -0
  240. package/modules/pages/PageEditor/PageSettings/PageSettings.js.map +1 -0
  241. package/modules/pages/PageEditor/PageSettings/PageSettingsConfig.d.ts +2 -0
  242. package/modules/pages/PageEditor/PageSettings/PageSettingsConfig.js +98 -0
  243. package/modules/pages/PageEditor/PageSettings/PageSettingsConfig.js.map +1 -0
  244. package/modules/pages/PageEditor/PageSettings/elements/GeneralImage.d.ts +2 -0
  245. package/modules/pages/PageEditor/PageSettings/elements/GeneralImage.js +31 -0
  246. package/modules/pages/PageEditor/PageSettings/elements/GeneralImage.js.map +1 -0
  247. package/modules/pages/PageEditor/PageSettings/elements/GeneralPath.d.ts +2 -0
  248. package/modules/pages/PageEditor/PageSettings/elements/GeneralPath.js +16 -0
  249. package/modules/pages/PageEditor/PageSettings/elements/GeneralPath.js.map +1 -0
  250. package/modules/pages/PageEditor/PageSettings/elements/GeneralSnippet.d.ts +2 -0
  251. package/modules/pages/PageEditor/PageSettings/elements/GeneralSnippet.js +14 -0
  252. package/modules/pages/PageEditor/PageSettings/elements/GeneralSnippet.js.map +1 -0
  253. package/modules/pages/PageEditor/PageSettings/elements/GeneralTags.d.ts +2 -0
  254. package/modules/pages/PageEditor/PageSettings/elements/GeneralTags.js +14 -0
  255. package/modules/pages/PageEditor/PageSettings/elements/GeneralTags.js.map +1 -0
  256. package/modules/pages/PageEditor/PageSettings/elements/GeneralTitle.d.ts +2 -0
  257. package/modules/pages/PageEditor/PageSettings/elements/GeneralTitle.js +16 -0
  258. package/modules/pages/PageEditor/PageSettings/elements/GeneralTitle.js.map +1 -0
  259. package/modules/pages/PageEditor/PageSettings/elements/SchemaEditor.d.ts +2 -0
  260. package/modules/pages/PageEditor/PageSettings/elements/SchemaEditor.js +31 -0
  261. package/modules/pages/PageEditor/PageSettings/elements/SchemaEditor.js.map +1 -0
  262. package/modules/pages/PageEditor/PageSettings/elements/SeoCanonicalUrl.d.ts +2 -0
  263. package/modules/pages/PageEditor/PageSettings/elements/SeoCanonicalUrl.js +26 -0
  264. package/modules/pages/PageEditor/PageSettings/elements/SeoCanonicalUrl.js.map +1 -0
  265. package/modules/pages/PageEditor/PageSettings/elements/SeoDescription.d.ts +2 -0
  266. package/modules/pages/PageEditor/PageSettings/elements/SeoDescription.js +15 -0
  267. package/modules/pages/PageEditor/PageSettings/elements/SeoDescription.js.map +1 -0
  268. package/modules/pages/PageEditor/PageSettings/elements/SeoMetaTags.d.ts +2 -0
  269. package/modules/pages/PageEditor/PageSettings/elements/SeoMetaTags.js +18 -0
  270. package/modules/pages/PageEditor/PageSettings/elements/SeoMetaTags.js.map +1 -0
  271. package/modules/pages/PageEditor/PageSettings/elements/SeoNoFollow.d.ts +2 -0
  272. package/modules/pages/PageEditor/PageSettings/elements/SeoNoFollow.js +16 -0
  273. package/modules/pages/PageEditor/PageSettings/elements/SeoNoFollow.js.map +1 -0
  274. package/modules/pages/PageEditor/PageSettings/elements/SeoNoIndex.d.ts +2 -0
  275. package/modules/pages/PageEditor/PageSettings/elements/SeoNoIndex.js +16 -0
  276. package/modules/pages/PageEditor/PageSettings/elements/SeoNoIndex.js.map +1 -0
  277. package/modules/pages/PageEditor/PageSettings/elements/SeoTitle.d.ts +2 -0
  278. package/modules/pages/PageEditor/PageSettings/elements/SeoTitle.js +15 -0
  279. package/modules/pages/PageEditor/PageSettings/elements/SeoTitle.js.map +1 -0
  280. package/modules/pages/PageEditor/PageSettings/elements/SocialDescription.d.ts +2 -0
  281. package/modules/pages/PageEditor/PageSettings/elements/SocialDescription.js +15 -0
  282. package/modules/pages/PageEditor/PageSettings/elements/SocialDescription.js.map +1 -0
  283. package/modules/pages/PageEditor/PageSettings/elements/SocialImage.d.ts +2 -0
  284. package/modules/pages/PageEditor/PageSettings/elements/SocialImage.js +31 -0
  285. package/modules/pages/PageEditor/PageSettings/elements/SocialImage.js.map +1 -0
  286. package/modules/pages/PageEditor/PageSettings/elements/SocialMetaTags.d.ts +2 -0
  287. package/modules/pages/PageEditor/PageSettings/elements/SocialMetaTags.js +18 -0
  288. package/modules/pages/PageEditor/PageSettings/elements/SocialMetaTags.js.map +1 -0
  289. package/modules/pages/PageEditor/PageSettings/elements/SocialTitle.d.ts +2 -0
  290. package/modules/pages/PageEditor/PageSettings/elements/SocialTitle.js +15 -0
  291. package/modules/pages/PageEditor/PageSettings/elements/SocialTitle.js.map +1 -0
  292. package/modules/pages/PageEditor/TopBar/RevisionsMenu.js.map +1 -1
  293. package/modules/pages/PageEditor/TopBar/Settings/PageSettingsDialog.d.ts +2 -0
  294. package/modules/pages/PageEditor/TopBar/Settings/PageSettingsDialog.js +37 -0
  295. package/modules/pages/PageEditor/TopBar/Settings/PageSettingsDialog.js.map +1 -0
  296. package/modules/pages/PageEditor/TopBar/Settings/PageSettingsDrawer.d.ts +3 -0
  297. package/modules/pages/PageEditor/TopBar/Settings/PageSettingsDrawer.js +73 -0
  298. package/modules/pages/PageEditor/TopBar/Settings/PageSettingsDrawer.js.map +1 -0
  299. package/modules/pages/PageEditor/TopBar/Settings/SettingsDialogBody.d.ts +5 -1
  300. package/modules/pages/PageEditor/TopBar/Settings/SettingsDialogBody.js +15 -229
  301. package/modules/pages/PageEditor/TopBar/Settings/SettingsDialogBody.js.map +1 -1
  302. package/modules/pages/PageEditor/TopBar/SettingsButton.d.ts +6 -0
  303. package/modules/pages/PageEditor/TopBar/SettingsButton.js +45 -27
  304. package/modules/pages/PageEditor/TopBar/SettingsButton.js.map +1 -1
  305. package/modules/pages/PageEditor/TopBar/Title.js +10 -0
  306. package/modules/pages/PageEditor/TopBar/Title.js.map +1 -1
  307. package/modules/pages/PageEditor/usePageEditorConfig.d.ts +20 -0
  308. package/modules/pages/PageEditor/usePageEditorConfig.js +13 -0
  309. package/modules/pages/PageEditor/usePageEditorConfig.js.map +1 -0
  310. package/modules/pages/PagesList/components/BulkActions/BulkActionDelete.js +2 -1
  311. package/modules/pages/PagesList/components/BulkActions/BulkActionDelete.js.map +1 -1
  312. package/modules/pages/PagesList/components/Main/CreatePage/CreatePage.js +9 -1
  313. package/modules/pages/PagesList/components/Main/CreatePage/CreatePage.js.map +1 -1
  314. package/modules/pages/PagesList/components/Table/Actions/Delete.js +1 -1
  315. package/modules/pages/PagesList/components/Table/Actions/Delete.js.map +1 -1
  316. package/modules/pages/PagesList/hooks/useDeletePageConfirmationDialog.js +4 -3
  317. package/modules/pages/PagesList/hooks/useDeletePageConfirmationDialog.js.map +1 -1
  318. package/modules/pages/PagesList/hooks/usePagePreviewLink.js +1 -1
  319. package/modules/pages/PagesList/hooks/usePagePreviewLink.js.map +1 -1
  320. package/modules/pages/PagesListConfig.js +4 -0
  321. package/modules/pages/PagesListConfig.js.map +1 -1
  322. package/modules/pages/configs/list/Browser/PageAction.d.ts +1 -0
  323. package/modules/pages/configs/list/Browser/PageAction.js +3 -1
  324. package/modules/pages/configs/list/Browser/PageAction.js.map +1 -1
  325. package/modules/pages/configs/list/Browser/index.d.ts +1 -0
  326. package/modules/pages/configs/list/PageListConfig.d.ts +2 -0
  327. package/modules/redirects/configs/list/Browser/RedirectAction.d.ts +1 -0
  328. package/modules/redirects/configs/list/Browser/RedirectAction.js +3 -1
  329. package/modules/redirects/configs/list/Browser/RedirectAction.js.map +1 -1
  330. package/modules/redirects/configs/list/Browser/index.d.ts +1 -0
  331. package/modules/redirects/configs/list/RedirectListConfig.d.ts +1 -0
  332. package/package.json +35 -42
  333. package/presentation/navigation/NextjsConfig/markdownComponents.js +3 -1
  334. package/presentation/navigation/NextjsConfig/markdownComponents.js.map +1 -1
  335. package/types.d.ts +1 -0
  336. package/types.js.map +1 -1
  337. package/BaseEditor/defaultConfig/Content/Preview/AddressBar.js.map +0 -1
  338. /package/BaseEditor/defaultConfig/Content/{Preview → AddressBar}/AddressBar.d.ts +0 -0
  339. /package/BaseEditor/defaultConfig/Content/{Preview → AddressBar}/BreakpointSelector.d.ts +0 -0
  340. /package/BaseEditor/defaultConfig/Content/{Preview → AddressBar}/BreakpointSelector.js +0 -0
  341. /package/BaseEditor/defaultConfig/Content/{Preview → AddressBar}/BreakpointSelector.js.map +0 -0
  342. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/OpenInNewTab.d.ts +0 -0
  343. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/OpenInNewTab.js +0 -0
  344. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/OpenInNewTab.js.map +0 -0
  345. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/PreviewDomain.d.ts +0 -0
  346. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/PreviewDomain.js.map +0 -0
  347. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/PreviewInNewTab.d.ts +0 -0
  348. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/PreviewInNewTab.js +0 -0
  349. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/PreviewInNewTab.js.map +0 -0
  350. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/RefreshPreview.d.ts +0 -0
  351. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/RefreshPreview.js.map +0 -0
  352. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/usePreviewLink.d.ts +0 -0
  353. /package/BaseEditor/defaultConfig/Content/{Preview/AddressBar → AddressBar}/usePreviewLink.js.map +0 -0
  354. /package/BaseEditor/defaultConfig/Content/{Preview/usePreviewDomain.d.ts → usePreviewDomain.d.ts} +0 -0
  355. /package/BaseEditor/defaultConfig/Content/{Preview/usePreviewDomain.js.map → usePreviewDomain.js.map} +0 -0
  356. /package/BaseEditor/defaultConfig/Content/{Preview/useSubscribeToLocalStorage.d.ts → useSubscribeToLocalStorage.d.ts} +0 -0
  357. /package/BaseEditor/defaultConfig/Content/{Preview/useSubscribeToLocalStorage.js → useSubscribeToLocalStorage.js} +0 -0
  358. /package/BaseEditor/defaultConfig/Content/{Preview/useSubscribeToLocalStorage.js.map → useSubscribeToLocalStorage.js.map} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Grid","Switch","Bind","SeoNoFollow","createElement","Column","span","name","defaultValue","label","description"],"sources":["SeoNoFollow.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid, Switch } from \"@webiny/admin-ui\";\nimport { Bind } from \"@webiny/form\";\n\nexport const SeoNoFollow = () => {\n return (\n <Grid.Column span={12}>\n <Bind name={\"properties.seo.noFollow\"} defaultValue={false}>\n <Switch\n label={\"No Follow\"}\n description={\"Whether search engines should follow links on this page\"}\n />\n </Bind>\n </Grid.Column>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,MAAM,QAAQ,kBAAkB;AAC/C,SAASC,IAAI,QAAQ,cAAc;AAEnC,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,IAAI,CAACK,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBP,KAAA,CAAAK,aAAA,CAACF,IAAI;IAACK,IAAI,EAAE,yBAA0B;IAACC,YAAY,EAAE;EAAM,gBACvDT,KAAA,CAAAK,aAAA,CAACH,MAAM;IACHQ,KAAK,EAAE,WAAY;IACnBC,WAAW,EAAE;EAA0D,CAC1E,CACC,CACG,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const SeoNoIndex: () => React.JSX.Element;
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ import { Grid, Switch } from "@webiny/admin-ui";
3
+ import { Bind } from "@webiny/form";
4
+ export const SeoNoIndex = () => {
5
+ return /*#__PURE__*/React.createElement(Grid.Column, {
6
+ span: 12
7
+ }, /*#__PURE__*/React.createElement(Bind, {
8
+ name: "properties.seo.noIndex",
9
+ defaultValue: false
10
+ }, /*#__PURE__*/React.createElement(Switch, {
11
+ label: "No Index",
12
+ description: "Whether this page should be indexed by search engines"
13
+ })));
14
+ };
15
+
16
+ //# sourceMappingURL=SeoNoIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Grid","Switch","Bind","SeoNoIndex","createElement","Column","span","name","defaultValue","label","description"],"sources":["SeoNoIndex.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid, Switch } from \"@webiny/admin-ui\";\nimport { Bind } from \"@webiny/form\";\n\nexport const SeoNoIndex = () => {\n return (\n <Grid.Column span={12}>\n <Bind name={\"properties.seo.noIndex\"} defaultValue={false}>\n <Switch\n label={\"No Index\"}\n description={\"Whether this page should be indexed by search engines\"}\n />\n </Bind>\n </Grid.Column>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,MAAM,QAAQ,kBAAkB;AAC/C,SAASC,IAAI,QAAQ,cAAc;AAEnC,OAAO,MAAMC,UAAU,GAAGA,CAAA,KAAM;EAC5B,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,IAAI,CAACK,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBP,KAAA,CAAAK,aAAA,CAACF,IAAI;IAACK,IAAI,EAAE,wBAAyB;IAACC,YAAY,EAAE;EAAM,gBACtDT,KAAA,CAAAK,aAAA,CAACH,MAAM;IACHQ,KAAK,EAAE,UAAW;IAClBC,WAAW,EAAE;EAAwD,CACxE,CACC,CACG,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const SeoTitle: () => React.JSX.Element;
@@ -0,0 +1,15 @@
1
+ import React from "react";
2
+ import { Grid, Input } from "@webiny/admin-ui";
3
+ import { Bind } from "@webiny/form";
4
+ export const SeoTitle = () => {
5
+ return /*#__PURE__*/React.createElement(Grid.Column, {
6
+ span: 12
7
+ }, /*#__PURE__*/React.createElement(Bind, {
8
+ name: "properties.seo.title"
9
+ }, /*#__PURE__*/React.createElement(Input, {
10
+ label: "Title",
11
+ description: "SEO title"
12
+ })));
13
+ };
14
+
15
+ //# sourceMappingURL=SeoTitle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Grid","Input","Bind","SeoTitle","createElement","Column","span","name","label","description"],"sources":["SeoTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid, Input } from \"@webiny/admin-ui\";\nimport { Bind } from \"@webiny/form\";\n\nexport const SeoTitle = () => {\n return (\n <Grid.Column span={12}>\n <Bind name={\"properties.seo.title\"}>\n <Input label={\"Title\"} description={\"SEO title\"} />\n </Bind>\n </Grid.Column>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,KAAK,QAAQ,kBAAkB;AAC9C,SAASC,IAAI,QAAQ,cAAc;AAEnC,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC1B,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,IAAI,CAACK,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBP,KAAA,CAAAK,aAAA,CAACF,IAAI;IAACK,IAAI,EAAE;EAAuB,gBAC/BR,KAAA,CAAAK,aAAA,CAACH,KAAK;IAACO,KAAK,EAAE,OAAQ;IAACC,WAAW,EAAE;EAAY,CAAE,CAChD,CACG,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const SocialDescription: () => React.JSX.Element;
@@ -0,0 +1,15 @@
1
+ import React from "react";
2
+ import { Grid, Textarea } from "@webiny/admin-ui";
3
+ import { Bind } from "@webiny/form";
4
+ export const SocialDescription = () => {
5
+ return /*#__PURE__*/React.createElement(Grid.Column, {
6
+ span: 12
7
+ }, /*#__PURE__*/React.createElement(Bind, {
8
+ name: "properties.social.description"
9
+ }, /*#__PURE__*/React.createElement(Textarea, {
10
+ label: "Description",
11
+ description: "Description for social platforms (og:description)"
12
+ })));
13
+ };
14
+
15
+ //# sourceMappingURL=SocialDescription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Grid","Textarea","Bind","SocialDescription","createElement","Column","span","name","label","description"],"sources":["SocialDescription.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid, Textarea } from \"@webiny/admin-ui\";\nimport { Bind } from \"@webiny/form\";\n\nexport const SocialDescription = () => {\n return (\n <Grid.Column span={12}>\n <Bind name={\"properties.social.description\"}>\n <Textarea\n label={\"Description\"}\n description={\"Description for social platforms (og:description)\"}\n />\n </Bind>\n </Grid.Column>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,QAAQ,QAAQ,kBAAkB;AACjD,SAASC,IAAI,QAAQ,cAAc;AAEnC,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EACnC,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,IAAI,CAACK,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBP,KAAA,CAAAK,aAAA,CAACF,IAAI;IAACK,IAAI,EAAE;EAAgC,gBACxCR,KAAA,CAAAK,aAAA,CAACH,QAAQ;IACLO,KAAK,EAAE,aAAc;IACrBC,WAAW,EAAE;EAAoD,CACpE,CACC,CACG,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const SocialImage: () => React.JSX.Element;
@@ -0,0 +1,31 @@
1
+ import React from "react";
2
+ import { FileManager } from "@webiny/app-admin";
3
+ import { Grid, FilePicker } from "@webiny/admin-ui";
4
+ import { Bind } from "@webiny/form";
5
+ import { fileManagerItemToValue } from "../../../../../shared/fileManagerItemToValue.js";
6
+ export const SocialImage = () => {
7
+ return /*#__PURE__*/React.createElement(Grid.Column, {
8
+ span: 12
9
+ }, /*#__PURE__*/React.createElement(Bind, {
10
+ name: "properties.social.image"
11
+ }, ({
12
+ value,
13
+ onChange
14
+ }) => /*#__PURE__*/React.createElement(FileManager, {
15
+ images: true,
16
+ render: ({
17
+ showFileManager
18
+ }) => /*#__PURE__*/React.createElement(FilePicker, {
19
+ label: "Image",
20
+ description: "Select an image for social platforms (og:image)",
21
+ type: "compact",
22
+ value: value,
23
+ onSelectItem: () => showFileManager(file => {
24
+ onChange(fileManagerItemToValue(file));
25
+ }),
26
+ onRemoveItem: () => onChange(undefined)
27
+ })
28
+ })));
29
+ };
30
+
31
+ //# sourceMappingURL=SocialImage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","FileManager","Grid","FilePicker","Bind","fileManagerItemToValue","SocialImage","createElement","Column","span","name","value","onChange","images","render","showFileManager","label","description","type","onSelectItem","file","onRemoveItem","undefined"],"sources":["SocialImage.tsx"],"sourcesContent":["import React from \"react\";\nimport { FileManager } from \"@webiny/app-admin\";\nimport { Grid, FilePicker } from \"@webiny/admin-ui\";\nimport { Bind } from \"@webiny/form\";\nimport { fileManagerItemToValue } from \"~/shared/fileManagerItemToValue.js\";\n\nexport const SocialImage = () => {\n return (\n <Grid.Column span={12}>\n <Bind name={\"properties.social.image\"}>\n {({ value, onChange }) => (\n <FileManager\n images={true}\n render={({ showFileManager }) => (\n <FilePicker\n label={\"Image\"}\n description=\"Select an image for social platforms (og:image)\"\n type=\"compact\"\n value={value}\n onSelectItem={() =>\n showFileManager(file => {\n onChange(fileManagerItemToValue(file));\n })\n }\n onRemoveItem={() => onChange(undefined)}\n />\n )}\n />\n )}\n </Bind>\n </Grid.Column>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,IAAI,EAAEC,UAAU,QAAQ,kBAAkB;AACnD,SAASC,IAAI,QAAQ,cAAc;AACnC,SAASC,sBAAsB;AAE/B,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,oBACIN,KAAA,CAAAO,aAAA,CAACL,IAAI,CAACM,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBT,KAAA,CAAAO,aAAA,CAACH,IAAI;IAACM,IAAI,EAAE;EAA0B,GACjC,CAAC;IAAEC,KAAK;IAAEC;EAAS,CAAC,kBACjBZ,KAAA,CAAAO,aAAA,CAACN,WAAW;IACRY,MAAM,EAAE,IAAK;IACbC,MAAM,EAAEA,CAAC;MAAEC;IAAgB,CAAC,kBACxBf,KAAA,CAAAO,aAAA,CAACJ,UAAU;MACPa,KAAK,EAAE,OAAQ;MACfC,WAAW,EAAC,iDAAiD;MAC7DC,IAAI,EAAC,SAAS;MACdP,KAAK,EAAEA,KAAM;MACbQ,YAAY,EAAEA,CAAA,KACVJ,eAAe,CAACK,IAAI,IAAI;QACpBR,QAAQ,CAACP,sBAAsB,CAACe,IAAI,CAAC,CAAC;MAC1C,CAAC,CACJ;MACDC,YAAY,EAAEA,CAAA,KAAMT,QAAQ,CAACU,SAAS;IAAE,CAC3C;EACH,CACL,CAEH,CACG,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const SocialMetaTags: () => React.JSX.Element;
@@ -0,0 +1,18 @@
1
+ import React from "react";
2
+ import { Grid } from "@webiny/admin-ui";
3
+ import { MetaTags } from "../../TopBar/Settings/MetaTags.js";
4
+ export const SocialMetaTags = () => {
5
+ return /*#__PURE__*/React.createElement(Grid.Column, {
6
+ span: 12
7
+ }, /*#__PURE__*/React.createElement(MetaTags, {
8
+ label: "Meta Tags",
9
+ description: "Add more Open Graph tags",
10
+ bindName: "properties.social.metaTags",
11
+ keyName: "property",
12
+ keyLabel: "Property",
13
+ valueName: "content",
14
+ valueLabel: "Content"
15
+ }));
16
+ };
17
+
18
+ //# sourceMappingURL=SocialMetaTags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Grid","MetaTags","SocialMetaTags","createElement","Column","span","label","description","bindName","keyName","keyLabel","valueName","valueLabel"],"sources":["SocialMetaTags.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid } from \"@webiny/admin-ui\";\nimport { MetaTags } from \"~/modules/pages/PageEditor/TopBar/Settings/MetaTags.js\";\n\nexport const SocialMetaTags = () => {\n return (\n <Grid.Column span={12}>\n <MetaTags\n label={\"Meta Tags\"}\n description={\"Add more Open Graph tags\"}\n bindName={\"properties.social.metaTags\"}\n keyName={\"property\"}\n keyLabel={\"Property\"}\n valueName={\"content\"}\n valueLabel={\"Content\"}\n />\n </Grid.Column>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,QAAQ,kBAAkB;AACvC,SAASC,QAAQ;AAEjB,OAAO,MAAMC,cAAc,GAAGA,CAAA,KAAM;EAChC,oBACIH,KAAA,CAAAI,aAAA,CAACH,IAAI,CAACI,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBN,KAAA,CAAAI,aAAA,CAACF,QAAQ;IACLK,KAAK,EAAE,WAAY;IACnBC,WAAW,EAAE,0BAA2B;IACxCC,QAAQ,EAAE,4BAA6B;IACvCC,OAAO,EAAE,UAAW;IACpBC,QAAQ,EAAE,UAAW;IACrBC,SAAS,EAAE,SAAU;IACrBC,UAAU,EAAE;EAAU,CACzB,CACQ,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export declare const SocialTitle: () => React.JSX.Element;
@@ -0,0 +1,15 @@
1
+ import React from "react";
2
+ import { Grid, Input } from "@webiny/admin-ui";
3
+ import { Bind } from "@webiny/form";
4
+ export const SocialTitle = () => {
5
+ return /*#__PURE__*/React.createElement(Grid.Column, {
6
+ span: 12
7
+ }, /*#__PURE__*/React.createElement(Bind, {
8
+ name: "properties.social.title"
9
+ }, /*#__PURE__*/React.createElement(Input, {
10
+ label: "Title",
11
+ description: "Title for social platforms (og:title)"
12
+ })));
13
+ };
14
+
15
+ //# sourceMappingURL=SocialTitle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Grid","Input","Bind","SocialTitle","createElement","Column","span","name","label","description"],"sources":["SocialTitle.tsx"],"sourcesContent":["import React from \"react\";\nimport { Grid, Input } from \"@webiny/admin-ui\";\nimport { Bind } from \"@webiny/form\";\n\nexport const SocialTitle = () => {\n return (\n <Grid.Column span={12}>\n <Bind name={\"properties.social.title\"}>\n <Input label={\"Title\"} description={\"Title for social platforms (og:title)\"} />\n </Bind>\n </Grid.Column>\n );\n};\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,IAAI,EAAEC,KAAK,QAAQ,kBAAkB;AAC9C,SAASC,IAAI,QAAQ,cAAc;AAEnC,OAAO,MAAMC,WAAW,GAAGA,CAAA,KAAM;EAC7B,oBACIJ,KAAA,CAAAK,aAAA,CAACJ,IAAI,CAACK,MAAM;IAACC,IAAI,EAAE;EAAG,gBAClBP,KAAA,CAAAK,aAAA,CAACF,IAAI;IAACK,IAAI,EAAE;EAA0B,gBAClCR,KAAA,CAAAK,aAAA,CAACH,KAAK;IAACO,KAAK,EAAE,OAAQ;IAACC,WAAW,EAAE;EAAwC,CAAE,CAC5E,CACG,CAAC;AAEtB,CAAC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","useEffect","useCallback","Button","DropdownMenu","ReactComponent","ArrowDown","Draft","Unpublished","Published","useGetPageRevisions","useSelectFromDocument","useRouter","Routes","Item","statusIcon","draft","createElement","published","unpublished","RevisionsMenu","getLink","revisions","setRevisions","loading","getPageRevisions","id","document","status","entryId","split","then","sort","a","b","Date","savedOn","getTime","reverse","currentRevision","find","r","goToRevision","window","location","pathname","Pages","Editor","trigger","disabled","variant","text","getLabel","icon","iconPosition","map","revision","key","className","onClick","locked","Icon","label","element"],"sources":["RevisionsMenu.tsx"],"sourcesContent":["import React, { useState, useEffect, useCallback } from \"react\";\nimport { Button, DropdownMenu } from \"@webiny/admin-ui\";\nimport { ReactComponent as ArrowDown } from \"@webiny/icons/keyboard_arrow_down.svg\";\nimport { ReactComponent as Draft } from \"@webiny/icons/draw.svg\";\nimport { ReactComponent as Unpublished } from \"@webiny/icons/lock.svg\";\nimport { ReactComponent as Published } from \"@webiny/icons/remove_red_eye.svg\";\nimport { useGetPageRevisions } from \"~/features/pages/index.js\";\nimport { useSelectFromDocument } from \"~/BaseEditor/hooks/useSelectFromDocument.js\";\nimport type { PageRevision } from \"~/domain/PageRevision/index.js\";\nimport type { EditorPage } from \"@webiny/website-builder-sdk\";\nimport { useRouter } from \"@webiny/app-admin\";\nimport { Routes } from \"~/routes.js\";\n\nconst { Item } = DropdownMenu;\n\nconst statusIcon: Record<string, JSX.Element> = {\n draft: <Draft />,\n published: <Published />,\n unpublished: <Unpublished />\n};\n\nexport const RevisionsMenu = () => {\n const { getLink } = useRouter();\n const [revisions, setRevisions] = useState<PageRevision[]>([]);\n const { loading, getPageRevisions } = useGetPageRevisions();\n const id = useSelectFromDocument(document => document.id);\n const status = useSelectFromDocument<string, EditorPage>(document => document.status);\n\n useEffect(() => {\n const [entryId] = id.split(\"#\");\n getPageRevisions({ entryId }).then(revisions => {\n setRevisions(\n revisions\n .sort((a, b) => {\n return new Date(a.savedOn).getTime() - new Date(b.savedOn).getTime();\n })\n .reverse()\n );\n });\n }, [id, status]);\n\n const currentRevision = revisions.find(r => r.id === id);\n\n const goToRevision = useCallback((id: string) => {\n // TODO: make this work without a full app reload\n window.location.pathname = getLink(Routes.Pages.Editor, { id });\n }, []);\n\n return (\n <DropdownMenu\n trigger={\n <Button\n disabled={loading}\n variant=\"ghost\"\n text={currentRevision ? currentRevision.getLabel() : \"Loading...\"}\n icon={<ArrowDown />}\n iconPosition={\"end\"}\n />\n }\n >\n {revisions.map(revision => (\n <Item\n key={revision.id}\n className={\"cursor-pointer\"}\n onClick={() => goToRevision(revision.id)}\n disabled={revision.locked}\n icon={\n <Item.Icon\n label={revision.getLabel()}\n element={statusIcon[revision.status]}\n />\n }\n text={revision.getLabel()}\n />\n ))}\n </DropdownMenu>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","useEffect","useCallback","Button","DropdownMenu","ReactComponent","ArrowDown","Draft","Unpublished","Published","useGetPageRevisions","useSelectFromDocument","useRouter","Routes","Item","statusIcon","draft","createElement","published","unpublished","RevisionsMenu","getLink","revisions","setRevisions","loading","getPageRevisions","id","document","status","entryId","split","then","sort","a","b","Date","savedOn","getTime","reverse","currentRevision","find","r","goToRevision","window","location","pathname","Pages","Editor","trigger","disabled","variant","text","getLabel","icon","iconPosition","map","revision","key","className","onClick","locked","Icon","label","element"],"sources":["RevisionsMenu.tsx"],"sourcesContent":["import React, { useState, useEffect, useCallback } from \"react\";\nimport { Button, DropdownMenu } from \"@webiny/admin-ui\";\nimport { ReactComponent as ArrowDown } from \"@webiny/icons/keyboard_arrow_down.svg\";\nimport { ReactComponent as Draft } from \"@webiny/icons/draw.svg\";\nimport { ReactComponent as Unpublished } from \"@webiny/icons/lock.svg\";\nimport { ReactComponent as Published } from \"@webiny/icons/remove_red_eye.svg\";\nimport { useGetPageRevisions } from \"~/features/pages/index.js\";\nimport { useSelectFromDocument } from \"~/BaseEditor/hooks/useSelectFromDocument.js\";\nimport type { PageRevision } from \"~/domain/PageRevision/index.js\";\nimport type { EditorPage } from \"@webiny/website-builder-sdk\";\nimport { useRouter } from \"@webiny/app-admin\";\nimport { Routes } from \"~/routes.js\";\n\nconst { Item } = DropdownMenu;\n\nconst statusIcon: Record<string, React.JSX.Element> = {\n draft: <Draft />,\n published: <Published />,\n unpublished: <Unpublished />\n};\n\nexport const RevisionsMenu = () => {\n const { getLink } = useRouter();\n const [revisions, setRevisions] = useState<PageRevision[]>([]);\n const { loading, getPageRevisions } = useGetPageRevisions();\n const id = useSelectFromDocument(document => document.id);\n const status = useSelectFromDocument<string, EditorPage>(document => document.status);\n\n useEffect(() => {\n const [entryId] = id.split(\"#\");\n getPageRevisions({ entryId }).then(revisions => {\n setRevisions(\n revisions\n .sort((a, b) => {\n return new Date(a.savedOn).getTime() - new Date(b.savedOn).getTime();\n })\n .reverse()\n );\n });\n }, [id, status]);\n\n const currentRevision = revisions.find(r => r.id === id);\n\n const goToRevision = useCallback((id: string) => {\n // TODO: make this work without a full app reload\n window.location.pathname = getLink(Routes.Pages.Editor, { id });\n }, []);\n\n return (\n <DropdownMenu\n trigger={\n <Button\n disabled={loading}\n variant=\"ghost\"\n text={currentRevision ? currentRevision.getLabel() : \"Loading...\"}\n icon={<ArrowDown />}\n iconPosition={\"end\"}\n />\n }\n >\n {revisions.map(revision => (\n <Item\n key={revision.id}\n className={\"cursor-pointer\"}\n onClick={() => goToRevision(revision.id)}\n disabled={revision.locked}\n icon={\n <Item.Icon\n label={revision.getLabel()}\n element={statusIcon[revision.status]}\n />\n }\n text={revision.getLabel()}\n />\n ))}\n </DropdownMenu>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import type { PageSettingsOverlayProps } from "../../../../../modules/pages/PageEditor/TopBar/SettingsButton.js";
2
+ export declare const PageSettingsDialog: ({ open, data, onClose, onSave }: PageSettingsOverlayProps) => null;
@@ -0,0 +1,37 @@
1
+ import React, { useEffect } from "react";
2
+ import { useDialogs } from "@webiny/app-admin";
3
+ import { SettingsDialogBody } from "./SettingsDialogBody.js";
4
+ import { usePageEditorConfig } from "../../usePageEditorConfig.js";
5
+ export const PageSettingsDialog = ({
6
+ open,
7
+ data,
8
+ onClose,
9
+ onSave
10
+ }) => {
11
+ const dialogs = useDialogs();
12
+ const {
13
+ pageSettings
14
+ } = usePageEditorConfig();
15
+ const showDialog = () => {
16
+ dialogs.showDialog({
17
+ title: "Page Settings",
18
+ description: "Configure your page settings, SEO and Social metadata.",
19
+ dismissible: false,
20
+ acceptLabel: "Save Settings",
21
+ formData: data,
22
+ content: /*#__PURE__*/React.createElement(SettingsDialogBody, {
23
+ pageSettings: pageSettings
24
+ }),
25
+ onAccept: onSave,
26
+ onClose
27
+ });
28
+ };
29
+ useEffect(() => {
30
+ if (open) {
31
+ showDialog();
32
+ }
33
+ }, [open]);
34
+ return null;
35
+ };
36
+
37
+ //# sourceMappingURL=PageSettingsDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useEffect","useDialogs","SettingsDialogBody","usePageEditorConfig","PageSettingsDialog","open","data","onClose","onSave","dialogs","pageSettings","showDialog","title","description","dismissible","acceptLabel","formData","content","createElement","onAccept"],"sources":["PageSettingsDialog.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\nimport { useDialogs } from \"@webiny/app-admin\";\nimport { SettingsDialogBody } from \"./SettingsDialogBody.js\";\nimport type { PageSettingsOverlayProps } from \"~/modules/pages/PageEditor/TopBar/SettingsButton.js\";\nimport { usePageEditorConfig } from \"~/modules/pages/PageEditor/usePageEditorConfig.js\";\n\nexport const PageSettingsDialog = ({ open, data, onClose, onSave }: PageSettingsOverlayProps) => {\n const dialogs = useDialogs();\n const { pageSettings } = usePageEditorConfig();\n\n const showDialog = () => {\n dialogs.showDialog({\n title: \"Page Settings\",\n description: \"Configure your page settings, SEO and Social metadata.\",\n dismissible: false,\n acceptLabel: \"Save Settings\",\n formData: data,\n content: <SettingsDialogBody pageSettings={pageSettings} />,\n onAccept: onSave,\n onClose\n });\n };\n\n useEffect(() => {\n if (open) {\n showDialog();\n }\n }, [open]);\n\n return null;\n};\n"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,SAASC,UAAU,QAAQ,mBAAmB;AAC9C,SAASC,kBAAkB;AAE3B,SAASC,mBAAmB;AAE5B,OAAO,MAAMC,kBAAkB,GAAGA,CAAC;EAAEC,IAAI;EAAEC,IAAI;EAAEC,OAAO;EAAEC;AAAiC,CAAC,KAAK;EAC7F,MAAMC,OAAO,GAAGR,UAAU,CAAC,CAAC;EAC5B,MAAM;IAAES;EAAa,CAAC,GAAGP,mBAAmB,CAAC,CAAC;EAE9C,MAAMQ,UAAU,GAAGA,CAAA,KAAM;IACrBF,OAAO,CAACE,UAAU,CAAC;MACfC,KAAK,EAAE,eAAe;MACtBC,WAAW,EAAE,wDAAwD;MACrEC,WAAW,EAAE,KAAK;MAClBC,WAAW,EAAE,eAAe;MAC5BC,QAAQ,EAAEV,IAAI;MACdW,OAAO,eAAElB,KAAA,CAAAmB,aAAA,CAAChB,kBAAkB;QAACQ,YAAY,EAAEA;MAAa,CAAE,CAAC;MAC3DS,QAAQ,EAAEX,MAAM;MAChBD;IACJ,CAAC,CAAC;EACN,CAAC;EAEDP,SAAS,CAAC,MAAM;IACZ,IAAIK,IAAI,EAAE;MACNM,UAAU,CAAC,CAAC;IAChB;EACJ,CAAC,EAAE,CAACN,IAAI,CAAC,CAAC;EAEV,OAAO,IAAI;AACf,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import React from "react";
2
+ import type { PageSettingsOverlayProps } from "../../../../../modules/pages/PageEditor/TopBar/SettingsButton.js";
3
+ export declare const PageSettingsDrawer: ({ open, data, onSave, onClose }: PageSettingsOverlayProps) => React.JSX.Element;
@@ -0,0 +1,73 @@
1
+ import React, { Fragment, useRef, useState } from "react";
2
+ import { Form } from "@webiny/form";
3
+ import { Drawer, Heading, Text, List, Grid } from "@webiny/admin-ui";
4
+ import { usePageEditorConfig } from "../../usePageEditorConfig.js";
5
+ export const PageSettingsDrawer = ({
6
+ open,
7
+ data,
8
+ onSave,
9
+ onClose
10
+ }) => {
11
+ const formRef = useRef();
12
+ const {
13
+ pageSettings
14
+ } = usePageEditorConfig();
15
+ const groups = pageSettings.groups;
16
+ const [activeGroup, setActiveGroup] = useState(groups[0].name);
17
+ const group = groups.find(g => g.name === activeGroup);
18
+ let activeContent = null;
19
+ if (group) {
20
+ activeContent = group.elements.map((el, index) => /*#__PURE__*/React.createElement(Fragment, {
21
+ key: index
22
+ }, el.element));
23
+ }
24
+ return /*#__PURE__*/React.createElement(Drawer, {
25
+ open: open,
26
+ onClose: onClose,
27
+ modal: true,
28
+ width: 900,
29
+ bodyPadding: false,
30
+ title: "Page Settings",
31
+ actions: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Drawer.CancelButton, {
32
+ text: "Cancel"
33
+ }), /*#__PURE__*/React.createElement(Drawer.ConfirmButton, {
34
+ onClick: () => formRef.current?.submit(),
35
+ text: "Save Settings"
36
+ })),
37
+ headerSeparator: true,
38
+ footerSeparator: true,
39
+ className: "flex flex-col"
40
+ }, /*#__PURE__*/React.createElement("div", {
41
+ className: "flex flex-row flex-1 min-h-full shrink-0"
42
+ }, /*#__PURE__*/React.createElement("div", {
43
+ className: "flex flex-col",
44
+ style: {
45
+ width: 300
46
+ }
47
+ }, /*#__PURE__*/React.createElement(List, null, groups.map(group => /*#__PURE__*/React.createElement(List.Item, {
48
+ className: "fill-neutral-strong",
49
+ icon: group.icon,
50
+ key: group.name,
51
+ title: group.title,
52
+ description: group.description,
53
+ activated: activeGroup === group.name,
54
+ onClick: () => setActiveGroup(group.name)
55
+ })))), /*#__PURE__*/React.createElement("div", {
56
+ className: "flex flex-col flex-1 p-md border-l border-neutral-dimmed"
57
+ }, /*#__PURE__*/React.createElement("div", {
58
+ className: "p-md"
59
+ }, /*#__PURE__*/React.createElement(Heading, {
60
+ level: 4,
61
+ className: "text-neutral-primary"
62
+ }, group?.title), /*#__PURE__*/React.createElement(Text, {
63
+ size: "sm"
64
+ }, group?.description)), /*#__PURE__*/React.createElement("div", {
65
+ className: "p-md"
66
+ }, /*#__PURE__*/React.createElement(Form, {
67
+ data: data,
68
+ ref: formRef,
69
+ onSubmit: onSave
70
+ }, () => /*#__PURE__*/React.createElement(Grid, null, activeContent))))));
71
+ };
72
+
73
+ //# sourceMappingURL=PageSettingsDrawer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Fragment","useRef","useState","Form","Drawer","Heading","Text","List","Grid","usePageEditorConfig","PageSettingsDrawer","open","data","onSave","onClose","formRef","pageSettings","groups","activeGroup","setActiveGroup","name","group","find","g","activeContent","elements","map","el","index","createElement","key","element","modal","width","bodyPadding","title","actions","CancelButton","text","ConfirmButton","onClick","current","submit","headerSeparator","footerSeparator","className","style","Item","icon","description","activated","level","size","ref","onSubmit"],"sources":["PageSettingsDrawer.tsx"],"sourcesContent":["import React, { Fragment, useRef, useState } from \"react\";\nimport { Form, type FormAPI } from \"@webiny/form\";\nimport { Drawer, Heading, Text, List, Grid } from \"@webiny/admin-ui\";\nimport type { PageSettingsOverlayProps } from \"~/modules/pages/PageEditor/TopBar/SettingsButton.js\";\nimport { usePageEditorConfig } from \"~/modules/pages/PageEditor/usePageEditorConfig.js\";\n\nexport const PageSettingsDrawer = ({ open, data, onSave, onClose }: PageSettingsOverlayProps) => {\n const formRef = useRef<FormAPI | undefined>();\n const { pageSettings } = usePageEditorConfig();\n\n const groups = pageSettings.groups;\n\n const [activeGroup, setActiveGroup] = useState(groups[0].name);\n\n const group = groups.find(g => g.name === activeGroup);\n\n let activeContent = null;\n if (group) {\n activeContent = group.elements.map((el, index) => (\n <Fragment key={index}>{el.element}</Fragment>\n ));\n }\n\n return (\n <Drawer\n open={open}\n onClose={onClose}\n modal={true}\n width={900}\n bodyPadding={false}\n title={\"Page Settings\"}\n actions={\n <>\n <Drawer.CancelButton text={\"Cancel\"} />\n <Drawer.ConfirmButton\n onClick={() => formRef.current?.submit()}\n text={\"Save Settings\"}\n />\n </>\n }\n headerSeparator={true}\n footerSeparator={true}\n className={\"flex flex-col\"}\n >\n <div className={\"flex flex-row flex-1 min-h-full shrink-0\"}>\n <div className={\"flex flex-col\"} style={{ width: 300 }}>\n <List>\n {groups.map(group => (\n <List.Item\n className={\"fill-neutral-strong\"}\n icon={group.icon}\n key={group.name}\n title={group.title}\n description={group.description}\n activated={activeGroup === group.name}\n onClick={() => setActiveGroup(group.name)}\n />\n ))}\n </List>\n </div>\n <div className={\"flex flex-col flex-1 p-md border-l border-neutral-dimmed\"}>\n <div className={\"p-md\"}>\n <Heading level={4} className={\"text-neutral-primary\"}>\n {group?.title}\n </Heading>\n <Text size={\"sm\"}>{group?.description}</Text>\n </div>\n <div className={\"p-md\"}>\n <Form data={data} ref={formRef} onSubmit={onSave}>\n {() => <Grid>{activeContent}</Grid>}\n </Form>\n </div>\n </div>\n </div>\n </Drawer>\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,6 @@
1
1
  import React from "react";
2
- export declare const SettingsDialogBody: () => React.JSX.Element;
2
+ import type { EditorPageSettings } from "../../../../../modules/pages/PageEditor/usePageEditorConfig.js";
3
+ export interface SettingsDialogBodyProps {
4
+ pageSettings: EditorPageSettings;
5
+ }
6
+ export declare const SettingsDialogBody: ({ pageSettings }: SettingsDialogBodyProps) => React.JSX.Element;
@@ -1,235 +1,21 @@
1
1
  import React from "react";
2
- import { FileManager } from "@webiny/app-admin";
3
- import { Tabs, Grid, Input, Textarea, FilePicker, Switch, CodeEditor, Text } from "@webiny/admin-ui";
4
- import { Bind } from "@webiny/form";
5
- import { ReactComponent as SettingsIcon } from "@webiny/icons/settings.svg";
6
- import { ReactComponent as SeoIcon } from "@webiny/icons/search.svg";
7
- import { validation } from "@webiny/validation";
8
- import { ReactComponent as SocialIcon } from "@webiny/icons/thumb_up.svg";
9
- import { ReactComponent as SchemaIcon } from "@webiny/icons/schema.svg";
10
- import { MetaTags } from "./MetaTags.js";
11
- import { SimpleTags } from "./SimpleTags.js";
12
- import { fileManagerItemToValue } from "../../../../../shared/fileManagerItemToValue.js";
13
- const PATHNAME_REGEX = new RegExp(`^\\/(?:[a-zA-Z0-9._~:@!$&'()*+,;=%/-])*(?:\\?[a-zA-Z0-9._~:@!$&'()*+,;=?/%#[\\]-]*)?(?:#[a-zA-Z0-9._~:@!$&'()*+,;=?/%#[\\]-]*)?$`);
14
- const validatePathname = pathname => {
15
- if (!pathname) {
16
- return;
17
- }
18
- if (PATHNAME_REGEX.test(pathname)) {
19
- return;
20
- }
21
- throw new Error(`Enter a valid pathname, e.g.: /path/to/page?query=value`);
22
- };
23
- export const SettingsDialogBody = () => {
2
+ import { Tabs, Grid } from "@webiny/admin-ui";
3
+ export const SettingsDialogBody = ({
4
+ pageSettings
5
+ }) => {
24
6
  return /*#__PURE__*/React.createElement(Tabs, {
25
- tabs: [/*#__PURE__*/React.createElement(Tabs.Tab, {
26
- key: "general",
27
- value: "general",
28
- trigger: "General",
29
- icon: /*#__PURE__*/React.createElement(SettingsIcon, null),
30
- content: /*#__PURE__*/React.createElement(GeneralSettingsForm, null)
31
- }), /*#__PURE__*/React.createElement(Tabs.Tab, {
32
- key: "seo",
33
- value: "seo",
34
- trigger: "SEO",
35
- icon: /*#__PURE__*/React.createElement(SeoIcon, null),
36
- content: /*#__PURE__*/React.createElement(SeoSettingsForm, null)
37
- }), /*#__PURE__*/React.createElement(Tabs.Tab, {
38
- key: "social",
39
- value: "social",
40
- trigger: "Social",
41
- icon: /*#__PURE__*/React.createElement(SocialIcon, null),
42
- content: /*#__PURE__*/React.createElement(SocialSettingsForm, null)
43
- }), /*#__PURE__*/React.createElement(Tabs.Tab, {
44
- key: "schema",
45
- value: "schema",
46
- trigger: "Schema",
47
- icon: /*#__PURE__*/React.createElement(SchemaIcon, null),
48
- content: /*#__PURE__*/React.createElement(SchemaForm, null)
49
- })]
7
+ tabs: pageSettings.groups.map(group => /*#__PURE__*/React.createElement(Tabs.Tab, {
8
+ key: group.name,
9
+ value: group.name,
10
+ trigger: group.title,
11
+ icon: group.icon,
12
+ content: /*#__PURE__*/React.createElement(Grid, {
13
+ className: "mt-md"
14
+ }, (group.elements || []).map(el => /*#__PURE__*/React.createElement(React.Fragment, {
15
+ key: el.name
16
+ }, el.element)))
17
+ }))
50
18
  });
51
19
  };
52
- const GeneralSettingsForm = () => {
53
- return /*#__PURE__*/React.createElement(Grid, {
54
- className: "mt-md"
55
- }, /*#__PURE__*/React.createElement(Grid.Column, {
56
- span: 12
57
- }, /*#__PURE__*/React.createElement(Bind, {
58
- name: "properties.title",
59
- validators: [validation.create("required")]
60
- }, /*#__PURE__*/React.createElement(Input, {
61
- label: "Page title"
62
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
63
- span: 12
64
- }, /*#__PURE__*/React.createElement(Bind, {
65
- name: "properties.path",
66
- validators: [validation.create("required")]
67
- }, /*#__PURE__*/React.createElement(Input, {
68
- label: "Path"
69
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
70
- span: 12
71
- }, /*#__PURE__*/React.createElement(Bind, {
72
- name: "properties.snippet"
73
- }, /*#__PURE__*/React.createElement(Textarea, {
74
- label: "Snippet"
75
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
76
- span: 12
77
- }, /*#__PURE__*/React.createElement(Bind, {
78
- name: "properties.image"
79
- }, ({
80
- value,
81
- onChange
82
- }) => /*#__PURE__*/React.createElement(FileManager, {
83
- images: true,
84
- render: ({
85
- showFileManager
86
- }) => /*#__PURE__*/React.createElement(FilePicker, {
87
- label: "Image",
88
- description: "Select an image to represent this page",
89
- type: "compact",
90
- value: value,
91
- onSelectItem: () => showFileManager(file => {
92
- onChange(fileManagerItemToValue(file));
93
- }),
94
- onRemoveItem: () => onChange(undefined)
95
- })
96
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
97
- span: 12
98
- }, /*#__PURE__*/React.createElement(SimpleTags, {
99
- bindName: "properties.tags",
100
- label: "Tags",
101
- description: "Add page tags. These can be used for page rendering, filtering, etc."
102
- })));
103
- };
104
- const SeoSettingsForm = () => {
105
- return /*#__PURE__*/React.createElement(Grid, {
106
- className: "mt-md"
107
- }, /*#__PURE__*/React.createElement(Grid.Column, {
108
- span: 12
109
- }, /*#__PURE__*/React.createElement(Bind, {
110
- name: "properties.seo.title"
111
- }, /*#__PURE__*/React.createElement(Input, {
112
- label: "Title",
113
- description: "SEO title"
114
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
115
- span: 12
116
- }, /*#__PURE__*/React.createElement(Bind, {
117
- name: "properties.seo.description"
118
- }, /*#__PURE__*/React.createElement(Textarea, {
119
- label: "Description",
120
- description: "SEO description"
121
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
122
- span: 12
123
- }, /*#__PURE__*/React.createElement(MetaTags, {
124
- label: "Meta Tags",
125
- description: "Add SEO tags",
126
- bindName: "properties.seo.metaTags",
127
- keyName: "name",
128
- keyLabel: "Name",
129
- valueName: "content",
130
- valueLabel: "Content"
131
- })), /*#__PURE__*/React.createElement(Grid.Column, {
132
- span: 12
133
- }, /*#__PURE__*/React.createElement(Bind, {
134
- name: "properties.seo.canonicalUrl",
135
- validators: [validatePathname]
136
- }, /*#__PURE__*/React.createElement(Input, {
137
- label: "Canonical URL",
138
- description: "The canonical URL for this page"
139
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
140
- span: 12
141
- }, /*#__PURE__*/React.createElement(Bind, {
142
- name: "properties.seo.noIndex",
143
- defaultValue: false
144
- }, /*#__PURE__*/React.createElement(Switch, {
145
- label: "No Index",
146
- description: "Whether this page should be indexed by search engines"
147
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
148
- span: 12
149
- }, /*#__PURE__*/React.createElement(Bind, {
150
- name: "properties.seo.noFollow",
151
- defaultValue: false
152
- }, /*#__PURE__*/React.createElement(Switch, {
153
- label: "No Follow",
154
- description: "Whether search engines should follow links on this page"
155
- }))));
156
- };
157
- const SocialSettingsForm = () => {
158
- return /*#__PURE__*/React.createElement(Grid, {
159
- className: "mt-md"
160
- }, /*#__PURE__*/React.createElement(Grid.Column, {
161
- span: 12
162
- }, /*#__PURE__*/React.createElement(Bind, {
163
- name: "properties.social.title"
164
- }, /*#__PURE__*/React.createElement(Input, {
165
- label: "Title",
166
- description: "Title for social platforms (og:title)"
167
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
168
- span: 12
169
- }, /*#__PURE__*/React.createElement(Bind, {
170
- name: "properties.social.description"
171
- }, /*#__PURE__*/React.createElement(Textarea, {
172
- label: "Description",
173
- description: "Description for social platforms (og:description)"
174
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
175
- span: 12
176
- }, /*#__PURE__*/React.createElement(Bind, {
177
- name: "properties.social.image"
178
- }, ({
179
- value,
180
- onChange
181
- }) => /*#__PURE__*/React.createElement(FileManager, {
182
- images: true,
183
- render: ({
184
- showFileManager
185
- }) => /*#__PURE__*/React.createElement(FilePicker, {
186
- label: "Image",
187
- description: "Select an image for social platforms (og:image)",
188
- type: "compact",
189
- value: value,
190
- onSelectItem: () => showFileManager(file => {
191
- onChange(fileManagerItemToValue(file));
192
- }),
193
- onRemoveItem: () => onChange(undefined)
194
- })
195
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
196
- span: 12
197
- }, /*#__PURE__*/React.createElement(MetaTags, {
198
- label: "Meta Tags",
199
- description: "Add more Open Graph tags",
200
- bindName: "properties.social.metaTags",
201
- keyName: "property",
202
- keyLabel: "Property",
203
- valueName: "content",
204
- valueLabel: "Content"
205
- })));
206
- };
207
- const SchemaForm = () => {
208
- return /*#__PURE__*/React.createElement(Grid, {
209
- className: "mt-md"
210
- }, /*#__PURE__*/React.createElement(Grid.Column, {
211
- span: 12
212
- }, /*#__PURE__*/React.createElement(Text, {
213
- size: "sm",
214
- className: ""
215
- }, "Enter your\xA0", /*#__PURE__*/React.createElement("a", {
216
- href: "https://schema.org",
217
- target: "_blank",
218
- rel: "noreferrer noopener"
219
- }, "schema.org"), "\xA0 markup for this page:")), /*#__PURE__*/React.createElement(Grid.Column, {
220
- span: 12
221
- }, /*#__PURE__*/React.createElement(Bind, {
222
- name: "properties.seo.structuredSchema",
223
- defaultValue: ""
224
- }, ({
225
- value,
226
- onChange
227
- }) => /*#__PURE__*/React.createElement(CodeEditor, {
228
- value: value,
229
- height: 400,
230
- onChange: onChange,
231
- language: "html"
232
- }))));
233
- };
234
20
 
235
21
  //# sourceMappingURL=SettingsDialogBody.js.map