@alpaca-headless/alpaca-headless-nextjs 1.0.129 → 1.0.253

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 (401) hide show
  1. package/dist/editor.css +435 -49
  2. package/dist/esm/Editor.js +13 -0
  3. package/dist/esm/client-components/ClientLink.js +35 -0
  4. package/dist/{cjs/components → esm/client-components}/LinkEditor.js +22 -19
  5. package/dist/esm/client-components/MultiComponentEditor.js +22 -0
  6. package/dist/esm/client-components/index.js +4 -0
  7. package/dist/esm/components/Error.js +10 -0
  8. package/dist/{cjs → esm}/components/Image.js +5 -8
  9. package/dist/esm/components/Link.js +30 -0
  10. package/dist/esm/components/LinkPreview.js +30 -0
  11. package/dist/esm/components/LockedFieldIndicator.js +21 -0
  12. package/dist/esm/components/Picture.js +132 -0
  13. package/dist/esm/components/PictureEditor.js +77 -0
  14. package/dist/esm/components/PictureEditorWrapper.js +7 -0
  15. package/dist/esm/components/Placeholder.js +141 -0
  16. package/dist/esm/components/RichText.js +29 -0
  17. package/dist/esm/components/RichTextEditor.js +92 -0
  18. package/dist/esm/components/RichTextEditorWrapper.js +7 -0
  19. package/dist/esm/components/Slot.js +6 -0
  20. package/dist/esm/components/Text.js +28 -0
  21. package/dist/esm/components/TextEditor.js +78 -0
  22. package/dist/esm/components/TextEditorWrapper.js +19 -0
  23. package/dist/esm/components/Translate.js +9 -0
  24. package/dist/esm/components/TranslateEditor.js +24 -0
  25. package/dist/esm/components/TranslateEditorWrapper.js +7 -0
  26. package/dist/esm/components/index.js +7 -0
  27. package/dist/esm/components/picture-shared.js +26 -0
  28. package/dist/esm/editor/ComponentInfo.js +12 -0
  29. package/dist/esm/editor/ConfirmationDialog.js +29 -0
  30. package/dist/{cjs → esm}/editor/ContentTree.js +61 -46
  31. package/dist/esm/editor/ContextMenu.js +90 -0
  32. package/dist/esm/editor/DialogButtons.js +4 -0
  33. package/dist/esm/editor/DictionaryEditor.js +37 -0
  34. package/dist/esm/editor/EditFrame.js +115 -0
  35. package/dist/esm/editor/EditFrameWrapper.js +7 -0
  36. package/dist/esm/editor/EditorClient.js +889 -0
  37. package/dist/esm/editor/EditorClientHost.js +15 -0
  38. package/dist/esm/editor/EditorWarning.js +10 -0
  39. package/dist/esm/editor/EditorWarnings.js +13 -0
  40. package/dist/esm/editor/FieldEditorPopup.js +23 -0
  41. package/dist/esm/editor/FieldList.js +48 -0
  42. package/dist/esm/editor/FieldListField.js +86 -0
  43. package/dist/esm/editor/FieldListFieldWithFallbacks.js +79 -0
  44. package/dist/{cjs → esm}/editor/FloatingToolbar.js +20 -23
  45. package/dist/esm/editor/ItemInfo.js +14 -0
  46. package/dist/esm/editor/LinkEditorDialog.js +61 -0
  47. package/dist/esm/editor/MainLayout.js +18 -0
  48. package/dist/esm/editor/MediaSelector.js +85 -0
  49. package/dist/esm/editor/Outline.js +82 -0
  50. package/dist/esm/editor/PageViewer.js +41 -0
  51. package/dist/esm/editor/PictureEditorDialog.js +201 -0
  52. package/dist/esm/editor/PlaceholderDropZone.js +130 -0
  53. package/dist/esm/editor/PlaceholderDropZoneHost.js +7 -0
  54. package/dist/esm/editor/PreviewClient.js +6 -0
  55. package/dist/esm/editor/PreviewClientHost.js +7 -0
  56. package/dist/esm/editor/PreviewPanel.js +7 -0
  57. package/dist/esm/editor/PublishDialog.js +15 -0
  58. package/dist/esm/editor/Terminal.js +55 -0
  59. package/dist/esm/editor/ai/AiPopup.js +28 -0
  60. package/dist/esm/editor/ai/AiResponseMessage.js +20 -0
  61. package/dist/esm/editor/ai/AiTerminal.js +216 -0
  62. package/dist/esm/editor/ai/AiToolCall.js +15 -0
  63. package/dist/esm/editor/ai/EditorAiTerminal.js +5 -0
  64. package/dist/esm/editor/commands/commands.js +1 -0
  65. package/dist/esm/editor/commands/componentCommands.js +287 -0
  66. package/dist/esm/editor/commands/createVersionCommand.js +26 -0
  67. package/dist/esm/editor/commands/undo.js +22 -0
  68. package/dist/esm/editor/component-designer/ComponentDesigner.js +7 -0
  69. package/dist/esm/editor/component-designer/ComponentDesignerAiTerminal.js +5 -0
  70. package/dist/esm/editor/component-designer/ComponentDesignerMenu.js +39 -0
  71. package/dist/esm/editor/component-designer/ComponentPreview.js +20 -0
  72. package/dist/esm/editor/component-designer/ComponentRenderingEditor.js +38 -0
  73. package/dist/esm/editor/component-designer/ComponentSelectionTree.js +56 -0
  74. package/dist/esm/editor/component-designer/componentDesignerContext.js +22 -0
  75. package/dist/esm/editor/componentTreeHelper.js +20 -0
  76. package/dist/esm/editor/config/config.js +327 -0
  77. package/dist/esm/editor/config/types.js +1 -0
  78. package/dist/esm/editor/editContext.js +11 -0
  79. package/dist/esm/editor/editor-warnings/ItemLocked.js +40 -0
  80. package/dist/esm/editor/editor-warnings/ValidationErrors.js +22 -0
  81. package/dist/esm/editor/fieldTypes/CheckboxEditor.js +21 -0
  82. package/dist/esm/editor/fieldTypes/DropLinkEditor.js +50 -0
  83. package/dist/esm/editor/fieldTypes/InternalLinkFieldEditor.js +41 -0
  84. package/dist/{cjs → esm}/editor/fieldTypes/LinkFieldEditor.js +14 -16
  85. package/dist/esm/editor/fieldTypes/MultiLineText.js +25 -0
  86. package/dist/esm/editor/fieldTypes/PictureFieldEditor.js +33 -0
  87. package/dist/esm/editor/fieldTypes/RawEditor.js +26 -0
  88. package/dist/esm/editor/fieldTypes/RichTextEditor.js +7 -0
  89. package/dist/esm/editor/fieldTypes/RichTextEditorComponent.js +46 -0
  90. package/dist/esm/editor/fieldTypes/SingleLineText.js +23 -0
  91. package/dist/esm/editor/fieldTypes/TreeListEditor.js +57 -0
  92. package/dist/esm/editor/itemCommands.js +27 -0
  93. package/dist/esm/editor/menubar/BrowseHistory.js +39 -0
  94. package/dist/esm/editor/menubar/ItemLanguageVersion.js +20 -0
  95. package/dist/esm/editor/menubar/LanguageSelector.js +18 -0
  96. package/dist/esm/editor/menubar/Menu.js +105 -0
  97. package/dist/esm/editor/menubar/PageViewerControls.js +66 -0
  98. package/dist/esm/editor/menubar/VersionSelector.js +18 -0
  99. package/dist/esm/editor/previewContext.js +5 -0
  100. package/dist/esm/editor/services/aiService.js +20 -0
  101. package/dist/esm/editor/services/componentDesignerService.js +23 -0
  102. package/dist/esm/editor/services/contentService.js +56 -0
  103. package/dist/esm/editor/services/editService.js +394 -0
  104. package/dist/esm/editor/services/serviceHelper.js +45 -0
  105. package/dist/esm/editor/sidebar/ComponentPalette.js +42 -0
  106. package/dist/esm/editor/sidebar/ComponentTree.js +237 -0
  107. package/dist/esm/editor/sidebar/Debug.js +46 -0
  108. package/dist/esm/editor/sidebar/EditHistory.js +66 -0
  109. package/dist/esm/editor/sidebar/EditorForm.js +24 -0
  110. package/dist/esm/editor/sidebar/GraphQL.js +85 -0
  111. package/dist/esm/editor/sidebar/Insert.js +7 -0
  112. package/dist/esm/editor/sidebar/MainContentTree.js +38 -0
  113. package/dist/esm/editor/sidebar/Sessions.js +11 -0
  114. package/dist/esm/editor/sidebar/Sidebar.js +13 -0
  115. package/dist/esm/editor/sidebar/SidebarView.js +73 -0
  116. package/dist/esm/editor/sidebar/Workbox.js +77 -0
  117. package/dist/esm/editor/ui/CopyToClipboardButton.js +14 -0
  118. package/dist/esm/editor/ui/Icons.js +19 -0
  119. package/dist/esm/editor/ui/ItemNameDialog.js +33 -0
  120. package/dist/esm/editor/ui/Section.js +8 -0
  121. package/dist/esm/editor/utils/insertOptions.js +39 -0
  122. package/dist/esm/editor/utils.js +71 -0
  123. package/dist/esm/editor/views/ItemEditor.js +18 -0
  124. package/dist/esm/fieldTypes.js +1 -0
  125. package/dist/esm/graphQL.js +50 -0
  126. package/dist/esm/graphQLTypes.js +1 -0
  127. package/dist/esm/index.js +9 -0
  128. package/dist/{cjs → esm}/loadRouteData.js +19 -37
  129. package/dist/{cjs → esm}/mediaProtection.js +4 -11
  130. package/dist/esm/middleware/handleRequest.js +45 -0
  131. package/dist/esm/middleware/index.js +1 -0
  132. package/dist/esm/public.js +10 -0
  133. package/dist/esm/renderContext.js +49 -0
  134. package/dist/esm/renderings.js +87 -0
  135. package/dist/esm/servertypes.js +1 -0
  136. package/dist/esm/translate.js +7 -0
  137. package/dist/primereact/resources/themes/arya-blue/theme.css +854 -790
  138. package/dist/primereact/resources/themes/arya-green/theme.css +854 -790
  139. package/dist/primereact/resources/themes/arya-orange/theme.css +854 -790
  140. package/dist/primereact/resources/themes/arya-purple/theme.css +854 -790
  141. package/dist/primereact/resources/themes/bootstrap4-dark-blue/theme.css +678 -615
  142. package/dist/primereact/resources/themes/bootstrap4-dark-purple/theme.css +678 -615
  143. package/dist/primereact/resources/themes/bootstrap4-light-blue/theme.css +679 -616
  144. package/dist/primereact/resources/themes/bootstrap4-light-purple/theme.css +679 -616
  145. package/dist/primereact/resources/themes/fluent-light/theme.css +686 -638
  146. package/dist/primereact/resources/themes/lara-dark-amber/theme.css +679 -630
  147. package/dist/primereact/resources/themes/lara-dark-blue/theme.css +679 -630
  148. package/dist/primereact/resources/themes/lara-dark-cyan/theme.css +679 -630
  149. package/dist/primereact/resources/themes/lara-dark-green/theme.css +679 -630
  150. package/dist/primereact/resources/themes/lara-dark-indigo/theme.css +679 -630
  151. package/dist/primereact/resources/themes/lara-dark-pink/theme.css +679 -630
  152. package/dist/primereact/resources/themes/lara-dark-purple/theme.css +679 -630
  153. package/dist/primereact/resources/themes/lara-dark-teal/theme.css +679 -630
  154. package/dist/primereact/resources/themes/lara-light-amber/theme.css +776 -725
  155. package/dist/primereact/resources/themes/lara-light-blue/theme.css +1011 -960
  156. package/dist/primereact/resources/themes/lara-light-cyan/theme.css +776 -725
  157. package/dist/primereact/resources/themes/lara-light-green/theme.css +820 -769
  158. package/dist/primereact/resources/themes/lara-light-indigo/theme.css +1016 -965
  159. package/dist/primereact/resources/themes/lara-light-pink/theme.css +776 -725
  160. package/dist/primereact/resources/themes/lara-light-purple/theme.css +1016 -965
  161. package/dist/primereact/resources/themes/lara-light-teal/theme.css +776 -725
  162. package/dist/primereact/resources/themes/luna-amber/theme.css +950 -887
  163. package/dist/primereact/resources/themes/luna-blue/theme.css +950 -887
  164. package/dist/primereact/resources/themes/luna-green/theme.css +950 -887
  165. package/dist/primereact/resources/themes/luna-pink/theme.css +950 -887
  166. package/dist/primereact/resources/themes/md-dark-deeppurple/theme.css +918 -950
  167. package/dist/primereact/resources/themes/md-dark-indigo/theme.css +918 -950
  168. package/dist/primereact/resources/themes/md-light-deeppurple/theme.css +878 -910
  169. package/dist/primereact/resources/themes/md-light-indigo/theme.css +878 -910
  170. package/dist/primereact/resources/themes/mdc-dark-deeppurple/theme.css +918 -950
  171. package/dist/primereact/resources/themes/mdc-dark-indigo/theme.css +918 -950
  172. package/dist/primereact/resources/themes/mdc-light-deeppurple/theme.css +878 -910
  173. package/dist/primereact/resources/themes/mdc-light-indigo/theme.css +878 -910
  174. package/dist/primereact/resources/themes/mira/theme.css +1562 -1532
  175. package/dist/primereact/resources/themes/nano/theme.css +707 -641
  176. package/dist/primereact/resources/themes/nova/theme.css +705 -643
  177. package/dist/primereact/resources/themes/nova-accent/theme.css +701 -636
  178. package/dist/primereact/resources/themes/nova-alt/theme.css +705 -643
  179. package/dist/primereact/resources/themes/rhea/theme.css +876 -811
  180. package/dist/primereact/resources/themes/saga-blue/theme.css +896 -832
  181. package/dist/primereact/resources/themes/saga-green/theme.css +896 -832
  182. package/dist/primereact/resources/themes/saga-orange/theme.css +896 -832
  183. package/dist/primereact/resources/themes/saga-purple/theme.css +896 -832
  184. package/dist/primereact/resources/themes/soho-dark/theme.css +701 -643
  185. package/dist/primereact/resources/themes/soho-light/theme.css +690 -634
  186. package/dist/primereact/resources/themes/tailwind-light/theme.css +1370 -1306
  187. package/dist/primereact/resources/themes/vela-blue/theme.css +862 -798
  188. package/dist/primereact/resources/themes/vela-green/theme.css +862 -798
  189. package/dist/primereact/resources/themes/vela-orange/theme.css +862 -798
  190. package/dist/primereact/resources/themes/vela-purple/theme.css +862 -798
  191. package/dist/primereact/resources/themes/viva-dark/theme.css +655 -612
  192. package/dist/primereact/resources/themes/viva-light/theme.css +737 -694
  193. package/package.json +26 -22
  194. package/types/Editor.d.ts +9 -0
  195. package/types/{components → client-components}/LinkEditor.d.ts +1 -1
  196. package/types/client-components/MultiComponentEditor.d.ts +4 -2
  197. package/types/client-components/index.d.ts +3 -2
  198. package/types/components/Image.d.ts +3 -0
  199. package/types/components/Link.d.ts +4 -2
  200. package/types/components/LinkPreview.d.ts +6 -0
  201. package/types/components/LockedFieldIndicator.d.ts +6 -0
  202. package/types/components/Picture.d.ts +6 -7
  203. package/types/components/PictureEditorWrapper.d.ts +3 -0
  204. package/types/components/Placeholder.d.ts +12 -14
  205. package/types/components/RichText.d.ts +5 -2
  206. package/types/components/RichTextEditor.d.ts +3 -290
  207. package/types/components/RichTextEditorWrapper.d.ts +2 -0
  208. package/types/components/Slot.d.ts +5 -2
  209. package/types/components/Text.d.ts +5 -2
  210. package/types/components/TextEditor.d.ts +3 -290
  211. package/types/components/TextEditorWrapper.d.ts +4 -0
  212. package/types/components/Translate.d.ts +4 -1
  213. package/types/components/TranslateEditorWrapper.d.ts +3 -0
  214. package/types/components/picture-shared.d.ts +16 -0
  215. package/types/editor/ComponentInfo.d.ts +1 -1
  216. package/types/editor/ContentTree.d.ts +4 -3
  217. package/types/editor/ContextMenu.d.ts +14 -0
  218. package/types/editor/DictionaryEditor.d.ts +1 -4
  219. package/types/editor/EditFrameWrapper.d.ts +6 -0
  220. package/types/editor/EditorClient.d.ts +18 -7
  221. package/types/editor/EditorClientHost.d.ts +5 -6
  222. package/types/editor/EditorWarning.d.ts +6 -0
  223. package/types/editor/EditorWarnings.d.ts +9 -0
  224. package/types/editor/FieldEditorPopup.d.ts +10 -0
  225. package/types/editor/FieldList.d.ts +6 -2
  226. package/types/editor/FieldListField.d.ts +8 -2
  227. package/types/editor/FieldListFieldWithFallbacks.d.ts +8 -0
  228. package/types/editor/ItemInfo.d.ts +1 -1
  229. package/types/editor/Outline.d.ts +11 -0
  230. package/types/editor/PageViewer.d.ts +1 -0
  231. package/types/editor/PictureEditorDialog.d.ts +4 -2
  232. package/types/editor/PlaceholderDropZone.d.ts +3 -2
  233. package/types/editor/PlaceholderDropZoneHost.d.ts +3 -2
  234. package/types/editor/PreviewClient.d.ts +5 -0
  235. package/types/editor/PreviewClientHost.d.ts +4 -0
  236. package/types/editor/PreviewPanel.d.ts +1 -0
  237. package/types/editor/PublishDialog.d.ts +7 -0
  238. package/types/editor/Terminal.d.ts +6 -2
  239. package/types/editor/{AiPopup.d.ts → ai/AiPopup.d.ts} +2 -3
  240. package/types/editor/ai/AiResponseMessage.d.ts +7 -0
  241. package/types/editor/ai/AiTerminal.d.ts +4 -0
  242. package/types/editor/ai/AiToolCall.d.ts +9 -0
  243. package/types/editor/ai/EditorAiTerminal.d.ts +4 -0
  244. package/types/editor/commands/commands.d.ts +21 -0
  245. package/types/editor/commands/componentCommands.d.ts +5 -0
  246. package/types/editor/commands/createVersionCommand.d.ts +2 -0
  247. package/types/editor/commands/undo.d.ts +15 -0
  248. package/types/editor/component-designer/ComponentDesigner.d.ts +1 -0
  249. package/types/editor/component-designer/ComponentDesignerAiTerminal.d.ts +1 -0
  250. package/types/editor/component-designer/ComponentDesignerMenu.d.ts +1 -0
  251. package/types/editor/component-designer/ComponentPreview.d.ts +1 -0
  252. package/types/editor/component-designer/ComponentRenderingEditor.d.ts +2 -0
  253. package/types/editor/component-designer/ComponentSelectionTree.d.ts +1 -0
  254. package/types/editor/component-designer/componentDesignerContext.d.ts +14 -0
  255. package/types/editor/componentTreeHelper.d.ts +2 -1
  256. package/types/editor/config/config.d.ts +2 -0
  257. package/types/editor/config/types.d.ts +66 -0
  258. package/types/editor/editContext.d.ts +72 -93
  259. package/types/editor/editor-warnings/ItemLocked.d.ts +2 -0
  260. package/types/editor/editor-warnings/ValidationErrors.d.ts +2 -0
  261. package/types/editor/fieldTypes/CheckboxEditor.d.ts +3 -2
  262. package/types/editor/fieldTypes/DropLinkEditor.d.ts +5 -0
  263. package/types/editor/fieldTypes/InternalLinkFieldEditor.d.ts +3 -2
  264. package/types/editor/fieldTypes/LinkFieldEditor.d.ts +3 -2
  265. package/types/editor/fieldTypes/MultiLineText.d.ts +3 -2
  266. package/types/editor/fieldTypes/PictureFieldEditor.d.ts +2 -1
  267. package/types/editor/fieldTypes/RawEditor.d.ts +5 -0
  268. package/types/editor/fieldTypes/RichTextEditor.d.ts +4 -3
  269. package/types/editor/fieldTypes/RichTextEditorComponent.d.ts +5 -0
  270. package/types/editor/fieldTypes/SingleLineText.d.ts +3 -2
  271. package/types/editor/fieldTypes/TreeListEditor.d.ts +2 -1
  272. package/types/editor/itemCommands.d.ts +3 -0
  273. package/types/editor/menubar/BrowseHistory.d.ts +4 -0
  274. package/types/editor/menubar/ItemLanguageVersion.d.ts +1 -0
  275. package/types/editor/menubar/LanguageSelector.d.ts +5 -0
  276. package/types/editor/menubar/Menu.d.ts +1 -0
  277. package/types/editor/menubar/PageViewerControls.d.ts +1 -0
  278. package/types/editor/menubar/VersionSelector.d.ts +5 -0
  279. package/types/editor/previewContext.d.ts +4 -0
  280. package/types/editor/services/aiService.d.ts +8 -0
  281. package/types/editor/services/componentDesignerService.d.ts +2 -0
  282. package/types/editor/{contentService.d.ts → services/contentService.d.ts} +2 -3
  283. package/types/editor/services/editService.d.ts +23 -0
  284. package/types/editor/services/serviceHelper.d.ts +7 -0
  285. package/types/editor/sidebar/ComponentPalette.d.ts +1 -0
  286. package/types/editor/sidebar/ComponentTree.d.ts +1 -0
  287. package/types/editor/sidebar/Debug.d.ts +1 -0
  288. package/types/editor/sidebar/EditHistory.d.ts +1 -0
  289. package/types/editor/sidebar/EditorForm.d.ts +1 -0
  290. package/types/editor/sidebar/GraphQL.d.ts +1 -0
  291. package/types/editor/sidebar/Insert.d.ts +1 -0
  292. package/types/editor/sidebar/MainContentTree.d.ts +3 -0
  293. package/types/editor/sidebar/Sessions.d.ts +1 -0
  294. package/types/editor/sidebar/Sidebar.d.ts +4 -0
  295. package/types/editor/sidebar/SidebarView.d.ts +8 -0
  296. package/types/editor/sidebar/Workbox.d.ts +1 -0
  297. package/types/editor/ui/CopyToClipboardButton.d.ts +3 -0
  298. package/types/editor/ui/Icons.d.ts +16 -0
  299. package/types/editor/{ItemNameDialog.d.ts → ui/ItemNameDialog.d.ts} +1 -0
  300. package/types/editor/utils/insertOptions.d.ts +3 -0
  301. package/types/editor/utils.d.ts +8 -0
  302. package/types/editor/views/ItemEditor.d.ts +1 -0
  303. package/types/fieldTypes.d.ts +39 -11
  304. package/types/graphQL.d.ts +12 -0
  305. package/types/index.d.ts +7 -4
  306. package/types/loadRouteData.d.ts +8 -85
  307. package/types/middleware/handleRequest.d.ts +5 -0
  308. package/types/middleware/index.d.ts +1 -1
  309. package/types/public.d.ts +12 -0
  310. package/types/renderContext.d.ts +41 -0
  311. package/types/renderings.d.ts +7 -0
  312. package/types/servertypes.d.ts +308 -0
  313. package/types/translate.d.ts +2 -0
  314. package/dist/cjs/alpacaContext.js +0 -12
  315. package/dist/cjs/client-components/ClientLink.js +0 -36
  316. package/dist/cjs/client-components/MultiComponentEditor.js +0 -26
  317. package/dist/cjs/client-components/index.js +0 -19
  318. package/dist/cjs/components/Error.js +0 -15
  319. package/dist/cjs/components/Link.js +0 -36
  320. package/dist/cjs/components/Picture.js +0 -124
  321. package/dist/cjs/components/PictureEditor.js +0 -49
  322. package/dist/cjs/components/Placeholder.js +0 -118
  323. package/dist/cjs/components/RichText.js +0 -47
  324. package/dist/cjs/components/RichTextEditor.js +0 -94
  325. package/dist/cjs/components/Slot.js +0 -8
  326. package/dist/cjs/components/Text.js +0 -46
  327. package/dist/cjs/components/TextEditor.js +0 -77
  328. package/dist/cjs/components/Translate.js +0 -14
  329. package/dist/cjs/components/TranslateEditor.js +0 -28
  330. package/dist/cjs/components/index.js +0 -23
  331. package/dist/cjs/editor/AiPopup.js +0 -33
  332. package/dist/cjs/editor/AiTerminal.js +0 -185
  333. package/dist/cjs/editor/ComponentInfo.js +0 -15
  334. package/dist/cjs/editor/ComponentPalette.js +0 -23
  335. package/dist/cjs/editor/ComponentTree.js +0 -217
  336. package/dist/cjs/editor/ConfirmationDialog.js +0 -31
  337. package/dist/cjs/editor/Debug.js +0 -26
  338. package/dist/cjs/editor/DialogButtons.js +0 -7
  339. package/dist/cjs/editor/DictionaryEditor.js +0 -41
  340. package/dist/cjs/editor/EditFrame.js +0 -129
  341. package/dist/cjs/editor/EditHistory.js +0 -43
  342. package/dist/cjs/editor/Editor.js +0 -27
  343. package/dist/cjs/editor/EditorClient.js +0 -753
  344. package/dist/cjs/editor/EditorClientHost.js +0 -37
  345. package/dist/cjs/editor/FieldList.js +0 -51
  346. package/dist/cjs/editor/FieldListField.js +0 -75
  347. package/dist/cjs/editor/GraphQL.js +0 -87
  348. package/dist/cjs/editor/ItemEditor.js +0 -9
  349. package/dist/cjs/editor/ItemInfo.js +0 -17
  350. package/dist/cjs/editor/ItemNameDialog.js +0 -37
  351. package/dist/cjs/editor/LanguageSelector.js +0 -21
  352. package/dist/cjs/editor/LinkEditorDialog.js +0 -67
  353. package/dist/cjs/editor/MainLayout.js +0 -24
  354. package/dist/cjs/editor/MediaSelector.js +0 -92
  355. package/dist/cjs/editor/PictureEditorDialog.js +0 -93
  356. package/dist/cjs/editor/PlaceholderDropZone.js +0 -93
  357. package/dist/cjs/editor/PlaceholderDropZoneHost.js +0 -37
  358. package/dist/cjs/editor/SidebarTabs.js +0 -47
  359. package/dist/cjs/editor/Terminal.js +0 -61
  360. package/dist/cjs/editor/Utils.js +0 -43
  361. package/dist/cjs/editor/VersionSelector.js +0 -21
  362. package/dist/cjs/editor/Workbox.js +0 -41
  363. package/dist/cjs/editor/componentCommands.js +0 -141
  364. package/dist/cjs/editor/componentTreeHelper.js +0 -18
  365. package/dist/cjs/editor/contentService.js +0 -80
  366. package/dist/cjs/editor/editContext.js +0 -40
  367. package/dist/cjs/editor/editService.js +0 -334
  368. package/dist/cjs/editor/fieldTypes/CheckboxEditor.js +0 -21
  369. package/dist/cjs/editor/fieldTypes/InternalLinkFieldEditor.js +0 -46
  370. package/dist/cjs/editor/fieldTypes/MultiLineText.js +0 -25
  371. package/dist/cjs/editor/fieldTypes/PictureFieldEditor.js +0 -19
  372. package/dist/cjs/editor/fieldTypes/RichTextEditor.js +0 -24
  373. package/dist/cjs/editor/fieldTypes/SingleLineText.js +0 -25
  374. package/dist/cjs/editor/fieldTypes/TreeListEditor.js +0 -59
  375. package/dist/cjs/editor/index.js +0 -18
  376. package/dist/cjs/editor/ui/Section.js +0 -8
  377. package/dist/cjs/fieldTypes.js +0 -2
  378. package/dist/cjs/graphQLTypes.js +0 -2
  379. package/dist/cjs/index.js +0 -36
  380. package/dist/cjs/layoutData.js +0 -2
  381. package/dist/cjs/middleware/authorization.js +0 -52
  382. package/dist/cjs/middleware/index.js +0 -17
  383. package/types/alpacaContext.d.ts +0 -25
  384. package/types/editor/AiTerminal.d.ts +0 -5
  385. package/types/editor/ComponentPalette.d.ts +0 -6
  386. package/types/editor/ComponentTree.d.ts +0 -5
  387. package/types/editor/Debug.d.ts +0 -6
  388. package/types/editor/EditHistory.d.ts +0 -4
  389. package/types/editor/Editor.d.ts +0 -6
  390. package/types/editor/GraphQL.d.ts +0 -5
  391. package/types/editor/ItemEditor.d.ts +0 -4
  392. package/types/editor/LanguageSelector.d.ts +0 -5
  393. package/types/editor/SidebarTabs.d.ts +0 -8
  394. package/types/editor/Utils.d.ts +0 -3
  395. package/types/editor/VersionSelector.d.ts +0 -5
  396. package/types/editor/Workbox.d.ts +0 -6
  397. package/types/editor/componentCommands.d.ts +0 -4
  398. package/types/editor/editService.d.ts +0 -20
  399. package/types/editor/index.d.ts +0 -2
  400. package/types/layoutData.d.ts +0 -92
  401. package/types/middleware/authorization.d.ts +0 -2
