@alpaca-editor/core 1.0.3762-mono

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 (460) hide show
  1. package/.prettierrc +3 -0
  2. package/dist/client-components/api.js +6 -0
  3. package/dist/client-components/index.js +36 -0
  4. package/dist/components/ActionButton.js +9 -0
  5. package/dist/components/Error.js +28 -0
  6. package/dist/config/config.js +654 -0
  7. package/dist/config/types.js +2 -0
  8. package/dist/editor/ComponentInfo.js +31 -0
  9. package/dist/editor/ConfirmationDialog.js +32 -0
  10. package/dist/editor/ContentTree.js +406 -0
  11. package/dist/editor/ContextMenu.js +117 -0
  12. package/dist/editor/Editor.js +55 -0
  13. package/dist/editor/EditorWarning.js +13 -0
  14. package/dist/editor/EditorWarnings.js +24 -0
  15. package/dist/editor/FieldEditorPopup.js +24 -0
  16. package/dist/editor/FieldHistory.js +40 -0
  17. package/dist/editor/FieldList.js +63 -0
  18. package/dist/editor/FieldListField.js +164 -0
  19. package/dist/editor/FieldListFieldWithFallbacks.js +114 -0
  20. package/dist/editor/FloatingToolbar.js +92 -0
  21. package/dist/editor/ImageEditor.js +55 -0
  22. package/dist/editor/InsertMenu.js +164 -0
  23. package/dist/editor/ItemInfo.js +30 -0
  24. package/dist/editor/LinkEditorDialog.js +89 -0
  25. package/dist/editor/MainLayout.js +46 -0
  26. package/dist/editor/NewEditorClient.js +9 -0
  27. package/dist/editor/PictureCropper.js +332 -0
  28. package/dist/editor/PictureEditor.js +104 -0
  29. package/dist/editor/PictureEditorDialog.js +194 -0
  30. package/dist/editor/ScrollingContentTree.js +30 -0
  31. package/dist/editor/Terminal.js +109 -0
  32. package/dist/editor/Titlebar.js +11 -0
  33. package/dist/editor/ai/AiPopup.js +25 -0
  34. package/dist/editor/ai/AiResponseMessage.js +24 -0
  35. package/dist/editor/ai/AiTerminal.js +241 -0
  36. package/dist/editor/ai/AiToolCall.js +18 -0
  37. package/dist/editor/ai/EditorAiTerminal.js +9 -0
  38. package/dist/editor/ai/editorAiContext.js +14 -0
  39. package/dist/editor/client/DialogContext.js +29 -0
  40. package/dist/editor/client/EditorClient.js +1336 -0
  41. package/dist/editor/client/GenericDialog.js +27 -0
  42. package/dist/editor/client/editContext.js +59 -0
  43. package/dist/editor/client/helpers.js +31 -0
  44. package/dist/editor/client/itemsRepository.js +255 -0
  45. package/dist/editor/client/operations.js +398 -0
  46. package/dist/editor/client/pageModelBuilder.js +129 -0
  47. package/dist/editor/commands/commands.js +2 -0
  48. package/dist/editor/commands/componentCommands.js +277 -0
  49. package/dist/editor/commands/createVersionCommand.js +26 -0
  50. package/dist/editor/commands/deleteVersionCommand.js +55 -0
  51. package/dist/editor/commands/itemCommands.js +134 -0
  52. package/dist/editor/commands/localizeItem/LocalizeItemDialog.js +94 -0
  53. package/dist/editor/commands/undo.js +32 -0
  54. package/dist/editor/component-designer/ComponentDesigner.js +58 -0
  55. package/dist/editor/component-designer/ComponentDesignerAiTerminal.js +9 -0
  56. package/dist/editor/component-designer/ComponentDesignerMenu.js +67 -0
  57. package/dist/editor/component-designer/ComponentEditor.js +59 -0
  58. package/dist/editor/component-designer/ComponentRenderingCodeEditor.js +16 -0
  59. package/dist/editor/component-designer/ComponentRenderingEditor.js +71 -0
  60. package/dist/editor/component-designer/ComponentsDropdown.js +22 -0
  61. package/dist/editor/component-designer/PlaceholdersEditor.js +70 -0
  62. package/dist/editor/component-designer/RenderingsDropdown.js +25 -0
  63. package/dist/editor/component-designer/TemplateEditor.js +144 -0
  64. package/dist/editor/component-designer/aiContext.js +18 -0
  65. package/dist/editor/componentTreeHelper.js +97 -0
  66. package/dist/editor/control-center/ControlCenterMenu.js +59 -0
  67. package/dist/editor/control-center/IndexOverview.js +27 -0
  68. package/dist/editor/control-center/IndexSettings.js +106 -0
  69. package/dist/editor/control-center/Status.js +7 -0
  70. package/dist/editor/editor-warnings/ItemLocked.js +40 -0
  71. package/dist/editor/editor-warnings/NoLanguageWriteAccess.js +16 -0
  72. package/dist/editor/editor-warnings/NoWorkflowWriteAccess.js +16 -0
  73. package/dist/editor/editor-warnings/NoWriteAccess.js +14 -0
  74. package/dist/editor/editor-warnings/ValidationErrors.js +27 -0
  75. package/dist/editor/field-types/AttachmentEditor.js +7 -0
  76. package/dist/editor/field-types/CheckboxEditor.js +32 -0
  77. package/dist/editor/field-types/DropLinkEditor.js +51 -0
  78. package/dist/editor/field-types/DropListEditor.js +58 -0
  79. package/dist/editor/field-types/ImageFieldEditor.js +36 -0
  80. package/dist/editor/field-types/InternalLinkFieldEditor.js +64 -0
  81. package/dist/editor/field-types/LinkFieldEditor.js +58 -0
  82. package/dist/editor/field-types/MultiLineText.js +35 -0
  83. package/dist/editor/field-types/PictureFieldEditor.js +59 -0
  84. package/dist/editor/field-types/RawEditor.js +33 -0
  85. package/dist/editor/field-types/ReactQuill.js +366 -0
  86. package/dist/editor/field-types/RichTextEditor.js +46 -0
  87. package/dist/editor/field-types/RichTextEditorComponent.js +72 -0
  88. package/dist/editor/field-types/SingleLineText.js +92 -0
  89. package/dist/editor/field-types/TreeListEditor.js +137 -0
  90. package/dist/editor/fieldTypes.js +2 -0
  91. package/dist/editor/media-selector/AiImageSearch.js +110 -0
  92. package/dist/editor/media-selector/AiImageSearchPrompt.js +58 -0
  93. package/dist/editor/media-selector/MediaSelector.js +11 -0
  94. package/dist/editor/media-selector/Preview.js +9 -0
  95. package/dist/editor/media-selector/Thumbnails.js +11 -0
  96. package/dist/editor/media-selector/TreeSelector.js +171 -0
  97. package/dist/editor/media-selector/UploadZone.js +80 -0
  98. package/dist/editor/menubar/ActionsMenu.js +33 -0
  99. package/dist/editor/menubar/ActiveUsers.js +13 -0
  100. package/dist/editor/menubar/ApproveAndPublish.js +13 -0
  101. package/dist/editor/menubar/BrowseHistory.js +14 -0
  102. package/dist/editor/menubar/ItemLanguageVersion.js +36 -0
  103. package/dist/editor/menubar/LanguageSelector.js +33 -0
  104. package/dist/editor/menubar/Menu.js +65 -0
  105. package/dist/editor/menubar/NavButtons.js +43 -0
  106. package/dist/editor/menubar/PageSelector.js +50 -0
  107. package/dist/editor/menubar/PageViewerControls.js +37 -0
  108. package/dist/editor/menubar/Separator.js +8 -0
  109. package/dist/editor/menubar/SiteInfo.js +26 -0
  110. package/dist/editor/menubar/User.js +18 -0
  111. package/dist/editor/menubar/VersionSelector.js +49 -0
  112. package/dist/editor/page-editor-chrome/CommentHighlighting.js +214 -0
  113. package/dist/editor/page-editor-chrome/CommentHighlightings.js +17 -0
  114. package/dist/editor/page-editor-chrome/FieldActionIndicator.js +27 -0
  115. package/dist/editor/page-editor-chrome/FieldActionIndicators.js +15 -0
  116. package/dist/editor/page-editor-chrome/FieldEditedIndicator.js +27 -0
  117. package/dist/editor/page-editor-chrome/FieldEditedIndicators.js +15 -0
  118. package/dist/editor/page-editor-chrome/FrameMenu.js +178 -0
  119. package/dist/editor/page-editor-chrome/FrameMenus.js +24 -0
  120. package/dist/editor/page-editor-chrome/InlineEditor.js +101 -0
  121. package/dist/editor/page-editor-chrome/LockedFieldIndicator.js +35 -0
  122. package/dist/editor/page-editor-chrome/NoLayout.js +21 -0
  123. package/dist/editor/page-editor-chrome/PageEditorChrome.js +65 -0
  124. package/dist/editor/page-editor-chrome/PictureEditorOverlay.js +109 -0
  125. package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +82 -0
  126. package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +147 -0
  127. package/dist/editor/page-viewer/DeviceToolbar.js +21 -0
  128. package/dist/editor/page-viewer/EditorForm.js +130 -0
  129. package/dist/editor/page-viewer/MiniMap.js +257 -0
  130. package/dist/editor/page-viewer/PageViewer.js +64 -0
  131. package/dist/editor/page-viewer/PageViewerFrame.js +696 -0
  132. package/dist/editor/page-viewer/pageViewContext.js +117 -0
  133. package/dist/editor/pageModel.js +2 -0
  134. package/dist/editor/picture-shared.js +28 -0
  135. package/dist/editor/reviews/Comment.js +112 -0
  136. package/dist/editor/reviews/Comments.js +24 -0
  137. package/dist/editor/reviews/PreviewInfo.js +13 -0
  138. package/dist/editor/reviews/Reviews.js +165 -0
  139. package/dist/editor/reviews/reviewCommands.js +44 -0
  140. package/dist/editor/reviews/useReviews.js +48 -0
  141. package/dist/editor/services/aiService.js +99 -0
  142. package/dist/editor/services/componentDesignerService.js +79 -0
  143. package/dist/editor/services/contentService.js +104 -0
  144. package/dist/editor/services/editService.js +322 -0
  145. package/dist/editor/services/indexService.js +25 -0
  146. package/dist/editor/services/reviewsService.js +43 -0
  147. package/dist/editor/services/serviceHelper.js +67 -0
  148. package/dist/editor/services/systemService.js +7 -0
  149. package/dist/editor/services/translationService.js +15 -0
  150. package/dist/editor/services-server/api.js +119 -0
  151. package/dist/editor/services-server/graphQL.js +56 -0
  152. package/dist/editor/sidebar/ComponentPalette.js +55 -0
  153. package/dist/editor/sidebar/ComponentTree.js +362 -0
  154. package/dist/editor/sidebar/Debug.js +60 -0
  155. package/dist/editor/sidebar/DictionaryEditor.js +160 -0
  156. package/dist/editor/sidebar/EditHistory.js +74 -0
  157. package/dist/editor/sidebar/GraphQL.js +115 -0
  158. package/dist/editor/sidebar/Insert.js +24 -0
  159. package/dist/editor/sidebar/MainContentTree.js +52 -0
  160. package/dist/editor/sidebar/Performance.js +34 -0
  161. package/dist/editor/sidebar/Sessions.js +31 -0
  162. package/dist/editor/sidebar/Sidebar.js +15 -0
  163. package/dist/editor/sidebar/SidebarView.js +76 -0
  164. package/dist/editor/sidebar/Translations.js +160 -0
  165. package/dist/editor/sidebar/Validation.js +52 -0
  166. package/dist/editor/sidebar/ViewSelector.js +15 -0
  167. package/dist/editor/sidebar/Workbox.js +80 -0
  168. package/dist/editor/ui/CenteredMessage.js +7 -0
  169. package/dist/editor/ui/CopyToClipboardButton.js +17 -0
  170. package/dist/editor/ui/DialogButtons.js +7 -0
  171. package/dist/editor/ui/Icons.js +75 -0
  172. package/dist/editor/ui/ItemNameDialog.js +45 -0
  173. package/dist/editor/ui/ItemNameDialogNew.js +61 -0
  174. package/dist/editor/ui/ItemSearch.js +93 -0
  175. package/dist/editor/ui/PerfectTree.js +223 -0
  176. package/dist/editor/ui/Section.js +12 -0
  177. package/dist/editor/ui/SimpleIconButton.js +11 -0
  178. package/dist/editor/ui/SimpleMenu.js +9 -0
  179. package/dist/editor/ui/SimpleTable.js +11 -0
  180. package/dist/editor/ui/SimpleTabs.js +21 -0
  181. package/dist/editor/ui/SimpleToolbar.js +7 -0
  182. package/dist/editor/ui/Spinner.js +7 -0
  183. package/dist/editor/ui/Splitter.js +187 -0
  184. package/dist/editor/ui/StackedPanels.js +69 -0
  185. package/dist/editor/ui/Toolbar.js +7 -0
  186. package/dist/editor/utils/id-helper.js +7 -0
  187. package/dist/editor/utils/insertOptions.js +45 -0
  188. package/dist/editor/utils/itemutils.js +25 -0
  189. package/dist/editor/utils/useMemoDebug.js +20 -0
  190. package/dist/editor/utils.js +328 -0
  191. package/dist/editor/views/CompareView.js +147 -0
  192. package/dist/editor/views/EditView.js +17 -0
  193. package/dist/editor/views/ItemEditor.js +24 -0
  194. package/dist/editor/views/SingleEditView.js +25 -0
  195. package/dist/index.js +22 -0
  196. package/dist/page-wizard/PageWizard.js +62 -0
  197. package/dist/page-wizard/SelectWizard.js +43 -0
  198. package/dist/page-wizard/WizardSteps.js +71 -0
  199. package/dist/page-wizard/service.js +26 -0
  200. package/dist/page-wizard/startPageWizardCommand.js +23 -0
  201. package/dist/page-wizard/steps/BuildPageStep.js +138 -0
  202. package/dist/page-wizard/steps/CollectStep.js +124 -0
  203. package/dist/page-wizard/steps/ComponentTypesSelector.js +211 -0
  204. package/dist/page-wizard/steps/Components.js +94 -0
  205. package/dist/page-wizard/steps/CreatePage.js +142 -0
  206. package/dist/page-wizard/steps/CreatePageAndLayoutStep.js +230 -0
  207. package/dist/page-wizard/steps/EditButton.js +7 -0
  208. package/dist/page-wizard/steps/FieldEditor.js +30 -0
  209. package/dist/page-wizard/steps/Generate.js +11 -0
  210. package/dist/page-wizard/steps/ImagesStep.js +159 -0
  211. package/dist/page-wizard/steps/LayoutStep.js +120 -0
  212. package/dist/page-wizard/steps/SelectStep.js +150 -0
  213. package/dist/page-wizard/steps/schema.js +140 -0
  214. package/dist/page-wizard/steps/usePageCreator.js +194 -0
  215. package/dist/splash-screen/NewPage.js +131 -0
  216. package/dist/splash-screen/SectionHeadline.js +9 -0
  217. package/dist/splash-screen/SplashScreen.js +81 -0
  218. package/dist/tour/Tour.js +321 -0
  219. package/dist/tour/default-tour.js +231 -0
  220. package/dist/tour/preview-tour.js +93 -0
  221. package/dist/tsconfig.build.tsbuildinfo +1 -0
  222. package/dist/types.js +2 -0
  223. package/eslint.config.mjs +4 -0
  224. package/images/bg-shape-black.webp +0 -0
  225. package/package.json +52 -0
  226. package/src/client-components/api.ts +6 -0
  227. package/src/client-components/index.ts +19 -0
  228. package/src/components/ActionButton.tsx +43 -0
  229. package/src/components/Error.tsx +57 -0
  230. package/src/config/config.tsx +737 -0
  231. package/src/config/types.ts +263 -0
  232. package/src/editor/ComponentInfo.tsx +77 -0
  233. package/src/editor/ConfirmationDialog.tsx +103 -0
  234. package/src/editor/ContentTree.tsx +654 -0
  235. package/src/editor/ContextMenu.tsx +155 -0
  236. package/src/editor/Editor.tsx +91 -0
  237. package/src/editor/EditorWarning.tsx +34 -0
  238. package/src/editor/EditorWarnings.tsx +33 -0
  239. package/src/editor/FieldEditorPopup.tsx +65 -0
  240. package/src/editor/FieldHistory.tsx +74 -0
  241. package/src/editor/FieldList.tsx +190 -0
  242. package/src/editor/FieldListField.tsx +387 -0
  243. package/src/editor/FieldListFieldWithFallbacks.tsx +211 -0
  244. package/src/editor/FloatingToolbar.tsx +163 -0
  245. package/src/editor/ImageEditor.tsx +129 -0
  246. package/src/editor/InsertMenu.tsx +332 -0
  247. package/src/editor/ItemInfo.tsx +90 -0
  248. package/src/editor/LinkEditorDialog.tsx +192 -0
  249. package/src/editor/MainLayout.tsx +94 -0
  250. package/src/editor/NewEditorClient.tsx +11 -0
  251. package/src/editor/PictureCropper.tsx +505 -0
  252. package/src/editor/PictureEditor.tsx +206 -0
  253. package/src/editor/PictureEditorDialog.tsx +381 -0
  254. package/src/editor/PublishDialog.ignore +74 -0
  255. package/src/editor/ScrollingContentTree.tsx +47 -0
  256. package/src/editor/Terminal.tsx +215 -0
  257. package/src/editor/Titlebar.tsx +23 -0
  258. package/src/editor/ai/AiPopup.tsx +59 -0
  259. package/src/editor/ai/AiResponseMessage.tsx +82 -0
  260. package/src/editor/ai/AiTerminal.tsx +450 -0
  261. package/src/editor/ai/AiToolCall.tsx +46 -0
  262. package/src/editor/ai/EditorAiTerminal.tsx +20 -0
  263. package/src/editor/ai/editorAiContext.ts +18 -0
  264. package/src/editor/client/DialogContext.tsx +49 -0
  265. package/src/editor/client/EditorClient.tsx +1831 -0
  266. package/src/editor/client/GenericDialog.tsx +50 -0
  267. package/src/editor/client/editContext.ts +330 -0
  268. package/src/editor/client/helpers.ts +44 -0
  269. package/src/editor/client/itemsRepository.ts +391 -0
  270. package/src/editor/client/operations.ts +610 -0
  271. package/src/editor/client/pageModelBuilder.ts +182 -0
  272. package/src/editor/commands/commands.ts +23 -0
  273. package/src/editor/commands/componentCommands.tsx +408 -0
  274. package/src/editor/commands/createVersionCommand.ts +33 -0
  275. package/src/editor/commands/deleteVersionCommand.ts +71 -0
  276. package/src/editor/commands/itemCommands.tsx +186 -0
  277. package/src/editor/commands/localizeItem/LocalizeItemDialog.tsx +201 -0
  278. package/src/editor/commands/undo.ts +39 -0
  279. package/src/editor/component-designer/ComponentDesigner.tsx +70 -0
  280. package/src/editor/component-designer/ComponentDesignerAiTerminal.tsx +11 -0
  281. package/src/editor/component-designer/ComponentDesignerMenu.tsx +91 -0
  282. package/src/editor/component-designer/ComponentEditor.tsx +97 -0
  283. package/src/editor/component-designer/ComponentRenderingCodeEditor.tsx +31 -0
  284. package/src/editor/component-designer/ComponentRenderingEditor.tsx +104 -0
  285. package/src/editor/component-designer/ComponentsDropdown.tsx +39 -0
  286. package/src/editor/component-designer/PlaceholdersEditor.tsx +183 -0
  287. package/src/editor/component-designer/RenderingsDropdown.tsx +36 -0
  288. package/src/editor/component-designer/TemplateEditor.tsx +236 -0
  289. package/src/editor/component-designer/aiContext.ts +23 -0
  290. package/src/editor/componentTreeHelper.tsx +114 -0
  291. package/src/editor/control-center/ControlCenterMenu.tsx +71 -0
  292. package/src/editor/control-center/IndexOverview.tsx +50 -0
  293. package/src/editor/control-center/IndexSettings.tsx +266 -0
  294. package/src/editor/control-center/Status.tsx +7 -0
  295. package/src/editor/editor-warnings/ItemLocked.tsx +63 -0
  296. package/src/editor/editor-warnings/NoLanguageWriteAccess.tsx +22 -0
  297. package/src/editor/editor-warnings/NoWorkflowWriteAccess.tsx +23 -0
  298. package/src/editor/editor-warnings/NoWriteAccess.tsx +15 -0
  299. package/src/editor/editor-warnings/ValidationErrors.tsx +54 -0
  300. package/src/editor/field-types/AttachmentEditor.tsx +9 -0
  301. package/src/editor/field-types/CheckboxEditor.tsx +47 -0
  302. package/src/editor/field-types/DropLinkEditor.tsx +75 -0
  303. package/src/editor/field-types/DropListEditor.tsx +84 -0
  304. package/src/editor/field-types/ImageFieldEditor.tsx +65 -0
  305. package/src/editor/field-types/InternalLinkFieldEditor.tsx +112 -0
  306. package/src/editor/field-types/LinkFieldEditor.tsx +85 -0
  307. package/src/editor/field-types/MultiLineText.tsx +63 -0
  308. package/src/editor/field-types/PictureFieldEditor.tsx +121 -0
  309. package/src/editor/field-types/RawEditor.tsx +53 -0
  310. package/src/editor/field-types/ReactQuill.tsx +580 -0
  311. package/src/editor/field-types/RichTextEditor.tsx +22 -0
  312. package/src/editor/field-types/RichTextEditorComponent.tsx +108 -0
  313. package/src/editor/field-types/SingleLineText.tsx +150 -0
  314. package/src/editor/field-types/TreeListEditor.tsx +261 -0
  315. package/src/editor/fieldTypes.ts +140 -0
  316. package/src/editor/media-selector/AiImageSearch.tsx +186 -0
  317. package/src/editor/media-selector/AiImageSearchPrompt.tsx +95 -0
  318. package/src/editor/media-selector/MediaSelector.tsx +42 -0
  319. package/src/editor/media-selector/Preview.tsx +14 -0
  320. package/src/editor/media-selector/Thumbnails.tsx +48 -0
  321. package/src/editor/media-selector/TreeSelector.tsx +292 -0
  322. package/src/editor/media-selector/UploadZone.tsx +137 -0
  323. package/src/editor/menubar/ActionsMenu.tsx +47 -0
  324. package/src/editor/menubar/ActiveUsers.tsx +17 -0
  325. package/src/editor/menubar/ApproveAndPublish.tsx +18 -0
  326. package/src/editor/menubar/BrowseHistory.tsx +37 -0
  327. package/src/editor/menubar/ItemLanguageVersion.tsx +52 -0
  328. package/src/editor/menubar/LanguageSelector.tsx +152 -0
  329. package/src/editor/menubar/Menu.tsx +83 -0
  330. package/src/editor/menubar/NavButtons.tsx +74 -0
  331. package/src/editor/menubar/PageSelector.tsx +139 -0
  332. package/src/editor/menubar/PageViewerControls.tsx +99 -0
  333. package/src/editor/menubar/Separator.tsx +12 -0
  334. package/src/editor/menubar/SiteInfo.tsx +53 -0
  335. package/src/editor/menubar/User.tsx +27 -0
  336. package/src/editor/menubar/VersionSelector.tsx +143 -0
  337. package/src/editor/page-editor-chrome/CommentHighlighting.tsx +287 -0
  338. package/src/editor/page-editor-chrome/CommentHighlightings.tsx +35 -0
  339. package/src/editor/page-editor-chrome/FieldActionIndicator.tsx +44 -0
  340. package/src/editor/page-editor-chrome/FieldActionIndicators.tsx +23 -0
  341. package/src/editor/page-editor-chrome/FieldEditedIndicator.tsx +64 -0
  342. package/src/editor/page-editor-chrome/FieldEditedIndicators.tsx +35 -0
  343. package/src/editor/page-editor-chrome/FrameMenu.tsx +263 -0
  344. package/src/editor/page-editor-chrome/FrameMenus.tsx +48 -0
  345. package/src/editor/page-editor-chrome/InlineEditor.tsx +147 -0
  346. package/src/editor/page-editor-chrome/LockedFieldIndicator.tsx +61 -0
  347. package/src/editor/page-editor-chrome/NoLayout.tsx +36 -0
  348. package/src/editor/page-editor-chrome/PageEditorChrome.tsx +119 -0
  349. package/src/editor/page-editor-chrome/PictureEditorOverlay.tsx +154 -0
  350. package/src/editor/page-editor-chrome/PlaceholderDropZone.tsx +171 -0
  351. package/src/editor/page-editor-chrome/PlaceholderDropZones.tsx +233 -0
  352. package/src/editor/page-viewer/DeviceToolbar.tsx +70 -0
  353. package/src/editor/page-viewer/EditorForm.tsx +247 -0
  354. package/src/editor/page-viewer/MiniMap.tsx +351 -0
  355. package/src/editor/page-viewer/PageViewer.tsx +127 -0
  356. package/src/editor/page-viewer/PageViewerFrame.tsx +1030 -0
  357. package/src/editor/page-viewer/pageViewContext.ts +186 -0
  358. package/src/editor/pageModel.ts +191 -0
  359. package/src/editor/picture-shared.tsx +53 -0
  360. package/src/editor/reviews/Comment.tsx +265 -0
  361. package/src/editor/reviews/Comments.tsx +50 -0
  362. package/src/editor/reviews/PreviewInfo.tsx +35 -0
  363. package/src/editor/reviews/Reviews.tsx +280 -0
  364. package/src/editor/reviews/reviewCommands.tsx +47 -0
  365. package/src/editor/reviews/useReviews.tsx +70 -0
  366. package/src/editor/services/aiService.ts +155 -0
  367. package/src/editor/services/componentDesignerService.ts +151 -0
  368. package/src/editor/services/contentService.ts +159 -0
  369. package/src/editor/services/editService.ts +462 -0
  370. package/src/editor/services/indexService.ts +24 -0
  371. package/src/editor/services/reviewsService.ts +45 -0
  372. package/src/editor/services/serviceHelper.ts +95 -0
  373. package/src/editor/services/systemService.ts +5 -0
  374. package/src/editor/services/translationService.ts +21 -0
  375. package/src/editor/services-server/api.ts +150 -0
  376. package/src/editor/services-server/graphQL.ts +106 -0
  377. package/src/editor/sidebar/ComponentPalette.tsx +146 -0
  378. package/src/editor/sidebar/ComponentTree.tsx +512 -0
  379. package/src/editor/sidebar/ComponentTree2.tsxx +490 -0
  380. package/src/editor/sidebar/Debug.tsx +105 -0
  381. package/src/editor/sidebar/DictionaryEditor.tsx +261 -0
  382. package/src/editor/sidebar/EditHistory.tsx +134 -0
  383. package/src/editor/sidebar/GraphQL.tsx +164 -0
  384. package/src/editor/sidebar/Insert.tsx +35 -0
  385. package/src/editor/sidebar/MainContentTree.tsx +95 -0
  386. package/src/editor/sidebar/Performance.tsx +53 -0
  387. package/src/editor/sidebar/Sessions.tsx +35 -0
  388. package/src/editor/sidebar/Sidebar.tsx +20 -0
  389. package/src/editor/sidebar/SidebarView.tsx +150 -0
  390. package/src/editor/sidebar/Translations.tsx +276 -0
  391. package/src/editor/sidebar/Validation.tsx +102 -0
  392. package/src/editor/sidebar/ViewSelector.tsx +49 -0
  393. package/src/editor/sidebar/Workbox.tsx +209 -0
  394. package/src/editor/ui/CenteredMessage.tsx +7 -0
  395. package/src/editor/ui/CopyToClipboardButton.tsx +23 -0
  396. package/src/editor/ui/DialogButtons.tsx +11 -0
  397. package/src/editor/ui/Icons.tsx +585 -0
  398. package/src/editor/ui/ItemNameDialog.tsx +94 -0
  399. package/src/editor/ui/ItemNameDialogNew.tsx +118 -0
  400. package/src/editor/ui/ItemSearch.tsx +173 -0
  401. package/src/editor/ui/PerfectTree.tsx +550 -0
  402. package/src/editor/ui/Section.tsx +35 -0
  403. package/src/editor/ui/SimpleIconButton.tsx +43 -0
  404. package/src/editor/ui/SimpleMenu.tsx +48 -0
  405. package/src/editor/ui/SimpleTable.tsx +63 -0
  406. package/src/editor/ui/SimpleTabs.tsx +55 -0
  407. package/src/editor/ui/SimpleToolbar.tsx +7 -0
  408. package/src/editor/ui/Spinner.tsx +7 -0
  409. package/src/editor/ui/Splitter.tsx +247 -0
  410. package/src/editor/ui/StackedPanels.tsx +134 -0
  411. package/src/editor/ui/Toolbar.tsx +7 -0
  412. package/src/editor/utils/id-helper.ts +3 -0
  413. package/src/editor/utils/insertOptions.ts +69 -0
  414. package/src/editor/utils/itemutils.ts +29 -0
  415. package/src/editor/utils/useMemoDebug.ts +28 -0
  416. package/src/editor/utils.ts +435 -0
  417. package/src/editor/views/CompareView.tsx +256 -0
  418. package/src/editor/views/EditView.tsx +27 -0
  419. package/src/editor/views/ItemEditor.tsx +58 -0
  420. package/src/editor/views/SingleEditView.tsx +44 -0
  421. package/src/fonts/Geist-Black.woff2 +0 -0
  422. package/src/fonts/Geist-Bold.woff2 +0 -0
  423. package/src/fonts/Geist-ExtraBold.woff2 +0 -0
  424. package/src/fonts/Geist-ExtraLight.woff2 +0 -0
  425. package/src/fonts/Geist-Light.woff2 +0 -0
  426. package/src/fonts/Geist-Medium.woff2 +0 -0
  427. package/src/fonts/Geist-Regular.woff2 +0 -0
  428. package/src/fonts/Geist-SemiBold.woff2 +0 -0
  429. package/src/fonts/Geist-Thin.woff2 +0 -0
  430. package/src/fonts/Geist[wght].woff2 +0 -0
  431. package/src/index.ts +7 -0
  432. package/src/page-wizard/PageWizard.tsx +163 -0
  433. package/src/page-wizard/SelectWizard.tsx +109 -0
  434. package/src/page-wizard/WizardSteps.tsx +207 -0
  435. package/src/page-wizard/service.ts +35 -0
  436. package/src/page-wizard/startPageWizardCommand.ts +27 -0
  437. package/src/page-wizard/steps/BuildPageStep.tsx +266 -0
  438. package/src/page-wizard/steps/CollectStep.tsx +233 -0
  439. package/src/page-wizard/steps/ComponentTypesSelector.tsx +443 -0
  440. package/src/page-wizard/steps/Components.tsx +193 -0
  441. package/src/page-wizard/steps/CreatePage.tsx +285 -0
  442. package/src/page-wizard/steps/CreatePageAndLayoutStep.tsx +384 -0
  443. package/src/page-wizard/steps/EditButton.tsx +34 -0
  444. package/src/page-wizard/steps/FieldEditor.tsx +102 -0
  445. package/src/page-wizard/steps/Generate.tsx +32 -0
  446. package/src/page-wizard/steps/ImagesStep.tsx +318 -0
  447. package/src/page-wizard/steps/LayoutStep.tsx +228 -0
  448. package/src/page-wizard/steps/SelectStep.tsx +256 -0
  449. package/src/page-wizard/steps/schema.ts +180 -0
  450. package/src/page-wizard/steps/usePageCreator.ts +279 -0
  451. package/src/splash-screen/NewPage.tsx +232 -0
  452. package/src/splash-screen/SectionHeadline.tsx +21 -0
  453. package/src/splash-screen/SplashScreen.tsx +156 -0
  454. package/src/tour/Tour.tsx +558 -0
  455. package/src/tour/default-tour.tsx +300 -0
  456. package/src/tour/preview-tour.tsx +127 -0
  457. package/src/types.ts +302 -0
  458. package/styles.css +476 -0
  459. package/tsconfig.build.json +21 -0
  460. package/tsconfig.json +11 -0
