@parhelia/core 0.1.10745
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.
- package/LICENSE +8 -0
- package/README.md +34 -0
- package/dev.css +3 -0
- package/dist/agents-view/AgentCard.d.ts +12 -0
- package/dist/agents-view/AgentCard.js +30 -0
- package/dist/agents-view/AgentCard.js.map +1 -0
- package/dist/agents-view/AgentsView.d.ts +5 -0
- package/dist/agents-view/AgentsView.js +255 -0
- package/dist/agents-view/AgentsView.js.map +1 -0
- package/dist/agents-view/ProfileAgentsGroup.d.ts +17 -0
- package/dist/agents-view/ProfileAgentsGroup.js +13 -0
- package/dist/agents-view/ProfileAgentsGroup.js.map +1 -0
- package/dist/client-components/api.d.ts +1 -0
- package/dist/client-components/api.js +4 -0
- package/dist/client-components/api.js.map +1 -0
- package/dist/client-components/index.d.ts +17 -0
- package/dist/client-components/index.js +18 -0
- package/dist/client-components/index.js.map +1 -0
- package/dist/components/ActionButton.d.ts +14 -0
- package/dist/components/ActionButton.js +6 -0
- package/dist/components/ActionButton.js.map +1 -0
- package/dist/components/Error.d.ts +9 -0
- package/dist/components/Error.js +24 -0
- package/dist/components/Error.js.map +1 -0
- package/dist/components/FilterInput.d.ts +22 -0
- package/dist/components/FilterInput.js +29 -0
- package/dist/components/FilterInput.js.map +1 -0
- package/dist/components/index.d.ts +7 -0
- package/dist/components/index.js +5 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/ui/CardConnector.d.ts +4 -0
- package/dist/components/ui/CardConnector.js +6 -0
- package/dist/components/ui/CardConnector.js.map +1 -0
- package/dist/components/ui/LanguageSelector.d.ts +8 -0
- package/dist/components/ui/LanguageSelector.js +47 -0
- package/dist/components/ui/LanguageSelector.js.map +1 -0
- package/dist/components/ui/PlaceholderInput.d.ts +41 -0
- package/dist/components/ui/PlaceholderInput.js +160 -0
- package/dist/components/ui/PlaceholderInput.js.map +1 -0
- package/dist/components/ui/PlaceholderInputTypes.d.ts +41 -0
- package/dist/components/ui/PlaceholderInputTypes.js +48 -0
- package/dist/components/ui/PlaceholderInputTypes.js.map +1 -0
- package/dist/components/ui/PlaceholderItemSelector.d.ts +7 -0
- package/dist/components/ui/PlaceholderItemSelector.js +154 -0
- package/dist/components/ui/PlaceholderItemSelector.js.map +1 -0
- package/dist/components/ui/alert.d.ts +7 -0
- package/dist/components/ui/alert.js +21 -0
- package/dist/components/ui/alert.js.map +1 -0
- package/dist/components/ui/badge.d.ts +9 -0
- package/dist/components/ui/badge.js +23 -0
- package/dist/components/ui/badge.js.map +1 -0
- package/dist/components/ui/button.d.ts +10 -0
- package/dist/components/ui/button.js +33 -0
- package/dist/components/ui/button.js.map +1 -0
- package/dist/components/ui/calendar.d.ts +7 -0
- package/dist/components/ui/calendar.js +58 -0
- package/dist/components/ui/calendar.js.map +1 -0
- package/dist/components/ui/card.d.ts +19 -0
- package/dist/components/ui/card.js +78 -0
- package/dist/components/ui/card.js.map +1 -0
- package/dist/components/ui/checkbox.d.ts +4 -0
- package/dist/components/ui/checkbox.js +10 -0
- package/dist/components/ui/checkbox.js.map +1 -0
- package/dist/components/ui/command.d.ts +18 -0
- package/dist/components/ui/command.js +35 -0
- package/dist/components/ui/command.js.map +1 -0
- package/dist/components/ui/context-menu.d.ts +53 -0
- package/dist/components/ui/context-menu.js +290 -0
- package/dist/components/ui/context-menu.js.map +1 -0
- package/dist/components/ui/copy-button.d.ts +10 -0
- package/dist/components/ui/copy-button.js +61 -0
- package/dist/components/ui/copy-button.js.map +1 -0
- package/dist/components/ui/dialog.d.ts +16 -0
- package/dist/components/ui/dialog.js +37 -0
- package/dist/components/ui/dialog.js.map +1 -0
- package/dist/components/ui/dropdown-menu.d.ts +25 -0
- package/dist/components/ui/dropdown-menu.js +52 -0
- package/dist/components/ui/dropdown-menu.js.map +1 -0
- package/dist/components/ui/input.d.ts +3 -0
- package/dist/components/ui/input.js +9 -0
- package/dist/components/ui/input.js.map +1 -0
- package/dist/components/ui/menubar.d.ts +26 -0
- package/dist/components/ui/menubar.js +55 -0
- package/dist/components/ui/menubar.js.map +1 -0
- package/dist/components/ui/paste-button.d.ts +14 -0
- package/dist/components/ui/paste-button.js +114 -0
- package/dist/components/ui/paste-button.js.map +1 -0
- package/dist/components/ui/popover.d.ts +11 -0
- package/dist/components/ui/popover.js +66 -0
- package/dist/components/ui/popover.js.map +1 -0
- package/dist/components/ui/progress.d.ts +7 -0
- package/dist/components/ui/progress.js +9 -0
- package/dist/components/ui/progress.js.map +1 -0
- package/dist/components/ui/select.d.ts +18 -0
- package/dist/components/ui/select.js +34 -0
- package/dist/components/ui/select.js.map +1 -0
- package/dist/components/ui/sonner.d.ts +3 -0
- package/dist/components/ui/sonner.js +16 -0
- package/dist/components/ui/sonner.js.map +1 -0
- package/dist/components/ui/switch.d.ts +4 -0
- package/dist/components/ui/switch.js +9 -0
- package/dist/components/ui/switch.js.map +1 -0
- package/dist/components/ui/tabs.d.ts +17 -0
- package/dist/components/ui/tabs.js +27 -0
- package/dist/components/ui/tabs.js.map +1 -0
- package/dist/components/ui/textarea.d.ts +3 -0
- package/dist/components/ui/textarea.js +11 -0
- package/dist/components/ui/textarea.js.map +1 -0
- package/dist/components/ui/tooltip.d.ts +9 -0
- package/dist/components/ui/tooltip.js +18 -0
- package/dist/components/ui/tooltip.js.map +1 -0
- package/dist/components/ui/upload-button.d.ts +15 -0
- package/dist/components/ui/upload-button.js +56 -0
- package/dist/components/ui/upload-button.js.map +1 -0
- package/dist/config/config.d.ts +24 -0
- package/dist/config/config.js +1087 -0
- package/dist/config/config.js.map +1 -0
- package/dist/config/types.d.ts +249 -0
- package/dist/config/types.js +2 -0
- package/dist/config/types.js.map +1 -0
- package/dist/editor/AspectRatioSelector.d.ts +13 -0
- package/dist/editor/AspectRatioSelector.js +71 -0
- package/dist/editor/AspectRatioSelector.js.map +1 -0
- package/dist/editor/ComponentInfo.d.ts +4 -0
- package/dist/editor/ComponentInfo.js +41 -0
- package/dist/editor/ComponentInfo.js.map +1 -0
- package/dist/editor/ConfirmationDialog.d.ts +19 -0
- package/dist/editor/ConfirmationDialog.js +31 -0
- package/dist/editor/ConfirmationDialog.js.map +1 -0
- package/dist/editor/ContentTree.d.ts +39 -0
- package/dist/editor/ContentTree.js +586 -0
- package/dist/editor/ContentTree.js.map +1 -0
- package/dist/editor/ContextMenu.d.ts +15 -0
- package/dist/editor/ContextMenu.js +239 -0
- package/dist/editor/ContextMenu.js.map +1 -0
- package/dist/editor/Editor.d.ts +12 -0
- package/dist/editor/Editor.js +59 -0
- package/dist/editor/Editor.js.map +1 -0
- package/dist/editor/EditorWarning.d.ts +5 -0
- package/dist/editor/EditorWarning.js +12 -0
- package/dist/editor/EditorWarning.js.map +1 -0
- package/dist/editor/EditorWarnings.d.ts +9 -0
- package/dist/editor/EditorWarnings.js +19 -0
- package/dist/editor/EditorWarnings.js.map +1 -0
- package/dist/editor/FieldActionsOverlay.d.ts +18 -0
- package/dist/editor/FieldActionsOverlay.js +201 -0
- package/dist/editor/FieldActionsOverlay.js.map +1 -0
- package/dist/editor/FieldEditorPopup.d.ts +10 -0
- package/dist/editor/FieldEditorPopup.js +23 -0
- package/dist/editor/FieldEditorPopup.js.map +1 -0
- package/dist/editor/FieldHistory.d.ts +7 -0
- package/dist/editor/FieldHistory.js +42 -0
- package/dist/editor/FieldHistory.js.map +1 -0
- package/dist/editor/FieldList.d.ts +19 -0
- package/dist/editor/FieldList.js +90 -0
- package/dist/editor/FieldList.js.map +1 -0
- package/dist/editor/FieldListField.d.ts +16 -0
- package/dist/editor/FieldListField.js +231 -0
- package/dist/editor/FieldListField.js.map +1 -0
- package/dist/editor/FieldListFieldWithFallbacks.d.ts +11 -0
- package/dist/editor/FieldListFieldWithFallbacks.js +120 -0
- package/dist/editor/FieldListFieldWithFallbacks.js.map +1 -0
- package/dist/editor/FloatingToolbar.d.ts +7 -0
- package/dist/editor/FloatingToolbar.js +91 -0
- package/dist/editor/FloatingToolbar.js.map +1 -0
- package/dist/editor/ImageEditButton.d.ts +27 -0
- package/dist/editor/ImageEditButton.js +22 -0
- package/dist/editor/ImageEditButton.js.map +1 -0
- package/dist/editor/ImageEditor.d.ts +5 -0
- package/dist/editor/ImageEditor.js +76 -0
- package/dist/editor/ImageEditor.js.map +1 -0
- package/dist/editor/ItemInfo.d.ts +4 -0
- package/dist/editor/ItemInfo.js +36 -0
- package/dist/editor/ItemInfo.js.map +1 -0
- package/dist/editor/LinkEditorDialog.d.ts +18 -0
- package/dist/editor/LinkEditorDialog.js +101 -0
- package/dist/editor/LinkEditorDialog.js.map +1 -0
- package/dist/editor/MainLayout.d.ts +12 -0
- package/dist/editor/MainLayout.js +55 -0
- package/dist/editor/MainLayout.js.map +1 -0
- package/dist/editor/MobileLayout.d.ts +2 -0
- package/dist/editor/MobileLayout.js +34 -0
- package/dist/editor/MobileLayout.js.map +1 -0
- package/dist/editor/NewEditorClient.d.ts +5 -0
- package/dist/editor/NewEditorClient.js +7 -0
- package/dist/editor/NewEditorClient.js.map +1 -0
- package/dist/editor/PictureCropper.d.ts +6 -0
- package/dist/editor/PictureCropper.js +722 -0
- package/dist/editor/PictureCropper.js.map +1 -0
- package/dist/editor/PictureEditor.d.ts +9 -0
- package/dist/editor/PictureEditor.js +180 -0
- package/dist/editor/PictureEditor.js.map +1 -0
- package/dist/editor/PictureEditorDialog.d.ts +8 -0
- package/dist/editor/PictureEditorDialog.js +195 -0
- package/dist/editor/PictureEditorDialog.js.map +1 -0
- package/dist/editor/QuickItemSwitcher.d.ts +9 -0
- package/dist/editor/QuickItemSwitcher.js +78 -0
- package/dist/editor/QuickItemSwitcher.js.map +1 -0
- package/dist/editor/ScrollingContentTree.d.ts +10 -0
- package/dist/editor/ScrollingContentTree.js +54 -0
- package/dist/editor/ScrollingContentTree.js.map +1 -0
- package/dist/editor/Titlebar.d.ts +1 -0
- package/dist/editor/Titlebar.js +46 -0
- package/dist/editor/Titlebar.js.map +1 -0
- package/dist/editor/ai/AgentCostDisplay.d.ts +32 -0
- package/dist/editor/ai/AgentCostDisplay.js +93 -0
- package/dist/editor/ai/AgentCostDisplay.js.map +1 -0
- package/dist/editor/ai/AgentHistory.d.ts +11 -0
- package/dist/editor/ai/AgentHistory.js +12 -0
- package/dist/editor/ai/AgentHistory.js.map +1 -0
- package/dist/editor/ai/AgentProfilesOverview.d.ts +9 -0
- package/dist/editor/ai/AgentProfilesOverview.js +16 -0
- package/dist/editor/ai/AgentProfilesOverview.js.map +1 -0
- package/dist/editor/ai/AgentStatusBadge.d.ts +26 -0
- package/dist/editor/ai/AgentStatusBadge.js +126 -0
- package/dist/editor/ai/AgentStatusBadge.js.map +1 -0
- package/dist/editor/ai/AgentTerminal.d.ts +14 -0
- package/dist/editor/ai/AgentTerminal.js +2634 -0
- package/dist/editor/ai/AgentTerminal.js.map +1 -0
- package/dist/editor/ai/Agents.d.ts +4 -0
- package/dist/editor/ai/Agents.js +813 -0
- package/dist/editor/ai/Agents.js.map +1 -0
- package/dist/editor/ai/AiResponseMessage.d.ts +18 -0
- package/dist/editor/ai/AiResponseMessage.js +684 -0
- package/dist/editor/ai/AiResponseMessage.js.map +1 -0
- package/dist/editor/ai/ContextInfoBar.d.ts +11 -0
- package/dist/editor/ai/ContextInfoBar.js +355 -0
- package/dist/editor/ai/ContextInfoBar.js.map +1 -0
- package/dist/editor/ai/DancingDots.d.ts +1 -0
- package/dist/editor/ai/DancingDots.js +6 -0
- package/dist/editor/ai/DancingDots.js.map +1 -0
- package/dist/editor/ai/MediaImage.d.ts +6 -0
- package/dist/editor/ai/MediaImage.js +38 -0
- package/dist/editor/ai/MediaImage.js.map +1 -0
- package/dist/editor/ai/ToolCallDisplay.d.ts +45 -0
- package/dist/editor/ai/ToolCallDisplay.js +292 -0
- package/dist/editor/ai/ToolCallDisplay.js.map +1 -0
- package/dist/editor/ai/aiPageModel.d.ts +24 -0
- package/dist/editor/ai/aiPageModel.js +97 -0
- package/dist/editor/ai/aiPageModel.js.map +1 -0
- package/dist/editor/ai/editorAiContext.d.ts +10 -0
- package/dist/editor/ai/editorAiContext.js +10 -0
- package/dist/editor/ai/editorAiContext.js.map +1 -0
- package/dist/editor/ai/types.d.ts +30 -0
- package/dist/editor/ai/types.js +2 -0
- package/dist/editor/ai/types.js.map +1 -0
- package/dist/editor/ai/useAgentStatus.d.ts +14 -0
- package/dist/editor/ai/useAgentStatus.js +203 -0
- package/dist/editor/ai/useAgentStatus.js.map +1 -0
- package/dist/editor/client/AboutDialog.d.ts +2 -0
- package/dist/editor/client/AboutDialog.js +23 -0
- package/dist/editor/client/AboutDialog.js.map +1 -0
- package/dist/editor/client/EditorShell.d.ts +37 -0
- package/dist/editor/client/EditorShell.js +2388 -0
- package/dist/editor/client/EditorShell.js.map +1 -0
- package/dist/editor/client/GenericDialog.d.ts +10 -0
- package/dist/editor/client/GenericDialog.js +25 -0
- package/dist/editor/client/GenericDialog.js.map +1 -0
- package/dist/editor/client/editContext.d.ts +260 -0
- package/dist/editor/client/editContext.js +29 -0
- package/dist/editor/client/editContext.js.map +1 -0
- package/dist/editor/client/fieldModificationStore.d.ts +25 -0
- package/dist/editor/client/fieldModificationStore.js +184 -0
- package/dist/editor/client/fieldModificationStore.js.map +1 -0
- package/dist/editor/client/helpers.d.ts +12 -0
- package/dist/editor/client/helpers.js +29 -0
- package/dist/editor/client/helpers.js.map +1 -0
- package/dist/editor/client/hooks/useEditorUrlSync.d.ts +18 -0
- package/dist/editor/client/hooks/useEditorUrlSync.js +56 -0
- package/dist/editor/client/hooks/useEditorUrlSync.js.map +1 -0
- package/dist/editor/client/hooks/useEditorWebSocket.d.ts +11 -0
- package/dist/editor/client/hooks/useEditorWebSocket.js +86 -0
- package/dist/editor/client/hooks/useEditorWebSocket.js.map +1 -0
- package/dist/editor/client/hooks/useGlobalEditorKeyDown.d.ts +1 -0
- package/dist/editor/client/hooks/useGlobalEditorKeyDown.js +12 -0
- package/dist/editor/client/hooks/useGlobalEditorKeyDown.js.map +1 -0
- package/dist/editor/client/hooks/useMediaQuery.d.ts +1 -0
- package/dist/editor/client/hooks/useMediaQuery.js +19 -0
- package/dist/editor/client/hooks/useMediaQuery.js.map +1 -0
- package/dist/editor/client/hooks/useMediaSelector.d.ts +12 -0
- package/dist/editor/client/hooks/useMediaSelector.js +30 -0
- package/dist/editor/client/hooks/useMediaSelector.js.map +1 -0
- package/dist/editor/client/hooks/useQuota.d.ts +29 -0
- package/dist/editor/client/hooks/useQuota.js +53 -0
- package/dist/editor/client/hooks/useQuota.js.map +1 -0
- package/dist/editor/client/hooks/useSocketMessageHandler.d.ts +35 -0
- package/dist/editor/client/hooks/useSocketMessageHandler.js +234 -0
- package/dist/editor/client/hooks/useSocketMessageHandler.js.map +1 -0
- package/dist/editor/client/hooks/useWorkbox.d.ts +9 -0
- package/dist/editor/client/hooks/useWorkbox.js +52 -0
- package/dist/editor/client/hooks/useWorkbox.js.map +1 -0
- package/dist/editor/client/itemsRepository.d.ts +38 -0
- package/dist/editor/client/itemsRepository.js +468 -0
- package/dist/editor/client/itemsRepository.js.map +1 -0
- package/dist/editor/client/operations.d.ts +69 -0
- package/dist/editor/client/operations.js +627 -0
- package/dist/editor/client/operations.js.map +1 -0
- package/dist/editor/client/pageModelBuilder.d.ts +6 -0
- package/dist/editor/client/pageModelBuilder.js +155 -0
- package/dist/editor/client/pageModelBuilder.js.map +1 -0
- package/dist/editor/client/ui/EditorChrome.d.ts +12 -0
- package/dist/editor/client/ui/EditorChrome.js +30 -0
- package/dist/editor/client/ui/EditorChrome.js.map +1 -0
- package/dist/editor/client/ui/FullscreenControls.d.ts +7 -0
- package/dist/editor/client/ui/FullscreenControls.js +21 -0
- package/dist/editor/client/ui/FullscreenControls.js.map +1 -0
- package/dist/editor/commands/agentCommands.d.ts +9 -0
- package/dist/editor/commands/agentCommands.js +30 -0
- package/dist/editor/commands/agentCommands.js.map +1 -0
- package/dist/editor/commands/commands.d.ts +19 -0
- package/dist/editor/commands/commands.js +2 -0
- package/dist/editor/commands/commands.js.map +1 -0
- package/dist/editor/commands/componentCommands.d.ts +12 -0
- package/dist/editor/commands/componentCommands.js +378 -0
- package/dist/editor/commands/componentCommands.js.map +1 -0
- package/dist/editor/commands/createVersionCommand.d.ts +4 -0
- package/dist/editor/commands/createVersionCommand.js +24 -0
- package/dist/editor/commands/createVersionCommand.js.map +1 -0
- package/dist/editor/commands/deleteVersionCommand.d.ts +4 -0
- package/dist/editor/commands/deleteVersionCommand.js +53 -0
- package/dist/editor/commands/deleteVersionCommand.js.map +1 -0
- package/dist/editor/commands/itemCommands.d.ts +29 -0
- package/dist/editor/commands/itemCommands.js +428 -0
- package/dist/editor/commands/itemCommands.js.map +1 -0
- package/dist/editor/commands/localizeItem/LocalizeItemDialog.d.ts +8 -0
- package/dist/editor/commands/localizeItem/LocalizeItemDialog.js +91 -0
- package/dist/editor/commands/localizeItem/LocalizeItemDialog.js.map +1 -0
- package/dist/editor/commands/undo.d.ts +15 -0
- package/dist/editor/commands/undo.js +29 -0
- package/dist/editor/commands/undo.js.map +1 -0
- package/dist/editor/componentTreeHelper.d.ts +18 -0
- package/dist/editor/componentTreeHelper.js +123 -0
- package/dist/editor/componentTreeHelper.js.map +1 -0
- package/dist/editor/context-menu/CopyMoveMenu.d.ts +7 -0
- package/dist/editor/context-menu/CopyMoveMenu.js +58 -0
- package/dist/editor/context-menu/CopyMoveMenu.js.map +1 -0
- package/dist/editor/context-menu/InsertMenu.d.ts +9 -0
- package/dist/editor/context-menu/InsertMenu.js +229 -0
- package/dist/editor/context-menu/InsertMenu.js.map +1 -0
- package/dist/editor/control-center/About.d.ts +1 -0
- package/dist/editor/control-center/About.js +8 -0
- package/dist/editor/control-center/About.js.map +1 -0
- package/dist/editor/control-center/AllAgentsPanel.d.ts +5 -0
- package/dist/editor/control-center/AllAgentsPanel.js +126 -0
- package/dist/editor/control-center/AllAgentsPanel.js.map +1 -0
- package/dist/editor/control-center/ControlCenterMenu.d.ts +1 -0
- package/dist/editor/control-center/ControlCenterMenu.js +66 -0
- package/dist/editor/control-center/ControlCenterMenu.js.map +1 -0
- package/dist/editor/control-center/IndexOverview.d.ts +1 -0
- package/dist/editor/control-center/IndexOverview.js +323 -0
- package/dist/editor/control-center/IndexOverview.js.map +1 -0
- package/dist/editor/control-center/Info.d.ts +1 -0
- package/dist/editor/control-center/Info.js +10 -0
- package/dist/editor/control-center/Info.js.map +1 -0
- package/dist/editor/control-center/LatestFeedback.d.ts +1 -0
- package/dist/editor/control-center/LatestFeedback.js +136 -0
- package/dist/editor/control-center/LatestFeedback.js.map +1 -0
- package/dist/editor/control-center/QuotaInfo.d.ts +1 -0
- package/dist/editor/control-center/QuotaInfo.js +102 -0
- package/dist/editor/control-center/QuotaInfo.js.map +1 -0
- package/dist/editor/control-center/Setup.d.ts +1 -0
- package/dist/editor/control-center/Setup.js +18 -0
- package/dist/editor/control-center/Setup.js.map +1 -0
- package/dist/editor/control-center/Status.d.ts +1 -0
- package/dist/editor/control-center/Status.js +79 -0
- package/dist/editor/control-center/Status.js.map +1 -0
- package/dist/editor/control-center/WebSocketMessages.d.ts +1 -0
- package/dist/editor/control-center/WebSocketMessages.js +71 -0
- package/dist/editor/control-center/WebSocketMessages.js.map +1 -0
- package/dist/editor/control-center/parhelia-setup/Overview.d.ts +1 -0
- package/dist/editor/control-center/parhelia-setup/Overview.js +91 -0
- package/dist/editor/control-center/parhelia-setup/Overview.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/EmbeddingsModelSection.d.ts +2 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/EmbeddingsModelSection.js +195 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/EmbeddingsModelSection.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/index.d.ts +2 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/index.js +22 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/index.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/provider/ProviderSection.d.ts +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/provider/ProviderSection.js +233 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/provider/ProviderSection.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/required-containers/RequiredContainersList.d.ts +15 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/required-containers/RequiredContainersList.js +14 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/required-containers/RequiredContainersList.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.d.ts +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.js +94 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/required-containers/RequiredContainersSection.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/tools/GenerateToolsSection.d.ts +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/tools/GenerateToolsSection.js +367 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/tools/GenerateToolsSection.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/types.d.ts +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/types.js +2 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/types.js.map +1 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/utils.d.ts +4 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/utils.js +25 -0
- package/dist/editor/control-center/setup-steps/AiSetupStep/utils.js.map +1 -0
- package/dist/editor/control-center/setup-steps/DbSetupStep.d.ts +2 -0
- package/dist/editor/control-center/setup-steps/DbSetupStep.js +46 -0
- package/dist/editor/control-center/setup-steps/DbSetupStep.js.map +1 -0
- package/dist/editor/control-center/setup-steps/IndexSetupStep.d.ts +2 -0
- package/dist/editor/control-center/setup-steps/IndexSetupStep.js +36 -0
- package/dist/editor/control-center/setup-steps/IndexSetupStep.js.map +1 -0
- package/dist/editor/control-center/setup-steps/SettingsSetupStep.d.ts +2 -0
- package/dist/editor/control-center/setup-steps/SettingsSetupStep.js +107 -0
- package/dist/editor/control-center/setup-steps/SettingsSetupStep.js.map +1 -0
- package/dist/editor/editor-warnings/ItemLocked.d.ts +2 -0
- package/dist/editor/editor-warnings/ItemLocked.js +38 -0
- package/dist/editor/editor-warnings/ItemLocked.js.map +1 -0
- package/dist/editor/editor-warnings/NoLanguageWriteAccess.d.ts +2 -0
- package/dist/editor/editor-warnings/NoLanguageWriteAccess.js +14 -0
- package/dist/editor/editor-warnings/NoLanguageWriteAccess.js.map +1 -0
- package/dist/editor/editor-warnings/NoWorkflowWriteAccess.d.ts +2 -0
- package/dist/editor/editor-warnings/NoWorkflowWriteAccess.js +14 -0
- package/dist/editor/editor-warnings/NoWorkflowWriteAccess.js.map +1 -0
- package/dist/editor/editor-warnings/NoWriteAccess.d.ts +2 -0
- package/dist/editor/editor-warnings/NoWriteAccess.js +14 -0
- package/dist/editor/editor-warnings/NoWriteAccess.js.map +1 -0
- package/dist/editor/editor-warnings/ValidationErrors.d.ts +2 -0
- package/dist/editor/editor-warnings/ValidationErrors.js +28 -0
- package/dist/editor/editor-warnings/ValidationErrors.js.map +1 -0
- package/dist/editor/field-types/AttachmentEditor.d.ts +9 -0
- package/dist/editor/field-types/AttachmentEditor.js +73 -0
- package/dist/editor/field-types/AttachmentEditor.js.map +1 -0
- package/dist/editor/field-types/CheckboxEditor.d.ts +5 -0
- package/dist/editor/field-types/CheckboxEditor.js +30 -0
- package/dist/editor/field-types/CheckboxEditor.js.map +1 -0
- package/dist/editor/field-types/DateFieldEditor.d.ts +5 -0
- package/dist/editor/field-types/DateFieldEditor.js +93 -0
- package/dist/editor/field-types/DateFieldEditor.js.map +1 -0
- package/dist/editor/field-types/DateTimeFieldEditor.d.ts +5 -0
- package/dist/editor/field-types/DateTimeFieldEditor.js +151 -0
- package/dist/editor/field-types/DateTimeFieldEditor.js.map +1 -0
- package/dist/editor/field-types/DropLinkEditor.d.ts +5 -0
- package/dist/editor/field-types/DropLinkEditor.js +42 -0
- package/dist/editor/field-types/DropLinkEditor.js.map +1 -0
- package/dist/editor/field-types/DropListEditor.d.ts +5 -0
- package/dist/editor/field-types/DropListEditor.js +46 -0
- package/dist/editor/field-types/DropListEditor.js.map +1 -0
- package/dist/editor/field-types/ImageFieldEditor.d.ts +5 -0
- package/dist/editor/field-types/ImageFieldEditor.js +34 -0
- package/dist/editor/field-types/ImageFieldEditor.js.map +1 -0
- package/dist/editor/field-types/InternalLinkFieldEditor.d.ts +5 -0
- package/dist/editor/field-types/InternalLinkFieldEditor.js +120 -0
- package/dist/editor/field-types/InternalLinkFieldEditor.js.map +1 -0
- package/dist/editor/field-types/LinkFieldEditor.d.ts +5 -0
- package/dist/editor/field-types/LinkFieldEditor.js +62 -0
- package/dist/editor/field-types/LinkFieldEditor.js.map +1 -0
- package/dist/editor/field-types/MultiLineText.d.ts +7 -0
- package/dist/editor/field-types/MultiLineText.js +48 -0
- package/dist/editor/field-types/MultiLineText.js.map +1 -0
- package/dist/editor/field-types/NameValueListEditor.d.ts +7 -0
- package/dist/editor/field-types/NameValueListEditor.js +101 -0
- package/dist/editor/field-types/NameValueListEditor.js.map +1 -0
- package/dist/editor/field-types/PictureFieldEditor.d.ts +5 -0
- package/dist/editor/field-types/PictureFieldEditor.js +58 -0
- package/dist/editor/field-types/PictureFieldEditor.js.map +1 -0
- package/dist/editor/field-types/RawEditor.d.ts +6 -0
- package/dist/editor/field-types/RawEditor.js +31 -0
- package/dist/editor/field-types/RawEditor.js.map +1 -0
- package/dist/editor/field-types/ReactQuill.d.ts +125 -0
- package/dist/editor/field-types/ReactQuill.js +385 -0
- package/dist/editor/field-types/ReactQuill.js.map +1 -0
- package/dist/editor/field-types/RichTextEditor.d.ts +7 -0
- package/dist/editor/field-types/RichTextEditor.js +21 -0
- package/dist/editor/field-types/RichTextEditor.js.map +1 -0
- package/dist/editor/field-types/RichTextEditorComponent.d.ts +8 -0
- package/dist/editor/field-types/RichTextEditorComponent.js +74 -0
- package/dist/editor/field-types/RichTextEditorComponent.js.map +1 -0
- package/dist/editor/field-types/SingleLineText.d.ts +7 -0
- package/dist/editor/field-types/SingleLineText.js +113 -0
- package/dist/editor/field-types/SingleLineText.js.map +1 -0
- package/dist/editor/field-types/TreeListEditor.d.ts +5 -0
- package/dist/editor/field-types/TreeListEditor.js +316 -0
- package/dist/editor/field-types/TreeListEditor.js.map +1 -0
- package/dist/editor/field-types/richtext/components/EditorDropdown.d.ts +11 -0
- package/dist/editor/field-types/richtext/components/EditorDropdown.js +83 -0
- package/dist/editor/field-types/richtext/components/EditorDropdown.js.map +1 -0
- package/dist/editor/field-types/richtext/components/ReactSlate.d.ts +5 -0
- package/dist/editor/field-types/richtext/components/ReactSlate.js +607 -0
- package/dist/editor/field-types/richtext/components/ReactSlate.js.map +1 -0
- package/dist/editor/field-types/richtext/components/SimpleDropdown.d.ts +18 -0
- package/dist/editor/field-types/richtext/components/SimpleDropdown.js +71 -0
- package/dist/editor/field-types/richtext/components/SimpleDropdown.js.map +1 -0
- package/dist/editor/field-types/richtext/components/SimpleRichTextEditor.d.ts +5 -0
- package/dist/editor/field-types/richtext/components/SimpleRichTextEditor.js +359 -0
- package/dist/editor/field-types/richtext/components/SimpleRichTextEditor.js.map +1 -0
- package/dist/editor/field-types/richtext/components/SimpleToolbar.d.ts +16 -0
- package/dist/editor/field-types/richtext/components/SimpleToolbar.js +181 -0
- package/dist/editor/field-types/richtext/components/SimpleToolbar.js.map +1 -0
- package/dist/editor/field-types/richtext/components/SimpleToolbarButton.d.ts +9 -0
- package/dist/editor/field-types/richtext/components/SimpleToolbarButton.js +14 -0
- package/dist/editor/field-types/richtext/components/SimpleToolbarButton.js.map +1 -0
- package/dist/editor/field-types/richtext/components/ToolbarButton.d.ts +3 -0
- package/dist/editor/field-types/richtext/components/ToolbarButton.js +6 -0
- package/dist/editor/field-types/richtext/components/ToolbarButton.js.map +1 -0
- package/dist/editor/field-types/richtext/config/pluginFactory.d.ts +19 -0
- package/dist/editor/field-types/richtext/config/pluginFactory.js +17 -0
- package/dist/editor/field-types/richtext/config/pluginFactory.js.map +1 -0
- package/dist/editor/field-types/richtext/contextMenuFactory.d.ts +4 -0
- package/dist/editor/field-types/richtext/contextMenuFactory.js +201 -0
- package/dist/editor/field-types/richtext/contextMenuFactory.js.map +1 -0
- package/dist/editor/field-types/richtext/hooks/useProfileCache.d.ts +68 -0
- package/dist/editor/field-types/richtext/hooks/useProfileCache.js +214 -0
- package/dist/editor/field-types/richtext/hooks/useProfileCache.js.map +1 -0
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.d.ts +25 -0
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.js +64 -0
- package/dist/editor/field-types/richtext/hooks/useRichTextProfile.js.map +1 -0
- package/dist/editor/field-types/richtext/index.d.ts +6 -0
- package/dist/editor/field-types/richtext/index.js +7 -0
- package/dist/editor/field-types/richtext/index.js.map +1 -0
- package/dist/editor/field-types/richtext/types.d.ts +288 -0
- package/dist/editor/field-types/richtext/types.js +107 -0
- package/dist/editor/field-types/richtext/types.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/conversion.d.ts +7 -0
- package/dist/editor/field-types/richtext/utils/conversion.js +762 -0
- package/dist/editor/field-types/richtext/utils/conversion.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/plugins.d.ts +170 -0
- package/dist/editor/field-types/richtext/utils/plugins.js +490 -0
- package/dist/editor/field-types/richtext/utils/plugins.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/profileMapper.d.ts +38 -0
- package/dist/editor/field-types/richtext/utils/profileMapper.js +386 -0
- package/dist/editor/field-types/richtext/utils/profileMapper.js.map +1 -0
- package/dist/editor/field-types/richtext/utils/profileServiceCache.d.ts +37 -0
- package/dist/editor/field-types/richtext/utils/profileServiceCache.js +119 -0
- package/dist/editor/field-types/richtext/utils/profileServiceCache.js.map +1 -0
- package/dist/editor/fieldTypes.d.ts +129 -0
- package/dist/editor/fieldTypes.js +2 -0
- package/dist/editor/fieldTypes.js.map +1 -0
- package/dist/editor/hooks/useEditorSettings.d.ts +17 -0
- package/dist/editor/hooks/useEditorSettings.js +61 -0
- package/dist/editor/hooks/useEditorSettings.js.map +1 -0
- package/dist/editor/media-selector/AiImageSearch.d.ts +4 -0
- package/dist/editor/media-selector/AiImageSearch.js +164 -0
- package/dist/editor/media-selector/AiImageSearch.js.map +1 -0
- package/dist/editor/media-selector/AiImageSearchPrompt.d.ts +3 -0
- package/dist/editor/media-selector/AiImageSearchPrompt.js +57 -0
- package/dist/editor/media-selector/AiImageSearchPrompt.js.map +1 -0
- package/dist/editor/media-selector/MediaFolderBrowser.d.ts +5 -0
- package/dist/editor/media-selector/MediaFolderBrowser.js +182 -0
- package/dist/editor/media-selector/MediaFolderBrowser.js.map +1 -0
- package/dist/editor/media-selector/MediaSelector.d.ts +9 -0
- package/dist/editor/media-selector/MediaSelector.js +8 -0
- package/dist/editor/media-selector/MediaSelector.js.map +1 -0
- package/dist/editor/media-selector/Preview.d.ts +4 -0
- package/dist/editor/media-selector/Preview.js +19 -0
- package/dist/editor/media-selector/Preview.js.map +1 -0
- package/dist/editor/media-selector/Thumbnails.d.ts +8 -0
- package/dist/editor/media-selector/Thumbnails.js +10 -0
- package/dist/editor/media-selector/Thumbnails.js.map +1 -0
- package/dist/editor/media-selector/TreeSelector.d.ts +7 -0
- package/dist/editor/media-selector/TreeSelector.js +183 -0
- package/dist/editor/media-selector/TreeSelector.js.map +1 -0
- package/dist/editor/media-selector/UploadZone.d.ts +4 -0
- package/dist/editor/media-selector/UploadZone.js +81 -0
- package/dist/editor/media-selector/UploadZone.js.map +1 -0
- package/dist/editor/media-selector/index.d.ts +8 -0
- package/dist/editor/media-selector/index.js +9 -0
- package/dist/editor/media-selector/index.js.map +1 -0
- package/dist/editor/menubar/ActiveUsers.d.ts +1 -0
- package/dist/editor/menubar/ActiveUsers.js +120 -0
- package/dist/editor/menubar/ActiveUsers.js.map +1 -0
- package/dist/editor/menubar/ApproveAndPublish.d.ts +1 -0
- package/dist/editor/menubar/ApproveAndPublish.js +13 -0
- package/dist/editor/menubar/ApproveAndPublish.js.map +1 -0
- package/dist/editor/menubar/FavoritesControls.d.ts +8 -0
- package/dist/editor/menubar/FavoritesControls.js +124 -0
- package/dist/editor/menubar/FavoritesControls.js.map +1 -0
- package/dist/editor/menubar/GenericToolbar.d.ts +11 -0
- package/dist/editor/menubar/GenericToolbar.js +10 -0
- package/dist/editor/menubar/GenericToolbar.js.map +1 -0
- package/dist/editor/menubar/ItemActionsMenu.d.ts +3 -0
- package/dist/editor/menubar/ItemActionsMenu.js +23 -0
- package/dist/editor/menubar/ItemActionsMenu.js.map +1 -0
- package/dist/editor/menubar/ItemLanguageVersion.d.ts +1 -0
- package/dist/editor/menubar/ItemLanguageVersion.js +54 -0
- package/dist/editor/menubar/ItemLanguageVersion.js.map +1 -0
- package/dist/editor/menubar/ItemToolbar.d.ts +1 -0
- package/dist/editor/menubar/ItemToolbar.js +11 -0
- package/dist/editor/menubar/ItemToolbar.js.map +1 -0
- package/dist/editor/menubar/NavButtons.d.ts +1 -0
- package/dist/editor/menubar/NavButtons.js +40 -0
- package/dist/editor/menubar/NavButtons.js.map +1 -0
- package/dist/editor/menubar/PageSelector.d.ts +4 -0
- package/dist/editor/menubar/PageSelector.js +149 -0
- package/dist/editor/menubar/PageSelector.js.map +1 -0
- package/dist/editor/menubar/Separator.d.ts +3 -0
- package/dist/editor/menubar/Separator.js +6 -0
- package/dist/editor/menubar/Separator.js.map +1 -0
- package/dist/editor/menubar/SiteInfo.d.ts +1 -0
- package/dist/editor/menubar/SiteInfo.js +24 -0
- package/dist/editor/menubar/SiteInfo.js.map +1 -0
- package/dist/editor/menubar/ToolbarFactory.d.ts +2 -0
- package/dist/editor/menubar/ToolbarFactory.js +55 -0
- package/dist/editor/menubar/ToolbarFactory.js.map +1 -0
- package/dist/editor/menubar/User.d.ts +4 -0
- package/dist/editor/menubar/User.js +18 -0
- package/dist/editor/menubar/User.js.map +1 -0
- package/dist/editor/menubar/VersionSelector.d.ts +10 -0
- package/dist/editor/menubar/VersionSelector.js +53 -0
- package/dist/editor/menubar/VersionSelector.js.map +1 -0
- package/dist/editor/menubar/WorkflowButton.d.ts +1 -0
- package/dist/editor/menubar/WorkflowButton.js +93 -0
- package/dist/editor/menubar/WorkflowButton.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/CompareControls.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/CompareControls.js +11 -0
- package/dist/editor/menubar/toolbar-sections/CompareControls.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/EditControls.d.ts +7 -0
- package/dist/editor/menubar/toolbar-sections/EditControls.js +15 -0
- package/dist/editor/menubar/toolbar-sections/EditControls.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/InsertControls.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/InsertControls.js +15 -0
- package/dist/editor/menubar/toolbar-sections/InsertControls.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/ReviewCommands.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/ReviewCommands.js +41 -0
- package/dist/editor/menubar/toolbar-sections/ReviewCommands.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/UtilityControls.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js +17 -0
- package/dist/editor/menubar/toolbar-sections/UtilityControls.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/ViewportControls.d.ts +1 -0
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js +21 -0
- package/dist/editor/menubar/toolbar-sections/ViewportControls.js.map +1 -0
- package/dist/editor/menubar/toolbar-sections/index.d.ts +6 -0
- package/dist/editor/menubar/toolbar-sections/index.js +7 -0
- package/dist/editor/menubar/toolbar-sections/index.js.map +1 -0
- package/dist/editor/page-editor-chrome/CommentHighlighting.d.ts +6 -0
- package/dist/editor/page-editor-chrome/CommentHighlighting.js +270 -0
- package/dist/editor/page-editor-chrome/CommentHighlighting.js.map +1 -0
- package/dist/editor/page-editor-chrome/CommentHighlightings.d.ts +4 -0
- package/dist/editor/page-editor-chrome/CommentHighlightings.js +15 -0
- package/dist/editor/page-editor-chrome/CommentHighlightings.js.map +1 -0
- package/dist/editor/page-editor-chrome/FieldActionIndicator.d.ts +4 -0
- package/dist/editor/page-editor-chrome/FieldActionIndicator.js +35 -0
- package/dist/editor/page-editor-chrome/FieldActionIndicator.js.map +1 -0
- package/dist/editor/page-editor-chrome/FieldActionIndicators.d.ts +1 -0
- package/dist/editor/page-editor-chrome/FieldActionIndicators.js +13 -0
- package/dist/editor/page-editor-chrome/FieldActionIndicators.js.map +1 -0
- package/dist/editor/page-editor-chrome/FieldEditedIndicator.d.ts +8 -0
- package/dist/editor/page-editor-chrome/FieldEditedIndicator.js +26 -0
- package/dist/editor/page-editor-chrome/FieldEditedIndicator.js.map +1 -0
- package/dist/editor/page-editor-chrome/FieldEditedIndicators.d.ts +6 -0
- package/dist/editor/page-editor-chrome/FieldEditedIndicators.js +14 -0
- package/dist/editor/page-editor-chrome/FieldEditedIndicators.js.map +1 -0
- package/dist/editor/page-editor-chrome/FrameMenu.d.ts +7 -0
- package/dist/editor/page-editor-chrome/FrameMenu.js +346 -0
- package/dist/editor/page-editor-chrome/FrameMenu.js.map +1 -0
- package/dist/editor/page-editor-chrome/FrameMenus.d.ts +5 -0
- package/dist/editor/page-editor-chrome/FrameMenus.js +22 -0
- package/dist/editor/page-editor-chrome/FrameMenus.js.map +1 -0
- package/dist/editor/page-editor-chrome/InlineEditor.d.ts +5 -0
- package/dist/editor/page-editor-chrome/InlineEditor.js +704 -0
- package/dist/editor/page-editor-chrome/InlineEditor.js.map +1 -0
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.d.ts +1 -0
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.js +33 -0
- package/dist/editor/page-editor-chrome/LockedFieldIndicator.js.map +1 -0
- package/dist/editor/page-editor-chrome/NoLayout.d.ts +1 -0
- package/dist/editor/page-editor-chrome/NoLayout.js +19 -0
- package/dist/editor/page-editor-chrome/NoLayout.js.map +1 -0
- package/dist/editor/page-editor-chrome/PageEditorChrome.d.ts +6 -0
- package/dist/editor/page-editor-chrome/PageEditorChrome.js +64 -0
- package/dist/editor/page-editor-chrome/PageEditorChrome.js.map +1 -0
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.d.ts +1 -0
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js +152 -0
- package/dist/editor/page-editor-chrome/PictureEditorOverlay.js.map +1 -0
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.d.ts +18 -0
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js +122 -0
- package/dist/editor/page-editor-chrome/PlaceholderDropZone.js.map +1 -0
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.d.ts +5 -0
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js +289 -0
- package/dist/editor/page-editor-chrome/PlaceholderDropZones.js.map +1 -0
- package/dist/editor/page-editor-chrome/SuggestionHighlighting.d.ts +6 -0
- package/dist/editor/page-editor-chrome/SuggestionHighlighting.js +224 -0
- package/dist/editor/page-editor-chrome/SuggestionHighlighting.js.map +1 -0
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.d.ts +4 -0
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js +16 -0
- package/dist/editor/page-editor-chrome/SuggestionHighlightings.js.map +1 -0
- package/dist/editor/page-editor-chrome/useInlineAICompletion.d.ts +7 -0
- package/dist/editor/page-editor-chrome/useInlineAICompletion.js +699 -0
- package/dist/editor/page-editor-chrome/useInlineAICompletion.js.map +1 -0
- package/dist/editor/page-viewer/DeviceToolbar.d.ts +6 -0
- package/dist/editor/page-viewer/DeviceToolbar.js +21 -0
- package/dist/editor/page-viewer/DeviceToolbar.js.map +1 -0
- package/dist/editor/page-viewer/EditorForm.d.ts +8 -0
- package/dist/editor/page-viewer/EditorForm.js +257 -0
- package/dist/editor/page-viewer/EditorForm.js.map +1 -0
- package/dist/editor/page-viewer/EditorFormPopup.d.ts +11 -0
- package/dist/editor/page-viewer/EditorFormPopup.js +41 -0
- package/dist/editor/page-viewer/EditorFormPopup.js.map +1 -0
- package/dist/editor/page-viewer/MiniMap.d.ts +9 -0
- package/dist/editor/page-viewer/MiniMap.js +233 -0
- package/dist/editor/page-viewer/MiniMap.js.map +1 -0
- package/dist/editor/page-viewer/PageViewer.d.ts +10 -0
- package/dist/editor/page-viewer/PageViewer.js +67 -0
- package/dist/editor/page-viewer/PageViewer.js.map +1 -0
- package/dist/editor/page-viewer/PageViewerFrame.d.ts +11 -0
- package/dist/editor/page-viewer/PageViewerFrame.js +857 -0
- package/dist/editor/page-viewer/PageViewerFrame.js.map +1 -0
- package/dist/editor/page-viewer/pageModelSkeletonBuilder.d.ts +3 -0
- package/dist/editor/page-viewer/pageModelSkeletonBuilder.js +339 -0
- package/dist/editor/page-viewer/pageModelSkeletonBuilder.js.map +1 -0
- package/dist/editor/page-viewer/pageViewContext.d.ts +40 -0
- package/dist/editor/page-viewer/pageViewContext.js +156 -0
- package/dist/editor/page-viewer/pageViewContext.js.map +1 -0
- package/dist/editor/pageModel.d.ts +222 -0
- package/dist/editor/pageModel.js +2 -0
- package/dist/editor/pageModel.js.map +1 -0
- package/dist/editor/picture-shared.d.ts +16 -0
- package/dist/editor/picture-shared.js +25 -0
- package/dist/editor/picture-shared.js.map +1 -0
- package/dist/editor/reviews/Comment.d.ts +8 -0
- package/dist/editor/reviews/Comment.js +162 -0
- package/dist/editor/reviews/Comment.js.map +1 -0
- package/dist/editor/reviews/CommentDisplayPopover.d.ts +9 -0
- package/dist/editor/reviews/CommentDisplayPopover.js +104 -0
- package/dist/editor/reviews/CommentDisplayPopover.js.map +1 -0
- package/dist/editor/reviews/CommentEditor.d.ts +20 -0
- package/dist/editor/reviews/CommentEditor.js +57 -0
- package/dist/editor/reviews/CommentEditor.js.map +1 -0
- package/dist/editor/reviews/CommentPopover.d.ts +22 -0
- package/dist/editor/reviews/CommentPopover.js +145 -0
- package/dist/editor/reviews/CommentPopover.js.map +1 -0
- package/dist/editor/reviews/CommentView.d.ts +21 -0
- package/dist/editor/reviews/CommentView.js +52 -0
- package/dist/editor/reviews/CommentView.js.map +1 -0
- package/dist/editor/reviews/Comments.d.ts +3 -0
- package/dist/editor/reviews/Comments.js +118 -0
- package/dist/editor/reviews/Comments.js.map +1 -0
- package/dist/editor/reviews/DiffView.d.ts +17 -0
- package/dist/editor/reviews/DiffView.js +57 -0
- package/dist/editor/reviews/DiffView.js.map +1 -0
- package/dist/editor/reviews/PreviewInfo.d.ts +1 -0
- package/dist/editor/reviews/PreviewInfo.js +12 -0
- package/dist/editor/reviews/PreviewInfo.js.map +1 -0
- package/dist/editor/reviews/Reviews.d.ts +1 -0
- package/dist/editor/reviews/Reviews.js +186 -0
- package/dist/editor/reviews/Reviews.js.map +1 -0
- package/dist/editor/reviews/SuggestedEdit.d.ts +4 -0
- package/dist/editor/reviews/SuggestedEdit.js +200 -0
- package/dist/editor/reviews/SuggestedEdit.js.map +1 -0
- package/dist/editor/reviews/SuggestionDisplayPopover.d.ts +9 -0
- package/dist/editor/reviews/SuggestionDisplayPopover.js +204 -0
- package/dist/editor/reviews/SuggestionDisplayPopover.js.map +1 -0
- package/dist/editor/reviews/commentAi.d.ts +7 -0
- package/dist/editor/reviews/commentAi.js +100 -0
- package/dist/editor/reviews/commentAi.js.map +1 -0
- package/dist/editor/reviews/reviewCommands.d.ts +3 -0
- package/dist/editor/reviews/reviewCommands.js +38 -0
- package/dist/editor/reviews/reviewCommands.js.map +1 -0
- package/dist/editor/reviews/useReviews.d.ts +12 -0
- package/dist/editor/reviews/useReviews.js +43 -0
- package/dist/editor/reviews/useReviews.js.map +1 -0
- package/dist/editor/services/agentService.d.ts +306 -0
- package/dist/editor/services/agentService.js +627 -0
- package/dist/editor/services/agentService.js.map +1 -0
- package/dist/editor/services/aiService.d.ts +106 -0
- package/dist/editor/services/aiService.js +294 -0
- package/dist/editor/services/aiService.js.map +1 -0
- package/dist/editor/services/componentDesignerService.d.ts +46 -0
- package/dist/editor/services/componentDesignerService.js +72 -0
- package/dist/editor/services/componentDesignerService.js.map +1 -0
- package/dist/editor/services/contentService.d.ts +79 -0
- package/dist/editor/services/contentService.js +119 -0
- package/dist/editor/services/contentService.js.map +1 -0
- package/dist/editor/services/contextService.d.ts +26 -0
- package/dist/editor/services/contextService.js +103 -0
- package/dist/editor/services/contextService.js.map +1 -0
- package/dist/editor/services/editService.d.ts +66 -0
- package/dist/editor/services/editService.js +325 -0
- package/dist/editor/services/editService.js.map +1 -0
- package/dist/editor/services/favouritesService.d.ts +33 -0
- package/dist/editor/services/favouritesService.js +22 -0
- package/dist/editor/services/favouritesService.js.map +1 -0
- package/dist/editor/services/indexService.d.ts +13 -0
- package/dist/editor/services/indexService.js +45 -0
- package/dist/editor/services/indexService.js.map +1 -0
- package/dist/editor/services/reviewsService.d.ts +18 -0
- package/dist/editor/services/reviewsService.js +60 -0
- package/dist/editor/services/reviewsService.js.map +1 -0
- package/dist/editor/services/searchService.d.ts +17 -0
- package/dist/editor/services/searchService.js +25 -0
- package/dist/editor/services/searchService.js.map +1 -0
- package/dist/editor/services/serviceHelper.d.ts +10 -0
- package/dist/editor/services/serviceHelper.js +118 -0
- package/dist/editor/services/serviceHelper.js.map +1 -0
- package/dist/editor/services/setupService.d.ts +21 -0
- package/dist/editor/services/setupService.js +10 -0
- package/dist/editor/services/setupService.js.map +1 -0
- package/dist/editor/services/suggestedEditsService.d.ts +18 -0
- package/dist/editor/services/suggestedEditsService.js +36 -0
- package/dist/editor/services/suggestedEditsService.js.map +1 -0
- package/dist/editor/services/systemService.d.ts +4 -0
- package/dist/editor/services/systemService.js +11 -0
- package/dist/editor/services/systemService.js.map +1 -0
- package/dist/editor/services-server/api.d.ts +19 -0
- package/dist/editor/services-server/api.js +111 -0
- package/dist/editor/services-server/api.js.map +1 -0
- package/dist/editor/services-server/graphQL.d.ts +29 -0
- package/dist/editor/services-server/graphQL.js +53 -0
- package/dist/editor/services-server/graphQL.js.map +1 -0
- package/dist/editor/sidebar/Completions.d.ts +1 -0
- package/dist/editor/sidebar/Completions.js +55 -0
- package/dist/editor/sidebar/Completions.js.map +1 -0
- package/dist/editor/sidebar/ComponentPalette.d.ts +1 -0
- package/dist/editor/sidebar/ComponentPalette.js +86 -0
- package/dist/editor/sidebar/ComponentPalette.js.map +1 -0
- package/dist/editor/sidebar/ComponentTree.d.ts +1 -0
- package/dist/editor/sidebar/ComponentTree.js +691 -0
- package/dist/editor/sidebar/ComponentTree.js.map +1 -0
- package/dist/editor/sidebar/Debug.d.ts +1 -0
- package/dist/editor/sidebar/Debug.js +71 -0
- package/dist/editor/sidebar/Debug.js.map +1 -0
- package/dist/editor/sidebar/DictionaryEditor.d.ts +1 -0
- package/dist/editor/sidebar/DictionaryEditor.js +158 -0
- package/dist/editor/sidebar/DictionaryEditor.js.map +1 -0
- package/dist/editor/sidebar/Divider.d.ts +6 -0
- package/dist/editor/sidebar/Divider.js +6 -0
- package/dist/editor/sidebar/Divider.js.map +1 -0
- package/dist/editor/sidebar/EditHistory.d.ts +1 -0
- package/dist/editor/sidebar/EditHistory.js +78 -0
- package/dist/editor/sidebar/EditHistory.js.map +1 -0
- package/dist/editor/sidebar/GraphQL.d.ts +2 -0
- package/dist/editor/sidebar/GraphQL.js +234 -0
- package/dist/editor/sidebar/GraphQL.js.map +1 -0
- package/dist/editor/sidebar/Insert.d.ts +1 -0
- package/dist/editor/sidebar/Insert.js +22 -0
- package/dist/editor/sidebar/Insert.js.map +1 -0
- package/dist/editor/sidebar/LeftToolbar.d.ts +1 -0
- package/dist/editor/sidebar/LeftToolbar.js +16 -0
- package/dist/editor/sidebar/LeftToolbar.js.map +1 -0
- package/dist/editor/sidebar/MainContentTree.d.ts +5 -0
- package/dist/editor/sidebar/MainContentTree.js +70 -0
- package/dist/editor/sidebar/MainContentTree.js.map +1 -0
- package/dist/editor/sidebar/Performance.d.ts +1 -0
- package/dist/editor/sidebar/Performance.js +32 -0
- package/dist/editor/sidebar/Performance.js.map +1 -0
- package/dist/editor/sidebar/SEOInfo.d.ts +1 -0
- package/dist/editor/sidebar/SEOInfo.js +158 -0
- package/dist/editor/sidebar/SEOInfo.js.map +1 -0
- package/dist/editor/sidebar/Sessions.d.ts +1 -0
- package/dist/editor/sidebar/Sessions.js +29 -0
- package/dist/editor/sidebar/Sessions.js.map +1 -0
- package/dist/editor/sidebar/Sidebar.d.ts +1 -0
- package/dist/editor/sidebar/Sidebar.js +13 -0
- package/dist/editor/sidebar/Sidebar.js.map +1 -0
- package/dist/editor/sidebar/SidebarView.d.ts +10 -0
- package/dist/editor/sidebar/SidebarView.js +40 -0
- package/dist/editor/sidebar/SidebarView.js.map +1 -0
- package/dist/editor/sidebar/Validation.d.ts +1 -0
- package/dist/editor/sidebar/Validation.js +51 -0
- package/dist/editor/sidebar/Validation.js.map +1 -0
- package/dist/editor/sidebar/ViewSelector.d.ts +4 -0
- package/dist/editor/sidebar/ViewSelector.js +191 -0
- package/dist/editor/sidebar/ViewSelector.js.map +1 -0
- package/dist/editor/sidebar/Workbox.d.ts +1 -0
- package/dist/editor/sidebar/Workbox.js +79 -0
- package/dist/editor/sidebar/Workbox.js.map +1 -0
- package/dist/editor/ui/CenteredMessage.d.ts +3 -0
- package/dist/editor/ui/CenteredMessage.js +5 -0
- package/dist/editor/ui/CenteredMessage.js.map +1 -0
- package/dist/editor/ui/CopyMoveTargetSelectorDialog.d.ts +10 -0
- package/dist/editor/ui/CopyMoveTargetSelectorDialog.js +38 -0
- package/dist/editor/ui/CopyMoveTargetSelectorDialog.js.map +1 -0
- package/dist/editor/ui/DialogButtons.d.ts +3 -0
- package/dist/editor/ui/DialogButtons.js +5 -0
- package/dist/editor/ui/DialogButtons.js.map +1 -0
- package/dist/editor/ui/DragPreview.d.ts +14 -0
- package/dist/editor/ui/DragPreview.js +33 -0
- package/dist/editor/ui/DragPreview.js.map +1 -0
- package/dist/editor/ui/Icons.d.ts +74 -0
- package/dist/editor/ui/Icons.js +106 -0
- package/dist/editor/ui/Icons.js.map +1 -0
- package/dist/editor/ui/ItemList.d.ts +16 -0
- package/dist/editor/ui/ItemList.js +19 -0
- package/dist/editor/ui/ItemList.js.map +1 -0
- package/dist/editor/ui/ItemNameDialogNew.d.ts +10 -0
- package/dist/editor/ui/ItemNameDialogNew.js +68 -0
- package/dist/editor/ui/ItemNameDialogNew.js.map +1 -0
- package/dist/editor/ui/ItemSearch.d.ts +25 -0
- package/dist/editor/ui/ItemSearch.js +92 -0
- package/dist/editor/ui/ItemSearch.js.map +1 -0
- package/dist/editor/ui/PerfectTree.d.ts +78 -0
- package/dist/editor/ui/PerfectTree.js +858 -0
- package/dist/editor/ui/PerfectTree.js.map +1 -0
- package/dist/editor/ui/Section.d.ts +4 -0
- package/dist/editor/ui/Section.js +12 -0
- package/dist/editor/ui/Section.js.map +1 -0
- package/dist/editor/ui/SimpleIconButton.d.ts +14 -0
- package/dist/editor/ui/SimpleIconButton.js +15 -0
- package/dist/editor/ui/SimpleIconButton.js.map +1 -0
- package/dist/editor/ui/SimpleMenu.d.ts +6 -0
- package/dist/editor/ui/SimpleMenu.js +7 -0
- package/dist/editor/ui/SimpleMenu.js.map +1 -0
- package/dist/editor/ui/SimpleTable.d.ts +14 -0
- package/dist/editor/ui/SimpleTable.js +9 -0
- package/dist/editor/ui/SimpleTable.js.map +1 -0
- package/dist/editor/ui/SimpleTabs.d.ts +15 -0
- package/dist/editor/ui/SimpleTabs.js +20 -0
- package/dist/editor/ui/SimpleTabs.js.map +1 -0
- package/dist/editor/ui/SimpleToolbar.d.ts +3 -0
- package/dist/editor/ui/SimpleToolbar.js +5 -0
- package/dist/editor/ui/SimpleToolbar.js.map +1 -0
- package/dist/editor/ui/Spinner.d.ts +4 -0
- package/dist/editor/ui/Spinner.js +18 -0
- package/dist/editor/ui/Spinner.js.map +1 -0
- package/dist/editor/ui/Splitter.d.ts +22 -0
- package/dist/editor/ui/Splitter.js +443 -0
- package/dist/editor/ui/Splitter.js.map +1 -0
- package/dist/editor/ui/TemplateSelectorDialog.d.ts +8 -0
- package/dist/editor/ui/TemplateSelectorDialog.js +61 -0
- package/dist/editor/ui/TemplateSelectorDialog.js.map +1 -0
- package/dist/editor/ui/Toolbar.d.ts +3 -0
- package/dist/editor/ui/Toolbar.js +5 -0
- package/dist/editor/ui/Toolbar.js.map +1 -0
- package/dist/editor/utils/id-helper.d.ts +1 -0
- package/dist/editor/utils/id-helper.js +5 -0
- package/dist/editor/utils/id-helper.js.map +1 -0
- package/dist/editor/utils/insertOptions.d.ts +3 -0
- package/dist/editor/utils/insertOptions.js +43 -0
- package/dist/editor/utils/insertOptions.js.map +1 -0
- package/dist/editor/utils/itemConverters.d.ts +3 -0
- package/dist/editor/utils/itemConverters.js +53 -0
- package/dist/editor/utils/itemConverters.js.map +1 -0
- package/dist/editor/utils/itemutils.d.ts +3 -0
- package/dist/editor/utils/itemutils.js +24 -0
- package/dist/editor/utils/itemutils.js.map +1 -0
- package/dist/editor/utils/jsonCleaner.d.ts +8 -0
- package/dist/editor/utils/jsonCleaner.js +76 -0
- package/dist/editor/utils/jsonCleaner.js.map +1 -0
- package/dist/editor/utils/keyboardNavigation.d.ts +34 -0
- package/dist/editor/utils/keyboardNavigation.js +237 -0
- package/dist/editor/utils/keyboardNavigation.js.map +1 -0
- package/dist/editor/utils/urlUtils.d.ts +9 -0
- package/dist/editor/utils/urlUtils.js +25 -0
- package/dist/editor/utils/urlUtils.js.map +1 -0
- package/dist/editor/utils/useMemoDebug.d.ts +1 -0
- package/dist/editor/utils/useMemoDebug.js +18 -0
- package/dist/editor/utils/useMemoDebug.js.map +1 -0
- package/dist/editor/utils.d.ts +65 -0
- package/dist/editor/utils.js +468 -0
- package/dist/editor/utils.js.map +1 -0
- package/dist/editor/views/CompareView.d.ts +1 -0
- package/dist/editor/views/CompareView.js +148 -0
- package/dist/editor/views/CompareView.js.map +1 -0
- package/dist/editor/views/EditView.d.ts +1 -0
- package/dist/editor/views/EditView.js +15 -0
- package/dist/editor/views/EditView.js.map +1 -0
- package/dist/editor/views/ItemEditor.d.ts +7 -0
- package/dist/editor/views/ItemEditor.js +29 -0
- package/dist/editor/views/ItemEditor.js.map +1 -0
- package/dist/editor/views/MediaFolderEditView.d.ts +4 -0
- package/dist/editor/views/MediaFolderEditView.js +40 -0
- package/dist/editor/views/MediaFolderEditView.js.map +1 -0
- package/dist/editor/views/ParheliaView.d.ts +5 -0
- package/dist/editor/views/ParheliaView.js +136 -0
- package/dist/editor/views/ParheliaView.js.map +1 -0
- package/dist/editor/views/SingleEditView.d.ts +9 -0
- package/dist/editor/views/SingleEditView.js +33 -0
- package/dist/editor/views/SingleEditView.js.map +1 -0
- package/dist/images/bg-shape-black.webp +0 -0
- package/dist/images/wizard-bg.png +0 -0
- package/dist/images/wizard-tour.png +0 -0
- package/dist/images/wizard.png +0 -0
- package/dist/index.d.ts +62 -0
- package/dist/index.js +53 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/safelist.d.ts +1 -0
- package/dist/lib/safelist.js +5 -0
- package/dist/lib/safelist.js.map +1 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/lib/utils.js +6 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/revision.d.ts +2 -0
- package/dist/revision.js +3 -0
- package/dist/revision.js.map +1 -0
- package/dist/splash-screen/ModernSplashScreen.d.ts +8 -0
- package/dist/splash-screen/ModernSplashScreen.js +92 -0
- package/dist/splash-screen/ModernSplashScreen.js.map +1 -0
- package/dist/splash-screen/NewPage.d.ts +3 -0
- package/dist/splash-screen/NewPage.js +145 -0
- package/dist/splash-screen/NewPage.js.map +1 -0
- package/dist/splash-screen/OpenPage.d.ts +1 -0
- package/dist/splash-screen/OpenPage.js +56 -0
- package/dist/splash-screen/OpenPage.js.map +1 -0
- package/dist/splash-screen/ParheliaAssistantChat.d.ts +8 -0
- package/dist/splash-screen/ParheliaAssistantChat.js +155 -0
- package/dist/splash-screen/ParheliaAssistantChat.js.map +1 -0
- package/dist/splash-screen/RecentAgents.d.ts +7 -0
- package/dist/splash-screen/RecentAgents.js +76 -0
- package/dist/splash-screen/RecentAgents.js.map +1 -0
- package/dist/splash-screen/RecentPages.d.ts +1 -0
- package/dist/splash-screen/RecentPages.js +47 -0
- package/dist/splash-screen/RecentPages.js.map +1 -0
- package/dist/splash-screen/SectionHeadline.d.ts +4 -0
- package/dist/splash-screen/SectionHeadline.js +7 -0
- package/dist/splash-screen/SectionHeadline.js.map +1 -0
- package/dist/styles.css +5914 -0
- package/dist/tour/Tour.d.ts +3 -0
- package/dist/tour/Tour.js +426 -0
- package/dist/tour/Tour.js.map +1 -0
- package/dist/tour/default-tour.d.ts +9 -0
- package/dist/tour/default-tour.js +302 -0
- package/dist/tour/default-tour.js.map +1 -0
- package/dist/tour/preview-tour.d.ts +2 -0
- package/dist/tour/preview-tour.js +93 -0
- package/dist/tour/preview-tour.js.map +1 -0
- package/dist/types.d.ts +396 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/images/bg-shape-black.webp +0 -0
- package/images/wizard-bg.png +0 -0
- package/images/wizard-tour.png +0 -0
- package/images/wizard.png +0 -0
- package/package.json +93 -0
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useState } from "react";
|
|
3
|
+
import { cn } from "../../lib/utils";
|
|
4
|
+
import { Button } from "../../components/ui/button";
|
|
5
|
+
import { Grid3X3, Square, List, Upload, RefreshCw, Loader2, } from "lucide-react";
|
|
6
|
+
import { useEditContext } from "../client/editContext";
|
|
7
|
+
import { getChildren } from "../services/contentService";
|
|
8
|
+
import { toast } from "sonner";
|
|
9
|
+
import { FilterInput } from "../../components/FilterInput";
|
|
10
|
+
import { executeSearch } from "../services/searchService";
|
|
11
|
+
import { useDebouncedCallback } from "use-debounce";
|
|
12
|
+
export function MediaFolderBrowser({ folderId, language = "en", onMediaSelected, }) {
|
|
13
|
+
const [viewMode, setViewMode] = useState("grid");
|
|
14
|
+
const [images, setImages] = useState([]);
|
|
15
|
+
const [selectedImage, setSelectedImage] = useState();
|
|
16
|
+
const [loading, setLoading] = useState(false);
|
|
17
|
+
const [uploading, setUploading] = useState(false);
|
|
18
|
+
const [searchQuery, setSearchQuery] = useState("");
|
|
19
|
+
const [searchResults, setSearchResults] = useState([]);
|
|
20
|
+
const [searching, setSearching] = useState(false);
|
|
21
|
+
const editContext = useEditContext();
|
|
22
|
+
useEffect(() => {
|
|
23
|
+
loadMediaFiles();
|
|
24
|
+
}, [folderId]);
|
|
25
|
+
const loadMediaFiles = async () => {
|
|
26
|
+
if (!editContext || !folderId)
|
|
27
|
+
return;
|
|
28
|
+
setLoading(true);
|
|
29
|
+
try {
|
|
30
|
+
const children = await getChildren(folderId, editContext.sessionId, [
|
|
31
|
+
"C97BA923-8009-4858-BDD5-D8BE5FCCECF7", // Image
|
|
32
|
+
"F1828A2C-7E5D-4BBD-98CA-320474871548", // Another image type
|
|
33
|
+
"e76adbdf-87d1-4fcb-ba71-274f7dbf5670", // Video
|
|
34
|
+
"374d3a99-c098-4cd2-8fbc-dc2d1ca1c904", // Another video type
|
|
35
|
+
], false, language);
|
|
36
|
+
setImages(children || []);
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
console.error("Error loading media files:", error);
|
|
40
|
+
setImages([]);
|
|
41
|
+
}
|
|
42
|
+
finally {
|
|
43
|
+
setLoading(false);
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
const handleSearch = useDebouncedCallback(async (query) => {
|
|
47
|
+
if (!editContext || !folderId || !query.trim()) {
|
|
48
|
+
setSearchResults([]);
|
|
49
|
+
setSearching(false);
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
setSearching(true);
|
|
53
|
+
try {
|
|
54
|
+
const result = await executeSearch({
|
|
55
|
+
index: "master",
|
|
56
|
+
query: query.trim(),
|
|
57
|
+
editContext,
|
|
58
|
+
rootItemIds: [folderId],
|
|
59
|
+
maxResults: 50,
|
|
60
|
+
});
|
|
61
|
+
if (result.type === "success") {
|
|
62
|
+
// Transform search results to Thumbnail format
|
|
63
|
+
// No template filtering needed since search is scoped to media folder
|
|
64
|
+
const thumbnails = result.data.map((item) => ({
|
|
65
|
+
id: item.id,
|
|
66
|
+
name: item.name,
|
|
67
|
+
thumbUrl: item.thumbUrl || "",
|
|
68
|
+
previewUrl: item.previewUrl || item.thumbUrl || "",
|
|
69
|
+
}));
|
|
70
|
+
setSearchResults(thumbnails);
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
setSearchResults([]);
|
|
74
|
+
toast.error("Search failed. Please try again.");
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
console.error("Error searching media files:", error);
|
|
79
|
+
setSearchResults([]);
|
|
80
|
+
toast.error("Error searching media files");
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
setSearching(false);
|
|
84
|
+
}
|
|
85
|
+
}, 600);
|
|
86
|
+
useEffect(() => {
|
|
87
|
+
if (searchQuery.trim()) {
|
|
88
|
+
handleSearch(searchQuery);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
setSearchResults([]);
|
|
92
|
+
}
|
|
93
|
+
}, [searchQuery]);
|
|
94
|
+
const handleClick = (thumbnail) => {
|
|
95
|
+
setSelectedImage(thumbnail);
|
|
96
|
+
};
|
|
97
|
+
const handleUpload = async () => {
|
|
98
|
+
if (!folderId)
|
|
99
|
+
return;
|
|
100
|
+
const fileInput = document.createElement("input");
|
|
101
|
+
fileInput.type = "file";
|
|
102
|
+
fileInput.multiple = true;
|
|
103
|
+
fileInput.accept = "image/*,video/*";
|
|
104
|
+
fileInput.onchange = async (e) => {
|
|
105
|
+
const files = Array.from(e.target.files || []);
|
|
106
|
+
if (files.length > 0) {
|
|
107
|
+
await uploadFiles(files);
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
fileInput.click();
|
|
111
|
+
};
|
|
112
|
+
const uploadFiles = async (files) => {
|
|
113
|
+
const formData = new FormData();
|
|
114
|
+
files.forEach((file, index) => {
|
|
115
|
+
formData.append("file" + index, file);
|
|
116
|
+
});
|
|
117
|
+
try {
|
|
118
|
+
setUploading(true);
|
|
119
|
+
const response = await fetch("/parhelia/upload?folder=" + folderId, {
|
|
120
|
+
method: "POST",
|
|
121
|
+
body: formData,
|
|
122
|
+
});
|
|
123
|
+
if (!response.ok) {
|
|
124
|
+
throw new Error("Upload failed");
|
|
125
|
+
}
|
|
126
|
+
// Reload media files after successful upload
|
|
127
|
+
await loadMediaFiles();
|
|
128
|
+
}
|
|
129
|
+
catch (error) {
|
|
130
|
+
console.error("Error uploading files:", error);
|
|
131
|
+
if (editContext) {
|
|
132
|
+
toast.error("Failed to upload files. Please try again.");
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
finally {
|
|
136
|
+
setUploading(false);
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
const GridView = () => (_jsx("div", { className: "grid gap-3 p-4", style: {
|
|
140
|
+
gridTemplateColumns: "repeat(auto-fill, minmax(160px, 1fr))",
|
|
141
|
+
}, children: (searchQuery.trim() ? searchResults : images).map((t) => (_jsxs("div", { className: cn(selectedImage?.id === t.id
|
|
142
|
+
? "shadow-lg ring-2 ring-blue-500"
|
|
143
|
+
: "shadow-sm hover:shadow-md", "cursor-pointer overflow-hidden rounded-lg bg-white transition-all duration-200 hover:scale-105"), onClick: () => handleClick(t), children: [_jsx("div", { className: "flex aspect-square items-center justify-center bg-gray-50", children: _jsx("img", { src: t.thumbUrl, alt: t.name, className: "max-h-full max-w-full object-contain" }) }), _jsx("div", { className: "p-2", children: _jsx("div", { className: "line-clamp-2 text-xs font-medium break-all text-gray-700", children: t.name }) })] }, t.id))) }));
|
|
144
|
+
const LargeGridView = () => (_jsx("div", { className: "grid gap-4 p-4", style: {
|
|
145
|
+
gridTemplateColumns: "repeat(auto-fill, minmax(240px, 1fr))",
|
|
146
|
+
}, children: (searchQuery.trim() ? searchResults : images).map((t) => (_jsxs("div", { className: cn(selectedImage?.id === t.id
|
|
147
|
+
? "shadow-lg ring-2 ring-blue-500"
|
|
148
|
+
: "shadow-sm hover:shadow-md", "cursor-pointer overflow-hidden rounded-lg bg-white transition-all duration-200 hover:scale-105"), onClick: () => handleClick(t), children: [_jsx("div", { className: "flex aspect-square items-center justify-center bg-gray-50", children: _jsx("img", { src: t.previewUrl, alt: t.name, className: "max-h-full max-w-full object-contain" }) }), _jsx("div", { className: "p-3", children: _jsx("div", { className: "line-clamp-2 text-sm font-medium break-all text-gray-700", children: t.name }) })] }, t.id))) }));
|
|
149
|
+
const ListView = () => (_jsx("div", { className: "flex flex-col gap-1 p-2", children: (searchQuery.trim() ? searchResults : images).map((t) => (_jsxs("div", { className: cn(selectedImage?.id === t.id
|
|
150
|
+
? "border-blue-300 bg-blue-100"
|
|
151
|
+
: "bg-white hover:bg-gray-50", "flex cursor-pointer items-center gap-3 rounded-lg border p-3 transition-colors duration-200"), onClick: () => handleClick(t), children: [_jsx("div", { className: "flex h-16 w-16 flex-shrink-0 items-center justify-center rounded-md bg-gray-50", children: _jsx("img", { src: t.thumbUrl, alt: t.name, className: "max-h-full max-w-full object-contain" }) }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("div", { className: "text-dark truncate text-xs font-medium", children: t.name }), _jsx("div", { className: "mt-1 text-xs text-gray-500", children: "Media File" })] })] }, t.id))) }));
|
|
152
|
+
const renderContent = () => {
|
|
153
|
+
const displayImages = searchQuery.trim() ? searchResults : images;
|
|
154
|
+
const isDisplayingSearch = searchQuery.trim();
|
|
155
|
+
const currentLoading = isDisplayingSearch ? searching : loading;
|
|
156
|
+
if (currentLoading) {
|
|
157
|
+
return (_jsx("div", { className: "flex h-64 items-center justify-center", children: _jsx(Loader2, { className: "h-8 w-8 animate-spin" }) }));
|
|
158
|
+
}
|
|
159
|
+
if (displayImages.length === 0) {
|
|
160
|
+
return (_jsxs("div", { className: "flex h-64 flex-col items-center justify-center text-gray-500", children: [_jsx("div", { className: "mb-4 text-4xl", children: isDisplayingSearch ? "🔍" : "📁" }), _jsx("div", { className: "text-lg font-medium", children: isDisplayingSearch ? "No results found" : "No media files found" }), _jsx("div", { className: "text-sm", children: isDisplayingSearch
|
|
161
|
+
? "Try a different search term"
|
|
162
|
+
: "Upload some media files to get started" })] }));
|
|
163
|
+
}
|
|
164
|
+
switch (viewMode) {
|
|
165
|
+
case "grid":
|
|
166
|
+
return _jsx(GridView, {});
|
|
167
|
+
case "large-grid":
|
|
168
|
+
return _jsx(LargeGridView, {});
|
|
169
|
+
case "list":
|
|
170
|
+
return _jsx(ListView, {});
|
|
171
|
+
default:
|
|
172
|
+
return _jsx(GridView, {});
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
return (_jsxs("div", { className: "flex h-full flex-col", children: [_jsxs("div", { className: "flex items-center justify-between border-b bg-gray-50 px-4 py-2", children: [_jsxs("div", { className: "text-sm font-medium text-gray-700", children: [searchQuery.trim() ? searchResults.length : images.length, " media file", (searchQuery.trim() ? searchResults.length : images.length) !== 1
|
|
176
|
+
? "s"
|
|
177
|
+
: "", searchQuery.trim() && " found"] }), _jsxs("div", { className: "flex gap-1", children: [_jsx(Button, { size: "sm", variant: viewMode === "grid" ? "outline" : "default", onClick: () => setViewMode("grid"), title: "Grid View", className: "p-1", children: _jsx(Grid3X3, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", variant: viewMode === "large-grid" ? "outline" : "default", onClick: () => setViewMode("large-grid"), title: "Large Grid View", className: "p-1", children: _jsx(Square, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", variant: viewMode === "list" ? "outline" : "default", onClick: () => setViewMode("list"), title: "List View", className: "p-1", children: _jsx(List, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", onClick: handleUpload, disabled: uploading || !folderId, title: "Upload Files", className: "ml-2 p-1", children: _jsx(Upload, { className: "h-4 w-4" }) }), _jsx(Button, { size: "sm", onClick: loadMediaFiles, title: "Refresh", className: "ml-1 p-1", children: _jsx(RefreshCw, { className: "h-4 w-4" }) })] })] }), _jsx("div", { className: "border-b bg-white px-4 py-2", children: _jsx(FilterInput, { value: searchQuery, onChange: setSearchQuery, placeholder: "Search media files...", loading: searching, onClear: () => setSearchQuery("") }) }), _jsx("div", { className: "flex-1 overflow-x-hidden overflow-y-auto", style: {
|
|
178
|
+
scrollbarWidth: "thin",
|
|
179
|
+
scrollbarColor: "#9CA3AF #F3F4F6",
|
|
180
|
+
}, children: renderContent() }), selectedImage && (_jsxs("div", { className: "border-t bg-gray-50 p-3", children: [_jsxs("div", { className: "text-dark truncate text-xs font-medium", children: ["Selected: ", selectedImage.name] }), _jsx("div", { className: "mt-1 text-xs text-gray-500", children: "Click to select media item" })] }))] }));
|
|
181
|
+
}
|
|
182
|
+
//# sourceMappingURL=MediaFolderBrowser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MediaFolderBrowser.js","sourceRoot":"","sources":["../../../src/editor/media-selector/MediaFolderBrowser.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type MediaSelectorMode = "images" | "video";
|
|
2
|
+
export declare const MediaSelector: ({ visible, onHide, onMediaSelected, selectedIdPath, mode, language, }: {
|
|
3
|
+
visible: boolean;
|
|
4
|
+
mode: MediaSelectorMode;
|
|
5
|
+
onHide: () => void;
|
|
6
|
+
onMediaSelected: (mediaId: string) => void;
|
|
7
|
+
selectedIdPath?: string;
|
|
8
|
+
language: string;
|
|
9
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Dialog, DialogContent, DialogHeader, DialogTitle, } from "../../components/ui/dialog";
|
|
4
|
+
import { TreeSelector } from "./TreeSelector";
|
|
5
|
+
export const MediaSelector = ({ visible, onHide, onMediaSelected, selectedIdPath, mode, language, }) => {
|
|
6
|
+
return (_jsx(Dialog, { open: visible, onOpenChange: (open) => !open && onHide(), children: _jsxs(DialogContent, { className: "h-[80%] max-h-none w-[80%] max-w-none", "data-testid": "media-selector-dialog", children: [_jsx(DialogHeader, { children: _jsx(DialogTitle, { children: mode === "video" ? "Select Video" : "Select Image" }) }), _jsx("div", { className: "flex h-full flex-1 flex-col", children: _jsx(TreeSelector, { language: language, selectedIdPath: selectedIdPath, onHide: onHide, onMediaSelected: onMediaSelected, mode: mode === "video" ? "video" : "image" }) })] }) }));
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=MediaSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MediaSelector.js","sourceRoot":"","sources":["../../../src/editor/media-selector/MediaSelector.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EACL,MAAM,EACN,aAAa,EACb,YAAY,EACZ,WAAW,GACZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAI9C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,OAAO,EACP,MAAM,EACN,eAAe,EACf,cAAc,EACd,IAAI,EACJ,QAAQ,GAQT,EAAE,EAAE;IACH,OAAO,CACL,KAAC,MAAM,IAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,MAAM,EAAE,YAC9D,MAAC,aAAa,IACZ,SAAS,EAAC,uCAAuC,iBACrC,uBAAuB,aAEnC,KAAC,YAAY,cACX,KAAC,WAAW,cACT,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,GACvC,GACD,EACf,cAAK,SAAS,EAAC,6BAA6B,YAC1C,KAAC,YAAY,IACX,QAAQ,EAAE,QAAQ,EAClB,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,GAC1C,GACE,IACQ,GACT,CACV,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { formatDate } from "../utils";
|
|
3
|
+
export function Preview({ selectedImage }) {
|
|
4
|
+
if (!selectedImage)
|
|
5
|
+
return null;
|
|
6
|
+
return (_jsxs("div", { className: "align-center bg-gray-4 absolute inset-0 flex flex-col gap-6 p-6 text-xs font-normal", children: [_jsxs("div", { className: "flex flex-col gap-1", children: [_jsx("div", { className: "font-medium", children: selectedImage.name }), selectedImage.updated && (_jsxs("div", { children: ["Updated:", " ", (() => {
|
|
7
|
+
// Convert format "20240701T142323Z" to "2024-07-01T14:23:23Z"
|
|
8
|
+
const formatISODate = (dateStr) => {
|
|
9
|
+
if (dateStr.match(/^\d{8}T\d{6}Z$/)) {
|
|
10
|
+
return dateStr.replace(/(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z/, "$1-$2-$3T$4:$5:$6Z");
|
|
11
|
+
}
|
|
12
|
+
return dateStr;
|
|
13
|
+
};
|
|
14
|
+
const formattedDateStr = formatISODate(selectedImage.updated || "");
|
|
15
|
+
const date = new Date(formattedDateStr);
|
|
16
|
+
return isNaN(date.getTime()) ? "Invalid date" : formatDate(date);
|
|
17
|
+
})()] })), selectedImage.width && selectedImage.height && (_jsxs("div", { children: ["Dimensions: ", selectedImage.width, "x", selectedImage.height, " px"] })), selectedImage.size && (_jsxs("div", { children: ["Size: ", Math.round(selectedImage.size / 1024), " KB "] })), _jsxs("div", { children: ["Updated by: ", selectedImage.updatedBy] })] }), _jsx("div", { className: "flex min-h-0 flex-1 items-center justify-center", children: _jsx("img", { src: selectedImage?.previewUrl, className: "max-h-full max-w-full object-contain", fetchPriority: "high" }) })] }));
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=Preview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Preview.js","sourceRoot":"","sources":["../../../src/editor/media-selector/Preview.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,MAAM,UAAU,OAAO,CAAC,EAAE,aAAa,EAAiC;IACtE,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAEhC,OAAO,CACL,eAAK,SAAS,EAAC,qFAAqF,aAClG,eAAK,SAAS,EAAC,qBAAqB,aAClC,cAAK,SAAS,EAAC,aAAa,YAAE,aAAa,CAAC,IAAI,GAAO,EACtD,aAAa,CAAC,OAAO,IAAI,CACxB,sCACW,GAAG,EACX,CAAC,GAAG,EAAE;gCACL,8DAA8D;gCAC9D,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,EAAE;oCACxC,IAAI,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;wCACpC,OAAO,OAAO,CAAC,OAAO,CACpB,8CAA8C,EAC9C,oBAAoB,CACrB,CAAC;oCACJ,CAAC;oCACD,OAAO,OAAO,CAAC;gCACjB,CAAC,CAAC;gCAEF,MAAM,gBAAgB,GAAG,aAAa,CACpC,aAAa,CAAC,OAAO,IAAI,EAAE,CAC5B,CAAC;gCACF,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC;gCACxC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;4BACnE,CAAC,CAAC,EAAE,IACA,CACP,EACA,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,MAAM,IAAI,CAC9C,0CACe,aAAa,CAAC,KAAK,OAAG,aAAa,CAAC,MAAM,WACnD,CACP,EACA,aAAa,CAAC,IAAI,IAAI,CACrB,oCAAY,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,CAAC,YAAW,CAC7D,EAED,0CAAkB,aAAa,CAAC,SAAS,IAAO,IAC5C,EAEN,cAAK,SAAS,EAAC,iDAAiD,YAC9D,cACE,GAAG,EAAE,aAAa,EAAE,UAAU,EAC9B,SAAS,EAAC,sCAAsC,EAChD,aAAa,EAAC,MAAM,GACpB,GACE,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Thumbnail } from "../services/contentService";
|
|
2
|
+
export declare function Thumbnails({ images, selectedImage, setSelectedImage, onMediaSelected, onHide, }: {
|
|
3
|
+
images: Thumbnail[];
|
|
4
|
+
selectedImage: Thumbnail | undefined;
|
|
5
|
+
setSelectedImage: (image: Thumbnail) => void;
|
|
6
|
+
onMediaSelected: (imageId: string) => void;
|
|
7
|
+
onHide: () => void;
|
|
8
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "../../lib/utils";
|
|
3
|
+
import { Check } from "lucide-react";
|
|
4
|
+
export function Thumbnails({ images, selectedImage, setSelectedImage, onMediaSelected, onHide, }) {
|
|
5
|
+
return (_jsx("div", { "data-testid": "media-selector-thumbnails-container", className: "absolute inset-0 flex flex-col overflow-auto p-2", children: _jsx("div", { className: "flex flex-wrap content-start items-start gap-4", children: images?.map((t) => (_jsxs("div", { className: cn(selectedImage?.id == t.id ? "border-theme-secondary" : "", "hover:border-theme-secondary relative flex h-[160px] w-[160px] cursor-pointer flex-col items-center justify-center rounded-md border p-2"), onDoubleClick: () => {
|
|
6
|
+
onMediaSelected(t.id);
|
|
7
|
+
onHide();
|
|
8
|
+
}, onClick: () => setSelectedImage(t), children: [selectedImage?.id == t.id && (_jsx("div", { className: "absolute top-2 right-2 flex items-center justify-center", children: _jsx("div", { className: "bg-theme-secondary rounded-full p-1 text-xs text-white", children: _jsx(Check, { className: "size-4" }) }) })), _jsx("img", { src: t.thumbUrl })] }, t.id))) }) }));
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=Thumbnails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Thumbnails.js","sourceRoot":"","sources":["../../../src/editor/media-selector/Thumbnails.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,MAAM,UAAU,UAAU,CAAC,EACzB,MAAM,EACN,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,MAAM,GAOP;IACC,OAAO,CACL,6BACc,qCAAqC,EACjD,SAAS,EAAC,kDAAkD,YAE5D,cAAK,SAAS,EAAC,gDAAgD,YAC5D,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,eAEE,SAAS,EAAE,EAAE,CACX,aAAa,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,EACzD,0IAA0I,CAC3I,EACD,aAAa,EAAE,GAAG,EAAE;oBAClB,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACtB,MAAM,EAAE,CAAC;gBACX,CAAC,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAEjC,aAAa,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAC5B,cAAK,SAAS,EAAC,yDAAyD,YACtE,cAAK,SAAS,EAAC,wDAAwD,YACrE,KAAC,KAAK,IAAC,SAAS,EAAC,QAAQ,GAAG,GACxB,GACF,CACP,EACD,cAAK,GAAG,EAAE,CAAC,CAAC,QAAQ,GAAI,KAlBnB,CAAC,CAAC,EAAE,CAmBL,CACP,CAAC,GACE,GACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const TreeSelector: ({ onHide, onMediaSelected, selectedIdPath, language, mode, }: {
|
|
2
|
+
onHide: () => void;
|
|
3
|
+
onMediaSelected: (mediaId: string) => void;
|
|
4
|
+
selectedIdPath?: string;
|
|
5
|
+
language: string;
|
|
6
|
+
mode: "image" | "video";
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import ContentTree from "../ContentTree";
|
|
4
|
+
import { Splitter } from "../ui/Splitter";
|
|
5
|
+
import { useEffect, useState } from "react";
|
|
6
|
+
import { getChildren } from "../services/contentService";
|
|
7
|
+
import { useEditContext } from "../client/editContext";
|
|
8
|
+
import { Button } from "../../components/ui/button";
|
|
9
|
+
import { UploadButton } from "../../components/ui/upload-button";
|
|
10
|
+
import { executeSearch } from "../services/searchService";
|
|
11
|
+
import { ClockIcon, Upload } from "lucide-react";
|
|
12
|
+
import DialogButtons from "../ui/DialogButtons";
|
|
13
|
+
import { Thumbnails } from "./Thumbnails";
|
|
14
|
+
import { Preview } from "./Preview";
|
|
15
|
+
import { UploadZone } from "./UploadZone";
|
|
16
|
+
import { AiImageSearchPrompt } from "./AiImageSearchPrompt";
|
|
17
|
+
import { useDebouncedCallback } from "use-debounce";
|
|
18
|
+
import { Loader2 } from "lucide-react";
|
|
19
|
+
import { Popover, PopoverTrigger, PopoverContent, } from "../../components/ui/popover";
|
|
20
|
+
import { Tooltip, TooltipTrigger, TooltipContent, } from "../../components/ui/tooltip";
|
|
21
|
+
import { toast } from "sonner";
|
|
22
|
+
export const TreeSelector = ({ onHide, onMediaSelected, selectedIdPath, language, mode, }) => {
|
|
23
|
+
const [selectedFolderId, setSelectedFolderId] = useState();
|
|
24
|
+
const [images, setImages] = useState();
|
|
25
|
+
const [selectedImage, setSelectedImage] = useState();
|
|
26
|
+
const [selectedImageId, setSelectedImageId] = useState();
|
|
27
|
+
const [expandedIdPath, setExpandedIdPath] = useState();
|
|
28
|
+
const [searchPrompt, setSearchPrompt] = useState();
|
|
29
|
+
const [loadingThumbnails, setLoadingThumbnails] = useState(false);
|
|
30
|
+
const [isPopoverOpen, setIsPopoverOpen] = useState(false);
|
|
31
|
+
const selection = selectedFolderId ? [selectedFolderId] : [];
|
|
32
|
+
const editContext = useEditContext();
|
|
33
|
+
const [history, setHistory] = useState(() => {
|
|
34
|
+
const savedHistory = localStorage.getItem("editor.mediahistory");
|
|
35
|
+
return savedHistory ? JSON.parse(savedHistory) : [];
|
|
36
|
+
});
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
if (selectedIdPath) {
|
|
39
|
+
const path = selectedIdPath.split("/");
|
|
40
|
+
if (path.length > 1) {
|
|
41
|
+
setSelectedFolderId(path[path.length - 2]);
|
|
42
|
+
setSelectedImageId(path[path.length - 1]?.toLowerCase().substring(1, 37));
|
|
43
|
+
}
|
|
44
|
+
setExpandedIdPath(selectedIdPath);
|
|
45
|
+
}
|
|
46
|
+
if (!selectedIdPath) {
|
|
47
|
+
setExpandedIdPath(history[0]?.idPath ?? "3D6658D8-A0BF-4E75-B3E2-D050FABCF4E1");
|
|
48
|
+
setSelectedFolderId(history[0]?.id);
|
|
49
|
+
setSelectedImageId(undefined);
|
|
50
|
+
}
|
|
51
|
+
}, [selectedIdPath]);
|
|
52
|
+
useEffect(() => {
|
|
53
|
+
loadThumbnailsAndSelectImage();
|
|
54
|
+
}, [selectedFolderId]);
|
|
55
|
+
const updateHistory = async () => {
|
|
56
|
+
if (!selectedFolderId)
|
|
57
|
+
return;
|
|
58
|
+
const item = await editContext?.itemsRepository.getItem({
|
|
59
|
+
id: selectedFolderId,
|
|
60
|
+
language: "en",
|
|
61
|
+
version: 0,
|
|
62
|
+
});
|
|
63
|
+
setHistory((history) => {
|
|
64
|
+
if (!item?.idPath || !item.name)
|
|
65
|
+
return history;
|
|
66
|
+
const newEntry = {
|
|
67
|
+
name: item.name,
|
|
68
|
+
id: item.id,
|
|
69
|
+
idPath: item?.idPath,
|
|
70
|
+
};
|
|
71
|
+
const newHistory = [
|
|
72
|
+
newEntry,
|
|
73
|
+
...history.filter((x) => x.idPath !== newEntry.idPath).slice(0, 4),
|
|
74
|
+
];
|
|
75
|
+
if (typeof window !== "undefined")
|
|
76
|
+
localStorage.setItem("editor.mediahistory", JSON.stringify(newHistory));
|
|
77
|
+
return newHistory;
|
|
78
|
+
});
|
|
79
|
+
};
|
|
80
|
+
async function loadThumbnailsAndSelectImage() {
|
|
81
|
+
setSelectedImage(undefined);
|
|
82
|
+
setImages([]);
|
|
83
|
+
const images = await loadThumbnails(selectedFolderId);
|
|
84
|
+
if (selectedImageId)
|
|
85
|
+
setSelectedImage(images?.find((x) => x.id === selectedImageId));
|
|
86
|
+
}
|
|
87
|
+
async function loadThumbnails(selectedFolderId) {
|
|
88
|
+
if (searchPrompt) {
|
|
89
|
+
await search(searchPrompt);
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
if (!selectedFolderId)
|
|
93
|
+
setImages([]);
|
|
94
|
+
else {
|
|
95
|
+
setLoadingThumbnails(true);
|
|
96
|
+
const children = await getChildren(selectedFolderId, editContext.sessionId, mode === "video"
|
|
97
|
+
? [
|
|
98
|
+
"e76adbdf-87d1-4fcb-ba71-274f7dbf5670",
|
|
99
|
+
"374d3a99-c098-4cd2-8fbc-dc2d1ca1c904",
|
|
100
|
+
]
|
|
101
|
+
: [
|
|
102
|
+
"C97BA923-8009-4858-BDD5-D8BE5FCCECF7",
|
|
103
|
+
"F1828A2C-7E5D-4BBD-98CA-320474871548",
|
|
104
|
+
], false, language);
|
|
105
|
+
setImages(children);
|
|
106
|
+
setLoadingThumbnails(false);
|
|
107
|
+
return children;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
const searchDebounced = useDebouncedCallback(async (searchPrompt) => {
|
|
111
|
+
return search(searchPrompt);
|
|
112
|
+
}, 300);
|
|
113
|
+
const search = async (searchPrompt) => {
|
|
114
|
+
if (!editContext)
|
|
115
|
+
return;
|
|
116
|
+
setSearchPrompt(searchPrompt);
|
|
117
|
+
if (searchPrompt.length == 0)
|
|
118
|
+
return;
|
|
119
|
+
setLoadingThumbnails(true);
|
|
120
|
+
const result = await executeSearch({
|
|
121
|
+
query: searchPrompt,
|
|
122
|
+
rootItemIds: selectedFolderId ? [selectedFolderId] : undefined,
|
|
123
|
+
editContext,
|
|
124
|
+
maxResults: 50,
|
|
125
|
+
index: "media",
|
|
126
|
+
skipValidation: true,
|
|
127
|
+
});
|
|
128
|
+
if (result.type == "success") {
|
|
129
|
+
setImages(result.data);
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
toast.error(result.response.statusText || "Error searching");
|
|
133
|
+
}
|
|
134
|
+
setLoadingThumbnails(false);
|
|
135
|
+
};
|
|
136
|
+
return (_jsxs(_Fragment, { children: [_jsx(Splitter, { className: "flex-1", direction: "horizontal", localStorageKey: "editor.mediaSelectorTreeSize", panels: [
|
|
137
|
+
{
|
|
138
|
+
name: "tree",
|
|
139
|
+
defaultSize: 300,
|
|
140
|
+
content: (_jsxs("div", { className: "relative flex h-full flex-col", children: [history.length > 0 && (_jsx("div", { className: "absolute top-2 right-2 z-50", children: _jsxs(Popover, { open: isPopoverOpen, onOpenChange: setIsPopoverOpen, children: [_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(PopoverTrigger, { asChild: true, children: _jsx(Button, { variant: "ghost", size: "sm", className: "h-8 w-8 p-0", children: _jsx(ClockIcon, { className: "h-4 w-4" }) }) }) }), _jsx(TooltipContent, { children: "Recent Locations" })] }), _jsxs(PopoverContent, { className: "pointer-events-auto w-64 p-2", onPointerDown: (e) => e.stopPropagation(), onPointerMove: (e) => e.stopPropagation(), onPointerEnter: (e) => e.stopPropagation(), onPointerLeave: (e) => e.stopPropagation(), onClick: (e) => e.stopPropagation(), onMouseDown: (e) => e.stopPropagation(), onMouseMove: (e) => e.stopPropagation(), onMouseEnter: (e) => e.stopPropagation(), onMouseLeave: (e) => e.stopPropagation(), children: [_jsxs("div", { className: "mb-2 flex items-center gap-1 text-xs font-medium text-gray-700", children: [_jsx(ClockIcon, { className: "h-3 w-3" }), "Recent Locations"] }), history.map((x) => (_jsx("div", { className: "cursor-pointer rounded px-2 py-1 text-xs hover:bg-gray-100", onMouseDown: (e) => {
|
|
141
|
+
e.preventDefault();
|
|
142
|
+
e.stopPropagation();
|
|
143
|
+
setSelectedFolderId(x.id);
|
|
144
|
+
setExpandedIdPath(x.idPath);
|
|
145
|
+
// Close the popover after selection
|
|
146
|
+
setIsPopoverOpen(false);
|
|
147
|
+
}, children: x.name }, x.idPath)))] })] }) })), _jsx("div", { "data-testid": "media-selector-tree", className: `absolute inset-0 overflow-auto p-2 ${isPopoverOpen ? "pointer-events-none" : ""}`, children: _jsx(ContentTree, { rootItemIds: ["3D6658D8-A0BF-4E75-B3E2-D050FABCF4E1"], selectionMode: "single", selectedItemIds: selection, templateIds: ["FE5DD826-48C6-436D-B87A-7C4210C7413B"], onItemInserted: (item) => {
|
|
148
|
+
setSelectedFolderId(item.id);
|
|
149
|
+
}, expandIdPath: expandedIdPath ?? "3D6658D8-A0BF-4E75-B3E2-D050FABCF4E1", onSelectionChange: (selection) => {
|
|
150
|
+
const selectedNode = selection[0];
|
|
151
|
+
if (selectedNode)
|
|
152
|
+
setSelectedFolderId(selectedNode.id);
|
|
153
|
+
else
|
|
154
|
+
setSelectedFolderId(undefined);
|
|
155
|
+
}, language: language }) })] })),
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
name: "thumbnails",
|
|
159
|
+
defaultSize: "auto",
|
|
160
|
+
content: (_jsxs("div", { className: "relative flex h-full w-full flex-col gap-2", children: [_jsx(AiImageSearchPrompt, { onSearchPromptChange: searchDebounced }), _jsxs("div", { className: "relative flex-1", children: [loadingThumbnails && (_jsx("div", { className: "flex h-full items-center", children: _jsx(Loader2, { className: "h-6 w-6 animate-spin" }) })), !loadingThumbnails && (_jsx(Thumbnails, { images: images ?? [], selectedImage: selectedImage, setSelectedImage: setSelectedImage, onMediaSelected: () => {
|
|
161
|
+
updateHistory();
|
|
162
|
+
onMediaSelected(selectedImage.id);
|
|
163
|
+
}, onHide: onHide }))] }), selectedFolderId && (_jsx("div", { className: "border-gray-3 border-t", children: _jsx(UploadZone, { selectedFolderId: selectedFolderId, uploadCompleted: () => {
|
|
164
|
+
loadThumbnailsAndSelectImage();
|
|
165
|
+
} }) }))] })),
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
name: "preview",
|
|
169
|
+
defaultSize: 250,
|
|
170
|
+
content: (_jsx("div", { className: "relative h-full", children: _jsx(Preview, { selectedImage: selectedImage }) })),
|
|
171
|
+
},
|
|
172
|
+
] }), _jsxs(DialogButtons, { children: [_jsx(Button, { variant: "ghost", onClick: () => onHide(), children: "Cancel" }), _jsxs(UploadButton, { variant: "outline", auto: true, accept: "image/*,video/*", uploadUrl: "/parhelia/upload?folder=" + selection[0], onUpload: async (uploadResponse) => {
|
|
173
|
+
updateHistory();
|
|
174
|
+
const response = JSON.parse(uploadResponse.xhr.responseText);
|
|
175
|
+
const thumbs = await loadThumbnails(selectedFolderId);
|
|
176
|
+
setSelectedImage(thumbs?.find((x) => x.id === response.id));
|
|
177
|
+
}, children: [_jsx(Upload, {}), " Upload"] }), _jsx(Button, { disabled: !selectedImage, onClick: () => {
|
|
178
|
+
updateHistory();
|
|
179
|
+
onMediaSelected(selectedImage.id);
|
|
180
|
+
onHide();
|
|
181
|
+
}, children: "Select" })] })] }));
|
|
182
|
+
};
|
|
183
|
+
//# sourceMappingURL=TreeSelector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TreeSelector.js","sourceRoot":"","sources":["../../../src/editor/media-selector/TreeSelector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { cn } from "../../lib/utils";
|
|
3
|
+
import { useCallback, useRef } from "react";
|
|
4
|
+
import { useState } from "react";
|
|
5
|
+
import { Spinner } from "../ui/Spinner";
|
|
6
|
+
import { Upload } from "lucide-react";
|
|
7
|
+
export function UploadZone({ selectedFolderId, uploadCompleted, }) {
|
|
8
|
+
const [isDragging, setIsDragging] = useState(false);
|
|
9
|
+
const [isUploading, setIsUploading] = useState(false);
|
|
10
|
+
const dragZoneRef = useRef(null);
|
|
11
|
+
const handleDragOver = useCallback((e) => {
|
|
12
|
+
e.preventDefault();
|
|
13
|
+
e.stopPropagation();
|
|
14
|
+
}, []);
|
|
15
|
+
const handleDragEnter = useCallback((e) => {
|
|
16
|
+
e.preventDefault();
|
|
17
|
+
e.stopPropagation();
|
|
18
|
+
if (dragZoneRef.current === e.target) {
|
|
19
|
+
setIsDragging(true);
|
|
20
|
+
}
|
|
21
|
+
}, []);
|
|
22
|
+
const handleDragLeave = useCallback((e) => {
|
|
23
|
+
e.preventDefault();
|
|
24
|
+
e.stopPropagation();
|
|
25
|
+
if (dragZoneRef.current?.contains(e.target)) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
setIsDragging(false);
|
|
29
|
+
}, []);
|
|
30
|
+
const handleDrop = useCallback((e) => {
|
|
31
|
+
e.preventDefault();
|
|
32
|
+
e.stopPropagation();
|
|
33
|
+
setIsDragging(false);
|
|
34
|
+
const files = Array.from(e.dataTransfer.files);
|
|
35
|
+
if (files.length > 0) {
|
|
36
|
+
onFilesDropped(files);
|
|
37
|
+
}
|
|
38
|
+
}, [selectedFolderId]);
|
|
39
|
+
const onFilesDropped = useCallback(async (files) => {
|
|
40
|
+
const formData = new FormData();
|
|
41
|
+
files.forEach((file, index) => {
|
|
42
|
+
formData.append("file" + index, file);
|
|
43
|
+
});
|
|
44
|
+
try {
|
|
45
|
+
setIsUploading(true);
|
|
46
|
+
const response = await fetch("/parhelia/upload?folder=" + selectedFolderId, {
|
|
47
|
+
method: "POST",
|
|
48
|
+
body: formData,
|
|
49
|
+
});
|
|
50
|
+
setIsUploading(false);
|
|
51
|
+
if (!response.ok) {
|
|
52
|
+
throw new Error("Upload failed");
|
|
53
|
+
}
|
|
54
|
+
uploadCompleted();
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
console.error("Error uploading files:", error);
|
|
58
|
+
}
|
|
59
|
+
}, [selectedFolderId]);
|
|
60
|
+
if (isUploading) {
|
|
61
|
+
return (_jsxs("div", { className: "flex items-center justify-center gap-2 rounded-lg border-2 border-dashed p-4 text-sm text-gray-500", children: [_jsx(Spinner, { size: "2xl" }), " Uploading..."] }));
|
|
62
|
+
}
|
|
63
|
+
return (_jsxs(_Fragment, { children: [_jsx("div", { ref: dragZoneRef, className: cn("mx-6 my-4 flex flex-col items-center justify-center gap-2 rounded-lg border-2 border-dashed p-4", isDragging
|
|
64
|
+
? "border-blue-400 bg-blue-50"
|
|
65
|
+
: "border-gray-300 hover:border-blue-300 hover:bg-gray-50"), onDragOverCapture: handleDragOver, onDragEnterCapture: handleDragEnter, onDragLeaveCapture: handleDragLeave, onDropCapture: handleDrop, onClick: () => {
|
|
66
|
+
const fileInput = document.createElement("input");
|
|
67
|
+
fileInput.type = "file";
|
|
68
|
+
fileInput.multiple = true;
|
|
69
|
+
fileInput.accept = "image/*,video/*";
|
|
70
|
+
fileInput.onchange = (e) => {
|
|
71
|
+
const files = Array.from(e.target.files || []);
|
|
72
|
+
if (files.length > 0) {
|
|
73
|
+
onFilesDropped(files);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
fileInput.click();
|
|
77
|
+
}, children: _jsxs("div", { className: "flex cursor-pointer items-center gap-2", children: [_jsx(Upload, { className: "h-5 w-5" }), _jsx("span", { className: "text-sm", children: isDragging
|
|
78
|
+
? "Drop files here"
|
|
79
|
+
: "Click to upload or drop files here" })] }) }), isDragging && (_jsx("div", { className: "pointer-events-none absolute inset-0 border-2 border-dashed border-blue-400" }))] }));
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=UploadZone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UploadZone.js","sourceRoot":"","sources":["../../../src/editor/media-selector/UploadZone.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { Thumbnails } from "./Thumbnails";
|
|
2
|
+
export { MediaFolderBrowser } from "./MediaFolderBrowser";
|
|
3
|
+
export { TreeSelector } from "./TreeSelector";
|
|
4
|
+
export { Preview } from "./Preview";
|
|
5
|
+
export { UploadZone } from "./UploadZone";
|
|
6
|
+
export { AiImageSearch } from "./AiImageSearch";
|
|
7
|
+
export { AiImageSearchPrompt } from "./AiImageSearchPrompt";
|
|
8
|
+
export { MediaSelector, type MediaSelectorMode } from "./MediaSelector";
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { Thumbnails } from "./Thumbnails";
|
|
2
|
+
export { MediaFolderBrowser } from "./MediaFolderBrowser";
|
|
3
|
+
export { TreeSelector } from "./TreeSelector";
|
|
4
|
+
export { Preview } from "./Preview";
|
|
5
|
+
export { UploadZone } from "./UploadZone";
|
|
6
|
+
export { AiImageSearch } from "./AiImageSearch";
|
|
7
|
+
export { AiImageSearchPrompt } from "./AiImageSearchPrompt";
|
|
8
|
+
export { MediaSelector } from "./MediaSelector";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|