@strapi/content-type-builder 5.25.0 → 5.27.0
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/dist/admin/components/AIChat/Chat.js +435 -0
- package/dist/admin/components/AIChat/Chat.js.map +1 -0
- package/dist/admin/components/AIChat/Chat.mjs +433 -0
- package/dist/admin/components/AIChat/Chat.mjs.map +1 -0
- package/dist/admin/components/AIChat/FeedbackModal.js +237 -0
- package/dist/admin/components/AIChat/FeedbackModal.js.map +1 -0
- package/dist/admin/components/AIChat/FeedbackModal.mjs +233 -0
- package/dist/admin/components/AIChat/FeedbackModal.mjs.map +1 -0
- package/dist/admin/components/AIChat/UploadCodeModal.js +427 -0
- package/dist/admin/components/AIChat/UploadCodeModal.js.map +1 -0
- package/dist/admin/components/AIChat/UploadCodeModal.mjs +423 -0
- package/dist/admin/components/AIChat/UploadCodeModal.mjs.map +1 -0
- package/dist/admin/components/AIChat/UploadFigmaModal.js +377 -0
- package/dist/admin/components/AIChat/UploadFigmaModal.js.map +1 -0
- package/dist/admin/components/AIChat/UploadFigmaModal.mjs +373 -0
- package/dist/admin/components/AIChat/UploadFigmaModal.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Alert.js +46 -0
- package/dist/admin/components/AIChat/components/Alert.js.map +1 -0
- package/dist/admin/components/AIChat/components/Alert.mjs +44 -0
- package/dist/admin/components/AIChat/components/Alert.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/AnimatedBox.js +34 -0
- package/dist/admin/components/AIChat/components/AnimatedBox.js.map +1 -0
- package/dist/admin/components/AIChat/components/AnimatedBox.mjs +32 -0
- package/dist/admin/components/AIChat/components/AnimatedBox.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.js +92 -0
- package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.js.map +1 -0
- package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.mjs +90 -0
- package/dist/admin/components/AIChat/components/Attachments/AttachmentPreview.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.js +100 -0
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.js.map +1 -0
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs +97 -0
- package/dist/admin/components/AIChat/components/Attachments/components/Attachment.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Base64Image.js +127 -0
- package/dist/admin/components/AIChat/components/Base64Image.js.map +1 -0
- package/dist/admin/components/AIChat/components/Base64Image.mjs +125 -0
- package/dist/admin/components/AIChat/components/Base64Image.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Collapsible.js +71 -0
- package/dist/admin/components/AIChat/components/Collapsible.js.map +1 -0
- package/dist/admin/components/AIChat/components/Collapsible.mjs +66 -0
- package/dist/admin/components/AIChat/components/Collapsible.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Dropzone.js +172 -0
- package/dist/admin/components/AIChat/components/Dropzone.js.map +1 -0
- package/dist/admin/components/AIChat/components/Dropzone.mjs +167 -0
- package/dist/admin/components/AIChat/components/Dropzone.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/FloatingPanel.js +166 -0
- package/dist/admin/components/AIChat/components/FloatingPanel.js.map +1 -0
- package/dist/admin/components/AIChat/components/FloatingPanel.mjs +163 -0
- package/dist/admin/components/AIChat/components/FloatingPanel.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/FullScreenImage.js +190 -0
- package/dist/admin/components/AIChat/components/FullScreenImage.js.map +1 -0
- package/dist/admin/components/AIChat/components/FullScreenImage.mjs +187 -0
- package/dist/admin/components/AIChat/components/FullScreenImage.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/ImagePreview.js +87 -0
- package/dist/admin/components/AIChat/components/ImagePreview.js.map +1 -0
- package/dist/admin/components/AIChat/components/ImagePreview.mjs +85 -0
- package/dist/admin/components/AIChat/components/ImagePreview.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Input.js +126 -0
- package/dist/admin/components/AIChat/components/Input.js.map +1 -0
- package/dist/admin/components/AIChat/components/Input.mjs +121 -0
- package/dist/admin/components/AIChat/components/Input.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Messages/Marker.js +138 -0
- package/dist/admin/components/AIChat/components/Messages/Marker.js.map +1 -0
- package/dist/admin/components/AIChat/components/Messages/Marker.mjs +136 -0
- package/dist/admin/components/AIChat/components/Messages/Marker.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/Messages/Message.js +214 -0
- package/dist/admin/components/AIChat/components/Messages/Message.js.map +1 -0
- package/dist/admin/components/AIChat/components/Messages/Message.mjs +212 -0
- package/dist/admin/components/AIChat/components/Messages/Message.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/ResizableTextArea.js +78 -0
- package/dist/admin/components/AIChat/components/ResizableTextArea.js.map +1 -0
- package/dist/admin/components/AIChat/components/ResizableTextArea.mjs +76 -0
- package/dist/admin/components/AIChat/components/ResizableTextArea.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/SimpleMenu.js +60 -0
- package/dist/admin/components/AIChat/components/SimpleMenu.js.map +1 -0
- package/dist/admin/components/AIChat/components/SimpleMenu.mjs +35 -0
- package/dist/admin/components/AIChat/components/SimpleMenu.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/StepModal.js +175 -0
- package/dist/admin/components/AIChat/components/StepModal.js.map +1 -0
- package/dist/admin/components/AIChat/components/StepModal.mjs +171 -0
- package/dist/admin/components/AIChat/components/StepModal.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/animations.js +67 -0
- package/dist/admin/components/AIChat/components/animations.js.map +1 -0
- package/dist/admin/components/AIChat/components/animations.mjs +65 -0
- package/dist/admin/components/AIChat/components/animations.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/icons/FigmaIcon.js +50 -0
- package/dist/admin/components/AIChat/components/icons/FigmaIcon.js.map +1 -0
- package/dist/admin/components/AIChat/components/icons/FigmaIcon.mjs +48 -0
- package/dist/admin/components/AIChat/components/icons/FigmaIcon.mjs.map +1 -0
- package/dist/admin/components/AIChat/components/icons/StopIcon.js +25 -0
- package/dist/admin/components/AIChat/components/icons/StopIcon.js.map +1 -0
- package/dist/admin/components/AIChat/components/icons/StopIcon.mjs +23 -0
- package/dist/admin/components/AIChat/components/icons/StopIcon.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useAIFetch.js +107 -0
- package/dist/admin/components/AIChat/hooks/useAIFetch.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useAIFetch.mjs +96 -0
- package/dist/admin/components/AIChat/hooks/useAIFetch.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useAttachments.js +152 -0
- package/dist/admin/components/AIChat/hooks/useAttachments.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useAttachments.mjs +150 -0
- package/dist/admin/components/AIChat/hooks/useAttachments.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useChatTitle.js +47 -0
- package/dist/admin/components/AIChat/hooks/useChatTitle.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useChatTitle.mjs +45 -0
- package/dist/admin/components/AIChat/hooks/useChatTitle.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useCodeUpload.js +212 -0
- package/dist/admin/components/AIChat/hooks/useCodeUpload.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useCodeUpload.mjs +207 -0
- package/dist/admin/components/AIChat/hooks/useCodeUpload.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useFeedback.js +76 -0
- package/dist/admin/components/AIChat/hooks/useFeedback.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useFeedback.mjs +74 -0
- package/dist/admin/components/AIChat/hooks/useFeedback.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useFigmaUpload.js +206 -0
- package/dist/admin/components/AIChat/hooks/useFigmaUpload.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useFigmaUpload.mjs +200 -0
- package/dist/admin/components/AIChat/hooks/useFigmaUpload.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.js +115 -0
- package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.mjs +113 -0
- package/dist/admin/components/AIChat/hooks/useLastSeenSchemas.mjs.map +1 -0
- package/dist/admin/components/AIChat/hooks/useTranslations.js +19 -0
- package/dist/admin/components/AIChat/hooks/useTranslations.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useTranslations.mjs +17 -0
- package/dist/admin/components/AIChat/hooks/useTranslations.mjs.map +1 -0
- package/dist/admin/components/AIChat/lib/aiClient.js +168 -0
- package/dist/admin/components/AIChat/lib/aiClient.js.map +1 -0
- package/dist/admin/components/AIChat/lib/aiClient.mjs +161 -0
- package/dist/admin/components/AIChat/lib/aiClient.mjs.map +1 -0
- package/dist/admin/components/AIChat/lib/constants.js +16 -0
- package/dist/admin/components/AIChat/lib/constants.js.map +1 -0
- package/dist/admin/components/AIChat/lib/constants.mjs +10 -0
- package/dist/admin/components/AIChat/lib/constants.mjs.map +1 -0
- package/dist/admin/components/AIChat/lib/misc.js +8 -0
- package/dist/admin/components/AIChat/lib/misc.js.map +1 -0
- package/dist/admin/components/AIChat/lib/misc.mjs +6 -0
- package/dist/admin/components/AIChat/lib/misc.mjs.map +1 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.js +46 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.js.map +1 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.mjs +44 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/fromCTB.mjs.map +1 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.js +151 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.js.map +1 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.mjs +148 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.mjs.map +1 -0
- package/dist/admin/components/AIChat/providers/ChatProvider.js +191 -0
- package/dist/admin/components/AIChat/providers/ChatProvider.js.map +1 -0
- package/dist/admin/components/AIChat/providers/ChatProvider.mjs +187 -0
- package/dist/admin/components/AIChat/providers/ChatProvider.mjs.map +1 -0
- package/dist/admin/components/AIChat/providers/SchemaProvider.js +90 -0
- package/dist/admin/components/AIChat/providers/SchemaProvider.js.map +1 -0
- package/dist/admin/components/AIChat/providers/SchemaProvider.mjs +88 -0
- package/dist/admin/components/AIChat/providers/SchemaProvider.mjs.map +1 -0
- package/dist/admin/components/ComponentList.js +1 -0
- package/dist/admin/components/ComponentList.js.map +1 -1
- package/dist/admin/components/ComponentList.mjs +1 -0
- package/dist/admin/components/ComponentList.mjs.map +1 -1
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js +165 -161
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js.map +1 -1
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs +165 -161
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs.map +1 -1
- package/dist/admin/components/DataManager/DataManagerContext.js.map +1 -1
- package/dist/admin/components/DataManager/DataManagerContext.mjs.map +1 -1
- package/dist/admin/components/DataManager/reducer.js +48 -6
- package/dist/admin/components/DataManager/reducer.js.map +1 -1
- package/dist/admin/components/DataManager/reducer.mjs +48 -6
- package/dist/admin/components/DataManager/reducer.mjs.map +1 -1
- package/dist/admin/components/FormModal/utils/canEditContentType.js.map +1 -1
- package/dist/admin/components/FormModal/utils/canEditContentType.mjs.map +1 -1
- package/dist/admin/pages/App/index.js +60 -29
- package/dist/admin/pages/App/index.js.map +1 -1
- package/dist/admin/pages/App/index.mjs +62 -31
- package/dist/admin/pages/App/index.mjs.map +1 -1
- package/dist/admin/pages/ListView/EmptyState.js +75 -9
- package/dist/admin/pages/ListView/EmptyState.js.map +1 -1
- package/dist/admin/pages/ListView/EmptyState.mjs +77 -11
- package/dist/admin/pages/ListView/EmptyState.mjs.map +1 -1
- package/dist/admin/src/components/AIChat/Chat.d.ts +2 -0
- package/dist/admin/src/components/AIChat/FeedbackModal.d.ts +13 -0
- package/dist/admin/src/components/AIChat/UploadCodeModal.d.ts +12 -0
- package/dist/admin/src/components/AIChat/UploadFigmaModal.d.ts +12 -0
- package/dist/admin/src/components/AIChat/components/Alert.d.ts +6 -0
- package/dist/admin/src/components/AIChat/components/AnimatedBox.d.ts +13 -0
- package/dist/admin/src/components/AIChat/components/Attachments/AttachmentPreview.d.ts +9 -0
- package/dist/admin/src/components/AIChat/components/Attachments/components/Attachment.d.ts +27 -0
- package/dist/admin/src/components/AIChat/components/Base64Image.d.ts +9 -0
- package/dist/admin/src/components/AIChat/components/Collapsible.d.ts +18 -0
- package/dist/admin/src/components/AIChat/components/Dropzone.d.ts +35 -0
- package/dist/admin/src/components/AIChat/components/FloatingPanel.d.ts +34 -0
- package/dist/admin/src/components/AIChat/components/FullScreenImage.d.ts +20 -0
- package/dist/admin/src/components/AIChat/components/ImagePreview.d.ts +8 -0
- package/dist/admin/src/components/AIChat/components/ImagePreviewGroup.d.ts +7 -0
- package/dist/admin/src/components/AIChat/components/Input.d.ts +43 -0
- package/dist/admin/src/components/AIChat/components/Messages/Marker.d.ts +2 -0
- package/dist/admin/src/components/AIChat/components/Messages/Message.d.ts +5 -0
- package/dist/admin/src/components/AIChat/components/ResizableTextArea.d.ts +9 -0
- package/dist/admin/src/components/AIChat/components/SimpleMenu.d.ts +32 -0
- package/dist/admin/src/components/AIChat/components/StepModal.d.ts +37 -0
- package/dist/admin/src/components/AIChat/components/animations.d.ts +8 -0
- package/dist/admin/src/components/AIChat/components/icons/FigmaIcon.d.ts +5 -0
- package/dist/admin/src/components/AIChat/components/icons/StopIcon.d.ts +5 -0
- package/dist/admin/src/components/AIChat/hooks/useAIFetch.d.ts +147 -0
- package/dist/admin/src/components/AIChat/hooks/useAttachments.d.ts +8 -0
- package/dist/admin/src/components/AIChat/hooks/useChatTitle.d.ts +13 -0
- package/dist/admin/src/components/AIChat/hooks/useCodeUpload.d.ts +31 -0
- package/dist/admin/src/components/AIChat/hooks/useFeedback.d.ts +7 -0
- package/dist/admin/src/components/AIChat/hooks/useFigmaUpload.d.ts +61 -0
- package/dist/admin/src/components/AIChat/hooks/useLastSeenSchemas.d.ts +10 -0
- package/dist/admin/src/components/AIChat/hooks/useTranslations.d.ts +3 -0
- package/dist/admin/src/components/AIChat/lib/aiClient.d.ts +32 -0
- package/dist/admin/src/components/AIChat/lib/constants.d.ts +12 -0
- package/dist/admin/src/components/AIChat/lib/fileToAttachment.d.ts +2 -0
- package/dist/admin/src/components/AIChat/lib/misc.d.ts +1 -0
- package/dist/admin/src/components/AIChat/lib/transforms/schemas/fromCTB.d.ts +3 -0
- package/dist/admin/src/components/AIChat/lib/transforms/schemas/toCTB.d.ts +16 -0
- package/dist/admin/src/components/AIChat/lib/types/annotations.d.ts +19 -0
- package/dist/admin/src/components/AIChat/lib/types/attachments.d.ts +15 -0
- package/dist/admin/src/components/AIChat/lib/types/feedback.d.ts +1 -0
- package/dist/admin/src/components/AIChat/lib/types/messages.d.ts +26 -0
- package/dist/admin/src/components/AIChat/lib/types/schema.d.ts +20 -0
- package/dist/admin/src/components/AIChat/providers/ChatProvider.d.ts +30 -0
- package/dist/admin/src/components/AIChat/providers/SchemaProvider.d.ts +10 -0
- package/dist/admin/src/components/ComponentList.d.ts +1 -1
- package/dist/admin/src/components/DataManager/DataManagerContext.d.ts +1 -1
- package/dist/admin/translations/ar.json.js +187 -2
- package/dist/admin/translations/ar.json.js.map +1 -1
- package/dist/admin/translations/ar.json.mjs +187 -3
- package/dist/admin/translations/ar.json.mjs.map +1 -1
- package/dist/admin/translations/de.json.js +42 -7
- package/dist/admin/translations/de.json.js.map +1 -1
- package/dist/admin/translations/de.json.mjs +42 -7
- package/dist/admin/translations/de.json.mjs.map +1 -1
- package/dist/admin/translations/en.json.js +53 -2
- package/dist/admin/translations/en.json.js.map +1 -1
- package/dist/admin/translations/en.json.mjs +53 -2
- package/dist/admin/translations/en.json.mjs.map +1 -1
- package/dist/admin/translations/es.json.js +37 -15
- package/dist/admin/translations/es.json.js.map +1 -1
- package/dist/admin/translations/es.json.mjs +37 -15
- package/dist/admin/translations/es.json.mjs.map +1 -1
- package/dist/admin/translations/fr.json.js +165 -3
- package/dist/admin/translations/fr.json.js.map +1 -1
- package/dist/admin/translations/fr.json.mjs +165 -4
- package/dist/admin/translations/fr.json.mjs.map +1 -1
- package/dist/admin/translations/id.json.js +93 -23
- package/dist/admin/translations/id.json.js.map +1 -1
- package/dist/admin/translations/id.json.mjs +93 -23
- package/dist/admin/translations/id.json.mjs.map +1 -1
- package/dist/admin/translations/it.json.js +75 -6
- package/dist/admin/translations/it.json.js.map +1 -1
- package/dist/admin/translations/it.json.mjs +75 -6
- package/dist/admin/translations/it.json.mjs.map +1 -1
- package/dist/admin/translations/ja.json.js +191 -5
- package/dist/admin/translations/ja.json.js.map +1 -1
- package/dist/admin/translations/ja.json.mjs +191 -6
- package/dist/admin/translations/ja.json.mjs.map +1 -1
- package/dist/admin/translations/ko.json.js +70 -16
- package/dist/admin/translations/ko.json.js.map +1 -1
- package/dist/admin/translations/ko.json.mjs +70 -16
- package/dist/admin/translations/ko.json.mjs.map +1 -1
- package/dist/admin/translations/ms.json.js +104 -31
- package/dist/admin/translations/ms.json.js.map +1 -1
- package/dist/admin/translations/ms.json.mjs +104 -31
- package/dist/admin/translations/ms.json.mjs.map +1 -1
- package/dist/admin/translations/nl.json.js +95 -15
- package/dist/admin/translations/nl.json.js.map +1 -1
- package/dist/admin/translations/nl.json.mjs +95 -15
- package/dist/admin/translations/nl.json.mjs.map +1 -1
- package/dist/admin/translations/pl.json.js +55 -11
- package/dist/admin/translations/pl.json.js.map +1 -1
- package/dist/admin/translations/pl.json.mjs +55 -11
- package/dist/admin/translations/pl.json.mjs.map +1 -1
- package/dist/admin/translations/pt-BR.json.js +54 -10
- package/dist/admin/translations/pt-BR.json.js.map +1 -1
- package/dist/admin/translations/pt-BR.json.mjs +54 -10
- package/dist/admin/translations/pt-BR.json.mjs.map +1 -1
- package/dist/admin/translations/pt.json.js +187 -2
- package/dist/admin/translations/pt.json.js.map +1 -1
- package/dist/admin/translations/pt.json.mjs +187 -3
- package/dist/admin/translations/pt.json.mjs.map +1 -1
- package/dist/admin/translations/ru.json.js +26 -1
- package/dist/admin/translations/ru.json.js.map +1 -1
- package/dist/admin/translations/ru.json.mjs +26 -1
- package/dist/admin/translations/ru.json.mjs.map +1 -1
- package/dist/admin/translations/sk.json.js +21 -1
- package/dist/admin/translations/sk.json.js.map +1 -1
- package/dist/admin/translations/sk.json.mjs +21 -1
- package/dist/admin/translations/sk.json.mjs.map +1 -1
- package/dist/admin/translations/sv.json.js +21 -1
- package/dist/admin/translations/sv.json.js.map +1 -1
- package/dist/admin/translations/sv.json.mjs +21 -1
- package/dist/admin/translations/sv.json.mjs.map +1 -1
- package/dist/admin/translations/th.json.js +21 -1
- package/dist/admin/translations/th.json.js.map +1 -1
- package/dist/admin/translations/th.json.mjs +21 -1
- package/dist/admin/translations/th.json.mjs.map +1 -1
- package/dist/admin/translations/tr.json.js +21 -1
- package/dist/admin/translations/tr.json.js.map +1 -1
- package/dist/admin/translations/tr.json.mjs +21 -1
- package/dist/admin/translations/tr.json.mjs.map +1 -1
- package/dist/admin/translations/uk.json.js +21 -2
- package/dist/admin/translations/uk.json.js.map +1 -1
- package/dist/admin/translations/uk.json.mjs +21 -2
- package/dist/admin/translations/uk.json.mjs.map +1 -1
- package/dist/admin/translations/zh-Hans.json.js +222 -133
- package/dist/admin/translations/zh-Hans.json.js.map +1 -1
- package/dist/admin/translations/zh-Hans.json.mjs +222 -133
- package/dist/admin/translations/zh-Hans.json.mjs.map +1 -1
- package/dist/admin/translations/zh.json.js +21 -1
- package/dist/admin/translations/zh.json.js.map +1 -1
- package/dist/admin/translations/zh.json.mjs +21 -1
- package/dist/admin/translations/zh.json.mjs.map +1 -1
- package/dist/server/index.js +2 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +2 -0
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/register.js +98 -0
- package/dist/server/register.js.map +1 -0
- package/dist/server/register.mjs +96 -0
- package/dist/server/register.mjs.map +1 -0
- package/dist/server/src/controllers/ai/auth.d.ts +1 -0
- package/dist/server/src/controllers/ai/auth.d.ts.map +1 -0
- package/dist/server/src/controllers/ai/index.d.ts +1 -0
- package/dist/server/src/controllers/ai/index.d.ts.map +1 -0
- package/dist/server/src/index.d.ts +1 -0
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/register.d.ts +11 -0
- package/dist/server/src/register.d.ts.map +1 -0
- package/package.json +12 -5
- package/dist/admin/components/DataManager/utils/formatSchemas.js +0 -21
- package/dist/admin/components/DataManager/utils/formatSchemas.js.map +0 -1
- package/dist/admin/components/DataManager/utils/formatSchemas.mjs +0 -18
- package/dist/admin/components/DataManager/utils/formatSchemas.mjs.map +0 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Centralized AI client utilities:
|
|
3
|
+
* - Token retrieval via admin endpoint using getFetchClient
|
|
4
|
+
* - In-memory + sessionStorage caching with near-expiry buffer
|
|
5
|
+
* - Safe JSON parsing for error handling
|
|
6
|
+
* - Single-retry policy on token invalidation
|
|
7
|
+
*/
|
|
8
|
+
export interface AITokenData {
|
|
9
|
+
token: string;
|
|
10
|
+
expiresAt: string;
|
|
11
|
+
}
|
|
12
|
+
export declare const clearAIJwt: () => void;
|
|
13
|
+
export declare const getAIJwt: () => Promise<AITokenData | null>;
|
|
14
|
+
export declare const prefetchAIToken: () => Promise<void>;
|
|
15
|
+
export declare const safeParseJson: (response: Response) => Promise<any>;
|
|
16
|
+
export interface StrapiContextHeaders {
|
|
17
|
+
strapiVersion?: string | null;
|
|
18
|
+
projectId?: string | null;
|
|
19
|
+
userId?: string | null;
|
|
20
|
+
}
|
|
21
|
+
export interface FetchAIOptions extends RequestInit {
|
|
22
|
+
ctx?: StrapiContextHeaders;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Generic fetch wrapper for AI endpoints with token injection and single retry on invalidation
|
|
26
|
+
*/
|
|
27
|
+
export declare const fetchAI: (input: RequestInfo | URL, options?: FetchAIOptions) => Promise<Response>;
|
|
28
|
+
/**
|
|
29
|
+
* Factory to provide a fetch implementation compatible with AI SDK useChat
|
|
30
|
+
* that injects AI JWT + Strapi context headers and retries on token invalidation once.
|
|
31
|
+
*/
|
|
32
|
+
export declare const makeChatFetch: (ctx: StrapiContextHeaders) => (input: RequestInfo | URL, options?: RequestInit) => Promise<Response>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Schema } from './types/schema';
|
|
2
|
+
export declare const STRAPI_CODE_MIME_TYPE = "application/vnd.strapi.code";
|
|
3
|
+
export declare const STRAPI_MAX_ATTACHMENTS = 15;
|
|
4
|
+
export declare const STRAPI_MAX_ATTACHMENT_SIZE: number;
|
|
5
|
+
export declare const STRAPI_AI_URL: string;
|
|
6
|
+
export declare const STRAPI_AI_CHAT_URL: string;
|
|
7
|
+
export declare const STRAPI_AI_TITLE_URL: "/schemas/chat/generate-title";
|
|
8
|
+
export declare const STRAPI_AI_FEEDBACK_URL: "/schemas/chat/feedback";
|
|
9
|
+
export declare const STRAPI_AI_PROJECT_URL: "/schemas/chat/attachment";
|
|
10
|
+
export interface ChatBody {
|
|
11
|
+
schemas: Schema[];
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const generateId: (size?: number) => string;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Schema } from '../../types/schema';
|
|
2
|
+
import type { ContentType, Component, AnyAttribute } from '../../../../../types';
|
|
3
|
+
/**
|
|
4
|
+
* Transform attributes from Chat format to CTB format
|
|
5
|
+
* Also performs a diff to determine the status of each attribute
|
|
6
|
+
*/
|
|
7
|
+
export declare const transformAttributesFromChatToCTB: ({ action, attributes }: Schema, oldSchema?: ContentType | Component) => AnyAttribute[];
|
|
8
|
+
/**
|
|
9
|
+
* Transform schema format
|
|
10
|
+
* AI chat -> CTB
|
|
11
|
+
*
|
|
12
|
+
* The AI chat returns a simplified format, and this layer transforms it to be compatible with the CTB reducer.
|
|
13
|
+
*
|
|
14
|
+
* We need to keep track of which changes have been made
|
|
15
|
+
*/
|
|
16
|
+
export declare const transformChatToCTB: (schema: Schema, oldSchema?: ContentType | Component) => ContentType | Component;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Schema } from './schema';
|
|
2
|
+
/**
|
|
3
|
+
* Schema Change Annotations
|
|
4
|
+
*/
|
|
5
|
+
export type SchemaChange = {
|
|
6
|
+
type: 'create' | 'update' | 'remove';
|
|
7
|
+
schema: Schema;
|
|
8
|
+
revisionId: string;
|
|
9
|
+
};
|
|
10
|
+
export type SchemaChangeAnnotation = {
|
|
11
|
+
toolCallId: string;
|
|
12
|
+
type: 'schema-change';
|
|
13
|
+
changes?: SchemaChange[];
|
|
14
|
+
message?: string;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Combined Tool Annotation type
|
|
18
|
+
*/
|
|
19
|
+
export type ToolAnnotation = SchemaChangeAnnotation;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { FileUIPart } from 'ai';
|
|
2
|
+
export type Project = {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
timestamp: string;
|
|
6
|
+
type: 'code';
|
|
7
|
+
files: {
|
|
8
|
+
path: string;
|
|
9
|
+
content: string;
|
|
10
|
+
}[];
|
|
11
|
+
};
|
|
12
|
+
export type Attachment = {
|
|
13
|
+
id: string;
|
|
14
|
+
status: 'loading' | 'ready';
|
|
15
|
+
} & FileUIPart;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type FeedbackReasonIds = 'invalid_schema' | 'bad_recommendation' | 'slow' | 'instructions_ignored' | 'being_lazy' | 'other';
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { UIMessage } from '@ai-sdk/react';
|
|
2
|
+
export type Status = 'loading' | 'success' | 'error';
|
|
3
|
+
export interface MarkerContent {
|
|
4
|
+
type: 'marker';
|
|
5
|
+
title: string;
|
|
6
|
+
state: Status;
|
|
7
|
+
link?: string;
|
|
8
|
+
steps: Array<{
|
|
9
|
+
id: string;
|
|
10
|
+
description: string;
|
|
11
|
+
status: 'create' | 'update' | 'remove';
|
|
12
|
+
link?: string;
|
|
13
|
+
}>;
|
|
14
|
+
}
|
|
15
|
+
export interface TextContent {
|
|
16
|
+
type: 'text';
|
|
17
|
+
text: string;
|
|
18
|
+
}
|
|
19
|
+
export type MessageContent = TextContent | MarkerContent;
|
|
20
|
+
export type AIMessage = UIMessage;
|
|
21
|
+
export type UserMessage = Omit<AIMessage, 'role'> & {
|
|
22
|
+
role: 'user';
|
|
23
|
+
};
|
|
24
|
+
export type AssistantMessage = Omit<AIMessage, 'role'> & {
|
|
25
|
+
role: 'assistant';
|
|
26
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Strapi schema, this is a simplification to make it easier to work with
|
|
3
|
+
*/
|
|
4
|
+
export type Schema = {
|
|
5
|
+
action: 'create' | 'update' | 'remove';
|
|
6
|
+
kind?: 'singleType' | 'collectionType';
|
|
7
|
+
uid: string;
|
|
8
|
+
modelType: 'component' | 'contentType';
|
|
9
|
+
category?: string;
|
|
10
|
+
description?: string;
|
|
11
|
+
name: string;
|
|
12
|
+
options?: {
|
|
13
|
+
draftAndPublish?: boolean;
|
|
14
|
+
localized?: boolean;
|
|
15
|
+
};
|
|
16
|
+
attributes: Record<string, {
|
|
17
|
+
type: string;
|
|
18
|
+
[key: string]: any;
|
|
19
|
+
}>;
|
|
20
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type ReactNode, type ChangeEvent } from 'react';
|
|
2
|
+
import { UIMessage, useChat } from '@ai-sdk/react';
|
|
3
|
+
import { Attachment } from '../lib/types/attachments';
|
|
4
|
+
import { Schema } from '../lib/types/schema';
|
|
5
|
+
interface ChatContextType extends Omit<ReturnType<typeof useChat>, 'messages'> {
|
|
6
|
+
isChatEnabled: boolean;
|
|
7
|
+
title?: string;
|
|
8
|
+
messages: UIMessage[];
|
|
9
|
+
handleSubmit: (event: any) => void;
|
|
10
|
+
input: string;
|
|
11
|
+
setInput: React.Dispatch<React.SetStateAction<string>>;
|
|
12
|
+
handleInputChange: (e: ChangeEvent<HTMLInputElement> | ChangeEvent<HTMLTextAreaElement>) => void;
|
|
13
|
+
reset: () => void;
|
|
14
|
+
schemas: Schema[];
|
|
15
|
+
isChatOpen: boolean;
|
|
16
|
+
openChat: () => void;
|
|
17
|
+
closeChat: () => void;
|
|
18
|
+
attachments: Attachment[];
|
|
19
|
+
setAttachments: React.Dispatch<React.SetStateAction<Attachment[]>>;
|
|
20
|
+
}
|
|
21
|
+
export declare const BaseChatProvider: ({ children, defaultOpen, }: {
|
|
22
|
+
children: ReactNode;
|
|
23
|
+
defaultOpen?: boolean;
|
|
24
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
25
|
+
export declare const ChatProvider: ({ children, defaultOpen, }: {
|
|
26
|
+
children: React.ReactNode;
|
|
27
|
+
defaultOpen?: boolean;
|
|
28
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
export declare function useStrapiChat(): ChatContextType;
|
|
30
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
interface SchemaContextType {
|
|
3
|
+
lastRevisedId: string | null;
|
|
4
|
+
setLastRevisedId: (id: string | null) => void;
|
|
5
|
+
}
|
|
6
|
+
export declare const SchemaChatProvider: ({ children }: {
|
|
7
|
+
children: ReactNode;
|
|
8
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare const useChatSchema: () => SchemaContextType;
|
|
10
|
+
export {};
|
|
@@ -4,5 +4,5 @@ interface ComponentListProps {
|
|
|
4
4
|
firstLoopComponentUid?: UID.Component | null;
|
|
5
5
|
isFromDynamicZone?: boolean;
|
|
6
6
|
}
|
|
7
|
-
export declare const ComponentList: ({ component, isFromDynamicZone, firstLoopComponentUid, }: ComponentListProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export declare const ComponentList: ({ component, isFromDynamicZone, firstLoopComponentUid, }: ComponentListProps) => import("react/jsx-runtime").JSX.Element | undefined;
|
|
8
8
|
export {};
|
|
@@ -124,7 +124,7 @@ export interface DataManagerContextValue {
|
|
|
124
124
|
isSaving: boolean;
|
|
125
125
|
applyChange: (opts: {
|
|
126
126
|
action: 'add' | 'update' | 'delete';
|
|
127
|
-
schema:
|
|
127
|
+
schema: ContentType | Component;
|
|
128
128
|
}) => void;
|
|
129
129
|
history: {
|
|
130
130
|
undo(): void;
|
|
@@ -2,53 +2,238 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var configurations = "التكوينات";
|
|
5
6
|
var from = "من";
|
|
6
7
|
var ar = {
|
|
7
8
|
"attribute.boolean": "منطقي",
|
|
9
|
+
"attribute.boolean.description": "نعم أو لا، 1 أو 0، صح أو خطأ",
|
|
10
|
+
"attribute.component": "Component",
|
|
11
|
+
"attribute.component.description": "مجموعة من الحقول التي يمكنك تكرارها أو إعادة استخدامها",
|
|
12
|
+
"attribute.customField": "حقل مخصص",
|
|
8
13
|
"attribute.date": "تاريخ",
|
|
14
|
+
"attribute.date.description": "منتقي تاريخ مع ساعات ودقائق وثواني",
|
|
15
|
+
"attribute.datetime": "تاريخ ووقت",
|
|
16
|
+
"attribute.dynamiczone": "منطقة ديناميكية",
|
|
17
|
+
"attribute.dynamiczone.description": "اختيار المكونات ديناميكيًا عند تحرير المحتوى",
|
|
9
18
|
"attribute.email": "بريد الإكتروني",
|
|
19
|
+
"attribute.email.description": "حقل البريد الإلكتروني مع تنسيق التحقق",
|
|
10
20
|
"attribute.enumeration": "تعداد",
|
|
21
|
+
"attribute.enumeration.description": "قائمة من القيم، ثم اختر واحدة",
|
|
11
22
|
"attribute.json": "JSON",
|
|
23
|
+
"attribute.json.description": "بيانات بتنسيق JSON",
|
|
12
24
|
"attribute.media": "وسائط",
|
|
25
|
+
"attribute.media.description": "ملفات مثل الصور ومقاطع الفيديو وما إلى ذلك",
|
|
26
|
+
"attribute.null": " ",
|
|
27
|
+
"attribute.number": "رقم",
|
|
28
|
+
"attribute.number.description": "أرقام (صحيحة، عائمة، عشرية)",
|
|
13
29
|
"attribute.password": "كلمة سر",
|
|
30
|
+
"attribute.password.description": "حقل كلمة المرور مع التشفير",
|
|
14
31
|
"attribute.relation": "علاقة",
|
|
32
|
+
"attribute.relation.description": "يشير إلى Collection Type",
|
|
33
|
+
"attribute.richtext": "نص منسق (Markdown)",
|
|
34
|
+
"attribute.richtext.description": "محرر النص المنسق الكلاسيكي",
|
|
35
|
+
"attribute.blocks": "نص منسق (Blocks)",
|
|
36
|
+
"attribute.blocks.description": "محرر النص المنسق الجديد المعتمد على JSON",
|
|
15
37
|
"attribute.text": "نص",
|
|
38
|
+
"attribute.text.description": "نص قصير أو طويل مثل العنوان أو الوصف",
|
|
39
|
+
"attribute.time": "وقت",
|
|
40
|
+
"attribute.timestamp": "طابع زمني",
|
|
41
|
+
"attribute.uid": "UID",
|
|
42
|
+
"attribute.uid.description": "معرف فريد",
|
|
43
|
+
"button.attributes.add.another": "إضافة حقل آخر",
|
|
44
|
+
"button.component.add": "إضافة مكون",
|
|
45
|
+
"button.component.create": "إنشاء مكون جديد",
|
|
46
|
+
"button.model.create": "إنشاء Collection Type جديد",
|
|
47
|
+
"button.single-types.create": "إنشاء Single Type جديد",
|
|
48
|
+
"component.repeatable": "(قابل للتكرار)",
|
|
49
|
+
"components.SelectComponents.displayed-value": "{number, plural, =0 {# مكونات} one {# مكون} other {# مكونات}} محددة",
|
|
50
|
+
"components.componentSelect.no-component-available": "لقد أضفت بالفعل جميع مكوناتك",
|
|
51
|
+
"components.componentSelect.no-component-available.with-search": "لا يوجد مكون يطابق بحثك",
|
|
52
|
+
"components.componentSelect.value-component": "{number} مكون محدد (اكتب للبحث عن مكون)",
|
|
53
|
+
"components.componentSelect.value-components": "{number} مكونات محددة",
|
|
54
|
+
configurations: configurations,
|
|
55
|
+
"contentType.apiId-plural.description": "معرف API بصيغة الجمع",
|
|
56
|
+
"contentType.apiId-plural.label": "معرف API (الجمع)",
|
|
57
|
+
"contentType.apiId-singular.description": "يتم استخدام المعرف الفريد لإنشاء مسارات API وجداول/مجموعات قواعد البيانات",
|
|
58
|
+
"contentType.apiId-singular.label": "معرف API (المفرد)",
|
|
59
|
+
"contentType.collectionName.description": "مفيد عندما يختلف اسم Content Type الخاص بك واسم الجدول الخاص بك",
|
|
60
|
+
"contentType.collectionName.label": "اسم المجموعة",
|
|
61
|
+
"contentType.displayName.label": "اسم العرض",
|
|
62
|
+
"contentType.kind.change.warning": "لقد قمت للتو بتغيير نوع المحتوى: سيتم إعادة تعيين API (سيتم استبدال المسارات ووحدات التحكم والخدمات).",
|
|
63
|
+
"error.attributeName.reserved-name": "لا يمكن استخدام هذا الاسم في نوع المحتوى الخاص بك لأنه قد يكسر وظائف أخرى",
|
|
64
|
+
"error.contentType.pluralName-used": "لا يمكن أن تكون هذه القيمة هي نفسها القيمة المفردة",
|
|
65
|
+
"error.contentType.singularName-used": "لا يمكن أن تكون هذه القيمة هي نفسها القيمة الجمع",
|
|
66
|
+
"error.contentType.singularName-equals-pluralName": "لا يمكن أن تكون هذه القيمة هي نفسها معرف API الجمع لنوع محتوى آخر.",
|
|
67
|
+
"error.contentType.pluralName-equals-singularName": "لا يمكن أن تكون هذه القيمة هي نفسها معرف API المفرد لنوع محتوى آخر.",
|
|
68
|
+
"error.contentType.pluralName-equals-collectionName": "هذه القيمة قيد الاستخدام بالفعل بواسطة نوع محتوى آخر.",
|
|
69
|
+
"error.contentTypeName.reserved-name": "لا يمكن استخدام هذا الاسم في مشروعك لأنه قد يكسر وظائف أخرى",
|
|
70
|
+
"error.validation.enum-duplicate": "القيم المكررة غير مسموح بها (يتم أخذ الأحرف الأبجدية الرقمية فقط في الاعتبار).",
|
|
71
|
+
"error.validation.enum-empty-string": "السلاسل الفارغة غير مسموح بها",
|
|
72
|
+
"error.validation.enum-regex": "هناك قيمة واحدة على الأقل غير صالحة. يجب أن تحتوي القيم على حرف أبجدي واحد على الأقل يسبق أول ظهور لرقم.",
|
|
73
|
+
"error.validation.minSupMax": "لا يمكن أن يكون الحد الأدنى أكبر من الحد الأقصى",
|
|
74
|
+
"error.validation.positive": "يجب أن يكون رقمًا موجبًا",
|
|
75
|
+
"error.validation.regex": "نمط التعبير العادي غير صالح",
|
|
76
|
+
"error.validation.relation.targetAttribute-taken": "هذا الاسم موجود في الهدف",
|
|
77
|
+
"form.attribute.component.option.add": "إضافة مكون",
|
|
78
|
+
"form.attribute.component.option.create": "إنشاء مكون جديد",
|
|
79
|
+
"form.attribute.component.option.create.description": "يتم مشاركة المكون عبر الأنواع والمكونات، وسيكون متاحًا ويمكن الوصول إليه في كل مكان.",
|
|
80
|
+
"form.attribute.component.option.repeatable": "مكون قابل للتكرار",
|
|
81
|
+
"form.attribute.component.option.repeatable.description": "الأفضل لحالات متعددة (مصفوفة) من المكونات، العلامات الوصفية، إلخ..",
|
|
82
|
+
"form.attribute.component.option.reuse-existing": "استخدام مكون موجود",
|
|
83
|
+
"form.attribute.component.option.reuse-existing.description": "إعادة استخدام مكون تم إنشاؤه بالفعل للحفاظ على بياناتك متسقة عبر أنواع المحتوى.",
|
|
84
|
+
"form.attribute.component.option.single": "مكون فردي",
|
|
85
|
+
"form.attribute.component.option.single.description": "الأفضل لتجميع الحقول مثل العنوان الكامل، المعلومات الرئيسية، إلخ...",
|
|
16
86
|
"form.attribute.item.customColumnName": "أسماء الأعمدة المخصصة",
|
|
17
87
|
"form.attribute.item.customColumnName.description": "يفيد ذلك في إعادة تسمية أسماء أعمدة قاعدة البيانات بتنسيق أكثر شمولاً لاستجابات واجهة برمجة التطبيقات ( API )",
|
|
88
|
+
"form.attribute.item.date.type.date": "تاريخ (مثال: 01/01/{currentYear})",
|
|
89
|
+
"form.attribute.item.date.type.datetime": "تاريخ ووقت (مثال: 01/01/{currentYear} 00:00 AM)",
|
|
90
|
+
"form.attribute.item.date.type.time": "وقت (مثال: 00:00 AM)",
|
|
18
91
|
"form.attribute.item.defineRelation.fieldName": "اسم الحقل",
|
|
19
92
|
"form.attribute.item.enumeration.graphql": "تجاوز الاسم لـ GraphQL",
|
|
20
93
|
"form.attribute.item.enumeration.graphql.description": "يسمح لك بتجاوز الاسم الذي تم إنشاؤه افتراضيًا لـ GraphQL",
|
|
21
|
-
"form.attribute.item.enumeration.
|
|
94
|
+
"form.attribute.item.enumeration.placeholder": "مثال:\nصباح\nظهر\nمساء",
|
|
95
|
+
"form.attribute.item.enumeration.rules": "القيم (سطر واحد لكل قيمة)",
|
|
22
96
|
"form.attribute.item.maximum": "اقصى قيمة",
|
|
23
97
|
"form.attribute.item.maximumLength": "أقصى طول",
|
|
24
98
|
"form.attribute.item.minimum": "أدنى قيمة",
|
|
25
99
|
"form.attribute.item.minimumLength": "أدنى طول",
|
|
26
100
|
"form.attribute.item.number.type": "تنسيق الرقم",
|
|
101
|
+
"form.attribute.item.number.type.biginteger": "عدد صحيح كبير (مثال: 123456789)",
|
|
27
102
|
"form.attribute.item.number.type.decimal": "عدد عشري (مثال: 2.22)",
|
|
28
103
|
"form.attribute.item.number.type.float": "عدد عائم (مثال: 3.33333333)",
|
|
29
104
|
"form.attribute.item.number.type.integer": "عدد صحيح (مثال: 10)",
|
|
105
|
+
"form.attribute.item.privateField": "حقل خاص",
|
|
106
|
+
"form.attribute.item.privateField.description": "لن يظهر هذا الحقل في استجابة API",
|
|
30
107
|
"form.attribute.item.requiredField": "الحقل مطلوب",
|
|
31
108
|
"form.attribute.item.requiredField.description": "لن تتمكن من إنشاء إدخال إذا كان هذا الحقل فارغًا",
|
|
109
|
+
"form.attribute.item.text.regex": "نمط التعبير العادي",
|
|
110
|
+
"form.attribute.item.text.regex.description": "نص التعبير العادي",
|
|
32
111
|
"form.attribute.item.uniqueField": "حقل فريد",
|
|
33
112
|
"form.attribute.item.uniqueField.description": "لن تتمكن من إنشاء إدخال إذا كان هناك إدخال حالي بمحتوى متطابق",
|
|
113
|
+
"form.attribute.item.uniqueField.v5.willBeDisabled": "حاليًا، الحقول الفريدة لا تعمل بشكل صحيح في المكونات. إذا قمت بتعطيل هذه الميزة، سيتم تعطيل الحقل حتى يتم إصلاح هذا.",
|
|
114
|
+
"form.attribute.item.uniqueField.v5.disabled": "حاليًا، الحقول الفريدة لا تعمل بشكل صحيح في المكونات. تم تعطيل هذا الحقل حتى يتم إصلاحه.",
|
|
115
|
+
"form.attribute.media.allowed-types": "حدد أنواع الوسائط المسموح بها",
|
|
116
|
+
"form.attribute.media.allowed-types.option-files": "ملفات",
|
|
117
|
+
"form.attribute.media.allowed-types.option-images": "صور",
|
|
118
|
+
"form.attribute.media.allowed-types.option-videos": "فيديوهات",
|
|
119
|
+
"form.attribute.media.option.multiple": "وسائط متعددة",
|
|
120
|
+
"form.attribute.media.option.multiple.description": "الأفضل لشرائح العرض والعروض المتحركة أو تنزيل ملفات متعددة",
|
|
121
|
+
"form.attribute.media.option.single": "وسائط فردية",
|
|
122
|
+
"form.attribute.media.option.single.description": "الأفضل للصورة الرمزية أو صورة الملف الشخصي أو الغلاف",
|
|
34
123
|
"form.attribute.settings.default": "القيمة الأفتراضية",
|
|
124
|
+
"form.attribute.text.option.long-text": "نص طويل",
|
|
125
|
+
"form.attribute.text.option.long-text.description": "الأفضل للأوصاف والسير الذاتية. البحث الدقيق معطل.",
|
|
126
|
+
"form.attribute.text.option.short-text": "نص قصير",
|
|
127
|
+
"form.attribute.text.option.short-text.description": "الأفضل للعناوين والأسماء والروابط (URL). كما يمكّن البحث الدقيق في الحقل.",
|
|
128
|
+
"form.button.add-components-to-dynamiczone": "إضافة مكونات إلى المنطقة",
|
|
129
|
+
"form.button.add-field": "إضافة حقل آخر",
|
|
130
|
+
"form.button.add-first-field-to-created-component": "إضافة الحقل الأول إلى المكون",
|
|
131
|
+
"form.button.add.field.to.collectionType": "إضافة حقل آخر إلى Collection Type هذا",
|
|
132
|
+
"form.button.add.field.to.component": "إضافة حقل آخر إلى هذا المكون",
|
|
133
|
+
"form.button.add.field.to.contentType": "إضافة حقل آخر إلى نوع المحتوى هذا",
|
|
134
|
+
"form.button.add.field.to.singleType": "إضافة حقل آخر إلى Single Type هذا",
|
|
35
135
|
"form.button.cancel": "الغاء",
|
|
136
|
+
"form.button.collection-type.description": "الأفضل للحالات المتعددة مثل المقالات والمنتجات والتعليقات وما إلى ذلك.",
|
|
137
|
+
"form.button.collection-type.name": "Collection Type",
|
|
138
|
+
"form.button.configure-component": "تكوين المكون",
|
|
139
|
+
"form.button.configure-view": "تكوين العرض",
|
|
140
|
+
"form.button.select-component": "تحديد مكون",
|
|
141
|
+
"form.button.single-type.description": "الأفضل للحالة الفردية مثل معلومات عنا، الصفحة الرئيسية، إلخ.",
|
|
142
|
+
"form.button.single-type.name": "Single Type",
|
|
36
143
|
from: from,
|
|
144
|
+
"menu.section.components.name": "المكونات",
|
|
145
|
+
"menu.section.models.name": "Collection Types",
|
|
146
|
+
"menu.section.single-types.name": "Single Types",
|
|
147
|
+
"modalForm.attribute.form.base.name.description": "لا يُسمح بوجود مسافة لاسم السمة",
|
|
148
|
+
"modalForm.attribute.form.base.name.placeholder": "مثال: slug، seoUrl، canonicalUrl",
|
|
149
|
+
"modalForm.attribute.target-field": "الحقل المرفق",
|
|
150
|
+
"modalForm.attributes.select-component": "تحديد مكون",
|
|
151
|
+
"modalForm.attributes.select-components": "تحديد المكونات",
|
|
152
|
+
"modalForm.collectionType.header-create": "إنشاء Collection Type",
|
|
153
|
+
"modalForm.component.header-create": "إنشاء مكون",
|
|
154
|
+
"modalForm.components.create-component.category.label": "حدد فئة أو أدخل اسمًا لإنشاء فئة جديدة",
|
|
155
|
+
"modalForm.components.icon.label": "أيقونة",
|
|
156
|
+
"modalForm.empty.button": "إضافة حقول مخصصة",
|
|
157
|
+
"modalForm.empty.heading": "لا شيء هنا حتى الآن.",
|
|
158
|
+
"modalForm.empty.sub-heading": "ابحث عما تبحث عنه من خلال مجموعة واسعة من الإضافات.",
|
|
159
|
+
"modalForm.editCategory.base.name.description": "لا يُسمح بوجود مسافة لاسم الفئة",
|
|
160
|
+
"modalForm.header-edit": "تعديل {name}",
|
|
161
|
+
"modalForm.header-categories": "الفئات",
|
|
162
|
+
"modalForm.header-back": "خلف",
|
|
163
|
+
"modalForm.singleType.header-create": "إنشاء Single Type",
|
|
164
|
+
"modalForm.sub-header.addComponentToDynamicZone": "إضافة مكون جديد إلى المنطقة الديناميكية",
|
|
165
|
+
"modalForm.sub-header.attribute.create": "إضافة حقل {type} جديد",
|
|
166
|
+
"modalForm.sub-header.attribute.create.step": "إضافة مكون جديد ({step}/2)",
|
|
167
|
+
"modalForm.sub-header.attribute.edit": "تعديل {name}",
|
|
168
|
+
"modalForm.sub-header.chooseAttribute.collectionType": "حدد حقلًا لـ Collection Type الخاص بك",
|
|
169
|
+
"modalForm.sub-header.chooseAttribute.component": "حدد حقلًا للمكون الخاص بك",
|
|
170
|
+
"modalForm.sub-header.chooseAttribute.singleType": "حدد حقلًا لـ Single Type الخاص بك",
|
|
171
|
+
"modalForm.custom-fields.advanced.settings.extended": "الإعدادات الموسعة",
|
|
172
|
+
"modalForm.tabs.custom": "مخصص",
|
|
173
|
+
"modalForm.tabs.custom.howToLink": "كيفية إضافة حقول مخصصة",
|
|
174
|
+
"modalForm.tabs.default": "افتراضي",
|
|
175
|
+
"modalForm.tabs.label": "علامات تبويب الأنواع الافتراضية والمخصصة",
|
|
176
|
+
"modelPage.attribute.relation-polymorphic": "علاقة (متعددة الأشكال)",
|
|
37
177
|
"modelPage.attribute.relationWith": "علاقة مع",
|
|
178
|
+
"notification.error.dynamiczone-min.validation": "مطلوب مكون واحد على الأقل في منطقة ديناميكية لتتمكن من حفظ نوع المحتوى",
|
|
179
|
+
"notification.info.autoreaload-disable": "Strapi في وضع الإنتاج، تم تعطيل تحرير أنواع المحتوى. يرجى التبديل إلى وضع التطوير عن طريق بدء الخادم الخاص بك باستخدام strapi develop.",
|
|
180
|
+
"notification.info.creating.notSaved": "يرجى حفظ عملك قبل إنشاء Collection Type أو مكون جديد",
|
|
38
181
|
"plugin.description.long": "قم بتجميع هيكل البيانات الخاص بـ API الخاص بك. إنشاء حقول وعلاقات جديدة في دقيقة واحدة فقط. يتم إنشاء الملفات وتحديثها تلقائيًا في مشروعك.",
|
|
39
182
|
"plugin.description.short": "قم بتجميع هيكل البيانات الخاص بـ API الخاص بك.",
|
|
183
|
+
"plugin.name": "Content-Type Builder",
|
|
40
184
|
"popUpForm.navContainer.advanced": "إعدادات متقدمة",
|
|
41
185
|
"popUpForm.navContainer.base": "إعدادات القاعدة",
|
|
186
|
+
"popUpWarning.bodyMessage.cancel-modifications": "هل أنت متأكد أنك تريد إلغاء تعديلاتك؟",
|
|
187
|
+
"popUpWarning.bodyMessage.cancel-modifications.with-components": "هل أنت متأكد أنك تريد إلغاء تعديلاتك؟ تم إنشاء أو تعديل بعض المكونات...",
|
|
188
|
+
"popUpWarning.bodyMessage.category.delete": "هل أنت متأكد أنك تريد حذف هذه الفئة؟ سيتم حذف جميع المكونات أيضًا.",
|
|
189
|
+
"popUpWarning.bodyMessage.component.delete": "هل أنت متأكد أنك تريد حذف هذا المكون؟",
|
|
42
190
|
"popUpWarning.bodyMessage.contentType.delete": "هل أنت متأكد من أنك تريد حذف نوع المحتوى هذا؟",
|
|
191
|
+
"popUpWarning.draft-publish.button.confirm": "نعم، تعطيل",
|
|
192
|
+
"popUpWarning.draft-publish.message": "إذا قمت بتعطيل المسودة والنشر، سيتم حذف المسودات الخاصة بك.",
|
|
193
|
+
"popUpWarning.draft-publish.second-message": "هل أنت متأكد أنك تريد تعطيله؟",
|
|
194
|
+
"prompt.unsaved": "هل أنت متأكد أنك تريد المغادرة؟ ستفقد جميع تعديلاتك.",
|
|
43
195
|
"relation.attributeName.placeholder": "مثال: المؤلف, الفئة, الوسم",
|
|
44
196
|
"relation.manyToMany": "يملك وينتم للكثير",
|
|
45
197
|
"relation.manyToOne": "يملك الكثير",
|
|
198
|
+
"relation.manyWay": "يملك الكثير",
|
|
46
199
|
"relation.oneToMany": "ينتمي للكثير",
|
|
47
200
|
"relation.oneToOne": "يتشارك بواحد",
|
|
48
201
|
"relation.oneWay": "يمتلك واحد",
|
|
49
|
-
"
|
|
202
|
+
"table.button.no-fields": "إضافة حقل جديد",
|
|
203
|
+
"table.content.create-first-content-type.title": "لا توجد أنواع محتوى",
|
|
204
|
+
"table.content.create-first-content-type.description": "قم بإنشاء أنواع المجموعات والأنواع الفردية والمكونات من أجل بناء المخطط الخاص بك.",
|
|
205
|
+
"table.content.create-first-content-type.start-with-prompt": "ابدأ بمطالبة",
|
|
206
|
+
"table.content.no-fields.collection-type": "أضف حقلك الأول إلى Collection Type هذا",
|
|
207
|
+
"table.content.no-fields.component": "أضف حقلك الأول إلى هذا المكون",
|
|
208
|
+
"IconPicker.search.placeholder.label": "البحث عن أيقونة",
|
|
209
|
+
"IconPicker.search.clear.label": "مسح بحث الأيقونة",
|
|
210
|
+
"IconPicker.search.button.label": "زر بحث الأيقونة",
|
|
211
|
+
"IconPicker.remove.tooltip": "إزالة الأيقونة المحددة",
|
|
212
|
+
"IconPicker.remove.button": "زر إزالة الأيقونة المحددة",
|
|
213
|
+
"IconPicker.emptyState.label": "لم يتم العثور على أيقونة",
|
|
214
|
+
"IconPicker.icon.label": "تحديد أيقونة {icon}",
|
|
215
|
+
"chat.tooltips.close-chat": "إغلاق الدردشة",
|
|
216
|
+
"chat.tooltips.create-chat": "محادثة جديدة",
|
|
217
|
+
"chat.tooltips.open-chat": "فتح الدردشة",
|
|
218
|
+
"chat.tooltips.send-message": "إرسال",
|
|
219
|
+
"chat.tooltips.stop-generation": "إيقاف",
|
|
220
|
+
"chat.header.default-title": "محادثة جديدة",
|
|
221
|
+
"chat.input.defaults.title": "كيف يمكنني مساعدتك؟",
|
|
222
|
+
"chat.input.defaults.generate": "إنشاء مخطط منتج",
|
|
223
|
+
"chat.input.defaults.ctb": "أخبرني عن Content-Type Builder",
|
|
224
|
+
"chat.input.defaults.strapi": "أخبرني عن Strapi",
|
|
225
|
+
"chat.input.thinking": "Strapi AI يفكر...",
|
|
226
|
+
"chat.input.placeholder": "اسأل Strapi AI...",
|
|
227
|
+
"chat.input.strapi-ai-can-make-errors": "يمكن أن يرتكب Strapi AI أخطاء.",
|
|
228
|
+
"chat.messages.error": "حدث خطأ ما.",
|
|
229
|
+
"chat.code-upload.header": "استيراد تطبيق Next.js",
|
|
230
|
+
"chat.code-upload.title": "استيراد تطبيق Next.js",
|
|
231
|
+
"chat.code-upload.description": "سيتم تحليل تطبيقك بواسطة AI. تأكد من إزالة جميع البيانات الحساسة قبل الاستيراد.",
|
|
232
|
+
"chat.code-upload.drop-zone": "أسقط ملف .zip هنا أو",
|
|
233
|
+
"chat.code-upload.drop-zone-browse": "تصفح الملفات"
|
|
50
234
|
};
|
|
51
235
|
|
|
236
|
+
exports.configurations = configurations;
|
|
52
237
|
exports.default = ar;
|
|
53
238
|
exports.from = from;
|
|
54
239
|
//# sourceMappingURL=ar.json.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ar.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ar.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|