@@ -0,0 +1,160 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Translation = Translation;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const button_1 = require("primereact/button");
6
+ const editContext_1 = require("../client/editContext");
7
+ const SimpleTable_1 = require("../ui/SimpleTable");
8
+ const translationService_1 = require("../services/translationService");
9
+ const react_1 = require("react");
10
+ const progressbar_1 = require("primereact/progressbar");
11
+ const checkbox_1 = require("primereact/checkbox");
12
+ const itemutils_1 = require("../utils/itemutils");
13
+ const dropdown_1 = require("primereact/dropdown");
14
+ function Translation() {
15
+ const editContext = (0, editContext_1.useEditContext)();
16
+ const [translationStatus, setTranslationStatus] = (0, react_1.useState)(null);
17
+ const [translationProviders, setTranslationProviders] = (0, react_1.useState)(null);
18
+ const [translationProvider, setTranslationProvider] = (0, react_1.useState)(localStorage.getItem("editor.translationProvider") || null);
19
+ if (!editContext)
20
+ return null;
21
+ (0, react_1.useEffect)(() => {
22
+ if (translationProvider) {
23
+ localStorage.setItem("editor.translationProvider", translationProvider);
24
+ }
25
+ }, [translationProvider]);
26
+ const languages = editContext?.itemLanguages || [];
27
+ const [translationProgress, setTranslationProgress] = (0, react_1.useState)(new Map());
28
+ const item = editContext.contentEditorItem;
29
+ const [checkedLanguages, setCheckedLanguages] = (0, react_1.useState)([]);
30
+ const selectLanguage = (language) => {
31
+ if (!item)
32
+ return;
33
+ if (!language.versions) {
34
+ (0, itemutils_1.confirmCreateVersion)(editContext, language);
35
+ return;
36
+ }
37
+ editContext.loadItem({
38
+ ...item.descriptor,
39
+ language: language.languageCode,
40
+ version: 0,
41
+ });
42
+ };
43
+ const languageName = (language) => {
44
+ return ((0, jsx_runtime_1.jsxs)("div", { className: " flex gap-2", onClick: () => selectLanguage(language), children: [(0, jsx_runtime_1.jsx)("img", { src: language.icon, className: "h-5" }), " ", language.name] }, language.languageCode));
45
+ };
46
+ const translate = async (languageCode) => {
47
+ if (!item)
48
+ return;
49
+ const status = translationStatus?.find((x) => x.targetLanguage === languageCode);
50
+ if (!status)
51
+ return;
52
+ if (status.sourceLanguage === languageCode)
53
+ return;
54
+ setTranslationProgress((p) => {
55
+ p.set(languageCode, { progress: 0, message: "" });
56
+ return new Map(p);
57
+ });
58
+ await (0, translationService_1.requestTranslation)({
59
+ itemId: item.descriptor.id,
60
+ targetLanguage: languageCode,
61
+ sourceLanguage: status.sourceLanguage,
62
+ sessionId: editContext.sessionId,
63
+ provider: translationProvider || "",
64
+ });
65
+ loadTranslationStatus();
66
+ };
67
+ const loadTranslationStatus = async () => {
68
+ if (!item)
69
+ return;
70
+ const status = await (0, translationService_1.getTranslationStatus)(item.descriptor.id);
71
+ setTranslationStatus(status.data || []);
72
+ };
73
+ const loadTranslationProviders = async () => {
74
+ const providers = await (0, translationService_1.getTranslationProviders)();
75
+ setTranslationProviders(providers.data || []);
76
+ if (!translationProvider) {
77
+ setTranslationProvider(providers.data?.[0] || null);
78
+ }
79
+ };
80
+ const createVersions = async () => {
81
+ if (!item)
82
+ return;
83
+ checkedLanguages.forEach((language) => {
84
+ editContext.operations.createVersion({
85
+ id: item.descriptor.id,
86
+ language: language,
87
+ version: 0,
88
+ });
89
+ });
90
+ };
91
+ (0, react_1.useEffect)(() => {
92
+ loadTranslationStatus();
93
+ setTranslationProgress(new Map());
94
+ }, [editContext.currentItemDescriptor?.id]);
95
+ (0, react_1.useEffect)(() => {
96
+ loadTranslationProviders();
97
+ }, []);
98
+ (0, react_1.useEffect)(() => {
99
+ const removeSocketMessageListener = editContext.addSocketMessageListener((message) => {
100
+ if (message.type === "translation-started" ||
101
+ message.type === "translation-finished" ||
102
+ message.type === "translation-error") {
103
+ if (message.payload.itemId === item?.descriptor.id) {
104
+ loadTranslationStatus();
105
+ }
106
+ }
107
+ if (message.type === "translation-progress") {
108
+ if (message.payload.itemId === item?.descriptor.id) {
109
+ setTranslationProgress((p) => {
110
+ p.set(message.payload.language, message.payload);
111
+ return new Map(p);
112
+ });
113
+ }
114
+ }
115
+ });
116
+ return removeSocketMessageListener;
117
+ }, [editContext, setTranslationProgress]);
118
+ const languageData = languages.map((x) => ({
119
+ ...x,
120
+ translationStatus: translationStatus?.find((y) => y.targetLanguage === x.languageCode),
121
+ translationProgress: translationProgress.get(x.languageCode),
122
+ }));
123
+ languageData.sort((a, b) => {
124
+ // Sort languages with 0 versions to bottom
125
+ if (a.versions === 0 && b.versions > 0)
126
+ return 1;
127
+ if (b.versions === 0 && a.versions > 0)
128
+ return -1;
129
+ // Sort by name for languages that both have versions or both don't
130
+ return a.name.localeCompare(b.name);
131
+ });
132
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col gap-2 h-full", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex p-3 gap-2 justify-end items-center w-full bg-gray-50 flex-wrap", children: [(0, jsx_runtime_1.jsx)(dropdown_1.Dropdown, { options: translationProviders || [], onChange: (e) => setTranslationProvider(e.value), value: translationProvider }), (0, jsx_runtime_1.jsx)(button_1.Button, { size: "small", icon: "pi pi-sparkles", onClick: () => {
133
+ checkedLanguages.forEach((x) => translate(x));
134
+ setCheckedLanguages([]);
135
+ }, disabled: checkedLanguages.length === 0, label: "Translate" }), (0, jsx_runtime_1.jsx)(button_1.Button, { size: "small", icon: "pi pi-plus", onClick: () => {
136
+ createVersions();
137
+ setCheckedLanguages([]);
138
+ }, disabled: checkedLanguages.length === 0, label: "Create Versions" })] }), (0, jsx_runtime_1.jsx)("div", { className: "flex-1 relative", children: (0, jsx_runtime_1.jsx)("div", { className: "overflow-y-auto absolute inset-0", children: (0, jsx_runtime_1.jsx)(SimpleTable_1.SimpleTable, { columns: [
139
+ {
140
+ header: "",
141
+ body: (x) => ((0, jsx_runtime_1.jsx)("div", { onClick: (e) => e.stopPropagation(), children: (0, jsx_runtime_1.jsx)(checkbox_1.Checkbox, { checked: checkedLanguages.includes(x.languageCode), onChange: (ev) => {
142
+ setCheckedLanguages(ev.checked
143
+ ? [...checkedLanguages, x.languageCode]
144
+ : checkedLanguages.filter((y) => y !== x.languageCode));
145
+ } }) })),
146
+ },
147
+ { header: "Language", body: languageName },
148
+ { header: "Ver.", body: (x) => x.versions.toString() },
149
+ {
150
+ header: "Src",
151
+ body: (x) => x.translationStatus?.sourceLanguage,
152
+ },
153
+ {
154
+ header: "Status",
155
+ body: (x) => ((0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-2", children: [x.translationStatus?.status === "In Progress" && ((0, jsx_runtime_1.jsxs)("div", { className: "w-full relative", children: [(0, jsx_runtime_1.jsx)(progressbar_1.ProgressBar, { style: { height: "20px" }, value: (x.translationProgress?.progress || 0) * 100, showValue: false }), (0, jsx_runtime_1.jsx)("div", { className: "absolute inset-0 flex items-center justify-center text-white", children: x.translationProgress?.message })] })), x.translationStatus?.status !== "In Progress" && ((0, jsx_runtime_1.jsx)("div", { title: x.translationStatus?.message, children: x.translationStatus?.status || "Not started" }))] })),
156
+ },
157
+ ], items: languageData, onRowClick: (data) => selectLanguage(data.item), rowClassName: (item) => item.languageCode == editContext.currentItemDescriptor?.language
158
+ ? "bg-neutral-100"
159
+ : "" }) }) })] }));
160
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Validation = Validation;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const progressspinner_1 = require("primereact/progressspinner");
6
+ const editContext_1 = require("../client/editContext");
7
+ const SimpleTable_1 = require("../ui/SimpleTable");
8
+ function Validation() {
9
+ const editContext = (0, editContext_1.useEditContext)();
10
+ const validationResults = editContext?.validationResult?.flatMap((x) => x.results.map((y) => ({
11
+ ...y,
12
+ language: x.item.language,
13
+ version: x.item.version,
14
+ })));
15
+ if (!validationResults)
16
+ return null;
17
+ const nameBodyTemplate = (validationResult) => {
18
+ const id = validationResult.itemId +
19
+ validationResult.language +
20
+ validationResult.version;
21
+ return ((0, jsx_runtime_1.jsx)("div", { className: "flex gap-2 items-center", children: (0, jsx_runtime_1.jsxs)("span", { className: `name-tooltip-${id} break-all`, style: { position: "relative" }, children: [validationResult.itemName, " ", (0, jsx_runtime_1.jsxs)("span", { className: "text-gray-500", children: ["(", validationResult.language, ", ", validationResult.itemName, ")"] })] }) }));
22
+ };
23
+ const validationTemplate = (validationResult) => {
24
+ return (0, jsx_runtime_1.jsx)("div", { children: validationResult.message });
25
+ };
26
+ const columns = [
27
+ { body: nameBodyTemplate, header: "Item" },
28
+ {
29
+ body: validationTemplate,
30
+ align: "center",
31
+ header: (0, jsx_runtime_1.jsx)("i", { className: "pi pi-check" }),
32
+ },
33
+ ];
34
+ if (validationResults.length === 0) {
35
+ return ((0, jsx_runtime_1.jsx)("div", { className: "text-gray-600 text-sm text-center p-4", children: "No validation results" }));
36
+ }
37
+ return ((0, jsx_runtime_1.jsxs)("div", { children: [editContext?.validating && ((0, jsx_runtime_1.jsx)("div", { className: "text-center p-3", children: (0, jsx_runtime_1.jsx)(progressspinner_1.ProgressSpinner, { style: { width: "20px", height: "20px" } }) })), !editContext?.validating && ((0, jsx_runtime_1.jsx)(SimpleTable_1.SimpleTable, { items: validationResults, columns: columns, onRowClick: async (data) => {
38
+ const itemDescriptor = {
39
+ id: data.item.itemId,
40
+ language: data.item.language,
41
+ version: data.item.version,
42
+ };
43
+ const item = await editContext?.itemsRepository.getItem(itemDescriptor);
44
+ if (!item || !editContext)
45
+ return;
46
+ editContext.setCenterPanelView(editContext.configuration.editor.views.find((x) => x.name === "content-editor")?.defaultCenterPanelView);
47
+ editContext.setFocusedField({
48
+ item: itemDescriptor,
49
+ fieldId: data.item.fieldId,
50
+ }, true);
51
+ } }))] }));
52
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViewSelector = ViewSelector;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const utils_1 = require("primereact/utils");
6
+ const editContext_1 = require("../client/editContext");
7
+ function ViewSelector() {
8
+ const editContext = (0, editContext_1.useEditContext)();
9
+ const views = editContext?.configuration.editor.views.filter((x) => !x.hidden) ?? [];
10
+ return ((0, jsx_runtime_1.jsx)("div", { className: "shadow-right-soft z-10 flex w-11 max-w-11 flex-col gap-1 bg-gray-100", children: views
11
+ .filter((x) => x.icon)
12
+ .map((x, i) => ((0, jsx_runtime_1.jsx)("div", { title: x.title, className: (0, utils_1.classNames)(editContext?.viewName == x.name
13
+ ? "active text-gray-900"
14
+ : "text-gray-400 hover:text-gray-900", "cursor-pointer p-3"), "data-sidebarview-name": x.name, onClick: () => editContext?.switchView(x.name), children: typeof x.icon === "string" ? ((0, jsx_runtime_1.jsx)("i", { className: (0, utils_1.classNames)(x.icon), style: { fontSize: "1.25rem" } })) : (x.icon) }, i))) }));
15
+ }
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Workbox = Workbox;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const editContext_1 = require("../client/editContext");
6
+ const tooltip_1 = require("primereact/tooltip");
7
+ const button_1 = require("primereact/button");
8
+ const react_1 = require("react");
9
+ const overlaypanel_1 = require("primereact/overlaypanel");
10
+ const utils_1 = require("primereact/utils");
11
+ const SimpleTable_1 = require("../ui/SimpleTable");
12
+ function Workbox() {
13
+ const [validationOverlayItem, setValidationOverlayItem] = (0, react_1.useState)();
14
+ const editContext = (0, editContext_1.useEditContext)();
15
+ const validationResult = editContext?.validationResult;
16
+ if (!editContext)
17
+ return null;
18
+ const validationOverlay = (0, react_1.useRef)(null);
19
+ const nameBodyTemplate = (wbItem) => {
20
+ const id = wbItem.item.id + wbItem.item.language + wbItem.item.version;
21
+ return ((0, jsx_runtime_1.jsx)("div", { className: "flex gap-2 items-center", children: (0, jsx_runtime_1.jsxs)("span", { className: `name-tooltip-${id} break-all`, style: { position: "relative" }, children: [wbItem.name, " ", (0, jsx_runtime_1.jsxs)("span", { className: "text-gray-500", children: ["(", wbItem.item.language, ", ", wbItem.item.version, ")"] }), (0, jsx_runtime_1.jsx)(tooltip_1.Tooltip, { target: `.a-name-tooltip-${id}`, content: wbItem.path })] }) }));
22
+ };
23
+ const stateBodyTemplate = (item) => {
24
+ if (item.isPublishable) {
25
+ const targets = Object.keys(item.publishStatus);
26
+ return targets.map((x) => ((0, jsx_runtime_1.jsxs)("div", { children: [targets.length > 1 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("b", { children: x }), ":"] })), item.publishStatus[x]] }, x)));
27
+ }
28
+ else
29
+ return item.workflowState;
30
+ };
31
+ const actionsBodyTemplate = (item) => {
32
+ return ((0, jsx_runtime_1.jsx)("div", { className: "flex flex-wrap gap-1", children: !item.isFinalState &&
33
+ item.workflowCommands?.map((action) => {
34
+ return ((0, jsx_runtime_1.jsx)(button_1.Button, { label: action.name, className: "text-xs p-1", onClick: () => editContext.operations.executeWorkflowCommand(item.item, action.id), size: "small" }, action.id));
35
+ }) }));
36
+ };
37
+ const validationTemplate = (item) => {
38
+ const validator = validationResult?.find((x) => x.item.id === item.item.id &&
39
+ x.item.language === item.item.language &&
40
+ x.item.version === item.item.version);
41
+ if (!validator || !validator.results.length)
42
+ return null;
43
+ return ((0, jsx_runtime_1.jsx)("div", { className: (0, utils_1.classNames)("cursor-pointer", getValidationErrorLevelClass(validator.results.reduce((prev, curr) => Math.max(prev, curr.result), 0))), onClick: (ev) => {
44
+ setValidationOverlayItem(item);
45
+ validationOverlay.current?.toggle(ev);
46
+ }, children: validator.results.length }));
47
+ };
48
+ if (!editContext.workboxItems)
49
+ return null;
50
+ const overlayResult = validationResult?.find((x) => x.item.id === validationOverlayItem?.item.id &&
51
+ x.item.language === validationOverlayItem?.item.language &&
52
+ x.item.version === validationOverlayItem?.item.version);
53
+ const getValidationErrorLevelClass = (level) => {
54
+ switch (level) {
55
+ case 0:
56
+ return "text-green-600";
57
+ case 1:
58
+ return "text-blue-600";
59
+ case 2:
60
+ return "text-yellow-600";
61
+ case 3:
62
+ return "text-orange-600";
63
+ case 4:
64
+ case 5:
65
+ return "text-red-600";
66
+ }
67
+ };
68
+ const columns = [
69
+ { body: nameBodyTemplate, header: "Item" },
70
+ { body: stateBodyTemplate, header: "State" },
71
+ { body: actionsBodyTemplate, header: "Actions" },
72
+ {
73
+ body: validationTemplate,
74
+ align: "center",
75
+ header: (0, jsx_runtime_1.jsx)("i", { className: "pi pi-check" }),
76
+ },
77
+ ];
78
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(SimpleTable_1.SimpleTable, { items: editContext.workboxItems, columns: columns }), (0, jsx_runtime_1.jsx)(overlaypanel_1.OverlayPanel, { ref: validationOverlay, children: (0, jsx_runtime_1.jsxs)("table", { className: "text-xs border-spacing-1 border-separate m-3", children: [(0, jsx_runtime_1.jsx)("thead", { children: (0, jsx_runtime_1.jsxs)("tr", { children: [(0, jsx_runtime_1.jsx)("th", { className: "text-left", children: "Item" }), (0, jsx_runtime_1.jsx)("th", { className: "text-left", children: "Field" }), (0, jsx_runtime_1.jsx)("th", { className: "text-left", children: "Validator" }), (0, jsx_runtime_1.jsx)("th", { className: "text-left", children: "Message" })] }) }), (0, jsx_runtime_1.jsx)("tbody", { children: overlayResult &&
79
+ overlayResult.results.map((x) => ((0, jsx_runtime_1.jsxs)("tr", { children: [(0, jsx_runtime_1.jsx)("td", { children: x.itemName }), (0, jsx_runtime_1.jsx)("td", { children: x.fieldName }), (0, jsx_runtime_1.jsx)("td", { children: x.validator }), (0, jsx_runtime_1.jsx)("td", { className: (0, utils_1.classNames)("text-xs break-all max-w-48", getValidationErrorLevelClass(x.result)), children: x.message })] }, x.fieldId + x.itemId))) })] }) })] }));
80
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CenteredMessage = CenteredMessage;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ function CenteredMessage({ children }) {
6
+ return ((0, jsx_runtime_1.jsx)("div", { className: "flex justify-center items-center h-full text-gray-500", children: children }));
7
+ }
@@ -0,0 +1,17 @@
1
+ "use client";
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.CopyToClipboardButton = CopyToClipboardButton;
5
+ const jsx_runtime_1 = require("react/jsx-runtime");
6
+ const editContext_1 = require("../client/editContext");
7
+ function CopyToClipboardButton({ text }) {
8
+ const editContext = (0, editContext_1.useEditContext)();
9
+ const handleCopyToClipboard = (text) => {
10
+ navigator.clipboard.writeText(text);
11
+ editContext.showToast({
12
+ summary: "Copied to clipboard",
13
+ severity: "success",
14
+ });
15
+ };
16
+ return ((0, jsx_runtime_1.jsx)("span", { className: "ml-1 cursor-pointer", onClick: () => handleCopyToClipboard(text), children: (0, jsx_runtime_1.jsx)("i", { className: "pi pi-copy text-xs" }) }));
17
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = DialogButtons;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ function DialogButtons({ children, }) {
6
+ return ((0, jsx_runtime_1.jsx)("div", { className: "flex justify-end gap-3 p-4 border-t", children: children }));
7
+ }
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WizardIcon = WizardIcon;
4
+ exports.BugIcon = BugIcon;
5
+ exports.EditIcon = EditIcon;
6
+ exports.JsonIcon = JsonIcon;
7
+ exports.GraphQLIcon = GraphQLIcon;
8
+ exports.ArrowDownIcon = ArrowDownIcon;
9
+ exports.ArrowRightIcon = ArrowRightIcon;
10
+ exports.PuzzleIcon = PuzzleIcon;
11
+ exports.NavigatorIcon = NavigatorIcon;
12
+ exports.FormEditIcon = FormEditIcon;
13
+ exports.RotateDeviceIcon = RotateDeviceIcon;
14
+ exports.CompareIcon = CompareIcon;
15
+ exports.CommentIcon = CommentIcon;
16
+ exports.PageWizardIcon = PageWizardIcon;
17
+ exports.PageWizardLogo = PageWizardLogo;
18
+ exports.UploadCloudIcon = UploadCloudIcon;
19
+ exports.SparkleIconBig = SparkleIconBig;
20
+ exports.SparkleIconSmall = SparkleIconSmall;
21
+ const jsx_runtime_1 = require("react/jsx-runtime");
22
+ function WizardIcon({ className }) {
23
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: "1.5", stroke: "currentColor", className: className, children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M9.813 15.904 9 18.75l-.813-2.846a4.5 4.5 0 0 0-3.09-3.09L2.25 12l2.846-.813a4.5 4.5 0 0 0 3.09-3.09L9 5.25l.813 2.846a4.5 4.5 0 0 0 3.09 3.09L15.75 12l-2.846.813a4.5 4.5 0 0 0-3.09 3.09ZM18.259 8.715 18 9.75l-.259-1.035a3.375 3.375 0 0 0-2.455-2.456L14.25 6l1.036-.259a3.375 3.375 0 0 0 2.455-2.456L18 2.25l.259 1.035a3.375 3.375 0 0 0 2.456 2.456L21.75 6l-1.035.259a3.375 3.375 0 0 0-2.456 2.456ZM16.894 20.567 16.5 21.75l-.394-1.183a2.25 2.25 0 0 0-1.423-1.423L13.5 18.75l1.183-.394a2.25 2.25 0 0 0 1.423-1.423l.394-1.183.394 1.183a2.25 2.25 0 0 0 1.423 1.423l1.183.394-1.183.394a2.25 2.25 0 0 0-1.423 1.423Z" }) }));
24
+ }
25
+ function BugIcon({ className }) {
26
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: className, children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M12 12.75c1.148 0 2.278.08 3.383.237 1.037.146 1.866.966 1.866 2.013 0 3.728-2.35 6.75-5.25 6.75S6.75 18.728 6.75 15c0-1.046.83-1.867 1.866-2.013A24.204 24.204 0 0 1 12 12.75Zm0 0c2.883 0 5.647.508 8.207 1.44a23.91 23.91 0 0 1-1.152 6.06M12 12.75c-2.883 0-5.647.508-8.208 1.44.125 2.104.52 4.136 1.153 6.06M12 12.75a2.25 2.25 0 0 0 2.248-2.354M12 12.75a2.25 2.25 0 0 1-2.248-2.354M12 8.25c.995 0 1.971-.08 2.922-.236.403-.066.74-.358.795-.762a3.778 3.778 0 0 0-.399-2.25M12 8.25c-.995 0-1.97-.08-2.922-.236-.402-.066-.74-.358-.795-.762a3.734 3.734 0 0 1 .4-2.253M12 8.25a2.25 2.25 0 0 0-2.248 2.146M12 8.25a2.25 2.25 0 0 1 2.248 2.146M8.683 5a6.032 6.032 0 0 1-1.155-1.002c.07-.63.27-1.222.574-1.747m.581 2.749A3.75 3.75 0 0 1 15.318 5m0 0c.427-.283.815-.62 1.155-.999a4.471 4.471 0 0 0-.575-1.752M4.921 6a24.048 24.048 0 0 0-.392 3.314c1.668.546 3.416.914 5.223 1.082M19.08 6c.205 1.08.337 2.187.392 3.314a23.882 23.882 0 0 1-5.223 1.082" }) }));
27
+ }
28
+ function EditIcon({ className }) {
29
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: className, children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897l8.932-8.931Zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10" }) }));
30
+ }
31
+ function JsonIcon({ className }) {
32
+ return ((0, jsx_runtime_1.jsx)("svg", { fill: "#000000", version: "1.1", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 58 58", className: className, children: (0, jsx_runtime_1.jsxs)("g", { children: [(0, jsx_runtime_1.jsx)("path", { d: "M50.949,12.187l-1.361-1.361l-9.504-9.505c-0.001-0.001-0.001-0.001-0.002-0.001l-0.77-0.771\r\n\t\tC38.957,0.195,38.486,0,37.985,0H8.963C7.776,0,6.5,0.916,6.5,2.926V39v16.537V56c0,0.837,0.841,1.652,1.836,1.909\r\n\t\tc0.051,0.014,0.1,0.033,0.152,0.043C8.644,57.983,8.803,58,8.963,58h40.074c0.16,0,0.319-0.017,0.475-0.048\r\n\t\tc0.052-0.01,0.101-0.029,0.152-0.043C50.659,57.652,51.5,56.837,51.5,56v-0.463V39V13.978C51.5,13.211,51.407,12.644,50.949,12.187\r\n\t\tz M39.5,3.565L47.935,12H39.5V3.565z M8.963,56c-0.071,0-0.135-0.025-0.198-0.049C8.61,55.877,8.5,55.721,8.5,55.537V41h41v14.537\r\n\t\tc0,0.184-0.11,0.34-0.265,0.414C49.172,55.975,49.108,56,49.037,56H8.963z M8.5,39V2.926C8.5,2.709,8.533,2,8.963,2h28.595\r\n\t\tC37.525,2.126,37.5,2.256,37.5,2.391V13.78c-0.532-0.48-1.229-0.78-2-0.78c-0.553,0-1,0.448-1,1s0.447,1,1,1c0.552,0,1,0.449,1,1v4\r\n\t\tc0,1.2,0.542,2.266,1.382,3c-0.84,0.734-1.382,1.8-1.382,3v4c0,0.551-0.448,1-1,1c-0.553,0-1,0.448-1,1s0.447,1,1,1\r\n\t\tc1.654,0,3-1.346,3-3v-4c0-1.103,0.897-2,2-2c0.553,0,1-0.448,1-1s-0.447-1-1-1c-1.103,0-2-0.897-2-2v-4\r\n\t\tc0-0.771-0.301-1.468-0.78-2h11.389c0.135,0,0.265-0.025,0.391-0.058c0,0.015,0.001,0.021,0.001,0.036V39H8.5z" }), (0, jsx_runtime_1.jsx)("path", { d: "M16.354,51.43c-0.019,0.446-0.171,0.764-0.458,0.95s-0.672,0.28-1.155,0.28c-0.191,0-0.396-0.022-0.615-0.068\r\n\t\ts-0.429-0.098-0.629-0.157s-0.385-0.123-0.554-0.191s-0.299-0.135-0.39-0.198l-0.697,1.107c0.183,0.137,0.405,0.26,0.67,0.369\r\n\t\ts0.54,0.207,0.827,0.294s0.565,0.15,0.834,0.191s0.504,0.062,0.704,0.062c0.401,0,0.791-0.039,1.169-0.116\r\n\t\tc0.378-0.077,0.713-0.214,1.005-0.41s0.524-0.456,0.697-0.779s0.26-0.723,0.26-1.196v-7.848h-1.668V51.43z" }), (0, jsx_runtime_1.jsx)("path", { d: "M25.083,49.064c-0.314-0.228-0.654-0.422-1.019-0.581s-0.702-0.323-1.012-0.492s-0.569-0.364-0.779-0.588\r\n\t\ts-0.314-0.518-0.314-0.882c0-0.146,0.036-0.299,0.109-0.458s0.173-0.303,0.301-0.431s0.273-0.234,0.438-0.321\r\n\t\ts0.337-0.139,0.52-0.157c0.328-0.027,0.597-0.032,0.807-0.014s0.378,0.05,0.506,0.096s0.226,0.091,0.294,0.137\r\n\t\ts0.13,0.082,0.185,0.109c0.009-0.009,0.036-0.055,0.082-0.137s0.101-0.185,0.164-0.308s0.132-0.255,0.205-0.396\r\n\t\ts0.137-0.271,0.191-0.39c-0.265-0.173-0.61-0.299-1.039-0.376s-0.853-0.116-1.271-0.116c-0.41,0-0.8,0.063-1.169,0.191\r\n\t\ts-0.692,0.313-0.971,0.554s-0.499,0.535-0.663,0.882S20.4,46.13,20.4,46.576c0,0.492,0.104,0.902,0.314,1.23\r\n\t\ts0.474,0.613,0.793,0.854s0.661,0.451,1.025,0.629s0.704,0.355,1.019,0.533s0.576,0.376,0.786,0.595s0.314,0.483,0.314,0.793\r\n\t\tc0,0.511-0.148,0.896-0.444,1.155s-0.723,0.39-1.278,0.39c-0.183,0-0.378-0.019-0.588-0.055s-0.419-0.084-0.629-0.144\r\n\t\ts-0.412-0.123-0.608-0.191s-0.357-0.139-0.485-0.212l-0.287,1.176c0.155,0.137,0.34,0.253,0.554,0.349s0.439,0.171,0.677,0.226\r\n\t\tc0.237,0.055,0.472,0.094,0.704,0.116s0.458,0.034,0.677,0.034c0.511,0,0.966-0.077,1.367-0.232s0.738-0.362,1.012-0.622\r\n\t\ts0.485-0.561,0.636-0.902s0.226-0.695,0.226-1.06c0-0.538-0.104-0.978-0.314-1.319S25.397,49.292,25.083,49.064z" }), (0, jsx_runtime_1.jsx)("path", { d: "M34.872,45.072c-0.378-0.429-0.82-0.754-1.326-0.978s-1.06-0.335-1.661-0.335s-1.155,0.111-1.661,0.335\r\n\t\ts-0.948,0.549-1.326,0.978s-0.675,0.964-0.889,1.606s-0.321,1.388-0.321,2.235s0.107,1.595,0.321,2.242s0.511,1.185,0.889,1.613\r\n\t\ts0.82,0.752,1.326,0.971s1.06,0.328,1.661,0.328s1.155-0.109,1.661-0.328s0.948-0.542,1.326-0.971s0.675-0.966,0.889-1.613\r\n\t\ts0.321-1.395,0.321-2.242s-0.107-1.593-0.321-2.235S35.25,45.501,34.872,45.072z M34.195,50.698\r\n\t\tc-0.137,0.487-0.326,0.882-0.567,1.183s-0.515,0.518-0.82,0.649s-0.627,0.198-0.964,0.198c-0.328,0-0.641-0.07-0.937-0.212\r\n\t\ts-0.561-0.364-0.793-0.67s-0.415-0.699-0.547-1.183s-0.203-1.066-0.212-1.75c0.009-0.702,0.082-1.294,0.219-1.777\r\n\t\tc0.137-0.483,0.326-0.877,0.567-1.183s0.515-0.521,0.82-0.649s0.627-0.191,0.964-0.191c0.328,0,0.641,0.068,0.937,0.205\r\n\t\ts0.561,0.36,0.793,0.67s0.415,0.704,0.547,1.183s0.203,1.06,0.212,1.743C34.405,49.616,34.332,50.211,34.195,50.698z" }), (0, jsx_runtime_1.jsx)("polygon", { points: "44.012,50.869 40.061,43.924 38.393,43.924 38.393,54 40.061,54 40.061,47.055 44.012,54 45.68,54 45.68,43.924 \r\n\t\t44.012,43.924 \t" }), (0, jsx_runtime_1.jsx)("path", { d: "M20.5,20v-4c0-0.551,0.448-1,1-1c0.553,0,1-0.448,1-1s-0.447-1-1-1c-1.654,0-3,1.346-3,3v4c0,1.103-0.897,2-2,2\r\n\t\tc-0.553,0-1,0.448-1,1s0.447,1,1,1c1.103,0,2,0.897,2,2v4c0,1.654,1.346,3,3,3c0.553,0,1-0.448,1-1s-0.447-1-1-1\r\n\t\tc-0.552,0-1-0.449-1-1v-4c0-1.2-0.542-2.266-1.382-3C19.958,22.266,20.5,21.2,20.5,20z" }), (0, jsx_runtime_1.jsx)("circle", { cx: "28.5", cy: "19.5", r: "1.5" }), (0, jsx_runtime_1.jsx)("path", { d: "M28.5,25c-0.553,0-1,0.448-1,1v3c0,0.552,0.447,1,1,1s1-0.448,1-1v-3C29.5,25.448,29.053,25,28.5,25z" })] }) }));
33
+ }
34
+ function GraphQLIcon({ className }) {
35
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", version: "1.1", id: "GraphQL_Logo", x: "0px", y: "0px", viewBox: "0 0 400 400", enableBackground: "new 0 0 400 400", className: className, children: (0, jsx_runtime_1.jsxs)("g", { children: [(0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "122", y: "-0.4", transform: "matrix(-0.866 -0.5 0.5 -0.866 163.3196 363.3136)", fill: "#E535AB", width: "16.6", height: "320.3" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "39.8", y: "272.2", fill: "#E535AB", width: "320.3", height: "16.6" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "37.9", y: "312.2", transform: "matrix(-0.866 -0.5 0.5 -0.866 83.0693 663.3409)", fill: "#E535AB", width: "185", height: "16.6" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "177.1", y: "71.1", transform: "matrix(-0.866 -0.5 0.5 -0.866 463.3409 283.0693)", fill: "#E535AB", width: "185", height: "16.6" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "122.1", y: "-13", transform: "matrix(-0.5 -0.866 0.866 -0.5 126.7903 232.1221)", fill: "#E535AB", width: "16.6", height: "185" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "109.6", y: "151.6", transform: "matrix(-0.5 -0.866 0.866 -0.5 266.0828 473.3766)", fill: "#E535AB", width: "320.3", height: "16.6" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "52.5", y: "107.5", fill: "#E535AB", width: "16.6", height: "185" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "330.9", y: "107.5", fill: "#E535AB", width: "16.6", height: "185" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("rect", { x: "262.4", y: "240.1", transform: "matrix(-0.5 -0.866 0.866 -0.5 126.7953 714.2875)", fill: "#E535AB", width: "14.5", height: "160.9" }) }) }), (0, jsx_runtime_1.jsx)("path", { fill: "#E535AB", d: "M369.5,297.9c-9.6,16.7-31,22.4-47.7,12.8c-16.7-9.6-22.4-31-12.8-47.7c9.6-16.7,31-22.4,47.7-12.8 C373.5,259.9,379.2,281.2,369.5,297.9" }), (0, jsx_runtime_1.jsx)("path", { fill: "#E535AB", d: "M90.9,137c-9.6,16.7-31,22.4-47.7,12.8c-16.7-9.6-22.4-31-12.8-47.7c9.6-16.7,31-22.4,47.7-12.8 C94.8,99,100.5,120.3,90.9,137" }), (0, jsx_runtime_1.jsx)("path", { fill: "#E535AB", d: "M30.5,297.9c-9.6-16.7-3.9-38,12.8-47.7c16.7-9.6,38-3.9,47.7,12.8c9.6,16.7,3.9,38-12.8,47.7 C61.4,320.3,40.1,314.6,30.5,297.9" }), (0, jsx_runtime_1.jsx)("path", { fill: "#E535AB", d: "M309.1,137c-9.6-16.7-3.9-38,12.8-47.7c16.7-9.6,38-3.9,47.7,12.8c9.6,16.7,3.9,38-12.8,47.7 C340.1,159.4,318.7,153.7,309.1,137" }), (0, jsx_runtime_1.jsx)("path", { fill: "#E535AB", d: "M200,395.8c-19.3,0-34.9-15.6-34.9-34.9c0-19.3,15.6-34.9,34.9-34.9c19.3,0,34.9,15.6,34.9,34.9 C234.9,380.1,219.3,395.8,200,395.8" }), (0, jsx_runtime_1.jsx)("path", { fill: "#E535AB", d: "M200,74c-19.3,0-34.9-15.6-34.9-34.9c0-19.3,15.6-34.9,34.9-34.9c19.3,0,34.9,15.6,34.9,34.9 C234.9,58.4,219.3,74,200,74" })] }) }));
36
+ }
37
+ function ArrowDownIcon() {
38
+ return ((0, jsx_runtime_1.jsx)("svg", { width: "10", height: "5", viewBox: "0 0 10 5", fill: "currentColor", stroke: "currentColor", xmlns: "http://www.w3.org/2000/svg", children: (0, jsx_runtime_1.jsx)("path", { d: "M5 5L9.33013 0.5H0.669873L5 5Z" }) }));
39
+ }
40
+ function ArrowRightIcon() {
41
+ return ((0, jsx_runtime_1.jsx)("svg", { width: "5", height: "10", viewBox: "0 0 5 10", fill: "currentColor", stroke: "currentColor", xmlns: "http://www.w3.org/2000/svg", children: (0, jsx_runtime_1.jsx)("path", { d: "M5 5L0.669873 9.33013V0.669873L5 5Z" }) }));
42
+ }
43
+ function PuzzleIcon() {
44
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: "1.5", stroke: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M14.25 6.087c0-.355.186-.676.401-.959.221-.29.349-.634.349-1.003 0-1.036-1.007-1.875-2.25-1.875s-2.25.84-2.25 1.875c0 .369.128.713.349 1.003.215.283.401.604.401.959v0a.64.64 0 0 1-.657.643 48.39 48.39 0 0 1-4.163-.3c.186 1.613.293 3.25.315 4.907a.656.656 0 0 1-.658.663v0c-.355 0-.676-.186-.959-.401a1.647 1.647 0 0 0-1.003-.349c-1.036 0-1.875 1.007-1.875 2.25s.84 2.25 1.875 2.25c.369 0 .713-.128 1.003-.349.283-.215.604-.401.959-.401v0c.31 0 .555.26.532.57a48.039 48.039 0 0 1-.642 5.056c1.518.19 3.058.309 4.616.354a.64.64 0 0 0 .657-.643v0c0-.355-.186-.676-.401-.959a1.647 1.647 0 0 1-.349-1.003c0-1.035 1.008-1.875 2.25-1.875 1.243 0 2.25.84 2.25 1.875 0 .369-.128.713-.349 1.003-.215.283-.4.604-.4.959v0c0 .333.277.599.61.58a48.1 48.1 0 0 0 5.427-.63 48.05 48.05 0 0 0 .582-4.717.532.532 0 0 0-.533-.57v0c-.355 0-.676.186-.959.401-.29.221-.634.349-1.003.349-1.035 0-1.875-1.007-1.875-2.25s.84-2.25 1.875-2.25c.37 0 .713.128 1.003.349.283.215.604.401.96.401v0a.656.656 0 0 0 .658-.663 48.422 48.422 0 0 0-.37-5.36c-1.886.342-3.81.574-5.766.689a.578.578 0 0 1-.61-.58v0Z" }) }));
45
+ }
46
+ function NavigatorIcon() {
47
+ return ((0, jsx_runtime_1.jsx)("svg", { width: "18", height: "16", viewBox: "0 0 16 14", fill: "none", xmlns: "http://www.w3.org/2000/svg", stroke: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { d: "M8.27572 8.58057L0.942383 4.58057L8.27572 0.580566L15.609 4.58057L8.27572 8.58057ZM8.27572 11.2472L1.32572 7.4639L2.72572 6.69723L8.27572 9.73057L13.8257 6.69723L15.2257 7.4639L8.27572 11.2472ZM8.27572 13.9139L1.32572 10.1306L2.72572 9.3639L8.27572 12.3972L13.8257 9.3639L15.2257 10.1306L8.27572 13.9139ZM8.27572 7.0639L12.8257 4.58057L8.27572 2.09723L3.72572 4.58057L8.27572 7.0639Z", fill: "#6b7280" }) }));
48
+ }
49
+ function FormEditIcon({ className }) {
50
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", strokeWidth: 1.5, stroke: "currentColor", className: className, children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M3.375 19.5h17.25m-17.25 0a1.125 1.125 0 0 1-1.125-1.125M3.375 19.5h7.5c.621 0 1.125-.504 1.125-1.125m-9.75 0V5.625m0 12.75v-1.5c0-.621.504-1.125 1.125-1.125m18.375 2.625V5.625m0 12.75c0 .621-.504 1.125-1.125 1.125m1.125-1.125v-1.5c0-.621-.504-1.125-1.125-1.125m0 3.75h-7.5A1.125 1.125 0 0 1 12 18.375m9.75-12.75c0-.621-.504-1.125-1.125-1.125H3.375c-.621 0-1.125.504-1.125 1.125m19.5 0v1.5c0 .621-.504 1.125-1.125 1.125M2.25 5.625v1.5c0 .621.504 1.125 1.125 1.125m0 0h17.25m-17.25 0h7.5c.621 0 1.125.504 1.125 1.125M3.375 8.25c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125m17.25-3.75h-7.5c-.621 0-1.125.504-1.125 1.125m8.625-1.125c.621 0 1.125.504 1.125 1.125v1.5c0 .621-.504 1.125-1.125 1.125m-17.25 0h7.5m-7.5 0c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125M12 10.875v-1.5m0 1.5c0 .621-.504 1.125-1.125 1.125M12 10.875c0 .621.504 1.125 1.125 1.125m-2.25 0c.621 0 1.125.504 1.125 1.125M13.125 12h7.5m-7.5 0c-.621 0-1.125.504-1.125 1.125M20.625 12c.621 0 1.125.504 1.125 1.125v1.5c0 .621-.504 1.125-1.125 1.125m-17.25 0h7.5M12 14.625v-1.5m0 1.5c0 .621-.504 1.125-1.125 1.125M12 14.625c0 .621.504 1.125 1.125 1.125m-2.25 0c.621 0 1.125.504 1.125 1.125m0 1.5v-1.5m0 0c0-.621.504-1.125 1.125-1.125m0 0h7.5" }) }));
51
+ }
52
+ function RotateDeviceIcon({ className }) {
53
+ return ((0, jsx_runtime_1.jsxs)("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", className: className, stroke: "currentColor", fill: "currentColor", children: [(0, jsx_runtime_1.jsx)("path", { d: "M21.323 8.616l-4.94-4.94a1.251 1.251 0 0 0-1.767 0l-10.94 10.94a1.251 1.251 0 0 0 0 1.768l4.94 4.94a1.25 1.25 0 0 0 1.768 0l10.94-10.94a1.251 1.251 0 0 0 0-1.768zM14 5.707L19.293 11 11.5 18.793 6.207 13.5zm-4.323 14.91a.25.25 0 0 1-.354 0l-1.47-1.47.5-.5-2-2-.5.5-1.47-1.47a.25.25 0 0 1 0-.354L5.5 14.207l5.293 5.293zm10.94-10.94l-.617.616L14.707 5l.616-.616a.25.25 0 0 1 .354 0l4.94 4.94a.25.25 0 0 1 0 .353zm1.394 6.265V18a3.003 3.003 0 0 1-3 3h-3.292l1.635 1.634-.707.707-2.848-2.847 2.848-2.848.707.707L15.707 20h3.304a2.002 2.002 0 0 0 2-2v-2.058zM4 9H3V7a3.003 3.003 0 0 1 3-3h3.293L7.646 2.354l.707-.707 2.848 2.847L8.354 7.34l-.707-.707L9.28 5H6a2.002 2.002 0 0 0-2 2z" }), (0, jsx_runtime_1.jsx)("path", { fill: "none", d: "M0 0h24v24H0z" })] }));
54
+ }
55
+ function CompareIcon({ className }) {
56
+ return ((0, jsx_runtime_1.jsxs)("svg", { viewBox: "0 0 24 24", xmlns: "http://www.w3.org/2000/svg", className: className, stroke: "currentColor", fill: "currentColor", children: [(0, jsx_runtime_1.jsx)("path", { d: "M2 4h9v1H3v15h8v1H2zm10 19h1V2h-1zM8.283 10.283l-.566-.566L4.934 12.5l2.783 2.783.566-.566L6.566 13H11v-1H6.566zM14 12h4.08l-1.54-1.54.92-.92 2.96 2.96-2.96 2.96-.92-.92L18.08 13H14v8h9V4h-9z" }), (0, jsx_runtime_1.jsx)("path", { fill: "none", d: "M0 0h24v24H0z" })] }));
57
+ }
58
+ function CommentIcon({ className }) {
59
+ return ((0, jsx_runtime_1.jsxs)("svg", { version: "1.1", id: "Capa_1", className: className, xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", viewBox: "0 0 529.668 529.668", xmlSpace: "preserve", stroke: "currentColor", fill: "currentColor", children: [(0, jsx_runtime_1.jsx)("g", { id: "SVGRepo_bgCarrier", strokeWidth: "0" }), (0, jsx_runtime_1.jsx)("g", { id: "SVGRepo_tracerCarrier", strokeLinecap: "round", strokeLinejoin: "round" }), (0, jsx_runtime_1.jsx)("g", { id: "SVGRepo_iconCarrier", children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsxs)("g", { children: [(0, jsx_runtime_1.jsx)("path", { d: "M45.175,529.668l108.887-117.085h330.431V0H45.894L45.175,529.668z M383.896,173.016c20.527,0,37.164,16.64,37.164,37.164 c0,20.527-16.641,37.164-37.164,37.164s-37.164-16.641-37.164-37.164C346.731,189.653,363.372,173.016,383.896,173.016z M265.192,173.016c20.526,0,37.165,16.64,37.165,37.164c0,20.527-16.641,37.164-37.165,37.164 c-20.523,0-37.164-16.641-37.164-37.164C228.028,189.653,244.668,173.016,265.192,173.016z M146.488,173.016 c20.527,0,37.164,16.64,37.164,37.164c0,20.527-16.641,37.164-37.164,37.164c-20.526,0-37.164-16.641-37.164-37.164 C109.325,189.653,125.965,173.016,146.488,173.016z" }), " "] }) }) })] }));
60
+ }
61
+ function PageWizardIcon({ className }) {
62
+ return ((0, jsx_runtime_1.jsxs)("svg", { version: "1.1", id: "Layer_1", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", viewBox: "0 0 512 512", xmlSpace: "preserve", className: className, stroke: "currentColor", fill: "currentColor", children: [(0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("path", { d: "M454.32,219.727l-38.766-51.947l20.815-61.385c2.046-6.032,0.489-12.704-4.015-17.208\r\n\t\t\tc-4.504-4.504-11.175-6.061-17.208-4.015l-61.384,20.815l-51.949-38.766c-5.103-3.81-11.929-4.392-17.605-1.499\r\n\t\t\tc-5.676,2.893-9.217,8.755-9.136,15.125l0.829,64.815l-52.923,37.426c-5.201,3.678-7.863,9.989-6.867,16.282\r\n\t\t\tc0.996,6.291,5.479,11.471,11.561,13.363l43.843,13.629L14.443,483.432c-6.535,6.534-6.535,17.131,0,23.666s17.131,6.535,23.666,0\r\n\t\t\tl257.072-257.073l13.629,43.844c1.891,6.082,7.071,10.565,13.363,11.561c0.876,0.138,1.75,0.206,2.622,0.206\r\n\t\t\tc5.375,0,10.494-2.595,13.66-7.072l37.426-52.923l64.815,0.828c0.071,0.001,0.143,0.001,0.214,0.001\r\n\t\t\tc6.287,0,12.051-3.525,14.909-9.137C458.711,231.658,458.129,224.833,454.32,219.727z M367.51,212.063\r\n\t\t\tc-5.516-0.077-10.697,2.574-13.876,7.071l-22.929,32.421c-12.767-41.075-12.097-40.949-15.933-44.786\r\n\t\t\tc-4.112-4.112-4.736-3.485-44.786-15.934l32.423-22.928c4.496-3.181,7.14-8.37,7.071-13.876l-0.508-39.706l31.825,23.748\r\n\t\t\tc4.415,3.294,10.167,4.206,15.382,2.437l37.606-12.753l-12.753,37.607c-1.769,5.217-0.859,10.969,2.437,15.382l23.748,31.825\r\n\t\t\tL367.51,212.063z" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("polygon", { points: "173.373,67.274 160.014,42.848 146.656,67.274 122.23,80.632 146.656,93.992 160.014,118.417 173.373,93.992 \r\n\t\t\t197.799,80.632 \t\t" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("polygon", { points: "362.946,384.489 352.14,364.731 341.335,384.489 321.577,395.294 341.335,406.1 352.14,425.856 362.946,406.1 \r\n\t\t\t382.703,395.294 \t\t" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("polygon", { points: "378.142,19.757 367.337,0 356.531,19.757 336.774,30.563 356.531,41.369 367.337,61.126 378.142,41.369 \r\n\t\t\t397.9,30.563 \t\t" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("polygon", { points: "490.635,142.513 484.167,130.689 477.701,142.513 465.876,148.979 477.701,155.446 484.167,167.27 \r\n\t\t\t490.635,155.446 502.458,148.979 \t\t" }) }) }), (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("g", { children: (0, jsx_runtime_1.jsx)("polygon", { points: "492.626,294.117 465.876,301.951 439.128,294.117 446.962,320.865 439.128,347.615 465.876,339.781 \r\n\t\t\t492.626,347.615 484.791,320.865 \t\t" }) }) })] }));
63
+ }
64
+ function PageWizardLogo() {
65
+ return ((0, jsx_runtime_1.jsx)("svg", { width: "60", height: "60", fill: "white", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 46.05 48.36", className: "transition-all duration-300 ease-linear", children: (0, jsx_runtime_1.jsxs)("g", { children: [(0, jsx_runtime_1.jsx)("path", { d: "M45.4,18.34h-1.53c-.3,0-.55.25-.55.55s.25.55.55.55h1.53c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M45.4,20.96h-1.53c-.3,0-.55.25-.55.55s.25.55.55.55h1.53c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M31.05,43.46h-1.83c-.3,0-.55.25-.55.55s.25.55.55.55h1.83c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M31.05,45.36h-1.83c-.3,0-.55.25-.55.55s.25.55.55.55h1.83c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M31.05,47.26h-1.83c-.3,0-.55.25-.55.55s.25.55.55.55h1.83c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M17.48,43.46h-1.83c-.3,0-.55.25-.55.55s.25.55.55.55h1.83c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M17.48,45.36h-1.83c-.3,0-.55.25-.55.55s.25.55.55.55h1.83c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M17.48,47.26h-1.83c-.3,0-.55.25-.55.55s.25.55.55.55h1.83c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M44.5,25.33h-1.53c-.3,0-.55.25-.55.55s.25.55.55.55h1.53c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M44.5,27.95h-1.53c-.3,0-.55.25-.55.55s.25.55.55.55h1.53c.3,0,.55-.25.55-.55s-.25-.55-.55-.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M10.28,31.16c0-.63-.51-1.14-1.14-1.14s-1.14.51-1.14,1.14.51,1.14,1.14,1.14,1.14-.51,1.14-1.14Z" }), (0, jsx_runtime_1.jsx)("ellipse", { cx: "1.39", cy: "23.4", rx: "1.14", ry: "1.14" }), (0, jsx_runtime_1.jsx)("ellipse", { cx: "1.14", cy: "18.37", rx: "1.14", ry: "1.14" }), (0, jsx_runtime_1.jsx)("path", { d: "M5.49,34.6c-.63,0-1.14.51-1.14,1.14s.51,1.14,1.14,1.14,1.14-.51,1.14-1.14-.51-1.14-1.14-1.14Z" }), (0, jsx_runtime_1.jsx)("ellipse", { cx: "16.56", cy: "10.01", rx: "1.14", ry: "1.14" }), (0, jsx_runtime_1.jsx)("ellipse", { cx: "14.51", cy: "3.52", rx: "1.14", ry: "1.14" }), (0, jsx_runtime_1.jsx)("path", { d: "M7.82,8.7c.06,0,.11-.01.15-.03.01,0,.03,0,.04-.01l1.78,1.97c-.05.13-.07.25-.07.36,0,.63.51,1.14,1.14,1.14s1.14-.51,1.14-1.14-.51-1.14-1.14-1.14c-.08,0-.15.02-.21.04,0,0-.02,0-.03,0l-1.74-1.93c.05-.13.08-.27.08-.42,0-.63-.51-1.14-1.14-1.14s-1.14.51-1.14,1.14.51,1.14,1.14,1.14Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M8.12,16c0-.17-.08-.33-.21-.43l-3.13-2.43s0-.02,0-.02c0-.03.02-.06.02-.09,0-.63-.51-1.14-1.14-1.14s-1.14.51-1.14,1.14.51,1.14,1.14,1.14c.16,0,.31-.04.48-.12l2.88,2.23v8.98l-3.5,3.05s-.03,0-.04-.01c-.06-.02-.13-.04-.2-.04-.63,0-1.14.51-1.14,1.14s.51,1.14,1.14,1.14,1.14-.51,1.14-1.14c0-.11-.02-.23-.07-.36l3.58-3.12c.12-.11.19-.26.19-.41v-9.5Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M29.14,37.09v-4.15c1.03-.63,1.96-1.41,2.75-2.32h4.19c.16,0,.3-.07.41-.18l3.89-4.32c.09-.1.14-.24.14-.38l-.11-6.71c.36-.21.58-.58.58-.98,0-.63-.51-1.14-1.14-1.14s-1.14.51-1.14,1.14c0,.41.23.78.59.99l.11,6.5-3.59,3.98h-3.08c1.38-2.01,2.11-4.35,2.11-6.78,0-6.59-5.32-11.95-11.86-11.95-.31,0-.61.02-.9.04V3.31c.37-.2.6-.58.6-.99,0-.63-.51-1.14-1.14-1.14s-1.14.51-1.14,1.14c0,.4.21.76.57.97v7.68c-2.72.47-5.21,1.89-7.02,4.01-1.84,2.16-2.85,4.91-2.85,7.75,0,3.04,1.15,5.94,3.23,8.17,0,0,0,0,0,0,0,.03-.01.05-.01.09v3.4l-3.91,3.32c-.15-.06-.29-.09-.44-.09-.63,0-1.14.51-1.14,1.14s.51,1.14,1.14,1.14,1.14-.51,1.14-1.14c0-.05-.01-.09-.02-.13,0-.01,0-.02,0-.04l4.15-3.53c.12-.1.19-.26.19-.42v-2.71c.95.79,2.02,1.43,3.19,1.9v5.31l-2.23,2.46c-.2.22-.19.57.04.78.1.09.23.14.37.14.15,0,.3-.07.41-.18l2.37-2.61c.09-.1.14-.23.14-.37v-5.14c1.08.31,2.17.47,3.27.47.02,0,.03,0,.05,0v13.12c0,.3.25.55.55.55s.55-.25.55-.55v-13.18c1.34-.13,2.66-.5,3.9-1.09v3.56c0,.3.25.55.55.55s.55-.25.55-.55ZM33.75,22.74c0,5.98-4.83,10.85-10.76,10.85s-10.76-4.87-10.76-10.85,4.83-10.85,10.76-10.85,10.76,4.87,10.76,10.85Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M42.45,32.42l-5.81,6.04h-3.46c-.14,0-.28.06-.39.16l-1.19,1.17s-.03,0-.04-.01c-.06-.02-.11-.03-.18-.03-.63,0-1.14.51-1.14,1.14s.51,1.14,1.14,1.14,1.14-.51,1.14-1.14c0-.12-.02-.25-.07-.38l.96-.94h3.47c.15,0,.29-.06.4-.17l5.97-6.21c.1-.11.16-.25.15-.39s-.06-.28-.17-.39c-.22-.21-.56-.2-.78.01Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M26.92,5.8c.3,0,.55-.25.55-.55v-2.82c0-.3-.25-.55-.55-.55s-.55.25-.55.55v2.82c0,.3.25.55.55.55Z" }), (0, jsx_runtime_1.jsx)("rect", { x: "26.61", y: "17.46", width: "2.63", height: "9.29" }), (0, jsx_runtime_1.jsx)("path", { d: "M19.17,17.46l-4.1,9.29h2.68l.72-1.8h3.94l.72,1.8h2.73l-4.11-9.29h-2.59ZM19.25,23l1.19-2.97,1.19,2.97h-2.38Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M41.16,3.12c.87.24,1.45.79,1.71,1.65.1.31.17.62.25.94,0,.02.02.03.02.05.09-.31.17-.62.26-.93.22-.8.73-1.35,1.52-1.63.27-.09.55-.15.83-.22.11-.03.21-.05.32-.08-.03-.01-.04-.02-.05-.02-.3-.08-.6-.15-.89-.23-.83-.23-1.4-.75-1.67-1.56-.1-.3-.17-.61-.25-.92-.02-.05-.03-.1-.04-.15-.02.01-.02.02-.02.03-.08.29-.15.58-.23.88-.21.81-.71,1.36-1.51,1.66-.2.07-.42.12-.63.17-.17.05-.35.09-.54.14h0s.04.03.05.03c.3.08.59.15.89.23Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M31.32,8.28c2.09.57,3.47,1.9,4.1,3.96.23.75.4,1.51.6,2.26.01.04.02.08.03.11.21-.76.4-1.5.61-2.25.54-1.93,1.75-3.25,3.64-3.93.64-.23,1.32-.36,1.99-.54.25-.07.5-.13.77-.2-.06-.02-.09-.03-.12-.04-.71-.19-1.43-.36-2.15-.56-2-.55-3.36-1.79-4.02-3.75-.25-.72-.4-1.47-.6-2.22-.03-.12-.07-.24-.1-.36-.03.02-.03.04-.04.06-.18.7-.37,1.41-.56,2.11-.52,1.94-1.73,3.28-3.63,3.98-.49.18-1.01.28-1.51.42-.42.11-.84.22-1.29.33h0c.07.03.1.03.13.04.71.18,1.43.36,2.14.55Z" }), (0, jsx_runtime_1.jsx)("path", { d: "M45.1,12.83c-.83-.23-1.4-.75-1.67-1.56-.1-.3-.17-.61-.25-.92-.02-.05-.03-.1-.04-.15-.02.01-.02.02-.02.03-.08.29-.15.58-.23.88-.21.81-.71,1.36-1.51,1.66-.2.07-.42.12-.63.17-.17.05-.35.09-.54.14h0s.04.03.05.03c.3.08.59.15.89.23.87.24,1.45.79,1.71,1.65.1.31.17.62.25.94,0,.02.02.03.02.05.09-.31.17-.62.26-.93.22-.8.73-1.35,1.52-1.63.27-.09.55-.15.83-.22.11-.03.21-.05.32-.08-.03-.01-.04-.02-.05-.02-.3-.08-.6-.15-.89-.23Z" })] }) }));
66
+ }
67
+ function UploadCloudIcon() {
68
+ return ((0, jsx_runtime_1.jsxs)("svg", { width: "42", height: "42", viewBox: "0 0 42 42", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [(0, jsx_runtime_1.jsxs)("g", { clipPath: "url(#clip0_237_1224)", children: [(0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M11.5658 3.52275C14.1894 1.26035 17.5356 0.0108636 21 0C28.0613 0 33.9229 5.25 34.5608 12.0199C38.7397 12.6105 42 16.1096 42 20.4041C42 25.1186 38.0677 28.875 33.3034 28.875H26.25C25.9019 28.875 25.5681 28.7367 25.3219 28.4906C25.0758 28.2444 24.9375 27.9106 24.9375 27.5625C24.9375 27.2144 25.0758 26.8806 25.3219 26.6344C25.5681 26.3883 25.9019 26.25 26.25 26.25H33.306C36.6949 26.25 39.375 23.5935 39.375 20.4041C39.375 17.2121 36.6975 14.5556 33.3034 14.5556H31.9909V13.2431C31.9935 7.41563 27.111 2.625 21 2.625C18.1647 2.63633 15.4267 3.66039 13.2799 5.5125C11.2928 7.224 10.2533 9.28725 10.2533 10.9069V12.0829L9.08512 12.2115C5.418 12.6131 2.625 15.624 2.625 19.2097C2.625 23.0606 5.85375 26.25 9.92513 26.25H15.75C16.0981 26.25 16.4319 26.3883 16.6781 26.6344C16.9242 26.8806 17.0625 27.2144 17.0625 27.5625C17.0625 27.9106 16.9242 28.2444 16.6781 28.4906C16.4319 28.7367 16.0981 28.875 15.75 28.875H9.92513C4.4835 28.875 0 24.5858 0 19.2097C0 14.5819 3.32325 10.7494 7.72275 9.77812C8.09812 7.51275 9.555 5.25525 11.5658 3.52275Z", fill: "#69635F" }), (0, jsx_runtime_1.jsx)("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M20.0699 10.8827C20.1918 10.7604 20.3366 10.6635 20.4961 10.5973C20.6555 10.5311 20.8265 10.4971 20.9991 10.4971C21.1718 10.4971 21.3427 10.5311 21.5022 10.5973C21.6616 10.6635 21.8065 10.7604 21.9284 10.8827L29.8034 18.7577C30.0498 19.0041 30.1883 19.3384 30.1883 19.6869C30.1883 20.0355 30.0498 20.3697 29.8034 20.6162C29.5569 20.8626 29.2227 21.0011 28.8741 21.0011C28.5256 21.0011 28.1913 20.8626 27.9449 20.6162L22.3116 14.9803V38.0619C22.3116 38.41 22.1733 38.7439 21.9272 38.99C21.6811 39.2361 21.3472 39.3744 20.9991 39.3744C20.651 39.3744 20.3172 39.2361 20.071 38.99C19.8249 38.7439 19.6866 38.41 19.6866 38.0619V14.9803L14.0534 20.6162C13.8069 20.8626 13.4727 21.0011 13.1241 21.0011C12.7756 21.0011 12.4413 20.8626 12.1949 20.6162C11.9484 20.3697 11.81 20.0355 11.81 19.6869C11.81 19.3384 11.9484 19.0041 12.1949 18.7577L20.0699 10.8827Z", fill: "#69635F" })] }), (0, jsx_runtime_1.jsx)("defs", { children: (0, jsx_runtime_1.jsx)("clipPath", { id: "clip0_237_1224", children: (0, jsx_runtime_1.jsx)("rect", { width: "42", height: "42", fill: "white" }) }) })] }));
69
+ }
70
+ function SparkleIconBig() {
71
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "80", height: "75", viewBox: "10 20 50 50", stroke: "currentColor", fill: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { d: "M32.4918 26.0411L33.5 21L34.5082 26.0411C36.3703 35.3518 43.6482 42.6297 52.9589 44.4918L58 45.5L52.9589 46.5082C43.6482 48.3703 36.3703 55.6482 34.5082 64.9589L33.5 70L32.4918 64.9589C30.6297 55.6482 23.3518 48.3703 14.0411 46.5082L9 45.5L14.0411 44.4918C23.3518 42.6297 30.6297 35.3518 32.4918 26.0411Z" }) }));
72
+ }
73
+ function SparkleIconSmall() {
74
+ return ((0, jsx_runtime_1.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "40", height: "35", viewBox: "15 20 40 50", stroke: "currentColor", fill: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { d: "M32.4918 26.0411L33.5 21L34.5082 26.0411C36.3703 35.3518 43.6482 42.6297 52.9589 44.4918L58 45.5L52.9589 46.5082C43.6482 48.3703 36.3703 55.6482 34.5082 64.9589L33.5 70L32.4918 64.9589C30.6297 55.6482 23.3518 48.3703 14.0411 46.5082L9 45.5L14.0411 44.4918C23.3518 42.6297 30.6297 35.3518 32.4918 26.0411Z" }) }));
75
+ }
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ItemNameDialog = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const dialog_1 = require("primereact/dialog");
9
+ const react_1 = require("react");
10
+ const DialogButtons_1 = __importDefault(require("./DialogButtons"));
11
+ const button_1 = require("primereact/button");
12
+ const inputtext_1 = require("primereact/inputtext");
13
+ exports.ItemNameDialog = (0, react_1.forwardRef)((_props, ref) => {
14
+ const [visible, setVisible] = (0, react_1.useState)(false);
15
+ const [props, setProps] = (0, react_1.useState)();
16
+ const [name, setName] = (0, react_1.useState)("");
17
+ const nameRef = (0, react_1.useRef)(null);
18
+ (0, react_1.useEffect)(() => {
19
+ setName(props?.name || "");
20
+ }, [props]);
21
+ (0, react_1.useImperativeHandle)(ref, () => ({
22
+ show: (props) => {
23
+ setVisible(true);
24
+ setProps(props);
25
+ },
26
+ }));
27
+ if (!visible)
28
+ return null;
29
+ if (!props)
30
+ return null;
31
+ const isValidName = name.trim().length > 0;
32
+ const handleOk = () => {
33
+ setVisible(false);
34
+ props?.accept(name);
35
+ props.onClose?.(name);
36
+ };
37
+ return ((0, jsx_runtime_1.jsxs)(dialog_1.Dialog, { visible: visible, onHide: () => {
38
+ setVisible(false);
39
+ }, onShow: () => {
40
+ nameRef.current?.focus();
41
+ }, style: { width: "400px" }, header: props?.title ?? "Name", children: [(0, jsx_runtime_1.jsxs)("div", { className: "py-3", children: [(0, jsx_runtime_1.jsx)("div", { className: "text-sm my-2", children: props.message || "Enter a name for the new item:" }), (0, jsx_runtime_1.jsx)(inputtext_1.InputText, { ref: nameRef, value: name, className: "w-full", onChange: (e) => setName(e.target.value), onKeyDown: (ev) => {
42
+ if (ev.key === "Enter" && isValidName)
43
+ handleOk();
44
+ } })] }), (0, jsx_runtime_1.jsxs)(DialogButtons_1.default, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { onClick: handleOk, label: "Ok", disabled: !isValidName }), (0, jsx_runtime_1.jsx)(button_1.Button, { onClick: () => props.onClose?.(null), label: "Cancel" })] })] }));
45
+ });
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ItemNameDialog = ItemNameDialog;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const dialog_1 = require("primereact/dialog");
9
+ const react_1 = require("react");
10
+ const DialogButtons_1 = __importDefault(require("./DialogButtons"));
11
+ const button_1 = require("primereact/button");
12
+ const inputtext_1 = require("primereact/inputtext");
13
+ const editContext_1 = require("../client/editContext");
14
+ const contentService_1 = require("../services/contentService");
15
+ const use_debounce_1 = require("use-debounce");
16
+ function ItemNameDialog(props) {
17
+ const editContext = (0, editContext_1.useEditContext)();
18
+ const [name, setName] = (0, react_1.useState)("");
19
+ const [validationError, setValidationError] = (0, react_1.useState)();
20
+ const [isValid, setIsValid] = (0, react_1.useState)(false);
21
+ const nameRef = (0, react_1.useRef)(null);
22
+ (0, react_1.useEffect)(() => {
23
+ setName(props?.name || "");
24
+ }, [props]);
25
+ const checkNameValidDebounced = (0, use_debounce_1.useDebouncedCallback)(async () => checkName(), 500);
26
+ (0, react_1.useEffect)(() => {
27
+ checkNameValidDebounced();
28
+ }, [name]);
29
+ const checkName = async () => {
30
+ let valid = name.trim().length > 0;
31
+ if (!props.parentItem) {
32
+ setIsValid(valid);
33
+ setValidationError(valid ? undefined : "Name is required");
34
+ return;
35
+ }
36
+ if (valid) {
37
+ const children = await (0, contentService_1.getChildren)(props.parentItem.id, editContext?.sessionId ?? "", [], false, props.parentItem?.language || "en");
38
+ if (children.find((x) => x.name.toLocaleLowerCase() === name.trim().toLocaleLowerCase() &&
39
+ (props.itemId ? x.id !== props.itemId : true))) {
40
+ valid = false;
41
+ setValidationError("A page with this name already exists.");
42
+ }
43
+ }
44
+ if (valid)
45
+ setValidationError(undefined);
46
+ setIsValid(valid);
47
+ return valid;
48
+ };
49
+ const handleOk = () => {
50
+ props.onClose?.(name);
51
+ };
52
+ return ((0, jsx_runtime_1.jsxs)(dialog_1.Dialog, { visible: true, onHide: () => {
53
+ props.onClose?.(null);
54
+ }, onShow: () => {
55
+ nameRef.current?.focus();
56
+ nameRef.current?.select();
57
+ }, style: { width: "400px" }, header: props?.title ?? "Name", children: [(0, jsx_runtime_1.jsxs)("div", { className: "p-3", children: [(0, jsx_runtime_1.jsx)("div", { className: "text-sm my-2", children: props.message || "Enter a name for the new item:" }), (0, jsx_runtime_1.jsx)(inputtext_1.InputText, { ref: nameRef, value: name, className: "w-full", onChange: (e) => setName(e.target.value), onKeyDown: (ev) => {
58
+ if (ev.key === "Enter" && isValid)
59
+ handleOk();
60
+ } }), validationError && ((0, jsx_runtime_1.jsx)("div", { className: "text-red-500 mt-2", children: validationError }))] }), (0, jsx_runtime_1.jsxs)(DialogButtons_1.default, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { onClick: handleOk, label: "Ok", disabled: !isValid }), (0, jsx_runtime_1.jsx)(button_1.Button, { onClick: () => props.onClose?.(null), label: "Cancel" })] })] }));
61
+ }