@@ -0,0 +1,38 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import dynamic from "next/dynamic";
3
+ import "@uiw/react-textarea-code-editor/dist.css";
4
+ import { useEffect } from "react";
5
+ import { useComponentDesignerContext } from "./componentDesignerContext";
6
+ import { useEditContext } from "../editContext";
7
+ const CodeEditor = dynamic(() => import("@uiw/react-textarea-code-editor").then((mod) => mod.default), { ssr: false });
8
+ export function ComponentRenderingEditor() {
9
+ const context = useComponentDesignerContext();
10
+ if (!context)
11
+ return null;
12
+ const editContext = useEditContext();
13
+ if (!editContext)
14
+ return null;
15
+ useEffect(() => {
16
+ var _a, _b, _c;
17
+ context.setCode(((_c = (_b = (_a = context.componentRenderingItem) === null || _a === void 0 ? void 0 : _a.fields) === null || _b === void 0 ? void 0 : _b.code) === null || _c === void 0 ? void 0 : _c.value) || "");
18
+ }, [context.componentRenderingItem]);
19
+ useEffect(() => {
20
+ const timeout = setTimeout(() => {
21
+ if (context.componentRenderingItem) {
22
+ context.componentRenderingItem.fields.code.value = context.code;
23
+ editContext.editField({
24
+ field: context.componentRenderingItem.fields.code,
25
+ value: context.code,
26
+ });
27
+ }
28
+ }, 600);
29
+ return () => clearTimeout(timeout);
30
+ }, [context.code]);
31
+ if (!context.componentRenderingItem)
32
+ return null;
33
+ return (_jsx("div", { children: _jsx(CodeEditor, { value: context.code, language: "js", placeholder: "Please enter TSX code.", onChange: (evn) => context.setCode(evn.target.value), padding: 15, style: {
34
+ fontSize: 12,
35
+ backgroundColor: "#f5f5f5",
36
+ fontFamily: "ui-monospace,SFMono-Regular,SF Mono,Consolas,Liberation Mono,Menlo,monospace",
37
+ } }) }));
38
+ }
@@ -0,0 +1,56 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ import ContentTree from "../ContentTree";
12
+ import { getItem } from "../services/contentService";
13
+ import { useComponentDesignerContext } from "./componentDesignerContext";
14
+ export function ComponentSelectionTree() {
15
+ var _a, _b, _c;
16
+ const context = useComponentDesignerContext();
17
+ if (!context)
18
+ return;
19
+ const loadItem = (item) => __awaiter(this, void 0, void 0, function* () {
20
+ const itemData = yield getItem({
21
+ id: item.id,
22
+ language: item.language,
23
+ version: item.version,
24
+ });
25
+ if (!itemData)
26
+ return;
27
+ if (itemData.templateId === "d7dd274d-69ee-4686-9171-21c89a088fd8") {
28
+ context.setComponentRenderingItem(itemData);
29
+ context.setComponentRenderingFolder(undefined);
30
+ context.setSampleItem(undefined);
31
+ }
32
+ if (itemData.templateId === "dcfdeb8f-c2a6-4046-a7fc-23296b2d4569") {
33
+ context.setComponentRenderingFolder(itemData);
34
+ context.setComponentRenderingItem(undefined);
35
+ context.setSampleItem(undefined);
36
+ }
37
+ if (itemData.templateId === "e85ffcff-38b8-4a0b-844e-17f6faf745fe") {
38
+ context.setSampleItem(itemData);
39
+ const parent = yield getItem({
40
+ id: itemData._editor.parentId,
41
+ language: item.language,
42
+ version: 0,
43
+ });
44
+ context.setComponentRenderingItem(parent);
45
+ }
46
+ });
47
+ return (_jsx(ContentTree, { rootItemId: "{11111111-1111-1111-1111-111111111111}", expandIdPath: "{11111111-1111-1111-1111-111111111111}/{0de95ae4-41ab-4d01-9eb0-67441b7c2450}/{c8c7b950-e876-448e-991f-5eaf756a1db2}/{5f2dcc67-d9c1-451f-ad14-85244c9cca41}", className: "a-p-1", selectionMode: "single", selectedItemIds: [
48
+ ((_a = context.sampleItem) === null || _a === void 0 ? void 0 : _a.id) ||
49
+ ((_b = context.componentRenderingItem) === null || _b === void 0 ? void 0 : _b.id) ||
50
+ ((_c = context.componentRenderingFolder) === null || _c === void 0 ? void 0 : _c.id) ||
51
+ "11111111-1111-1111-1111-111111111111",
52
+ ], onSelectionChange: (selection) => {
53
+ const selectedItem = selection;
54
+ loadItem(selectedItem);
55
+ } }));
56
+ }
@@ -0,0 +1,22 @@
1
+ import { useState } from "react";
2
+ import { useEditContext } from "../editContext";
3
+ export function getComponentDesignerContext() {
4
+ const [componentRenderingItem, setComponentRenderingItem] = useState();
5
+ const [componentRenderingFolder, setComponentRenderingFolder] = useState();
6
+ const [sampleItem, setSampleItem] = useState();
7
+ const [code, setCode] = useState();
8
+ return {
9
+ componentRenderingItem,
10
+ setComponentRenderingItem,
11
+ componentRenderingFolder,
12
+ setComponentRenderingFolder,
13
+ sampleItem,
14
+ setSampleItem,
15
+ code,
16
+ setCode,
17
+ };
18
+ }
19
+ export function useComponentDesignerContext() {
20
+ var _a;
21
+ return (_a = useEditContext()) === null || _a === void 0 ? void 0 : _a.componentDesignerContext;
22
+ }
@@ -0,0 +1,20 @@
1
+ export function findComponent(id, placeholders) {
2
+ var _a;
3
+ for (const p of placeholders) {
4
+ for (const c of p.components) {
5
+ if (c.id === id || ((_a = c._editor.linkedComponentItem) === null || _a === void 0 ? void 0 : _a.id) === id) {
6
+ return c;
7
+ }
8
+ const match = findComponent(id, c.placeholders);
9
+ if (match) {
10
+ return match;
11
+ }
12
+ }
13
+ }
14
+ return null;
15
+ }
16
+ export function getComponentById(id, page) {
17
+ if (!page)
18
+ return null;
19
+ return findComponent(id, page.placeholders);
20
+ }
@@ -0,0 +1,327 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { jsx as _jsx } from "react/jsx-runtime";
11
+ import { RichTextEditor } from "../fieldTypes/RichTextEditor";
12
+ import { LinkFieldEditor } from "../fieldTypes/LinkFieldEditor";
13
+ import { PictureFieldEditor } from "../fieldTypes/PictureFieldEditor";
14
+ import { InternalLinkFieldEditor } from "../fieldTypes/InternalLinkFieldEditor";
15
+ import TreeListEditor from "../fieldTypes/TreeListEditor";
16
+ import { SingleLineText } from "../fieldTypes/SingleLineText";
17
+ import { MultiLineText } from "../fieldTypes/MultiLineText";
18
+ import { DropLinkEditor } from "../fieldTypes/DropLinkEditor";
19
+ import { RawEditor } from "../fieldTypes/RawEditor";
20
+ import { CheckboxEditor } from "../fieldTypes/CheckboxEditor";
21
+ import { ItemLocked } from "../editor-warnings/ItemLocked";
22
+ import { ValidationErrors } from "../editor-warnings/ValidationErrors";
23
+ import { MainContentTree } from "../sidebar/MainContentTree";
24
+ import { ComponentTree } from "../sidebar/ComponentTree";
25
+ import { EditHistory } from "../sidebar/EditHistory";
26
+ import { Sessions } from "../sidebar/Sessions";
27
+ import { Workbox } from "../sidebar/Workbox";
28
+ import { DictionaryEditor } from "../DictionaryEditor";
29
+ import { BugIcon, EditIcon, GraphQLIcon, JsonIcon, WizardIcon, } from "../ui/Icons";
30
+ import { Debug } from "../sidebar/Debug";
31
+ import { GraphQL } from "../sidebar/GraphQL";
32
+ import { PageViewer } from "../PageViewer";
33
+ import { ItemEditor } from "../views/ItemEditor";
34
+ import { EditorForm } from "../sidebar/EditorForm";
35
+ import { EditorAiTerminal } from "../ai/EditorAiTerminal";
36
+ import { Insert } from "../sidebar/Insert";
37
+ import { getCreateAndSwitchToNewVersionCommand } from "../commands/createVersionCommand";
38
+ import { getSelectedComponentCommands } from "../commands/componentCommands";
39
+ import { getRedoCommand, getUndoCommand } from "../commands/undo";
40
+ import { ComponentSelectionTree } from "../component-designer/ComponentSelectionTree";
41
+ import { ComponentDesigner } from "../component-designer/ComponentDesigner";
42
+ import { ComponentDesignerMenu } from "../component-designer/ComponentDesignerMenu";
43
+ import { ComponentDesignerAiTerminal } from "../component-designer/ComponentDesignerAiTerminal";
44
+ const defaultRichTextEditorProfile = {
45
+ toolbar: {
46
+ groups: [
47
+ {
48
+ items: ["bold", "italic", "underline", "strikethrough"],
49
+ },
50
+ ],
51
+ },
52
+ };
53
+ export const configuration = {
54
+ alwaysVisiblePageFields: [],
55
+ fieldTypes: {
56
+ raw: {
57
+ editor: RawEditor,
58
+ },
59
+ "single-line text": {
60
+ editor: SingleLineText,
61
+ },
62
+ "multi-line text": {
63
+ editor: MultiLineText,
64
+ },
65
+ "rich text": {
66
+ editor: RichTextEditor,
67
+ custom: {
68
+ profiles: { default: defaultRichTextEditorProfile },
69
+ },
70
+ },
71
+ "general link": {
72
+ editor: LinkFieldEditor,
73
+ },
74
+ picture: {
75
+ editor: PictureFieldEditor,
76
+ },
77
+ droplink: {
78
+ editor: DropLinkEditor,
79
+ },
80
+ "enhanced internal link": {
81
+ editor: InternalLinkFieldEditor,
82
+ },
83
+ treelist: {
84
+ editor: TreeListEditor,
85
+ },
86
+ "enhanced treelist": {
87
+ editor: TreeListEditor,
88
+ },
89
+ checkbox: {
90
+ editor: CheckboxEditor,
91
+ },
92
+ },
93
+ editorWarnings: [ItemLocked, ValidationErrors],
94
+ outline: {
95
+ width: 100,
96
+ },
97
+ chrome: {
98
+ editor: {
99
+ views: [
100
+ {
101
+ name: "edit",
102
+ title: "Edit",
103
+ centerPanelView: "page",
104
+ icon: _jsx(EditIcon, {}),
105
+ leftSidebar: [
106
+ {
107
+ name: "form",
108
+ icon: "pi pi-plus",
109
+ title: "Form",
110
+ header: () => null,
111
+ content: _jsx(EditorForm, {}),
112
+ initialSize: 65,
113
+ },
114
+ {
115
+ name: "component-tree",
116
+ icon: "pi pi-list",
117
+ title: "Outline",
118
+ content: _jsx(ComponentTree, {}),
119
+ initialSize: 20,
120
+ },
121
+ {
122
+ name: "history",
123
+ icon: "pi pi-clock",
124
+ title: "History",
125
+ content: _jsx(EditHistory, {}),
126
+ initialSize: 15,
127
+ },
128
+ ],
129
+ },
130
+ {
131
+ name: "insert",
132
+ title: "Insert",
133
+ icon: "pi pi-plus",
134
+ centerPanelView: "page",
135
+ leftSidebar: [
136
+ {
137
+ name: "component-palette",
138
+ icon: "pi pi-plus",
139
+ header: () => null,
140
+ title: "Insert",
141
+ content: _jsx(Insert, {}),
142
+ initialSize: 15,
143
+ },
144
+ ],
145
+ },
146
+ {
147
+ name: "navigate",
148
+ title: "Navigate",
149
+ icon: "pi pi-sitemap",
150
+ centerPanelView: "page",
151
+ leftSidebar: [
152
+ {
153
+ name: "tree",
154
+ icon: "pi pi-list",
155
+ title: "Select Page",
156
+ content: _jsx(MainContentTree, { mode: "select-page" }),
157
+ initialSize: 100,
158
+ },
159
+ ],
160
+ },
161
+ {
162
+ name: "workbox",
163
+ title: "Workbox",
164
+ icon: "pi pi-inbox",
165
+ leftSidebar: [
166
+ {
167
+ name: "Workbox",
168
+ title: "Workbox",
169
+ icon: "pi-inbox",
170
+ content: _jsx(Workbox, {}),
171
+ initialSize: 100,
172
+ },
173
+ ],
174
+ },
175
+ {
176
+ name: "ai",
177
+ title: "AI",
178
+ icon: _jsx(WizardIcon, {}),
179
+ leftSidebar: [
180
+ {
181
+ name: "ai-terminal",
182
+ icon: "pi pi-comments",
183
+ title: "AI",
184
+ content: _jsx(EditorAiTerminal, {}),
185
+ initialSize: 20,
186
+ },
187
+ {
188
+ name: "history",
189
+ icon: "pi pi-clock",
190
+ title: "History",
191
+ content: _jsx(EditHistory, {}),
192
+ initialSize: 0,
193
+ },
194
+ ],
195
+ },
196
+ {
197
+ name: "content-editor",
198
+ title: "Content Editor",
199
+ icon: "pi pi-list",
200
+ centerPanelView: "form",
201
+ leftSidebar: [
202
+ {
203
+ name: "tree",
204
+ icon: "pi pi-sitemap",
205
+ title: "Content",
206
+ content: _jsx(MainContentTree, { mode: "normal" }),
207
+ initialSize: 100,
208
+ },
209
+ {
210
+ name: "history",
211
+ icon: "pi pi-clock",
212
+ title: "History",
213
+ content: _jsx(EditHistory, {}),
214
+ initialSize: 0,
215
+ },
216
+ ],
217
+ },
218
+ {
219
+ name: "dictionary",
220
+ title: "Dictionary",
221
+ icon: "pi pi-book",
222
+ leftSidebar: [
223
+ {
224
+ name: "dictionary",
225
+ icon: "pi pi-book",
226
+ title: "Dictionary",
227
+ content: _jsx(DictionaryEditor, {}),
228
+ initialSize: 100,
229
+ },
230
+ ],
231
+ },
232
+ {
233
+ name: "sessions",
234
+ title: "Sessions",
235
+ icon: "pi pi-users",
236
+ leftSidebar: [
237
+ {
238
+ name: "sessions",
239
+ icon: "pi pi-users",
240
+ title: "Sessions",
241
+ content: _jsx(Sessions, {}),
242
+ initialSize: 100,
243
+ },
244
+ ],
245
+ },
246
+ {
247
+ name: "debug",
248
+ title: "Debug",
249
+ icon: _jsx(BugIcon, {}),
250
+ centerPanelView: "page",
251
+ leftSidebar: [
252
+ {
253
+ name: "debug",
254
+ icon: _jsx(JsonIcon, {}),
255
+ title: "JSON",
256
+ content: _jsx(Debug, {}),
257
+ initialSize: 60,
258
+ },
259
+ {
260
+ name: "graphql",
261
+ icon: _jsx(GraphQLIcon, {}),
262
+ title: "GraphQL",
263
+ content: _jsx(GraphQL, {}),
264
+ initialSize: 40,
265
+ },
266
+ ],
267
+ },
268
+ {
269
+ name: "component-designer",
270
+ title: "Component Designer",
271
+ icon: "pi pi-palette",
272
+ centerPanelView: "component-designer",
273
+ menuBar: _jsx(ComponentDesignerMenu, {}),
274
+ leftSidebar: [
275
+ {
276
+ name: "component-designer",
277
+ icon: "pi pi-palette",
278
+ title: "Component List",
279
+ initialSize: 60,
280
+ content: _jsx(ComponentSelectionTree, {}),
281
+ },
282
+ {
283
+ name: "ai-terminal",
284
+ icon: "pi pi-comments",
285
+ title: "AI",
286
+ content: _jsx(ComponentDesignerAiTerminal, {}),
287
+ initialSize: 40,
288
+ },
289
+ ],
290
+ },
291
+ ],
292
+ centerPanelViews: [
293
+ { name: "page", content: _jsx(PageViewer, {}) },
294
+ { name: "form", content: _jsx(ItemEditor, {}) },
295
+ { name: "component-designer", content: _jsx(ComponentDesigner, {}) },
296
+ ],
297
+ mainNavigation: [
298
+ getUndoCommand(),
299
+ getRedoCommand(),
300
+ {
301
+ label: "Version",
302
+ icon: "pi pi-fw",
303
+ items: [getCreateAndSwitchToNewVersionCommand()],
304
+ },
305
+ {
306
+ label: "Selection",
307
+ icon: "pi pi-fw",
308
+ items: (editContext) => getSelectedComponentCommands(editContext),
309
+ },
310
+ {
311
+ name: "preview",
312
+ disabled: () => false,
313
+ label: "Preview",
314
+ icon: "pi pi-fw pi-external-link",
315
+ execute: () => __awaiter(void 0, void 0, void 0, function* () {
316
+ const currentUrl = new URL(window.location.href);
317
+ const searchParams = currentUrl.searchParams;
318
+ if (searchParams.get("mode") === "edit") {
319
+ searchParams.set("mode", "preview");
320
+ }
321
+ window.open(currentUrl.href);
322
+ }),
323
+ },
324
+ ],
325
+ },
326
+ },
327
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ "use client";
2
+ import React, { useContext } from "react";
3
+ const EditContext = React.createContext(undefined);
4
+ export const EditContextProvider = EditContext.Provider;
5
+ export const useEditContext = () => useContext(EditContext);
6
+ const EditFrameContext = React.createContext(undefined);
7
+ export const useEditFrameContext = () => useContext(EditFrameContext);
8
+ export const EditFrameContextProvider = EditFrameContext.Provider;
9
+ const EditFilterChildrenContext = React.createContext(undefined);
10
+ export const useEditFilterChildrenContext = () => useContext(EditFilterChildrenContext);
11
+ export const EditFilterChildrenContextProvider = EditFilterChildrenContext.Provider;
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { EditorWarning } from "../EditorWarning";
3
+ import { useEditContext } from "../editContext";
4
+ export function ItemLocked({ item }) {
5
+ var _a;
6
+ if (!((_a = item._editor) === null || _a === void 0 ? void 0 : _a.canLock))
7
+ return;
8
+ var editContext = useEditContext();
9
+ if (!editContext)
10
+ return;
11
+ if (item._editor.hasLock) {
12
+ return (_jsx(EditorWarning, { title: "Item locked", severity: "warning", children: _jsx("button", { onClick: () => {
13
+ const items = [item];
14
+ if (item._editor.linkedComponentItem)
15
+ items.push(item._editor.linkedComponentItem);
16
+ editContext.unlockItems(items);
17
+ }, children: "Release lock" }) }));
18
+ }
19
+ if (item._editor.lockedBy == null) {
20
+ return (_jsx(EditorWarning, { title: "Item is locked", severity: "warning", children: _jsxs("div", { children: ["Locked by ", item._editor.lockedBy] }) }));
21
+ }
22
+ // else {
23
+ // return (
24
+ // <EditorWarning title="Item not locked" severity="warning">
25
+ // {item.canLock && (
26
+ // <button
27
+ // onClick={() => {
28
+ // const items: ItemDescriptor[] = [item];
29
+ // if ((item as ComponentData).linkedComponentItem)
30
+ // items.push((item as ComponentData).linkedComponentItem);
31
+ // editContext!.lockItems(items);
32
+ // }}
33
+ // >
34
+ // Lock item
35
+ // </button>
36
+ // )}
37
+ // </EditorWarning>
38
+ // );
39
+ // }
40
+ }
@@ -0,0 +1,22 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { EditorWarning } from "../EditorWarning";
3
+ export function ValidationErrors({ item, editContext }) {
4
+ var _a, _b, _c;
5
+ let validationResult = (_b = (_a = editContext.pageValidationResult) === null || _a === void 0 ? void 0 : _a.find((x) => x.item.id === item.id &&
6
+ x.item.language === item.language &&
7
+ x.item.version === item.version)) === null || _b === void 0 ? void 0 : _b.results.filter((x) => x.itemId === item.id);
8
+ if (!validationResult) {
9
+ const pageResult = (_c = editContext.pageValidationResult) === null || _c === void 0 ? void 0 : _c.find((x) => { var _a; return x.item.id === ((_a = editContext === null || editContext === void 0 ? void 0 : editContext.page) === null || _a === void 0 ? void 0 : _a.id); });
10
+ if (pageResult)
11
+ validationResult = pageResult.results.filter((x) => x.itemId === item.id);
12
+ }
13
+ if (!(validationResult === null || validationResult === void 0 ? void 0 : validationResult.length))
14
+ return null;
15
+ const fields = validationResult === null || validationResult === void 0 ? void 0 : validationResult.filter((x) => x.fieldId);
16
+ return (_jsxs(EditorWarning, { title: "Validation", severity: "warning", children: [validationResult === null || validationResult === void 0 ? void 0 : validationResult.filter((x) => !x.fieldId).map((x) => _jsx("div", { children: x.message }, x.validator)), (fields === null || fields === void 0 ? void 0 : fields.length) > 0 && (_jsxs("div", { children: ["The following fields have validation messages:", " ", fields.map((x) => (_jsx("span", { className: "a-cursor-pointer a-font-bold", onClick: () => {
17
+ var _a;
18
+ const field = Object.values(item.fields).find((f) => f.id === x.fieldId);
19
+ if (field)
20
+ editContext.setFocusedField((_a = field._editor) === null || _a === void 0 ? void 0 : _a.descriptor, false);
21
+ }, children: x.fieldName }, x.validator + x.fieldId)))] }))] }));
22
+ }
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { useEditContext } from "../editContext";
4
+ import { Checkbox } from "primereact/checkbox";
5
+ export function CheckboxEditor({ field, readOnly, }) {
6
+ var _a;
7
+ const editContext = useEditContext();
8
+ if (!editContext)
9
+ return;
10
+ const fieldItem = (_a = field._editor) === null || _a === void 0 ? void 0 : _a.descriptor.item;
11
+ if (!fieldItem)
12
+ return;
13
+ return (_jsx(Checkbox, { checked: field.value, disabled: readOnly, onChange: (e) => {
14
+ editContext.editField({
15
+ field,
16
+ rawValue: e.checked ? "1" : "0",
17
+ refresh: "immediate",
18
+ });
19
+ // field.value = e.target.value;
20
+ } }, fieldItem.id + field.id + fieldItem.language + fieldItem.version));
21
+ }
@@ -0,0 +1,50 @@
1
+ "use client";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ import { Dropdown } from "primereact/dropdown";
13
+ import { useEditContext } from "../editContext";
14
+ import { useEffect, useState } from "react";
15
+ import { loadDropLinkOptions } from "../services/editService";
16
+ import { Skeleton } from "primereact/skeleton";
17
+ export function DropLinkEditor({ field, readOnly, }) {
18
+ const editContext = useEditContext();
19
+ const [lazyItems, setLazyItems] = useState([]);
20
+ const [lazyLoading, setLazyLoading] = useState(true);
21
+ if (!field)
22
+ return;
23
+ if (!editContext)
24
+ return;
25
+ useEffect(() => {
26
+ onLazyLoad();
27
+ }, []);
28
+ const onLazyLoad = () => __awaiter(this, void 0, void 0, function* () {
29
+ setLazyLoading(true);
30
+ const options = yield loadDropLinkOptions(field, editContext.sessionId);
31
+ setLazyItems(options);
32
+ setLazyLoading(false);
33
+ });
34
+ return (_jsx(Dropdown, { value: field.value.targetItemId, disabled: readOnly, onChange: (e) => {
35
+ editContext === null || editContext === void 0 ? void 0 : editContext.editField({
36
+ field,
37
+ rawValue: e.value,
38
+ });
39
+ }, options: lazyItems, optionLabel: "name", optionValue: "id", placeholder: "Select", className: "w-full md:w-14rem", virtualScrollerOptions: {
40
+ lazy: true,
41
+ onLazyLoad: onLazyLoad,
42
+ itemSize: 38,
43
+ showLoader: true,
44
+ loading: lazyLoading,
45
+ delay: 250,
46
+ loadingTemplate: (options) => {
47
+ return (_jsx("div", { className: "flex align-items-center p-2", style: { height: "38px" }, children: _jsx(Skeleton, { width: options.even ? "60%" : "50%", height: "1rem" }) }));
48
+ },
49
+ } }));
50
+ }
@@ -0,0 +1,41 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useState } from "react";
4
+ import { useEditContext } from "../editContext";
5
+ import ContentTree from "../ContentTree";
6
+ export function InternalLinkFieldEditor({ field, readOnly, }) {
7
+ const editContext = useEditContext();
8
+ const [link, setLink] = useState();
9
+ const [showTree, setShowTree] = useState(false);
10
+ useEffect(() => {
11
+ var _a;
12
+ setLink({
13
+ url: field.value.url,
14
+ target: field.value.target,
15
+ targetItemName: field.value.targetItemName,
16
+ targetItemLongId: field.value.targetItemLongId,
17
+ type: field.value.type,
18
+ itemId: (_a = field.value.targetItemLongId) === null || _a === void 0 ? void 0 : _a.split("/").pop(),
19
+ queryString: field.value.queryString,
20
+ });
21
+ }, [field]);
22
+ if (!field)
23
+ return;
24
+ if (!editContext)
25
+ return;
26
+ const selection = [];
27
+ if (link === null || link === void 0 ? void 0 : link.itemId)
28
+ selection.push(link.itemId);
29
+ return (_jsxs("div", { children: [_jsxs("div", { className: "a-p-2 a-border a-bg-gray-50 a-flex a-justify-between a-text-sm a-cursor-pointer a-justiy-between a-focus-shadow", onClick: (e) => {
30
+ if (readOnly)
31
+ return;
32
+ setShowTree(!showTree);
33
+ e.preventDefault();
34
+ }, children: [_jsx("span", { children: link === null || link === void 0 ? void 0 : link.targetItemName }), !readOnly && (_jsx("i", { className: `pi ${showTree ? "pi-angle-up" : "pi-angle-down"} ` }))] }), showTree && (_jsx("div", { className: "a-h-64 a-overflow-scroll a-resize", children: _jsx(ContentTree, { expandIdPath: link === null || link === void 0 ? void 0 : link.targetItemLongId, rootItemId: "{11111111-1111-1111-1111-111111111111}", selectionMode: "single", selectedItemIds: selection, onSelectionChange: (selection) => {
35
+ setShowTree(false);
36
+ editContext === null || editContext === void 0 ? void 0 : editContext.editField({
37
+ field,
38
+ rawValue: selection.id,
39
+ });
40
+ } }) }))] }));
41
+ }