@akbarsafari00/bonyan-content-type-builder 5.52.1-fa.2
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 +37 -0
- package/README.md +9 -0
- package/dist/admin/components/AIChat/Chat.js +437 -0
- package/dist/admin/components/AIChat/Chat.js.map +1 -0
- package/dist/admin/components/AIChat/Chat.mjs +435 -0
- package/dist/admin/components/AIChat/Chat.mjs.map +1 -0
- package/dist/admin/components/AIChat/FeedbackModal.js +238 -0
- package/dist/admin/components/AIChat/FeedbackModal.js.map +1 -0
- package/dist/admin/components/AIChat/FeedbackModal.mjs +234 -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 +379 -0
- package/dist/admin/components/AIChat/UploadFigmaModal.js.map +1 -0
- package/dist/admin/components/AIChat/UploadFigmaModal.mjs +375 -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 +168 -0
- package/dist/admin/components/AIChat/components/Dropzone.js.map +1 -0
- package/dist/admin/components/AIChat/components/Dropzone.mjs +163 -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 +122 -0
- package/dist/admin/components/AIChat/components/Input.js.map +1 -0
- package/dist/admin/components/AIChat/components/Input.mjs +118 -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 +229 -0
- package/dist/admin/components/AIChat/components/Messages/Message.js.map +1 -0
- package/dist/admin/components/AIChat/components/Messages/Message.mjs +223 -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 +61 -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 +217 -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 +79 -0
- package/dist/admin/components/AIChat/hooks/useFeedback.js.map +1 -0
- package/dist/admin/components/AIChat/hooks/useFeedback.mjs +77 -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 +174 -0
- package/dist/admin/components/AIChat/lib/aiClient.js.map +1 -0
- package/dist/admin/components/AIChat/lib/aiClient.mjs +167 -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 +211 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.js.map +1 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.mjs +202 -0
- package/dist/admin/components/AIChat/lib/transforms/schemas/toCTB.mjs.map +1 -0
- package/dist/admin/components/AIChat/providers/ChatProvider.js +192 -0
- package/dist/admin/components/AIChat/providers/ChatProvider.js.map +1 -0
- package/dist/admin/components/AIChat/providers/ChatProvider.mjs +188 -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/AllowedTypesSelect.js +82 -0
- package/dist/admin/components/AllowedTypesSelect.js.map +1 -0
- package/dist/admin/components/AllowedTypesSelect.mjs +76 -0
- package/dist/admin/components/AllowedTypesSelect.mjs.map +1 -0
- package/dist/admin/components/ApplyConditionButton.js +34 -0
- package/dist/admin/components/ApplyConditionButton.js.map +1 -0
- package/dist/admin/components/ApplyConditionButton.mjs +32 -0
- package/dist/admin/components/ApplyConditionButton.mjs.map +1 -0
- package/dist/admin/components/AttributeIcon.js +73 -0
- package/dist/admin/components/AttributeIcon.js.map +1 -0
- package/dist/admin/components/AttributeIcon.mjs +71 -0
- package/dist/admin/components/AttributeIcon.mjs.map +1 -0
- package/dist/admin/components/AttributeOptions/AttributeList.js +32 -0
- package/dist/admin/components/AttributeOptions/AttributeList.js.map +1 -0
- package/dist/admin/components/AttributeOptions/AttributeList.mjs +30 -0
- package/dist/admin/components/AttributeOptions/AttributeList.mjs.map +1 -0
- package/dist/admin/components/AttributeOptions/AttributeOption.js +92 -0
- package/dist/admin/components/AttributeOptions/AttributeOption.js.map +1 -0
- package/dist/admin/components/AttributeOptions/AttributeOption.mjs +90 -0
- package/dist/admin/components/AttributeOptions/AttributeOption.mjs.map +1 -0
- package/dist/admin/components/AttributeOptions/AttributeOptions.js +71 -0
- package/dist/admin/components/AttributeOptions/AttributeOptions.js.map +1 -0
- package/dist/admin/components/AttributeOptions/AttributeOptions.mjs +69 -0
- package/dist/admin/components/AttributeOptions/AttributeOptions.mjs.map +1 -0
- package/dist/admin/components/AttributeOptions/CustomFieldOption.js +58 -0
- package/dist/admin/components/AttributeOptions/CustomFieldOption.js.map +1 -0
- package/dist/admin/components/AttributeOptions/CustomFieldOption.mjs +56 -0
- package/dist/admin/components/AttributeOptions/CustomFieldOption.mjs.map +1 -0
- package/dist/admin/components/AttributeOptions/CustomFieldsList.js +55 -0
- package/dist/admin/components/AttributeOptions/CustomFieldsList.js.map +1 -0
- package/dist/admin/components/AttributeOptions/CustomFieldsList.mjs +53 -0
- package/dist/admin/components/AttributeOptions/CustomFieldsList.mjs.map +1 -0
- package/dist/admin/components/AttributeOptions/EmptyAttributes.js +123 -0
- package/dist/admin/components/AttributeOptions/EmptyAttributes.js.map +1 -0
- package/dist/admin/components/AttributeOptions/EmptyAttributes.mjs +100 -0
- package/dist/admin/components/AttributeOptions/EmptyAttributes.mjs.map +1 -0
- package/dist/admin/components/AttributeOptions/OptionBoxWrapper.js +19 -0
- package/dist/admin/components/AttributeOptions/OptionBoxWrapper.js.map +1 -0
- package/dist/admin/components/AttributeOptions/OptionBoxWrapper.mjs +17 -0
- package/dist/admin/components/AttributeOptions/OptionBoxWrapper.mjs.map +1 -0
- package/dist/admin/components/AttributeRow.js +403 -0
- package/dist/admin/components/AttributeRow.js.map +1 -0
- package/dist/admin/components/AttributeRow.mjs +395 -0
- package/dist/admin/components/AttributeRow.mjs.map +1 -0
- package/dist/admin/components/AutoReloadOverlayBlocker.js +216 -0
- package/dist/admin/components/AutoReloadOverlayBlocker.js.map +1 -0
- package/dist/admin/components/AutoReloadOverlayBlocker.mjs +193 -0
- package/dist/admin/components/AutoReloadOverlayBlocker.mjs.map +1 -0
- package/dist/admin/components/BooleanDefaultValueSelect.js +55 -0
- package/dist/admin/components/BooleanDefaultValueSelect.js.map +1 -0
- package/dist/admin/components/BooleanDefaultValueSelect.mjs +53 -0
- package/dist/admin/components/BooleanDefaultValueSelect.mjs.map +1 -0
- package/dist/admin/components/BooleanRadioGroup.js +27 -0
- package/dist/admin/components/BooleanRadioGroup.js.map +1 -0
- package/dist/admin/components/BooleanRadioGroup.mjs +25 -0
- package/dist/admin/components/BooleanRadioGroup.mjs.map +1 -0
- package/dist/admin/components/CTBSession/CTBSessionProvider.js +49 -0
- package/dist/admin/components/CTBSession/CTBSessionProvider.js.map +1 -0
- package/dist/admin/components/CTBSession/CTBSessionProvider.mjs +46 -0
- package/dist/admin/components/CTBSession/CTBSessionProvider.mjs.map +1 -0
- package/dist/admin/components/CTBSession/sessionContext.js +8 -0
- package/dist/admin/components/CTBSession/sessionContext.js.map +1 -0
- package/dist/admin/components/CTBSession/sessionContext.mjs +6 -0
- package/dist/admin/components/CTBSession/sessionContext.mjs.map +1 -0
- package/dist/admin/components/CTBSession/useCTBSession.js +25 -0
- package/dist/admin/components/CTBSession/useCTBSession.js.map +1 -0
- package/dist/admin/components/CTBSession/useCTBSession.mjs +23 -0
- package/dist/admin/components/CTBSession/useCTBSession.mjs.map +1 -0
- package/dist/admin/components/CTBSession/useCTBTracking.js +37 -0
- package/dist/admin/components/CTBSession/useCTBTracking.js.map +1 -0
- package/dist/admin/components/CTBSession/useCTBTracking.mjs +35 -0
- package/dist/admin/components/CTBSession/useCTBTracking.mjs.map +1 -0
- package/dist/admin/components/CheckboxWithNumberField.js +88 -0
- package/dist/admin/components/CheckboxWithNumberField.js.map +1 -0
- package/dist/admin/components/CheckboxWithNumberField.mjs +86 -0
- package/dist/admin/components/CheckboxWithNumberField.mjs.map +1 -0
- package/dist/admin/components/ComponentCard/ComponentCard.js +118 -0
- package/dist/admin/components/ComponentCard/ComponentCard.js.map +1 -0
- package/dist/admin/components/ComponentCard/ComponentCard.mjs +112 -0
- package/dist/admin/components/ComponentCard/ComponentCard.mjs.map +1 -0
- package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.js +24 -0
- package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.js.map +1 -0
- package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.mjs +22 -0
- package/dist/admin/components/ComponentCard/ComponentIcon/ComponentIcon.mjs.map +1 -0
- package/dist/admin/components/ComponentList.js +31 -0
- package/dist/admin/components/ComponentList.js.map +1 -0
- package/dist/admin/components/ComponentList.mjs +25 -0
- package/dist/admin/components/ComponentList.mjs.map +1 -0
- package/dist/admin/components/ComponentRow.js +42 -0
- package/dist/admin/components/ComponentRow.js.map +1 -0
- package/dist/admin/components/ComponentRow.mjs +40 -0
- package/dist/admin/components/ComponentRow.mjs.map +1 -0
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js +279 -0
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.js.map +1 -0
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs +277 -0
- package/dist/admin/components/ContentTypeBuilderNav/ContentTypeBuilderNav.mjs.map +1 -0
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js +157 -0
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.js.map +1 -0
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs +151 -0
- package/dist/admin/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.mjs.map +1 -0
- package/dist/admin/components/ContentTypeRadioGroup.js +29 -0
- package/dist/admin/components/ContentTypeRadioGroup.js.map +1 -0
- package/dist/admin/components/ContentTypeRadioGroup.mjs +27 -0
- package/dist/admin/components/ContentTypeRadioGroup.mjs.map +1 -0
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.js +80 -0
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.js.map +1 -0
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.mjs +78 -0
- package/dist/admin/components/CustomRadioGroup/CustomRadioGroup.mjs.map +1 -0
- package/dist/admin/components/CustomRadioGroup/Styles.js +75 -0
- package/dist/admin/components/CustomRadioGroup/Styles.js.map +1 -0
- package/dist/admin/components/CustomRadioGroup/Styles.mjs +73 -0
- package/dist/admin/components/CustomRadioGroup/Styles.mjs.map +1 -0
- package/dist/admin/components/DataManager/DataManagerContext.js +9 -0
- package/dist/admin/components/DataManager/DataManagerContext.js.map +1 -0
- package/dist/admin/components/DataManager/DataManagerContext.mjs +7 -0
- package/dist/admin/components/DataManager/DataManagerContext.mjs.map +1 -0
- package/dist/admin/components/DataManager/DataManagerProvider.js +411 -0
- package/dist/admin/components/DataManager/DataManagerProvider.js.map +1 -0
- package/dist/admin/components/DataManager/DataManagerProvider.mjs +384 -0
- package/dist/admin/components/DataManager/DataManagerProvider.mjs.map +1 -0
- package/dist/admin/components/DataManager/reducer.js +597 -0
- package/dist/admin/components/DataManager/reducer.js.map +1 -0
- package/dist/admin/components/DataManager/reducer.mjs +588 -0
- package/dist/admin/components/DataManager/reducer.mjs.map +1 -0
- package/dist/admin/components/DataManager/undoRedo.js +102 -0
- package/dist/admin/components/DataManager/undoRedo.js.map +1 -0
- package/dist/admin/components/DataManager/undoRedo.mjs +100 -0
- package/dist/admin/components/DataManager/undoRedo.mjs.map +1 -0
- package/dist/admin/components/DataManager/useDataManager.js +9 -0
- package/dist/admin/components/DataManager/useDataManager.js.map +1 -0
- package/dist/admin/components/DataManager/useDataManager.mjs +7 -0
- package/dist/admin/components/DataManager/useDataManager.mjs.map +1 -0
- package/dist/admin/components/DataManager/useServerRestartWatcher.js +35 -0
- package/dist/admin/components/DataManager/useServerRestartWatcher.js.map +1 -0
- package/dist/admin/components/DataManager/useServerRestartWatcher.mjs +33 -0
- package/dist/admin/components/DataManager/useServerRestartWatcher.mjs.map +1 -0
- package/dist/admin/components/DataManager/utils/cleanData.js +220 -0
- package/dist/admin/components/DataManager/utils/cleanData.js.map +1 -0
- package/dist/admin/components/DataManager/utils/cleanData.mjs +211 -0
- package/dist/admin/components/DataManager/utils/cleanData.mjs.map +1 -0
- package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.js +38 -0
- package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.js.map +1 -0
- package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.mjs +31 -0
- package/dist/admin/components/DataManager/utils/retrieveComponentsThatHaveComponents.mjs.map +1 -0
- package/dist/admin/components/DataManager/utils/retrieveNestedComponents.js +45 -0
- package/dist/admin/components/DataManager/utils/retrieveNestedComponents.js.map +1 -0
- package/dist/admin/components/DataManager/utils/retrieveNestedComponents.mjs +43 -0
- package/dist/admin/components/DataManager/utils/retrieveNestedComponents.mjs.map +1 -0
- package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.js +21 -0
- package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.js.map +1 -0
- package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.mjs +15 -0
- package/dist/admin/components/DataManager/utils/retrieveSpecificInfoFromComponents.mjs.map +1 -0
- package/dist/admin/components/DisplayedType.js +48 -0
- package/dist/admin/components/DisplayedType.js.map +1 -0
- package/dist/admin/components/DisplayedType.mjs +46 -0
- package/dist/admin/components/DisplayedType.mjs.map +1 -0
- package/dist/admin/components/DraftAndPublishToggle.js +86 -0
- package/dist/admin/components/DraftAndPublishToggle.js.map +1 -0
- package/dist/admin/components/DraftAndPublishToggle.mjs +84 -0
- package/dist/admin/components/DraftAndPublishToggle.mjs.map +1 -0
- package/dist/admin/components/DynamicZoneList.js +122 -0
- package/dist/admin/components/DynamicZoneList.js.map +1 -0
- package/dist/admin/components/DynamicZoneList.mjs +120 -0
- package/dist/admin/components/DynamicZoneList.mjs.map +1 -0
- package/dist/admin/components/ExitPrompt.js +50 -0
- package/dist/admin/components/ExitPrompt.js.map +1 -0
- package/dist/admin/components/ExitPrompt.mjs +48 -0
- package/dist/admin/components/ExitPrompt.mjs.map +1 -0
- package/dist/admin/components/Footers.js +95 -0
- package/dist/admin/components/Footers.js.map +1 -0
- package/dist/admin/components/Footers.mjs +92 -0
- package/dist/admin/components/Footers.mjs.map +1 -0
- package/dist/admin/components/FormModal/FormModal.js +1148 -0
- package/dist/admin/components/FormModal/FormModal.js.map +1 -0
- package/dist/admin/components/FormModal/FormModal.mjs +1120 -0
- package/dist/admin/components/FormModal/FormModal.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/ConditionForm.js +454 -0
- package/dist/admin/components/FormModal/attributes/ConditionForm.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/ConditionForm.mjs +433 -0
- package/dist/admin/components/FormModal/attributes/ConditionForm.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/advancedForm.js +526 -0
- package/dist/admin/components/FormModal/attributes/advancedForm.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/advancedForm.mjs +524 -0
- package/dist/admin/components/FormModal/attributes/advancedForm.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/attributeOptions.js +97 -0
- package/dist/admin/components/FormModal/attributes/attributeOptions.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/attributeOptions.mjs +95 -0
- package/dist/admin/components/FormModal/attributes/attributeOptions.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/baseForm.js +482 -0
- package/dist/admin/components/FormModal/attributes/baseForm.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/baseForm.mjs +480 -0
- package/dist/admin/components/FormModal/attributes/baseForm.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/commonBaseForm.js +17 -0
- package/dist/admin/components/FormModal/attributes/commonBaseForm.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/commonBaseForm.mjs +15 -0
- package/dist/admin/components/FormModal/attributes/commonBaseForm.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/form.js +12 -0
- package/dist/admin/components/FormModal/attributes/form.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/form.mjs +10 -0
- package/dist/admin/components/FormModal/attributes/form.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/nameField.js +19 -0
- package/dist/admin/components/FormModal/attributes/nameField.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/nameField.mjs +17 -0
- package/dist/admin/components/FormModal/attributes/nameField.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/types.js +314 -0
- package/dist/admin/components/FormModal/attributes/types.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/types.mjs +289 -0
- package/dist/admin/components/FormModal/attributes/types.mjs.map +1 -0
- package/dist/admin/components/FormModal/attributes/validation/common.js +160 -0
- package/dist/admin/components/FormModal/attributes/validation/common.js.map +1 -0
- package/dist/admin/components/FormModal/attributes/validation/common.mjs +129 -0
- package/dist/admin/components/FormModal/attributes/validation/common.mjs.map +1 -0
- package/dist/admin/components/FormModal/component/componentField.js +40 -0
- package/dist/admin/components/FormModal/component/componentField.js.map +1 -0
- package/dist/admin/components/FormModal/component/componentField.mjs +38 -0
- package/dist/admin/components/FormModal/component/componentField.mjs.map +1 -0
- package/dist/admin/components/FormModal/component/componentForm.js +53 -0
- package/dist/admin/components/FormModal/component/componentForm.js.map +1 -0
- package/dist/admin/components/FormModal/component/componentForm.mjs +51 -0
- package/dist/admin/components/FormModal/component/componentForm.mjs.map +1 -0
- package/dist/admin/components/FormModal/component/createComponentSchema.js +66 -0
- package/dist/admin/components/FormModal/component/createComponentSchema.js.map +1 -0
- package/dist/admin/components/FormModal/component/createComponentSchema.mjs +44 -0
- package/dist/admin/components/FormModal/component/createComponentSchema.mjs.map +1 -0
- package/dist/admin/components/FormModal/contentType/contentTypeForm.js +169 -0
- package/dist/admin/components/FormModal/contentType/contentTypeForm.js.map +1 -0
- package/dist/admin/components/FormModal/contentType/contentTypeForm.mjs +167 -0
- package/dist/admin/components/FormModal/contentType/contentTypeForm.mjs.map +1 -0
- package/dist/admin/components/FormModal/contentType/createContentTypeSchema.js +171 -0
- package/dist/admin/components/FormModal/contentType/createContentTypeSchema.js.map +1 -0
- package/dist/admin/components/FormModal/contentType/createContentTypeSchema.mjs +149 -0
- package/dist/admin/components/FormModal/contentType/createContentTypeSchema.mjs.map +1 -0
- package/dist/admin/components/FormModal/dynamiczoneForm.js +68 -0
- package/dist/admin/components/FormModal/dynamiczoneForm.js.map +1 -0
- package/dist/admin/components/FormModal/dynamiczoneForm.mjs +66 -0
- package/dist/admin/components/FormModal/dynamiczoneForm.mjs.map +1 -0
- package/dist/admin/components/FormModal/forms/forms.js +280 -0
- package/dist/admin/components/FormModal/forms/forms.js.map +1 -0
- package/dist/admin/components/FormModal/forms/forms.mjs +278 -0
- package/dist/admin/components/FormModal/forms/forms.mjs.map +1 -0
- package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.js +21 -0
- package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.js.map +1 -0
- package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.mjs +19 -0
- package/dist/admin/components/FormModal/forms/utils/addItemsToFormSection.mjs.map +1 -0
- package/dist/admin/components/FormModal/forms/utils/createCollectionName.js +17 -0
- package/dist/admin/components/FormModal/forms/utils/createCollectionName.js.map +1 -0
- package/dist/admin/components/FormModal/forms/utils/createCollectionName.mjs +11 -0
- package/dist/admin/components/FormModal/forms/utils/createCollectionName.mjs.map +1 -0
- package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.js +10 -0
- package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.js.map +1 -0
- package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.mjs +8 -0
- package/dist/admin/components/FormModal/forms/utils/getUsedAttributeNames.mjs.map +1 -0
- package/dist/admin/components/FormModal/reducer.js +343 -0
- package/dist/admin/components/FormModal/reducer.js.map +1 -0
- package/dist/admin/components/FormModal/reducer.mjs +333 -0
- package/dist/admin/components/FormModal/reducer.mjs.map +1 -0
- package/dist/admin/components/FormModal/utils/canEditContentType.js +27 -0
- package/dist/admin/components/FormModal/utils/canEditContentType.js.map +1 -0
- package/dist/admin/components/FormModal/utils/canEditContentType.mjs +25 -0
- package/dist/admin/components/FormModal/utils/canEditContentType.mjs.map +1 -0
- package/dist/admin/components/FormModal/utils/createUid.js +16 -0
- package/dist/admin/components/FormModal/utils/createUid.js.map +1 -0
- package/dist/admin/components/FormModal/utils/createUid.mjs +13 -0
- package/dist/admin/components/FormModal/utils/createUid.mjs.map +1 -0
- package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.js +18 -0
- package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.js.map +1 -0
- package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.mjs +16 -0
- package/dist/admin/components/FormModal/utils/customFieldDefaultOptionsReducer.mjs.map +1 -0
- package/dist/admin/components/FormModal/utils/getAttributesToDisplay.js +56 -0
- package/dist/admin/components/FormModal/utils/getAttributesToDisplay.js.map +1 -0
- package/dist/admin/components/FormModal/utils/getAttributesToDisplay.mjs +54 -0
- package/dist/admin/components/FormModal/utils/getAttributesToDisplay.mjs.map +1 -0
- package/dist/admin/components/FormModal/utils/getFormInputNames.js +17 -0
- package/dist/admin/components/FormModal/utils/getFormInputNames.js.map +1 -0
- package/dist/admin/components/FormModal/utils/getFormInputNames.mjs +15 -0
- package/dist/admin/components/FormModal/utils/getFormInputNames.mjs.map +1 -0
- package/dist/admin/components/FormModal/utils/relations.js +15 -0
- package/dist/admin/components/FormModal/utils/relations.js.map +1 -0
- package/dist/admin/components/FormModal/utils/relations.mjs +12 -0
- package/dist/admin/components/FormModal/utils/relations.mjs.map +1 -0
- package/dist/admin/components/FormModalEndActions.js +289 -0
- package/dist/admin/components/FormModalEndActions.js.map +1 -0
- package/dist/admin/components/FormModalEndActions.mjs +287 -0
- package/dist/admin/components/FormModalEndActions.mjs.map +1 -0
- package/dist/admin/components/FormModalHeader.js +138 -0
- package/dist/admin/components/FormModalHeader.js.map +1 -0
- package/dist/admin/components/FormModalHeader.mjs +132 -0
- package/dist/admin/components/FormModalHeader.mjs.map +1 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.js +29 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.js.map +1 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.mjs +7 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationContext.mjs.map +1 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js +218 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.js.map +1 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs +215 -0
- package/dist/admin/components/FormModalNavigation/FormModalNavigationProvider.mjs.map +1 -0
- package/dist/admin/components/FormModalNavigation/useFormModalNavigation.js +9 -0
- package/dist/admin/components/FormModalNavigation/useFormModalNavigation.js.map +1 -0
- package/dist/admin/components/FormModalNavigation/useFormModalNavigation.mjs +7 -0
- package/dist/admin/components/FormModalNavigation/useFormModalNavigation.mjs.map +1 -0
- package/dist/admin/components/FormModalSubHeader.js +74 -0
- package/dist/admin/components/FormModalSubHeader.js.map +1 -0
- package/dist/admin/components/FormModalSubHeader.mjs +67 -0
- package/dist/admin/components/FormModalSubHeader.mjs.map +1 -0
- package/dist/admin/components/GenericInputs.js +552 -0
- package/dist/admin/components/GenericInputs.js.map +1 -0
- package/dist/admin/components/GenericInputs.mjs +526 -0
- package/dist/admin/components/GenericInputs.mjs.map +1 -0
- package/dist/admin/components/IconPicker/IconPicker.js +201 -0
- package/dist/admin/components/IconPicker/IconPicker.js.map +1 -0
- package/dist/admin/components/IconPicker/IconPicker.mjs +199 -0
- package/dist/admin/components/IconPicker/IconPicker.mjs.map +1 -0
- package/dist/admin/components/IconPicker/constants.js +159 -0
- package/dist/admin/components/IconPicker/constants.js.map +1 -0
- package/dist/admin/components/IconPicker/constants.mjs +136 -0
- package/dist/admin/components/IconPicker/constants.mjs.map +1 -0
- package/dist/admin/components/List.js +199 -0
- package/dist/admin/components/List.js.map +1 -0
- package/dist/admin/components/List.mjs +196 -0
- package/dist/admin/components/List.mjs.map +1 -0
- package/dist/admin/components/PluralName.js +82 -0
- package/dist/admin/components/PluralName.js.map +1 -0
- package/dist/admin/components/PluralName.mjs +76 -0
- package/dist/admin/components/PluralName.mjs.map +1 -0
- package/dist/admin/components/Relation/Relation.js +48 -0
- package/dist/admin/components/Relation/Relation.js.map +1 -0
- package/dist/admin/components/Relation/Relation.mjs +46 -0
- package/dist/admin/components/Relation/Relation.mjs.map +1 -0
- package/dist/admin/components/Relation/RelationField/RelationField.js +52 -0
- package/dist/admin/components/Relation/RelationField/RelationField.js.map +1 -0
- package/dist/admin/components/Relation/RelationField/RelationField.mjs +50 -0
- package/dist/admin/components/Relation/RelationField/RelationField.mjs.map +1 -0
- package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js +75 -0
- package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.js.map +1 -0
- package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs +73 -0
- package/dist/admin/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.mjs.map +1 -0
- package/dist/admin/components/Relation/RelationNaturePicker/Components.js +59 -0
- package/dist/admin/components/Relation/RelationNaturePicker/Components.js.map +1 -0
- package/dist/admin/components/Relation/RelationNaturePicker/Components.mjs +55 -0
- package/dist/admin/components/Relation/RelationNaturePicker/Components.mjs.map +1 -0
- package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js +153 -0
- package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.js.map +1 -0
- package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs +145 -0
- package/dist/admin/components/Relation/RelationNaturePicker/RelationNaturePicker.mjs.map +1 -0
- package/dist/admin/components/SelectCategory.js +66 -0
- package/dist/admin/components/SelectCategory.js.map +1 -0
- package/dist/admin/components/SelectCategory.mjs +64 -0
- package/dist/admin/components/SelectCategory.mjs.map +1 -0
- package/dist/admin/components/SelectComponent.js +87 -0
- package/dist/admin/components/SelectComponent.js.map +1 -0
- package/dist/admin/components/SelectComponent.mjs +85 -0
- package/dist/admin/components/SelectComponent.mjs.map +1 -0
- package/dist/admin/components/SelectComponents.js +73 -0
- package/dist/admin/components/SelectComponents.js.map +1 -0
- package/dist/admin/components/SelectComponents.mjs +71 -0
- package/dist/admin/components/SelectComponents.mjs.map +1 -0
- package/dist/admin/components/SelectDateType.js +62 -0
- package/dist/admin/components/SelectDateType.js.map +1 -0
- package/dist/admin/components/SelectDateType.mjs +60 -0
- package/dist/admin/components/SelectDateType.mjs.map +1 -0
- package/dist/admin/components/SelectNumber.js +107 -0
- package/dist/admin/components/SelectNumber.js.map +1 -0
- package/dist/admin/components/SelectNumber.mjs +105 -0
- package/dist/admin/components/SelectNumber.mjs.map +1 -0
- package/dist/admin/components/SingularName.js +72 -0
- package/dist/admin/components/SingularName.js.map +1 -0
- package/dist/admin/components/SingularName.mjs +70 -0
- package/dist/admin/components/SingularName.mjs.map +1 -0
- package/dist/admin/components/Status.js +73 -0
- package/dist/admin/components/Status.js.map +1 -0
- package/dist/admin/components/Status.mjs +70 -0
- package/dist/admin/components/Status.mjs.map +1 -0
- package/dist/admin/components/TabForm.js +176 -0
- package/dist/admin/components/TabForm.js.map +1 -0
- package/dist/admin/components/TabForm.mjs +170 -0
- package/dist/admin/components/TabForm.mjs.map +1 -0
- package/dist/admin/components/TextareaEnum.js +58 -0
- package/dist/admin/components/TextareaEnum.js.map +1 -0
- package/dist/admin/components/TextareaEnum.mjs +56 -0
- package/dist/admin/components/TextareaEnum.mjs.map +1 -0
- package/dist/admin/constants.js +19 -0
- package/dist/admin/constants.js.map +1 -0
- package/dist/admin/constants.mjs +16 -0
- package/dist/admin/constants.mjs.map +1 -0
- package/dist/admin/icons/Curve.js +47 -0
- package/dist/admin/icons/Curve.js.map +1 -0
- package/dist/admin/icons/Curve.mjs +45 -0
- package/dist/admin/icons/Curve.mjs.map +1 -0
- package/dist/admin/index.js +95 -0
- package/dist/admin/index.js.map +1 -0
- package/dist/admin/index.mjs +87 -0
- package/dist/admin/index.mjs.map +1 -0
- package/dist/admin/pages/App/index.js +114 -0
- package/dist/admin/pages/App/index.js.map +1 -0
- package/dist/admin/pages/App/index.mjs +110 -0
- package/dist/admin/pages/App/index.mjs.map +1 -0
- package/dist/admin/pages/ListView/EmptyState.js +110 -0
- package/dist/admin/pages/ListView/EmptyState.js.map +1 -0
- package/dist/admin/pages/ListView/EmptyState.mjs +108 -0
- package/dist/admin/pages/ListView/EmptyState.mjs.map +1 -0
- package/dist/admin/pages/ListView/LinkToCMSettingsView.js +90 -0
- package/dist/admin/pages/ListView/LinkToCMSettingsView.js.map +1 -0
- package/dist/admin/pages/ListView/LinkToCMSettingsView.mjs +88 -0
- package/dist/admin/pages/ListView/LinkToCMSettingsView.mjs.map +1 -0
- package/dist/admin/pages/ListView/ListView.js +181 -0
- package/dist/admin/pages/ListView/ListView.js.map +1 -0
- package/dist/admin/pages/ListView/ListView.mjs +175 -0
- package/dist/admin/pages/ListView/ListView.mjs.map +1 -0
- package/dist/admin/pluginId.js +6 -0
- package/dist/admin/pluginId.js.map +1 -0
- package/dist/admin/pluginId.mjs +4 -0
- package/dist/admin/pluginId.mjs.map +1 -0
- package/dist/admin/reducers.js +12 -0
- package/dist/admin/reducers.js.map +1 -0
- package/dist/admin/reducers.mjs +10 -0
- package/dist/admin/reducers.mjs.map +1 -0
- 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 +20 -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 +34 -0
- package/dist/admin/src/components/AIChat/components/FloatingPanel.d.ts +33 -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 +48 -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 +4 -0
- package/dist/admin/src/components/AIChat/components/ResizableTextArea.d.ts +8 -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 +4 -0
- package/dist/admin/src/components/AIChat/components/icons/StopIcon.d.ts +4 -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 +7 -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 +22 -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/AllowedTypesSelect.d.ts +9 -0
- package/dist/admin/src/components/ApplyConditionButton.d.ts +8 -0
- package/dist/admin/src/components/AttributeIcon.d.ts +9 -0
- package/dist/admin/src/components/AttributeOptions/AttributeList.d.ts +6 -0
- package/dist/admin/src/components/AttributeOptions/AttributeOption.d.ts +11 -0
- package/dist/admin/src/components/AttributeOptions/AttributeOptions.d.ts +13 -0
- package/dist/admin/src/components/AttributeOptions/CustomFieldOption.d.ts +22 -0
- package/dist/admin/src/components/AttributeOptions/CustomFieldsList.d.ts +1 -0
- package/dist/admin/src/components/AttributeOptions/EmptyAttributes.d.ts +2 -0
- package/dist/admin/src/components/AttributeOptions/OptionBoxWrapper.d.ts +13 -0
- package/dist/admin/src/components/AttributeRow.d.ts +32 -0
- package/dist/admin/src/components/AutoReloadOverlayBlocker.d.ts +25 -0
- package/dist/admin/src/components/BooleanDefaultValueSelect.d.ts +20 -0
- package/dist/admin/src/components/BooleanRadioGroup.d.ts +8 -0
- package/dist/admin/src/components/CTBSession/CTBSessionProvider.d.ts +26 -0
- package/dist/admin/src/components/CTBSession/ctbSession.d.ts +5 -0
- package/dist/admin/src/components/CTBSession/sessionContext.d.ts +24 -0
- package/dist/admin/src/components/CTBSession/useCTBSession.d.ts +12 -0
- package/dist/admin/src/components/CTBSession/useCTBTracking.d.ts +13 -0
- package/dist/admin/src/components/CheckboxWithNumberField.d.ts +13 -0
- package/dist/admin/src/components/ComponentCard/ComponentCard.d.ts +14 -0
- package/dist/admin/src/components/ComponentCard/ComponentIcon/ComponentIcon.d.ts +7 -0
- package/dist/admin/src/components/ComponentCard/ComponentIcon/index.d.ts +1 -0
- package/dist/admin/src/components/ComponentCard/index.d.ts +1 -0
- package/dist/admin/src/components/ComponentList.d.ts +8 -0
- package/dist/admin/src/components/ComponentRow.d.ts +19 -0
- package/dist/admin/src/components/ContentTypeBuilderNav/ContentTypeBuilderNav.d.ts +1 -0
- package/dist/admin/src/components/ContentTypeBuilderNav/useContentTypeBuilderMenu.d.ts +36 -0
- package/dist/admin/src/components/ContentTypeRadioGroup.d.ts +16 -0
- package/dist/admin/src/components/CustomRadioGroup/CustomRadioGroup.d.ts +16 -0
- package/dist/admin/src/components/CustomRadioGroup/Styles.d.ts +6 -0
- package/dist/admin/src/components/CustomRadioGroup/index.d.ts +1 -0
- package/dist/admin/src/components/DataManager/DataManagerContext.d.ts +139 -0
- package/dist/admin/src/components/DataManager/DataManagerProvider.d.ts +6 -0
- package/dist/admin/src/components/DataManager/reducer.d.ts +282 -0
- package/dist/admin/src/components/DataManager/undoRedo.d.ts +23 -0
- package/dist/admin/src/components/DataManager/useDataManager.d.ts +1 -0
- package/dist/admin/src/components/DataManager/useServerRestartWatcher.d.ts +1 -0
- package/dist/admin/src/components/DataManager/utils/cleanData.d.ts +333 -0
- package/dist/admin/src/components/DataManager/utils/formatSchemas.d.ts +9 -0
- package/dist/admin/src/components/DataManager/utils/retrieveComponentsThatHaveComponents.d.ts +12 -0
- package/dist/admin/src/components/DataManager/utils/retrieveNestedComponents.d.ts +8 -0
- package/dist/admin/src/components/DataManager/utils/retrieveSpecificInfoFromComponents.d.ts +2 -0
- package/dist/admin/src/components/DisplayedType.d.ts +8 -0
- package/dist/admin/src/components/DraftAndPublishToggle.d.ts +22 -0
- package/dist/admin/src/components/DynamicZoneList.d.ts +13 -0
- package/dist/admin/src/components/ExitPrompt.d.ts +1 -0
- package/dist/admin/src/components/Footers.d.ts +13 -0
- package/dist/admin/src/components/FormModal/FormModal.d.ts +1 -0
- package/dist/admin/src/components/FormModal/attributes/ConditionForm.d.ts +24 -0
- package/dist/admin/src/components/FormModal/attributes/advancedForm.d.ts +696 -0
- package/dist/admin/src/components/FormModal/attributes/attributeOptions.d.ts +90 -0
- package/dist/admin/src/components/FormModal/attributes/baseForm.d.ts +376 -0
- package/dist/admin/src/components/FormModal/attributes/commonBaseForm.d.ts +17 -0
- package/dist/admin/src/components/FormModal/attributes/form.d.ts +1072 -0
- package/dist/admin/src/components/FormModal/attributes/nameField.d.ts +12 -0
- package/dist/admin/src/components/FormModal/attributes/types.d.ts +327 -0
- package/dist/admin/src/components/FormModal/attributes/validation/common.d.ts +42 -0
- package/dist/admin/src/components/FormModal/component/componentField.d.ts +20 -0
- package/dist/admin/src/components/FormModal/component/componentForm.d.ts +25 -0
- package/dist/admin/src/components/FormModal/component/createComponentSchema.d.ts +10 -0
- package/dist/admin/src/components/FormModal/contentType/contentTypeForm.d.ts +116 -0
- package/dist/admin/src/components/FormModal/contentType/createContentTypeSchema.d.ts +22 -0
- package/dist/admin/src/components/FormModal/dynamiczoneForm.d.ts +68 -0
- package/dist/admin/src/components/FormModal/forms/forms.d.ts +204 -0
- package/dist/admin/src/components/FormModal/forms/utils/addItemsToFormSection.d.ts +38 -0
- package/dist/admin/src/components/FormModal/forms/utils/createCollectionName.d.ts +2 -0
- package/dist/admin/src/components/FormModal/forms/utils/getUsedAttributeNames.d.ts +22 -0
- package/dist/admin/src/components/FormModal/reducer.d.ts +188 -0
- package/dist/admin/src/components/FormModal/utils/canEditContentType.d.ts +18 -0
- package/dist/admin/src/components/FormModal/utils/createUid.d.ts +4 -0
- package/dist/admin/src/components/FormModal/utils/customFieldDefaultOptionsReducer.d.ts +11 -0
- package/dist/admin/src/components/FormModal/utils/getAttributesToDisplay.d.ts +4 -0
- package/dist/admin/src/components/FormModal/utils/getFormInputNames.d.ts +8 -0
- package/dist/admin/src/components/FormModal/utils/relations.d.ts +4 -0
- package/dist/admin/src/components/FormModalEndActions.d.ts +38 -0
- package/dist/admin/src/components/FormModalHeader.d.ts +18 -0
- package/dist/admin/src/components/FormModalNavigation/FormModalNavigationContext.d.ts +19 -0
- package/dist/admin/src/components/FormModalNavigation/FormModalNavigationProvider.d.ts +69 -0
- package/dist/admin/src/components/FormModalNavigation/useFormModalNavigation.d.ts +1 -0
- package/dist/admin/src/components/FormModalSubHeader.d.ts +22 -0
- package/dist/admin/src/components/GenericInputs.d.ts +90 -0
- package/dist/admin/src/components/IconPicker/IconPicker.d.ts +8 -0
- package/dist/admin/src/components/IconPicker/constants.d.ts +5 -0
- package/dist/admin/src/components/IconPicker/index.d.ts +1 -0
- package/dist/admin/src/components/List.d.ts +26 -0
- package/dist/admin/src/components/PluralName.d.ts +14 -0
- package/dist/admin/src/components/Relation/Relation.d.ts +19 -0
- package/dist/admin/src/components/Relation/RelationField/RelationField.d.ts +15 -0
- package/dist/admin/src/components/Relation/RelationField/RelationTargetPicker/RelationTargetPicker.d.ts +7 -0
- package/dist/admin/src/components/Relation/RelationNaturePicker/Components.d.ts +37 -0
- package/dist/admin/src/components/Relation/RelationNaturePicker/RelationNaturePicker.d.ts +9 -0
- package/dist/admin/src/components/SelectCategory.d.ts +12 -0
- package/dist/admin/src/components/SelectComponent.d.ts +21 -0
- package/dist/admin/src/components/SelectComponents.d.ts +21 -0
- package/dist/admin/src/components/SelectDateType.d.ts +38 -0
- package/dist/admin/src/components/SelectNumber.d.ts +36 -0
- package/dist/admin/src/components/SingularName.d.ts +14 -0
- package/dist/admin/src/components/Status.d.ts +6 -0
- package/dist/admin/src/components/TabForm.d.ts +40 -0
- package/dist/admin/src/components/TextareaEnum.d.ts +20 -0
- package/dist/admin/src/constants.d.ts +7 -0
- package/dist/admin/src/exports.d.ts +15 -0
- package/dist/admin/src/icons/Curve.d.ts +6 -0
- package/dist/admin/src/index.d.ts +18 -0
- package/dist/admin/src/pages/App/index.d.ts +2 -0
- package/dist/admin/src/pages/ListView/EmptyState.d.ts +1 -0
- package/dist/admin/src/pages/ListView/LinkToCMSettingsView.d.ts +7 -0
- package/dist/admin/src/pages/ListView/ListView.d.ts +2 -0
- package/dist/admin/src/pluginId.d.ts +1 -0
- package/dist/admin/src/reducers.d.ts +4 -0
- package/dist/admin/src/types.d.ts +63 -0
- package/dist/admin/src/utils/conditions.d.ts +26 -0
- package/dist/admin/src/utils/findAttribute.d.ts +2 -0
- package/dist/admin/src/utils/formAPI.d.ts +48 -0
- package/dist/admin/src/utils/getAttributeDisplayedType.d.ts +1 -0
- package/dist/admin/src/utils/getMaxDepth.d.ts +23 -0
- package/dist/admin/src/utils/getRelationType.d.ts +6 -0
- package/dist/admin/src/utils/getTrad.d.ts +1 -0
- package/dist/admin/src/utils/getYupInnerErrors.d.ts +7 -0
- package/dist/admin/src/utils/index.d.ts +2 -0
- package/dist/admin/src/utils/isAllowedContentTypesForRelations.d.ts +2 -0
- package/dist/admin/src/utils/makeUnique.d.ts +2 -0
- package/dist/admin/src/utils/nameToSlug.d.ts +1 -0
- package/dist/admin/src/utils/parseDateValue.d.ts +1 -0
- package/dist/admin/src/utils/parseNumberInputValue.d.ts +1 -0
- package/dist/admin/src/utils/prefixPluginTranslations.d.ts +3 -0
- package/dist/admin/src/utils/startsWithANumber.d.ts +1 -0
- package/dist/admin/src/utils/timeFormat.d.ts +16 -0
- package/dist/admin/src/utils/toRegressedEnumValue.d.ts +1 -0
- package/dist/admin/translations/ar.json.js +239 -0
- package/dist/admin/translations/ar.json.js.map +1 -0
- package/dist/admin/translations/ar.json.mjs +233 -0
- package/dist/admin/translations/ar.json.mjs.map +1 -0
- package/dist/admin/translations/cs.json.js +298 -0
- package/dist/admin/translations/cs.json.js.map +1 -0
- package/dist/admin/translations/cs.json.mjs +292 -0
- package/dist/admin/translations/cs.json.mjs.map +1 -0
- package/dist/admin/translations/da.json.js +185 -0
- package/dist/admin/translations/da.json.js.map +1 -0
- package/dist/admin/translations/da.json.mjs +179 -0
- package/dist/admin/translations/da.json.mjs.map +1 -0
- package/dist/admin/translations/de.json.js +298 -0
- package/dist/admin/translations/de.json.js.map +1 -0
- package/dist/admin/translations/de.json.mjs +292 -0
- package/dist/admin/translations/de.json.mjs.map +1 -0
- package/dist/admin/translations/en.json.js +300 -0
- package/dist/admin/translations/en.json.js.map +1 -0
- package/dist/admin/translations/en.json.mjs +294 -0
- package/dist/admin/translations/en.json.mjs.map +1 -0
- package/dist/admin/translations/es.json.js +240 -0
- package/dist/admin/translations/es.json.js.map +1 -0
- package/dist/admin/translations/es.json.mjs +234 -0
- package/dist/admin/translations/es.json.mjs.map +1 -0
- package/dist/admin/translations/fa.json.js +300 -0
- package/dist/admin/translations/fa.json.js.map +1 -0
- package/dist/admin/translations/fa.json.mjs +294 -0
- package/dist/admin/translations/fa.json.mjs.map +1 -0
- package/dist/admin/translations/fr.json.js +244 -0
- package/dist/admin/translations/fr.json.js.map +1 -0
- package/dist/admin/translations/fr.json.mjs +238 -0
- package/dist/admin/translations/fr.json.mjs.map +1 -0
- package/dist/admin/translations/id.json.js +239 -0
- package/dist/admin/translations/id.json.js.map +1 -0
- package/dist/admin/translations/id.json.mjs +233 -0
- package/dist/admin/translations/id.json.mjs.map +1 -0
- package/dist/admin/translations/it.json.js +239 -0
- package/dist/admin/translations/it.json.js.map +1 -0
- package/dist/admin/translations/it.json.mjs +233 -0
- package/dist/admin/translations/it.json.mjs.map +1 -0
- package/dist/admin/translations/ja.json.js +298 -0
- package/dist/admin/translations/ja.json.js.map +1 -0
- package/dist/admin/translations/ja.json.mjs +292 -0
- package/dist/admin/translations/ja.json.mjs.map +1 -0
- package/dist/admin/translations/ko.json.js +302 -0
- package/dist/admin/translations/ko.json.js.map +1 -0
- package/dist/admin/translations/ko.json.mjs +296 -0
- package/dist/admin/translations/ko.json.mjs.map +1 -0
- package/dist/admin/translations/ms.json.js +239 -0
- package/dist/admin/translations/ms.json.js.map +1 -0
- package/dist/admin/translations/ms.json.mjs +233 -0
- package/dist/admin/translations/ms.json.mjs.map +1 -0
- package/dist/admin/translations/nl.json.js +301 -0
- package/dist/admin/translations/nl.json.js.map +1 -0
- package/dist/admin/translations/nl.json.mjs +295 -0
- package/dist/admin/translations/nl.json.mjs.map +1 -0
- package/dist/admin/translations/pl.json.js +298 -0
- package/dist/admin/translations/pl.json.js.map +1 -0
- package/dist/admin/translations/pl.json.mjs +292 -0
- package/dist/admin/translations/pl.json.mjs.map +1 -0
- package/dist/admin/translations/pt-BR.json.js +239 -0
- package/dist/admin/translations/pt-BR.json.js.map +1 -0
- package/dist/admin/translations/pt-BR.json.mjs +233 -0
- package/dist/admin/translations/pt-BR.json.mjs.map +1 -0
- package/dist/admin/translations/pt.json.js +239 -0
- package/dist/admin/translations/pt.json.js.map +1 -0
- package/dist/admin/translations/pt.json.mjs +233 -0
- package/dist/admin/translations/pt.json.mjs.map +1 -0
- package/dist/admin/translations/ru.json.js +240 -0
- package/dist/admin/translations/ru.json.js.map +1 -0
- package/dist/admin/translations/ru.json.mjs +234 -0
- package/dist/admin/translations/ru.json.mjs.map +1 -0
- package/dist/admin/translations/sk.json.js +298 -0
- package/dist/admin/translations/sk.json.js.map +1 -0
- package/dist/admin/translations/sk.json.mjs +292 -0
- package/dist/admin/translations/sk.json.mjs.map +1 -0
- package/dist/admin/translations/sv.json.js +224 -0
- package/dist/admin/translations/sv.json.js.map +1 -0
- package/dist/admin/translations/sv.json.mjs +218 -0
- package/dist/admin/translations/sv.json.mjs.map +1 -0
- package/dist/admin/translations/th.json.js +187 -0
- package/dist/admin/translations/th.json.js.map +1 -0
- package/dist/admin/translations/th.json.mjs +181 -0
- package/dist/admin/translations/th.json.mjs.map +1 -0
- package/dist/admin/translations/tr.json.js +201 -0
- package/dist/admin/translations/tr.json.js.map +1 -0
- package/dist/admin/translations/tr.json.mjs +195 -0
- package/dist/admin/translations/tr.json.mjs.map +1 -0
- package/dist/admin/translations/uk.json.js +238 -0
- package/dist/admin/translations/uk.json.js.map +1 -0
- package/dist/admin/translations/uk.json.mjs +232 -0
- package/dist/admin/translations/uk.json.mjs.map +1 -0
- package/dist/admin/translations/zh-Hans.json.js +239 -0
- package/dist/admin/translations/zh-Hans.json.js.map +1 -0
- package/dist/admin/translations/zh-Hans.json.mjs +233 -0
- package/dist/admin/translations/zh-Hans.json.mjs.map +1 -0
- package/dist/admin/translations/zh.json.js +224 -0
- package/dist/admin/translations/zh.json.js.map +1 -0
- package/dist/admin/translations/zh.json.mjs +218 -0
- package/dist/admin/translations/zh.json.mjs.map +1 -0
- package/dist/admin/utils/conditions.js +71 -0
- package/dist/admin/utils/conditions.js.map +1 -0
- package/dist/admin/utils/conditions.mjs +66 -0
- package/dist/admin/utils/conditions.mjs.map +1 -0
- package/dist/admin/utils/findAttribute.js +8 -0
- package/dist/admin/utils/findAttribute.js.map +1 -0
- package/dist/admin/utils/findAttribute.mjs +6 -0
- package/dist/admin/utils/findAttribute.mjs.map +1 -0
- package/dist/admin/utils/formAPI.js +141 -0
- package/dist/admin/utils/formAPI.js.map +1 -0
- package/dist/admin/utils/formAPI.mjs +115 -0
- package/dist/admin/utils/formAPI.mjs.map +1 -0
- package/dist/admin/utils/getAttributeDisplayedType.js +32 -0
- package/dist/admin/utils/getAttributeDisplayedType.js.map +1 -0
- package/dist/admin/utils/getAttributeDisplayedType.mjs +30 -0
- package/dist/admin/utils/getAttributeDisplayedType.mjs.map +1 -0
- package/dist/admin/utils/getMaxDepth.js +74 -0
- package/dist/admin/utils/getMaxDepth.js.map +1 -0
- package/dist/admin/utils/getMaxDepth.mjs +71 -0
- package/dist/admin/utils/getMaxDepth.mjs.map +1 -0
- package/dist/admin/utils/getRelationType.js +21 -0
- package/dist/admin/utils/getRelationType.js.map +1 -0
- package/dist/admin/utils/getRelationType.mjs +19 -0
- package/dist/admin/utils/getRelationType.mjs.map +1 -0
- package/dist/admin/utils/getTrad.js +8 -0
- package/dist/admin/utils/getTrad.js.map +1 -0
- package/dist/admin/utils/getTrad.mjs +6 -0
- package/dist/admin/utils/getTrad.mjs.map +1 -0
- package/dist/admin/utils/getYupInnerErrors.js +25 -0
- package/dist/admin/utils/getYupInnerErrors.js.map +1 -0
- package/dist/admin/utils/getYupInnerErrors.mjs +23 -0
- package/dist/admin/utils/getYupInnerErrors.mjs.map +1 -0
- package/dist/admin/utils/isAllowedContentTypesForRelations.js +8 -0
- package/dist/admin/utils/isAllowedContentTypesForRelations.js.map +1 -0
- package/dist/admin/utils/isAllowedContentTypesForRelations.mjs +6 -0
- package/dist/admin/utils/isAllowedContentTypesForRelations.mjs.map +1 -0
- package/dist/admin/utils/makeUnique.js +8 -0
- package/dist/admin/utils/makeUnique.js.map +1 -0
- package/dist/admin/utils/makeUnique.mjs +6 -0
- package/dist/admin/utils/makeUnique.mjs.map +1 -0
- package/dist/admin/utils/nameToSlug.js +14 -0
- package/dist/admin/utils/nameToSlug.js.map +1 -0
- package/dist/admin/utils/nameToSlug.mjs +8 -0
- package/dist/admin/utils/nameToSlug.mjs.map +1 -0
- package/dist/admin/utils/parseDateValue.js +17 -0
- package/dist/admin/utils/parseDateValue.js.map +1 -0
- package/dist/admin/utils/parseDateValue.mjs +15 -0
- package/dist/admin/utils/parseDateValue.mjs.map +1 -0
- package/dist/admin/utils/parseNumberInputValue.js +15 -0
- package/dist/admin/utils/parseNumberInputValue.js.map +1 -0
- package/dist/admin/utils/parseNumberInputValue.mjs +13 -0
- package/dist/admin/utils/parseNumberInputValue.mjs.map +1 -0
- package/dist/admin/utils/prefixPluginTranslations.js +11 -0
- package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
- package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
- package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
- package/dist/admin/utils/timeFormat.js +38 -0
- package/dist/admin/utils/timeFormat.js.map +1 -0
- package/dist/admin/utils/timeFormat.mjs +35 -0
- package/dist/admin/utils/timeFormat.mjs.map +1 -0
- package/dist/admin/utils/toRegressedEnumValue.js +21 -0
- package/dist/admin/utils/toRegressedEnumValue.js.map +1 -0
- package/dist/admin/utils/toRegressedEnumValue.mjs +15 -0
- package/dist/admin/utils/toRegressedEnumValue.mjs.map +1 -0
- package/dist/server/bootstrap.js +16 -0
- package/dist/server/bootstrap.js.map +1 -0
- package/dist/server/bootstrap.mjs +14 -0
- package/dist/server/bootstrap.mjs.map +1 -0
- package/dist/server/config.js +9 -0
- package/dist/server/config.js.map +1 -0
- package/dist/server/config.mjs +7 -0
- package/dist/server/config.mjs.map +1 -0
- package/dist/server/controllers/builder.js +12 -0
- package/dist/server/controllers/builder.js.map +1 -0
- package/dist/server/controllers/builder.mjs +10 -0
- package/dist/server/controllers/builder.mjs.map +1 -0
- package/dist/server/controllers/component-categories.js +38 -0
- package/dist/server/controllers/component-categories.js.map +1 -0
- package/dist/server/controllers/component-categories.mjs +36 -0
- package/dist/server/controllers/component-categories.mjs.map +1 -0
- package/dist/server/controllers/components.js +148 -0
- package/dist/server/controllers/components.js.map +1 -0
- package/dist/server/controllers/components.mjs +142 -0
- package/dist/server/controllers/components.mjs.map +1 -0
- package/dist/server/controllers/content-types.js +165 -0
- package/dist/server/controllers/content-types.js.map +1 -0
- package/dist/server/controllers/content-types.mjs +159 -0
- package/dist/server/controllers/content-types.mjs.map +1 -0
- package/dist/server/controllers/index.js +18 -0
- package/dist/server/controllers/index.js.map +1 -0
- package/dist/server/controllers/index.mjs +16 -0
- package/dist/server/controllers/index.mjs.map +1 -0
- package/dist/server/controllers/schema.js +56 -0
- package/dist/server/controllers/schema.js.map +1 -0
- package/dist/server/controllers/schema.mjs +54 -0
- package/dist/server/controllers/schema.mjs.map +1 -0
- package/dist/server/controllers/validation/common.js +102 -0
- package/dist/server/controllers/validation/common.js.map +1 -0
- package/dist/server/controllers/validation/common.mjs +81 -0
- package/dist/server/controllers/validation/common.mjs.map +1 -0
- package/dist/server/controllers/validation/component-category.js +12 -0
- package/dist/server/controllers/validation/component-category.js.map +1 -0
- package/dist/server/controllers/validation/component-category.mjs +10 -0
- package/dist/server/controllers/validation/component-category.mjs.map +1 -0
- package/dist/server/controllers/validation/component.js +72 -0
- package/dist/server/controllers/validation/component.js.map +1 -0
- package/dist/server/controllers/validation/component.mjs +60 -0
- package/dist/server/controllers/validation/component.mjs.map +1 -0
- package/dist/server/controllers/validation/content-type.js +153 -0
- package/dist/server/controllers/validation/content-type.js.map +1 -0
- package/dist/server/controllers/validation/content-type.mjs +149 -0
- package/dist/server/controllers/validation/content-type.mjs.map +1 -0
- package/dist/server/controllers/validation/data-transform.js +31 -0
- package/dist/server/controllers/validation/data-transform.js.map +1 -0
- package/dist/server/controllers/validation/data-transform.mjs +24 -0
- package/dist/server/controllers/validation/data-transform.mjs.map +1 -0
- package/dist/server/controllers/validation/model-schema.js +94 -0
- package/dist/server/controllers/validation/model-schema.js.map +1 -0
- package/dist/server/controllers/validation/model-schema.mjs +88 -0
- package/dist/server/controllers/validation/model-schema.mjs.map +1 -0
- package/dist/server/controllers/validation/relations.js +71 -0
- package/dist/server/controllers/validation/relations.js.map +1 -0
- package/dist/server/controllers/validation/relations.mjs +69 -0
- package/dist/server/controllers/validation/relations.mjs.map +1 -0
- package/dist/server/controllers/validation/schema.js +666 -0
- package/dist/server/controllers/validation/schema.js.map +1 -0
- package/dist/server/controllers/validation/schema.mjs +661 -0
- package/dist/server/controllers/validation/schema.mjs.map +1 -0
- package/dist/server/controllers/validation/types.js +236 -0
- package/dist/server/controllers/validation/types.js.map +1 -0
- package/dist/server/controllers/validation/types.mjs +230 -0
- package/dist/server/controllers/validation/types.mjs.map +1 -0
- package/dist/server/index.js +24 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/index.mjs +22 -0
- package/dist/server/index.mjs.map +1 -0
- package/dist/server/middlewares/index.js +8 -0
- package/dist/server/middlewares/index.js.map +1 -0
- package/dist/server/middlewares/index.mjs +2 -0
- package/dist/server/middlewares/index.mjs.map +1 -0
- package/dist/server/middlewares/is-development-mode.js +19 -0
- package/dist/server/middlewares/is-development-mode.js.map +1 -0
- package/dist/server/middlewares/is-development-mode.mjs +17 -0
- package/dist/server/middlewares/is-development-mode.mjs.map +1 -0
- package/dist/server/register.js +38 -0
- package/dist/server/register.js.map +1 -0
- package/dist/server/register.mjs +36 -0
- package/dist/server/register.mjs.map +1 -0
- package/dist/server/routes/admin.js +311 -0
- package/dist/server/routes/admin.js.map +1 -0
- package/dist/server/routes/admin.mjs +309 -0
- package/dist/server/routes/admin.mjs.map +1 -0
- package/dist/server/routes/content-api.js +195 -0
- package/dist/server/routes/content-api.js.map +1 -0
- package/dist/server/routes/content-api.mjs +173 -0
- package/dist/server/routes/content-api.mjs.map +1 -0
- package/dist/server/routes/index.js +12 -0
- package/dist/server/routes/index.js.map +1 -0
- package/dist/server/routes/index.mjs +10 -0
- package/dist/server/routes/index.mjs.map +1 -0
- package/dist/server/services/api-handler.js +118 -0
- package/dist/server/services/api-handler.js.map +1 -0
- package/dist/server/services/api-handler.mjs +93 -0
- package/dist/server/services/api-handler.mjs.map +1 -0
- package/dist/server/services/builder.js +27 -0
- package/dist/server/services/builder.js.map +1 -0
- package/dist/server/services/builder.mjs +21 -0
- package/dist/server/services/builder.mjs.map +1 -0
- package/dist/server/services/component-categories.js +59 -0
- package/dist/server/services/component-categories.js.map +1 -0
- package/dist/server/services/component-categories.mjs +56 -0
- package/dist/server/services/component-categories.mjs.map +1 -0
- package/dist/server/services/components.js +79 -0
- package/dist/server/services/components.js.map +1 -0
- package/dist/server/services/components.mjs +74 -0
- package/dist/server/services/components.mjs.map +1 -0
- package/dist/server/services/constants.js +52 -0
- package/dist/server/services/constants.js.map +1 -0
- package/dist/server/services/constants.mjs +45 -0
- package/dist/server/services/constants.mjs.map +1 -0
- package/dist/server/services/content-types.js +227 -0
- package/dist/server/services/content-types.js.map +1 -0
- package/dist/server/services/content-types.mjs +213 -0
- package/dist/server/services/content-types.mjs.map +1 -0
- package/dist/server/services/index.js +20 -0
- package/dist/server/services/index.js.map +1 -0
- package/dist/server/services/index.mjs +18 -0
- package/dist/server/services/index.mjs.map +1 -0
- package/dist/server/services/schema-builder/component-builder.js +130 -0
- package/dist/server/services/schema-builder/component-builder.js.map +1 -0
- package/dist/server/services/schema-builder/component-builder.mjs +122 -0
- package/dist/server/services/schema-builder/component-builder.mjs.map +1 -0
- package/dist/server/services/schema-builder/content-type-builder.js +332 -0
- package/dist/server/services/schema-builder/content-type-builder.js.map +1 -0
- package/dist/server/services/schema-builder/content-type-builder.mjs +325 -0
- package/dist/server/services/schema-builder/content-type-builder.mjs.map +1 -0
- package/dist/server/services/schema-builder/index.js +155 -0
- package/dist/server/services/schema-builder/index.js.map +1 -0
- package/dist/server/services/schema-builder/index.mjs +149 -0
- package/dist/server/services/schema-builder/index.mjs.map +1 -0
- package/dist/server/services/schema-builder/schema-handler.js +256 -0
- package/dist/server/services/schema-builder/schema-handler.js.map +1 -0
- package/dist/server/services/schema-builder/schema-handler.mjs +248 -0
- package/dist/server/services/schema-builder/schema-handler.mjs.map +1 -0
- package/dist/server/services/schema.js +252 -0
- package/dist/server/services/schema.js.map +1 -0
- package/dist/server/services/schema.mjs +248 -0
- package/dist/server/services/schema.mjs.map +1 -0
- package/dist/server/src/bootstrap.d.ts +6 -0
- package/dist/server/src/bootstrap.d.ts.map +1 -0
- package/dist/server/src/config.d.ts +6 -0
- package/dist/server/src/config.d.ts.map +1 -0
- package/dist/server/src/controllers/builder.d.ts +6 -0
- package/dist/server/src/controllers/builder.d.ts.map +1 -0
- package/dist/server/src/controllers/component-categories.d.ts +7 -0
- package/dist/server/src/controllers/component-categories.d.ts.map +1 -0
- package/dist/server/src/controllers/components.d.ts +38 -0
- package/dist/server/src/controllers/components.d.ts.map +1 -0
- package/dist/server/src/controllers/content-types.d.ts +10 -0
- package/dist/server/src/controllers/content-types.d.ts.map +1 -0
- package/dist/server/src/controllers/index.d.ts +30 -0
- package/dist/server/src/controllers/index.d.ts.map +1 -0
- package/dist/server/src/controllers/schema.d.ts +8 -0
- package/dist/server/src/controllers/schema.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/common.d.ts +26 -0
- package/dist/server/src/controllers/validation/common.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/component-category.d.ts +5 -0
- package/dist/server/src/controllers/validation/component-category.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/component.d.ts +25 -0
- package/dist/server/src/controllers/validation/component.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/content-type.d.ts +38 -0
- package/dist/server/src/controllers/validation/content-type.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/data-transform.d.ts +4 -0
- package/dist/server/src/controllers/validation/data-transform.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/model-schema.d.ts +12 -0
- package/dist/server/src/controllers/validation/model-schema.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/relations.d.ts +18 -0
- package/dist/server/src/controllers/validation/relations.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/schema.d.ts +109632 -0
- package/dist/server/src/controllers/validation/schema.d.ts.map +1 -0
- package/dist/server/src/controllers/validation/types.d.ts +9 -0
- package/dist/server/src/controllers/validation/types.d.ts.map +1 -0
- package/dist/server/src/index.d.ts +89 -0
- package/dist/server/src/index.d.ts.map +1 -0
- package/dist/server/src/middlewares/index.d.ts +3 -0
- package/dist/server/src/middlewares/index.d.ts.map +1 -0
- package/dist/server/src/middlewares/is-development-mode.d.ts +9 -0
- package/dist/server/src/middlewares/is-development-mode.d.ts.map +1 -0
- package/dist/server/src/register.d.ts +6 -0
- package/dist/server/src/register.d.ts.map +1 -0
- package/dist/server/src/routes/admin.d.ts +32 -0
- package/dist/server/src/routes/admin.d.ts.map +1 -0
- package/dist/server/src/routes/content-api.d.ts +7 -0
- package/dist/server/src/routes/content-api.d.ts.map +1 -0
- package/dist/server/src/routes/index.d.ts +38 -0
- package/dist/server/src/routes/index.d.ts.map +1 -0
- package/dist/server/src/services/api-handler.d.ts +15 -0
- package/dist/server/src/services/api-handler.d.ts.map +1 -0
- package/dist/server/src/services/builder.d.ts +16 -0
- package/dist/server/src/services/builder.d.ts.map +1 -0
- package/dist/server/src/services/component-categories.d.ts +13 -0
- package/dist/server/src/services/component-categories.d.ts.map +1 -0
- package/dist/server/src/services/components.d.ts +31 -0
- package/dist/server/src/services/components.d.ts.map +1 -0
- package/dist/server/src/services/constants.d.ts +18 -0
- package/dist/server/src/services/constants.d.ts.map +1 -0
- package/dist/server/src/services/content-types.d.ts +60 -0
- package/dist/server/src/services/content-types.d.ts.map +1 -0
- package/dist/server/src/services/index.d.ts +16 -0
- package/dist/server/src/services/index.d.ts.map +1 -0
- package/dist/server/src/services/schema-builder/component-builder.d.ts +40 -0
- package/dist/server/src/services/schema-builder/component-builder.d.ts.map +1 -0
- package/dist/server/src/services/schema-builder/content-type-builder.d.ts +43 -0
- package/dist/server/src/services/schema-builder/content-type-builder.d.ts.map +1 -0
- package/dist/server/src/services/schema-builder/index.d.ts +85 -0
- package/dist/server/src/services/schema-builder/index.d.ts.map +1 -0
- package/dist/server/src/services/schema-builder/schema-handler.d.ts +37 -0
- package/dist/server/src/services/schema-builder/schema-handler.d.ts.map +1 -0
- package/dist/server/src/services/schema-builder/types.d.ts +24 -0
- package/dist/server/src/services/schema-builder/types.d.ts.map +1 -0
- package/dist/server/src/services/schema.d.ts +4064 -0
- package/dist/server/src/services/schema.d.ts.map +1 -0
- package/dist/server/src/utils/attributes.d.ts +672 -0
- package/dist/server/src/utils/attributes.d.ts.map +1 -0
- package/dist/server/src/utils/helpers.d.ts +3 -0
- package/dist/server/src/utils/helpers.d.ts.map +1 -0
- package/dist/server/src/utils/index.d.ts +17 -0
- package/dist/server/src/utils/index.d.ts.map +1 -0
- package/dist/server/src/utils/typeguards.d.ts +3 -0
- package/dist/server/src/utils/typeguards.d.ts.map +1 -0
- package/dist/server/utils/attributes.js +96 -0
- package/dist/server/utils/attributes.js.map +1 -0
- package/dist/server/utils/attributes.mjs +86 -0
- package/dist/server/utils/attributes.mjs.map +1 -0
- package/dist/server/utils/index.js +8 -0
- package/dist/server/utils/index.js.map +1 -0
- package/dist/server/utils/index.mjs +6 -0
- package/dist/server/utils/index.mjs.map +1 -0
- package/dist/server/utils/typeguards.js +8 -0
- package/dist/server/utils/typeguards.js.map +1 -0
- package/dist/server/utils/typeguards.mjs +6 -0
- package/dist/server/utils/typeguards.mjs.map +1 -0
- package/package.json +101 -0
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import _ from 'lodash';
|
|
2
|
+
import { getOr } from 'lodash/fp';
|
|
3
|
+
import { errors, contentTypes } from '@strapi/utils';
|
|
4
|
+
import { formatAttributes, replaceTemporaryUIDs } from '../utils/attributes.mjs';
|
|
5
|
+
import createBuilder from './schema-builder/index.mjs';
|
|
6
|
+
import { coreUids, pluginsUids } from './constants.mjs';
|
|
7
|
+
|
|
8
|
+
const { ApplicationError } = errors;
|
|
9
|
+
const isContentTypeVisible = (model)=>getOr(true, 'pluginOptions.content-type-builder.visible', model) === true;
|
|
10
|
+
const getRestrictRelationsTo = (contentType)=>{
|
|
11
|
+
const { uid } = contentType;
|
|
12
|
+
if (uid === coreUids.STRAPI_USER) {
|
|
13
|
+
// TODO: replace with an obj { relation: 'x', bidirectional: true|false }
|
|
14
|
+
return [
|
|
15
|
+
'oneWay',
|
|
16
|
+
'manyWay'
|
|
17
|
+
];
|
|
18
|
+
}
|
|
19
|
+
if (uid.startsWith(coreUids.PREFIX) || uid === pluginsUids.UPLOAD_FILE || !isContentTypeVisible(contentType)) {
|
|
20
|
+
return [];
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Format a contentType info to be used by the front-end
|
|
26
|
+
*/ const formatContentType = (contentType)=>{
|
|
27
|
+
const { uid, kind, modelName, plugin, collectionName, info } = contentType;
|
|
28
|
+
return {
|
|
29
|
+
uid,
|
|
30
|
+
plugin,
|
|
31
|
+
apiID: modelName,
|
|
32
|
+
schema: {
|
|
33
|
+
...contentTypes.getOptions(contentType),
|
|
34
|
+
displayName: info.displayName,
|
|
35
|
+
singularName: info.singularName,
|
|
36
|
+
pluralName: info.pluralName,
|
|
37
|
+
description: _.get(info, 'description', ''),
|
|
38
|
+
pluginOptions: contentType.pluginOptions,
|
|
39
|
+
kind: kind || 'collectionType',
|
|
40
|
+
collectionName,
|
|
41
|
+
attributes: formatAttributes(contentType),
|
|
42
|
+
visible: isContentTypeVisible(contentType),
|
|
43
|
+
restrictRelationsTo: getRestrictRelationsTo(contentType)
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
const createContentTypes = async (contentTypes)=>{
|
|
48
|
+
const builder = createBuilder();
|
|
49
|
+
const createdContentTypes = [];
|
|
50
|
+
for (const contentType of contentTypes){
|
|
51
|
+
createdContentTypes.push(await createContentType(contentType, {
|
|
52
|
+
defaultBuilder: builder
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
await builder.writeFiles();
|
|
56
|
+
return createdContentTypes;
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Creates a content type and handle the nested components sent with it
|
|
60
|
+
*/ const createContentType = async ({ contentType, components }, options = {})=>{
|
|
61
|
+
const builder = options.defaultBuilder || createBuilder();
|
|
62
|
+
const uidMap = builder.createNewComponentUIDMap(components || []);
|
|
63
|
+
const replaceTmpUIDs = replaceTemporaryUIDs(uidMap);
|
|
64
|
+
const newContentType = builder.createContentType(replaceTmpUIDs(contentType));
|
|
65
|
+
// allow components to target the new contentType
|
|
66
|
+
const targetContentType = (infos)=>{
|
|
67
|
+
Object.keys(infos.attributes).forEach((key)=>{
|
|
68
|
+
const { target } = infos.attributes[key];
|
|
69
|
+
if (target === '__contentType__') {
|
|
70
|
+
infos.attributes[key].target = newContentType.uid;
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
return infos;
|
|
74
|
+
};
|
|
75
|
+
components?.forEach((component)=>{
|
|
76
|
+
const options = replaceTmpUIDs(targetContentType(component));
|
|
77
|
+
if (!_.has(component, 'uid')) {
|
|
78
|
+
return builder.createComponent(options);
|
|
79
|
+
}
|
|
80
|
+
return builder.editComponent(options);
|
|
81
|
+
});
|
|
82
|
+
// generate api skeleton
|
|
83
|
+
await generateAPI({
|
|
84
|
+
displayName: contentType.displayName || contentType.info.displayName,
|
|
85
|
+
singularName: contentType.singularName,
|
|
86
|
+
pluralName: contentType.pluralName,
|
|
87
|
+
kind: contentType.kind
|
|
88
|
+
});
|
|
89
|
+
if (!options.defaultBuilder) {
|
|
90
|
+
await builder.writeFiles();
|
|
91
|
+
}
|
|
92
|
+
strapi.eventHub.emit('content-type.create', {
|
|
93
|
+
contentType: newContentType
|
|
94
|
+
});
|
|
95
|
+
return newContentType;
|
|
96
|
+
};
|
|
97
|
+
/**
|
|
98
|
+
* Generate an API skeleton
|
|
99
|
+
*/ const generateAPI = ({ singularName, kind = 'collectionType', pluralName, displayName })=>{
|
|
100
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
101
|
+
const strapiGenerators = require('@strapi/generators');
|
|
102
|
+
return strapiGenerators.generate('content-type', {
|
|
103
|
+
kind,
|
|
104
|
+
singularName,
|
|
105
|
+
id: singularName,
|
|
106
|
+
pluralName,
|
|
107
|
+
displayName,
|
|
108
|
+
destination: 'new',
|
|
109
|
+
bootstrapApi: true,
|
|
110
|
+
attributes: []
|
|
111
|
+
}, {
|
|
112
|
+
dir: strapi.dirs.app.root
|
|
113
|
+
});
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Edits a contentType and handle the nested contentTypes sent with it
|
|
117
|
+
*/ const editContentType = async (uid, { contentType, components = [] })=>{
|
|
118
|
+
const builder = createBuilder();
|
|
119
|
+
const previousSchema = builder.contentTypes.get(uid).schema;
|
|
120
|
+
const previousKind = previousSchema.kind;
|
|
121
|
+
const newKind = contentType.kind || previousKind;
|
|
122
|
+
// Restore non-visible attributes from previous schema
|
|
123
|
+
const previousAttributes = previousSchema.attributes;
|
|
124
|
+
const prevNonVisibleAttributes = contentTypes.getNonVisibleAttributes(previousSchema).reduce((acc, key)=>{
|
|
125
|
+
if (key in previousAttributes) {
|
|
126
|
+
acc[key] = previousAttributes[key];
|
|
127
|
+
}
|
|
128
|
+
return acc;
|
|
129
|
+
}, {});
|
|
130
|
+
contentType.attributes = _.merge(prevNonVisibleAttributes, contentType.attributes);
|
|
131
|
+
if (newKind !== previousKind && newKind === 'singleType') {
|
|
132
|
+
const entryCount = await strapi.db.query(uid).count();
|
|
133
|
+
if (entryCount > 1) {
|
|
134
|
+
throw new ApplicationError('You cannot convert a collectionType to a singleType when having multiple entries in DB');
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
const uidMap = builder.createNewComponentUIDMap(components);
|
|
138
|
+
const replaceTmpUIDs = replaceTemporaryUIDs(uidMap);
|
|
139
|
+
const updatedContentType = builder.editContentType({
|
|
140
|
+
uid,
|
|
141
|
+
...replaceTmpUIDs(contentType)
|
|
142
|
+
});
|
|
143
|
+
components.forEach((component)=>{
|
|
144
|
+
if (!_.has(component, 'uid')) {
|
|
145
|
+
return builder.createComponent(replaceTmpUIDs(component));
|
|
146
|
+
}
|
|
147
|
+
return builder.editComponent(replaceTmpUIDs(component));
|
|
148
|
+
});
|
|
149
|
+
if (newKind !== previousKind) {
|
|
150
|
+
const apiHandler = strapi.plugin('content-type-builder').service('api-handler');
|
|
151
|
+
await apiHandler.backup(uid);
|
|
152
|
+
try {
|
|
153
|
+
await apiHandler.clear(uid);
|
|
154
|
+
// generate new api skeleton
|
|
155
|
+
await generateAPI({
|
|
156
|
+
displayName: updatedContentType.schema.info.displayName,
|
|
157
|
+
singularName: updatedContentType.schema.info.singularName,
|
|
158
|
+
pluralName: updatedContentType.schema.info.pluralName,
|
|
159
|
+
kind: updatedContentType.schema.kind
|
|
160
|
+
});
|
|
161
|
+
await builder.writeFiles();
|
|
162
|
+
} catch (error) {
|
|
163
|
+
strapi.log.error(error);
|
|
164
|
+
await apiHandler.rollback(uid);
|
|
165
|
+
}
|
|
166
|
+
return updatedContentType;
|
|
167
|
+
}
|
|
168
|
+
await builder.writeFiles();
|
|
169
|
+
strapi.eventHub.emit('content-type.update', {
|
|
170
|
+
contentType: updatedContentType
|
|
171
|
+
});
|
|
172
|
+
return updatedContentType;
|
|
173
|
+
};
|
|
174
|
+
const deleteContentTypes = async (uids)=>{
|
|
175
|
+
const builder = createBuilder();
|
|
176
|
+
const apiHandler = strapi.plugin('content-type-builder').service('api-handler');
|
|
177
|
+
for (const uid of uids){
|
|
178
|
+
await deleteContentType(uid, builder);
|
|
179
|
+
}
|
|
180
|
+
await builder.writeFiles();
|
|
181
|
+
for (const uid of uids){
|
|
182
|
+
try {
|
|
183
|
+
await apiHandler.clear(uid);
|
|
184
|
+
} catch (error) {
|
|
185
|
+
strapi.log.error(error);
|
|
186
|
+
await apiHandler.rollback(uid);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
/**
|
|
191
|
+
* Deletes a content type and the api files related to it
|
|
192
|
+
*/ const deleteContentType = async (uid, defaultBuilder = undefined)=>{
|
|
193
|
+
const builder = defaultBuilder || createBuilder();
|
|
194
|
+
// make a backup
|
|
195
|
+
const apiHandler = strapi.plugin('content-type-builder').service('api-handler');
|
|
196
|
+
await apiHandler.backup(uid);
|
|
197
|
+
const contentType = builder.deleteContentType(uid);
|
|
198
|
+
if (!defaultBuilder) {
|
|
199
|
+
try {
|
|
200
|
+
await builder.writeFiles();
|
|
201
|
+
await apiHandler.clear(uid);
|
|
202
|
+
} catch {
|
|
203
|
+
await apiHandler.rollback(uid);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
strapi.eventHub.emit('content-type.delete', {
|
|
207
|
+
contentType
|
|
208
|
+
});
|
|
209
|
+
return contentType;
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
export { createContentType, createContentTypes, deleteContentType, deleteContentTypes, editContentType, formatContentType, generateAPI, getRestrictRelationsTo, isContentTypeVisible };
|
|
213
|
+
//# sourceMappingURL=content-types.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-types.mjs","sources":["../../../server/src/services/content-types.ts"],"sourcesContent":["import _ from 'lodash';\r\nimport { getOr } from 'lodash/fp';\r\nimport { contentTypes as contentTypesUtils, errors } from '@strapi/utils';\r\nimport type { UID, Struct } from '@strapi/types';\r\nimport { formatAttributes, replaceTemporaryUIDs } from '../utils/attributes';\r\nimport createBuilder from './schema-builder';\r\nimport { coreUids, pluginsUids } from './constants';\r\n\r\nconst { ApplicationError } = errors;\r\n\r\nexport const isContentTypeVisible = (model: Struct.ContentTypeSchema) =>\r\n getOr(true, 'pluginOptions.content-type-builder.visible', model) === true;\r\n\r\nexport const getRestrictRelationsTo = (contentType: Struct.ContentTypeSchema) => {\r\n const { uid } = contentType;\r\n if (uid === coreUids.STRAPI_USER) {\r\n // TODO: replace with an obj { relation: 'x', bidirectional: true|false }\r\n return ['oneWay', 'manyWay'];\r\n }\r\n\r\n if (\r\n uid.startsWith(coreUids.PREFIX) ||\r\n uid === pluginsUids.UPLOAD_FILE ||\r\n !isContentTypeVisible(contentType)\r\n ) {\r\n return [];\r\n }\r\n\r\n return null;\r\n};\r\n\r\n/**\r\n * Format a contentType info to be used by the front-end\r\n */\r\nexport const formatContentType = (contentType: any) => {\r\n const { uid, kind, modelName, plugin, collectionName, info } = contentType;\r\n\r\n return {\r\n uid,\r\n plugin,\r\n apiID: modelName,\r\n schema: {\r\n ...contentTypesUtils.getOptions(contentType),\r\n displayName: info.displayName,\r\n singularName: info.singularName,\r\n pluralName: info.pluralName,\r\n description: _.get(info, 'description', ''),\r\n pluginOptions: contentType.pluginOptions,\r\n kind: kind || 'collectionType',\r\n collectionName,\r\n attributes: formatAttributes(contentType),\r\n visible: isContentTypeVisible(contentType),\r\n restrictRelationsTo: getRestrictRelationsTo(contentType),\r\n },\r\n };\r\n};\r\n\r\nexport const createContentTypes = async (contentTypes: any[]) => {\r\n const builder = createBuilder();\r\n const createdContentTypes: any[] = [];\r\n\r\n for (const contentType of contentTypes) {\r\n createdContentTypes.push(await createContentType(contentType, { defaultBuilder: builder }));\r\n }\r\n\r\n await builder.writeFiles();\r\n\r\n return createdContentTypes;\r\n};\r\n\r\ntype CreateContentTypeOptions = {\r\n defaultBuilder?: any; // TODO\r\n};\r\n\r\n/**\r\n * Creates a content type and handle the nested components sent with it\r\n */\r\nexport const createContentType = async (\r\n { contentType, components }: any,\r\n options: CreateContentTypeOptions = {}\r\n) => {\r\n const builder = options.defaultBuilder || createBuilder();\r\n const uidMap = builder.createNewComponentUIDMap(components || []);\r\n\r\n const replaceTmpUIDs = replaceTemporaryUIDs(uidMap);\r\n\r\n const newContentType = builder.createContentType(replaceTmpUIDs(contentType));\r\n\r\n // allow components to target the new contentType\r\n const targetContentType = (infos: any) => {\r\n Object.keys(infos.attributes).forEach((key) => {\r\n const { target } = infos.attributes[key];\r\n if (target === '__contentType__') {\r\n infos.attributes[key].target = newContentType.uid;\r\n }\r\n });\r\n\r\n return infos;\r\n };\r\n\r\n components?.forEach((component: any) => {\r\n const options = replaceTmpUIDs(targetContentType(component));\r\n\r\n if (!_.has(component, 'uid')) {\r\n return builder.createComponent(options);\r\n }\r\n\r\n return builder.editComponent(options);\r\n });\r\n\r\n // generate api skeleton\r\n await generateAPI({\r\n displayName: contentType!.displayName || contentType!.info.displayName,\r\n singularName: contentType!.singularName,\r\n pluralName: contentType!.pluralName,\r\n kind: contentType!.kind,\r\n });\r\n\r\n if (!options.defaultBuilder) {\r\n await builder.writeFiles();\r\n }\r\n\r\n strapi.eventHub.emit('content-type.create', { contentType: newContentType });\r\n\r\n return newContentType;\r\n};\r\n\r\n/**\r\n * Generate an API skeleton\r\n */\r\nexport const generateAPI = ({\r\n singularName,\r\n kind = 'collectionType',\r\n pluralName,\r\n displayName,\r\n}: any) => {\r\n // eslint-disable-next-line @typescript-eslint/no-var-requires\r\n const strapiGenerators = require('@strapi/generators');\r\n return strapiGenerators.generate(\r\n 'content-type',\r\n {\r\n kind,\r\n singularName,\r\n id: singularName,\r\n pluralName,\r\n displayName,\r\n destination: 'new',\r\n bootstrapApi: true,\r\n attributes: [],\r\n },\r\n { dir: strapi.dirs.app.root }\r\n );\r\n};\r\n\r\n/**\r\n * Edits a contentType and handle the nested contentTypes sent with it\r\n */\r\nexport const editContentType = async (\r\n uid: UID.ContentType,\r\n { contentType, components = [] }: any\r\n) => {\r\n const builder = createBuilder();\r\n\r\n const previousSchema = builder.contentTypes.get(uid).schema;\r\n const previousKind = previousSchema.kind;\r\n const newKind = contentType.kind || previousKind;\r\n\r\n // Restore non-visible attributes from previous schema\r\n const previousAttributes = previousSchema.attributes;\r\n const prevNonVisibleAttributes = contentTypesUtils\r\n .getNonVisibleAttributes(previousSchema)\r\n .reduce((acc, key) => {\r\n if (key in previousAttributes) {\r\n acc[key] = previousAttributes[key];\r\n }\r\n\r\n return acc;\r\n }, {} as any);\r\n contentType.attributes = _.merge(prevNonVisibleAttributes, contentType.attributes);\r\n\r\n if (newKind !== previousKind && newKind === 'singleType') {\r\n const entryCount = await strapi.db.query(uid).count();\r\n if (entryCount > 1) {\r\n throw new ApplicationError(\r\n 'You cannot convert a collectionType to a singleType when having multiple entries in DB'\r\n );\r\n }\r\n }\r\n\r\n const uidMap = builder.createNewComponentUIDMap(components);\r\n const replaceTmpUIDs = replaceTemporaryUIDs(uidMap);\r\n\r\n const updatedContentType = builder.editContentType({\r\n uid,\r\n ...replaceTmpUIDs(contentType),\r\n });\r\n\r\n components.forEach((component: any) => {\r\n if (!_.has(component, 'uid')) {\r\n return builder.createComponent(replaceTmpUIDs(component));\r\n }\r\n\r\n return builder.editComponent(replaceTmpUIDs(component));\r\n });\r\n\r\n if (newKind !== previousKind) {\r\n const apiHandler = strapi.plugin('content-type-builder').service('api-handler');\r\n await apiHandler.backup(uid);\r\n\r\n try {\r\n await apiHandler.clear(uid);\r\n\r\n // generate new api skeleton\r\n await generateAPI({\r\n displayName: updatedContentType.schema.info.displayName,\r\n singularName: updatedContentType.schema.info.singularName,\r\n pluralName: updatedContentType.schema.info.pluralName,\r\n kind: updatedContentType.schema.kind,\r\n });\r\n\r\n await builder.writeFiles();\r\n } catch (error) {\r\n strapi.log.error(error);\r\n await apiHandler.rollback(uid);\r\n }\r\n\r\n return updatedContentType;\r\n }\r\n\r\n await builder.writeFiles();\r\n\r\n strapi.eventHub.emit('content-type.update', { contentType: updatedContentType });\r\n\r\n return updatedContentType;\r\n};\r\n\r\nexport const deleteContentTypes = async (uids: UID.ContentType[]) => {\r\n const builder = createBuilder();\r\n const apiHandler = strapi.plugin('content-type-builder').service('api-handler');\r\n\r\n for (const uid of uids) {\r\n await deleteContentType(uid, builder);\r\n }\r\n\r\n await builder.writeFiles();\r\n for (const uid of uids) {\r\n try {\r\n await apiHandler.clear(uid);\r\n } catch (error) {\r\n strapi.log.error(error);\r\n await apiHandler.rollback(uid);\r\n }\r\n }\r\n};\r\n\r\n/**\r\n * Deletes a content type and the api files related to it\r\n */\r\nexport const deleteContentType = async (uid: UID.ContentType, defaultBuilder: any = undefined) => {\r\n const builder = defaultBuilder || createBuilder();\r\n // make a backup\r\n const apiHandler = strapi.plugin('content-type-builder').service('api-handler');\r\n await apiHandler.backup(uid);\r\n\r\n const contentType = builder.deleteContentType(uid);\r\n\r\n if (!defaultBuilder) {\r\n try {\r\n await builder.writeFiles();\r\n await apiHandler.clear(uid);\r\n } catch {\r\n await apiHandler.rollback(uid);\r\n }\r\n }\r\n\r\n strapi.eventHub.emit('content-type.delete', { contentType });\r\n\r\n return contentType;\r\n};\r\n"],"names":["ApplicationError","errors","isContentTypeVisible","model","getOr","getRestrictRelationsTo","contentType","uid","coreUids","STRAPI_USER","startsWith","PREFIX","pluginsUids","UPLOAD_FILE","formatContentType","kind","modelName","plugin","collectionName","info","apiID","schema","contentTypesUtils","getOptions","displayName","singularName","pluralName","description","_","get","pluginOptions","attributes","formatAttributes","visible","restrictRelationsTo","createContentTypes","contentTypes","builder","createBuilder","createdContentTypes","push","createContentType","defaultBuilder","writeFiles","components","options","uidMap","createNewComponentUIDMap","replaceTmpUIDs","replaceTemporaryUIDs","newContentType","targetContentType","infos","Object","keys","forEach","key","target","component","has","createComponent","editComponent","generateAPI","strapi","eventHub","emit","strapiGenerators","require","generate","id","destination","bootstrapApi","dir","dirs","app","root","editContentType","previousSchema","previousKind","newKind","previousAttributes","prevNonVisibleAttributes","getNonVisibleAttributes","reduce","acc","merge","entryCount","db","query","count","updatedContentType","apiHandler","service","backup","clear","error","log","rollback","deleteContentTypes","uids","deleteContentType","undefined"],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var contentTypes = require('./content-types.js');
|
|
4
|
+
var components = require('./components.js');
|
|
5
|
+
var componentCategories = require('./component-categories.js');
|
|
6
|
+
var builder = require('./builder.js');
|
|
7
|
+
var apiHandler = require('./api-handler.js');
|
|
8
|
+
var schema = require('./schema.js');
|
|
9
|
+
|
|
10
|
+
var services = {
|
|
11
|
+
'content-types': contentTypes,
|
|
12
|
+
components,
|
|
13
|
+
'component-categories': componentCategories,
|
|
14
|
+
builder,
|
|
15
|
+
'api-handler': apiHandler,
|
|
16
|
+
schema
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
module.exports = services;
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import * as contentTypes from './content-types';\r\nimport * as components from './components';\r\nimport * as componentCategories from './component-categories';\r\nimport * as builder from './builder';\r\nimport * as apiHandler from './api-handler';\r\nimport * as schema from './schema';\r\n\r\nexport default {\r\n 'content-types': contentTypes,\r\n components,\r\n 'component-categories': componentCategories,\r\n builder,\r\n 'api-handler': apiHandler,\r\n schema,\r\n};\r\n"],"names":["contentTypes","components","componentCategories","builder","apiHandler","schema"],"mappings":";;;;;;;;;AAOA,eAAe;IACb,eAAA,EAAiBA,YAAAA;AACjBC,IAAAA,UAAAA;IACA,sBAAA,EAAwBC,mBAAAA;AACxBC,IAAAA,OAAAA;IACA,aAAA,EAAeC,UAAAA;AACfC,IAAAA;AACF,CAAA;;;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as contentTypes from './content-types.mjs';
|
|
2
|
+
import * as components from './components.mjs';
|
|
3
|
+
import * as componentCategories from './component-categories.mjs';
|
|
4
|
+
import * as builder from './builder.mjs';
|
|
5
|
+
import * as apiHandler from './api-handler.mjs';
|
|
6
|
+
import * as schema from './schema.mjs';
|
|
7
|
+
|
|
8
|
+
var services = {
|
|
9
|
+
'content-types': contentTypes,
|
|
10
|
+
components,
|
|
11
|
+
'component-categories': componentCategories,
|
|
12
|
+
builder,
|
|
13
|
+
'api-handler': apiHandler,
|
|
14
|
+
schema
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { services as default };
|
|
18
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../server/src/services/index.ts"],"sourcesContent":["import * as contentTypes from './content-types';\r\nimport * as components from './components';\r\nimport * as componentCategories from './component-categories';\r\nimport * as builder from './builder';\r\nimport * as apiHandler from './api-handler';\r\nimport * as schema from './schema';\r\n\r\nexport default {\r\n 'content-types': contentTypes,\r\n components,\r\n 'component-categories': componentCategories,\r\n builder,\r\n 'api-handler': apiHandler,\r\n schema,\r\n};\r\n"],"names":["contentTypes","components","componentCategories","builder","apiHandler","schema"],"mappings":";;;;;;;AAOA,eAAe;IACb,eAAA,EAAiBA,YAAAA;AACjBC,IAAAA,UAAAA;IACA,sBAAA,EAAwBC,mBAAAA;AACxBC,IAAAA,OAAAA;IACA,aAAA,EAAeC,UAAAA;AACfC,IAAAA;AACF,CAAA;;;;"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var path = require('path');
|
|
4
|
+
var _ = require('lodash');
|
|
5
|
+
var pluralize = require('pluralize');
|
|
6
|
+
var utils = require('@strapi/utils');
|
|
7
|
+
var attributes = require('../../utils/attributes.js');
|
|
8
|
+
var schemaHandler = require('./schema-handler.js');
|
|
9
|
+
|
|
10
|
+
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
|
|
12
|
+
var path__default = /*#__PURE__*/_interopDefault(path);
|
|
13
|
+
var ___default = /*#__PURE__*/_interopDefault(_);
|
|
14
|
+
var pluralize__default = /*#__PURE__*/_interopDefault(pluralize);
|
|
15
|
+
|
|
16
|
+
const { ApplicationError } = utils.errors;
|
|
17
|
+
function createComponentBuilder() {
|
|
18
|
+
return {
|
|
19
|
+
createComponentUID ({ category, displayName }) {
|
|
20
|
+
return `${utils.strings.nameToSlug(category)}.${utils.strings.nameToSlug(displayName)}`;
|
|
21
|
+
},
|
|
22
|
+
createNewComponentUIDMap (components) {
|
|
23
|
+
return components.reduce((uidMap, component)=>{
|
|
24
|
+
uidMap[component.tmpUID] = this.createComponentUID(component);
|
|
25
|
+
return uidMap;
|
|
26
|
+
}, {});
|
|
27
|
+
},
|
|
28
|
+
createComponentAttributes (uid, attributes) {
|
|
29
|
+
if (!this.components.has(uid)) {
|
|
30
|
+
throw new ApplicationError('component.notFound');
|
|
31
|
+
}
|
|
32
|
+
return this.components.get(uid).setAttributes(this.convertAttributes(attributes));
|
|
33
|
+
},
|
|
34
|
+
/**
|
|
35
|
+
* create a component in the tmpComponent map
|
|
36
|
+
*/ createComponent (infos) {
|
|
37
|
+
if (infos.uid && infos.uid !== this.createComponentUID(infos)) {
|
|
38
|
+
throw new ApplicationError('component.invalidUID');
|
|
39
|
+
}
|
|
40
|
+
const uid = infos.uid ?? this.createComponentUID(infos);
|
|
41
|
+
if (this.components.has(uid)) {
|
|
42
|
+
throw new ApplicationError('component.alreadyExists');
|
|
43
|
+
}
|
|
44
|
+
const handler = schemaHandler({
|
|
45
|
+
dir: path__default.default.join(strapi.dirs.app.components, utils.strings.nameToSlug(infos.category)),
|
|
46
|
+
filename: `${utils.strings.nameToSlug(infos.displayName)}.json`
|
|
47
|
+
});
|
|
48
|
+
// TODO: create a utility for this
|
|
49
|
+
// Duplicate in admin/src/components/FormModal/forms/utils/createCollectionName.ts
|
|
50
|
+
const collectionName = `components_${utils.strings.nameToCollectionName(infos.category)}_${utils.strings.nameToCollectionName(pluralize__default.default(infos.displayName))}`;
|
|
51
|
+
this.components.forEach((compo)=>{
|
|
52
|
+
if (compo.schema.collectionName === collectionName) {
|
|
53
|
+
throw new ApplicationError('component.alreadyExists');
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
handler.setUID(uid).set('collectionName', collectionName).set([
|
|
57
|
+
'info',
|
|
58
|
+
'displayName'
|
|
59
|
+
], infos.displayName).set([
|
|
60
|
+
'info',
|
|
61
|
+
'icon'
|
|
62
|
+
], infos.icon).set([
|
|
63
|
+
'info',
|
|
64
|
+
'description'
|
|
65
|
+
], infos.description).set('pluginOptions', infos.pluginOptions).set('config', infos.config);
|
|
66
|
+
if (this.components.size === 0) {
|
|
67
|
+
strapi.telemetry.send('didCreateFirstComponent');
|
|
68
|
+
} else {
|
|
69
|
+
strapi.telemetry.send('didCreateComponent');
|
|
70
|
+
}
|
|
71
|
+
this.components.set(uid, handler);
|
|
72
|
+
this.createComponentAttributes(uid, infos.attributes);
|
|
73
|
+
return handler;
|
|
74
|
+
},
|
|
75
|
+
/**
|
|
76
|
+
* create a component in the tmpComponent map
|
|
77
|
+
*/ editComponent (infos) {
|
|
78
|
+
const { uid } = infos;
|
|
79
|
+
if (!this.components.has(uid)) {
|
|
80
|
+
throw new utils.errors.ApplicationError('component.notFound');
|
|
81
|
+
}
|
|
82
|
+
const component = this.components.get(uid);
|
|
83
|
+
const [, nameUID] = uid.split('.');
|
|
84
|
+
const newCategory = utils.strings.nameToSlug(infos.category);
|
|
85
|
+
const newUID = `${newCategory}.${nameUID}`;
|
|
86
|
+
if (newUID !== uid && this.components.has(newUID)) {
|
|
87
|
+
throw new utils.errors.ApplicationError('component.edit.alreadyExists');
|
|
88
|
+
}
|
|
89
|
+
const newDir = path__default.default.join(strapi.dirs.app.components, newCategory);
|
|
90
|
+
const oldAttributes = component.schema.attributes;
|
|
91
|
+
const newAttributes = ___default.default.omitBy(infos.attributes, (attr, key)=>{
|
|
92
|
+
return ___default.default.has(oldAttributes, key) && !attributes.isConfigurable(oldAttributes[key]);
|
|
93
|
+
});
|
|
94
|
+
component.setUID(newUID).setDir(newDir).set([
|
|
95
|
+
'info',
|
|
96
|
+
'displayName'
|
|
97
|
+
], infos.displayName).set([
|
|
98
|
+
'info',
|
|
99
|
+
'icon'
|
|
100
|
+
], infos.icon).set([
|
|
101
|
+
'info',
|
|
102
|
+
'description'
|
|
103
|
+
], infos.description).set('pluginOptions', infos.pluginOptions).setAttributes(this.convertAttributes(newAttributes));
|
|
104
|
+
if (newUID !== uid) {
|
|
105
|
+
this.components.forEach((compo)=>{
|
|
106
|
+
compo.updateComponent(uid, newUID);
|
|
107
|
+
});
|
|
108
|
+
this.contentTypes.forEach((ct)=>{
|
|
109
|
+
ct.updateComponent(uid, newUID);
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
return component;
|
|
113
|
+
},
|
|
114
|
+
deleteComponent (uid) {
|
|
115
|
+
if (!this.components.has(uid)) {
|
|
116
|
+
throw new utils.errors.ApplicationError('component.notFound');
|
|
117
|
+
}
|
|
118
|
+
this.components.forEach((compo)=>{
|
|
119
|
+
compo.removeComponent(uid);
|
|
120
|
+
});
|
|
121
|
+
this.contentTypes.forEach((ct)=>{
|
|
122
|
+
ct.removeComponent(uid);
|
|
123
|
+
});
|
|
124
|
+
return this.components.get(uid).delete();
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
module.exports = createComponentBuilder;
|
|
130
|
+
//# sourceMappingURL=component-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-builder.js","sources":["../../../../server/src/services/schema-builder/component-builder.ts"],"sourcesContent":["import path from 'path';\r\nimport type { Internal } from '@strapi/types';\r\nimport _ from 'lodash';\r\nimport pluralize from 'pluralize';\r\n\r\nimport { strings, errors } from '@strapi/utils';\r\nimport { isConfigurable } from '../../utils/attributes';\r\nimport createSchemaHandler from './schema-handler';\r\n\r\nconst { ApplicationError } = errors;\r\n\r\nexport default function createComponentBuilder() {\r\n return {\r\n createComponentUID({ category, displayName }: any) {\r\n return `${strings.nameToSlug(category)}.${strings.nameToSlug(displayName)}`;\r\n },\r\n\r\n createNewComponentUIDMap(components: object[]) {\r\n return components.reduce((uidMap: any, component: any) => {\r\n uidMap[component.tmpUID] = this.createComponentUID(component);\r\n return uidMap;\r\n }, {});\r\n },\r\n\r\n createComponentAttributes(this: any, uid: string, attributes: any) {\r\n if (!this.components.has(uid)) {\r\n throw new ApplicationError('component.notFound');\r\n }\r\n\r\n return this.components.get(uid).setAttributes(this.convertAttributes(attributes));\r\n },\r\n\r\n /**\r\n * create a component in the tmpComponent map\r\n */\r\n createComponent(this: any, infos: any) {\r\n if (infos.uid && infos.uid !== this.createComponentUID(infos)) {\r\n throw new ApplicationError('component.invalidUID');\r\n }\r\n\r\n const uid = infos.uid ?? this.createComponentUID(infos);\r\n\r\n if (this.components.has(uid)) {\r\n throw new ApplicationError('component.alreadyExists');\r\n }\r\n\r\n const handler = createSchemaHandler({\r\n dir: path.join(strapi.dirs.app.components, strings.nameToSlug(infos.category)),\r\n filename: `${strings.nameToSlug(infos.displayName)}.json`,\r\n });\r\n\r\n // TODO: create a utility for this\r\n // Duplicate in admin/src/components/FormModal/forms/utils/createCollectionName.ts\r\n const collectionName = `components_${strings.nameToCollectionName(\r\n infos.category\r\n )}_${strings.nameToCollectionName(pluralize(infos.displayName))}`;\r\n\r\n this.components.forEach((compo: any) => {\r\n if (compo.schema.collectionName === collectionName) {\r\n throw new ApplicationError('component.alreadyExists');\r\n }\r\n });\r\n\r\n handler\r\n .setUID(uid)\r\n .set('collectionName', collectionName)\r\n .set(['info', 'displayName'], infos.displayName)\r\n .set(['info', 'icon'], infos.icon)\r\n .set(['info', 'description'], infos.description)\r\n .set('pluginOptions', infos.pluginOptions)\r\n .set('config', infos.config);\r\n\r\n if (this.components.size === 0) {\r\n strapi.telemetry.send('didCreateFirstComponent');\r\n } else {\r\n strapi.telemetry.send('didCreateComponent');\r\n }\r\n\r\n this.components.set(uid, handler);\r\n\r\n this.createComponentAttributes(uid, infos.attributes);\r\n\r\n return handler;\r\n },\r\n\r\n /**\r\n * create a component in the tmpComponent map\r\n */\r\n editComponent(this: any, infos: any) {\r\n const { uid } = infos;\r\n\r\n if (!this.components.has(uid)) {\r\n throw new errors.ApplicationError('component.notFound');\r\n }\r\n\r\n const component = this.components.get(uid);\r\n\r\n const [, nameUID] = uid.split('.');\r\n\r\n const newCategory = strings.nameToSlug(infos.category);\r\n const newUID = `${newCategory}.${nameUID}`;\r\n\r\n if (newUID !== uid && this.components.has(newUID)) {\r\n throw new errors.ApplicationError('component.edit.alreadyExists');\r\n }\r\n\r\n const newDir = path.join(strapi.dirs.app.components, newCategory);\r\n\r\n const oldAttributes = component.schema.attributes;\r\n\r\n const newAttributes = _.omitBy(infos.attributes, (attr, key) => {\r\n return _.has(oldAttributes, key) && !isConfigurable(oldAttributes[key]);\r\n });\r\n\r\n component\r\n .setUID(newUID)\r\n .setDir(newDir)\r\n .set(['info', 'displayName'], infos.displayName)\r\n .set(['info', 'icon'], infos.icon)\r\n .set(['info', 'description'], infos.description)\r\n .set('pluginOptions', infos.pluginOptions)\r\n .setAttributes(this.convertAttributes(newAttributes));\r\n\r\n if (newUID !== uid) {\r\n this.components.forEach((compo: any) => {\r\n compo.updateComponent(uid, newUID);\r\n });\r\n\r\n this.contentTypes.forEach((ct: any) => {\r\n ct.updateComponent(uid, newUID);\r\n });\r\n }\r\n\r\n return component;\r\n },\r\n\r\n deleteComponent(this: any, uid: Internal.UID.Component) {\r\n if (!this.components.has(uid)) {\r\n throw new errors.ApplicationError('component.notFound');\r\n }\r\n\r\n this.components.forEach((compo: any) => {\r\n compo.removeComponent(uid);\r\n });\r\n\r\n this.contentTypes.forEach((ct: any) => {\r\n ct.removeComponent(uid);\r\n });\r\n\r\n return this.components.get(uid).delete();\r\n },\r\n };\r\n}\r\n"],"names":["ApplicationError","errors","createComponentBuilder","createComponentUID","category","displayName","strings","nameToSlug","createNewComponentUIDMap","components","reduce","uidMap","component","tmpUID","createComponentAttributes","uid","attributes","has","get","setAttributes","convertAttributes","createComponent","infos","handler","createSchemaHandler","dir","path","join","strapi","dirs","app","filename","collectionName","nameToCollectionName","pluralize","forEach","compo","schema","setUID","set","icon","description","pluginOptions","config","size","telemetry","send","editComponent","nameUID","split","newCategory","newUID","newDir","oldAttributes","newAttributes","_","omitBy","attr","key","isConfigurable","setDir","updateComponent","contentTypes","ct","deleteComponent","removeComponent","delete"],"mappings":"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"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
import path__default from 'path';
|
|
2
|
+
import _ from 'lodash';
|
|
3
|
+
import pluralize from 'pluralize';
|
|
4
|
+
import { errors, strings } from '@strapi/utils';
|
|
5
|
+
import { isConfigurable } from '../../utils/attributes.mjs';
|
|
6
|
+
import createSchemaHandler from './schema-handler.mjs';
|
|
7
|
+
|
|
8
|
+
const { ApplicationError } = errors;
|
|
9
|
+
function createComponentBuilder() {
|
|
10
|
+
return {
|
|
11
|
+
createComponentUID ({ category, displayName }) {
|
|
12
|
+
return `${strings.nameToSlug(category)}.${strings.nameToSlug(displayName)}`;
|
|
13
|
+
},
|
|
14
|
+
createNewComponentUIDMap (components) {
|
|
15
|
+
return components.reduce((uidMap, component)=>{
|
|
16
|
+
uidMap[component.tmpUID] = this.createComponentUID(component);
|
|
17
|
+
return uidMap;
|
|
18
|
+
}, {});
|
|
19
|
+
},
|
|
20
|
+
createComponentAttributes (uid, attributes) {
|
|
21
|
+
if (!this.components.has(uid)) {
|
|
22
|
+
throw new ApplicationError('component.notFound');
|
|
23
|
+
}
|
|
24
|
+
return this.components.get(uid).setAttributes(this.convertAttributes(attributes));
|
|
25
|
+
},
|
|
26
|
+
/**
|
|
27
|
+
* create a component in the tmpComponent map
|
|
28
|
+
*/ createComponent (infos) {
|
|
29
|
+
if (infos.uid && infos.uid !== this.createComponentUID(infos)) {
|
|
30
|
+
throw new ApplicationError('component.invalidUID');
|
|
31
|
+
}
|
|
32
|
+
const uid = infos.uid ?? this.createComponentUID(infos);
|
|
33
|
+
if (this.components.has(uid)) {
|
|
34
|
+
throw new ApplicationError('component.alreadyExists');
|
|
35
|
+
}
|
|
36
|
+
const handler = createSchemaHandler({
|
|
37
|
+
dir: path__default.join(strapi.dirs.app.components, strings.nameToSlug(infos.category)),
|
|
38
|
+
filename: `${strings.nameToSlug(infos.displayName)}.json`
|
|
39
|
+
});
|
|
40
|
+
// TODO: create a utility for this
|
|
41
|
+
// Duplicate in admin/src/components/FormModal/forms/utils/createCollectionName.ts
|
|
42
|
+
const collectionName = `components_${strings.nameToCollectionName(infos.category)}_${strings.nameToCollectionName(pluralize(infos.displayName))}`;
|
|
43
|
+
this.components.forEach((compo)=>{
|
|
44
|
+
if (compo.schema.collectionName === collectionName) {
|
|
45
|
+
throw new ApplicationError('component.alreadyExists');
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
handler.setUID(uid).set('collectionName', collectionName).set([
|
|
49
|
+
'info',
|
|
50
|
+
'displayName'
|
|
51
|
+
], infos.displayName).set([
|
|
52
|
+
'info',
|
|
53
|
+
'icon'
|
|
54
|
+
], infos.icon).set([
|
|
55
|
+
'info',
|
|
56
|
+
'description'
|
|
57
|
+
], infos.description).set('pluginOptions', infos.pluginOptions).set('config', infos.config);
|
|
58
|
+
if (this.components.size === 0) {
|
|
59
|
+
strapi.telemetry.send('didCreateFirstComponent');
|
|
60
|
+
} else {
|
|
61
|
+
strapi.telemetry.send('didCreateComponent');
|
|
62
|
+
}
|
|
63
|
+
this.components.set(uid, handler);
|
|
64
|
+
this.createComponentAttributes(uid, infos.attributes);
|
|
65
|
+
return handler;
|
|
66
|
+
},
|
|
67
|
+
/**
|
|
68
|
+
* create a component in the tmpComponent map
|
|
69
|
+
*/ editComponent (infos) {
|
|
70
|
+
const { uid } = infos;
|
|
71
|
+
if (!this.components.has(uid)) {
|
|
72
|
+
throw new errors.ApplicationError('component.notFound');
|
|
73
|
+
}
|
|
74
|
+
const component = this.components.get(uid);
|
|
75
|
+
const [, nameUID] = uid.split('.');
|
|
76
|
+
const newCategory = strings.nameToSlug(infos.category);
|
|
77
|
+
const newUID = `${newCategory}.${nameUID}`;
|
|
78
|
+
if (newUID !== uid && this.components.has(newUID)) {
|
|
79
|
+
throw new errors.ApplicationError('component.edit.alreadyExists');
|
|
80
|
+
}
|
|
81
|
+
const newDir = path__default.join(strapi.dirs.app.components, newCategory);
|
|
82
|
+
const oldAttributes = component.schema.attributes;
|
|
83
|
+
const newAttributes = _.omitBy(infos.attributes, (attr, key)=>{
|
|
84
|
+
return _.has(oldAttributes, key) && !isConfigurable(oldAttributes[key]);
|
|
85
|
+
});
|
|
86
|
+
component.setUID(newUID).setDir(newDir).set([
|
|
87
|
+
'info',
|
|
88
|
+
'displayName'
|
|
89
|
+
], infos.displayName).set([
|
|
90
|
+
'info',
|
|
91
|
+
'icon'
|
|
92
|
+
], infos.icon).set([
|
|
93
|
+
'info',
|
|
94
|
+
'description'
|
|
95
|
+
], infos.description).set('pluginOptions', infos.pluginOptions).setAttributes(this.convertAttributes(newAttributes));
|
|
96
|
+
if (newUID !== uid) {
|
|
97
|
+
this.components.forEach((compo)=>{
|
|
98
|
+
compo.updateComponent(uid, newUID);
|
|
99
|
+
});
|
|
100
|
+
this.contentTypes.forEach((ct)=>{
|
|
101
|
+
ct.updateComponent(uid, newUID);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
return component;
|
|
105
|
+
},
|
|
106
|
+
deleteComponent (uid) {
|
|
107
|
+
if (!this.components.has(uid)) {
|
|
108
|
+
throw new errors.ApplicationError('component.notFound');
|
|
109
|
+
}
|
|
110
|
+
this.components.forEach((compo)=>{
|
|
111
|
+
compo.removeComponent(uid);
|
|
112
|
+
});
|
|
113
|
+
this.contentTypes.forEach((ct)=>{
|
|
114
|
+
ct.removeComponent(uid);
|
|
115
|
+
});
|
|
116
|
+
return this.components.get(uid).delete();
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
export { createComponentBuilder as default };
|
|
122
|
+
//# sourceMappingURL=component-builder.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component-builder.mjs","sources":["../../../../server/src/services/schema-builder/component-builder.ts"],"sourcesContent":["import path from 'path';\r\nimport type { Internal } from '@strapi/types';\r\nimport _ from 'lodash';\r\nimport pluralize from 'pluralize';\r\n\r\nimport { strings, errors } from '@strapi/utils';\r\nimport { isConfigurable } from '../../utils/attributes';\r\nimport createSchemaHandler from './schema-handler';\r\n\r\nconst { ApplicationError } = errors;\r\n\r\nexport default function createComponentBuilder() {\r\n return {\r\n createComponentUID({ category, displayName }: any) {\r\n return `${strings.nameToSlug(category)}.${strings.nameToSlug(displayName)}`;\r\n },\r\n\r\n createNewComponentUIDMap(components: object[]) {\r\n return components.reduce((uidMap: any, component: any) => {\r\n uidMap[component.tmpUID] = this.createComponentUID(component);\r\n return uidMap;\r\n }, {});\r\n },\r\n\r\n createComponentAttributes(this: any, uid: string, attributes: any) {\r\n if (!this.components.has(uid)) {\r\n throw new ApplicationError('component.notFound');\r\n }\r\n\r\n return this.components.get(uid).setAttributes(this.convertAttributes(attributes));\r\n },\r\n\r\n /**\r\n * create a component in the tmpComponent map\r\n */\r\n createComponent(this: any, infos: any) {\r\n if (infos.uid && infos.uid !== this.createComponentUID(infos)) {\r\n throw new ApplicationError('component.invalidUID');\r\n }\r\n\r\n const uid = infos.uid ?? this.createComponentUID(infos);\r\n\r\n if (this.components.has(uid)) {\r\n throw new ApplicationError('component.alreadyExists');\r\n }\r\n\r\n const handler = createSchemaHandler({\r\n dir: path.join(strapi.dirs.app.components, strings.nameToSlug(infos.category)),\r\n filename: `${strings.nameToSlug(infos.displayName)}.json`,\r\n });\r\n\r\n // TODO: create a utility for this\r\n // Duplicate in admin/src/components/FormModal/forms/utils/createCollectionName.ts\r\n const collectionName = `components_${strings.nameToCollectionName(\r\n infos.category\r\n )}_${strings.nameToCollectionName(pluralize(infos.displayName))}`;\r\n\r\n this.components.forEach((compo: any) => {\r\n if (compo.schema.collectionName === collectionName) {\r\n throw new ApplicationError('component.alreadyExists');\r\n }\r\n });\r\n\r\n handler\r\n .setUID(uid)\r\n .set('collectionName', collectionName)\r\n .set(['info', 'displayName'], infos.displayName)\r\n .set(['info', 'icon'], infos.icon)\r\n .set(['info', 'description'], infos.description)\r\n .set('pluginOptions', infos.pluginOptions)\r\n .set('config', infos.config);\r\n\r\n if (this.components.size === 0) {\r\n strapi.telemetry.send('didCreateFirstComponent');\r\n } else {\r\n strapi.telemetry.send('didCreateComponent');\r\n }\r\n\r\n this.components.set(uid, handler);\r\n\r\n this.createComponentAttributes(uid, infos.attributes);\r\n\r\n return handler;\r\n },\r\n\r\n /**\r\n * create a component in the tmpComponent map\r\n */\r\n editComponent(this: any, infos: any) {\r\n const { uid } = infos;\r\n\r\n if (!this.components.has(uid)) {\r\n throw new errors.ApplicationError('component.notFound');\r\n }\r\n\r\n const component = this.components.get(uid);\r\n\r\n const [, nameUID] = uid.split('.');\r\n\r\n const newCategory = strings.nameToSlug(infos.category);\r\n const newUID = `${newCategory}.${nameUID}`;\r\n\r\n if (newUID !== uid && this.components.has(newUID)) {\r\n throw new errors.ApplicationError('component.edit.alreadyExists');\r\n }\r\n\r\n const newDir = path.join(strapi.dirs.app.components, newCategory);\r\n\r\n const oldAttributes = component.schema.attributes;\r\n\r\n const newAttributes = _.omitBy(infos.attributes, (attr, key) => {\r\n return _.has(oldAttributes, key) && !isConfigurable(oldAttributes[key]);\r\n });\r\n\r\n component\r\n .setUID(newUID)\r\n .setDir(newDir)\r\n .set(['info', 'displayName'], infos.displayName)\r\n .set(['info', 'icon'], infos.icon)\r\n .set(['info', 'description'], infos.description)\r\n .set('pluginOptions', infos.pluginOptions)\r\n .setAttributes(this.convertAttributes(newAttributes));\r\n\r\n if (newUID !== uid) {\r\n this.components.forEach((compo: any) => {\r\n compo.updateComponent(uid, newUID);\r\n });\r\n\r\n this.contentTypes.forEach((ct: any) => {\r\n ct.updateComponent(uid, newUID);\r\n });\r\n }\r\n\r\n return component;\r\n },\r\n\r\n deleteComponent(this: any, uid: Internal.UID.Component) {\r\n if (!this.components.has(uid)) {\r\n throw new errors.ApplicationError('component.notFound');\r\n }\r\n\r\n this.components.forEach((compo: any) => {\r\n compo.removeComponent(uid);\r\n });\r\n\r\n this.contentTypes.forEach((ct: any) => {\r\n ct.removeComponent(uid);\r\n });\r\n\r\n return this.components.get(uid).delete();\r\n },\r\n };\r\n}\r\n"],"names":["ApplicationError","errors","createComponentBuilder","createComponentUID","category","displayName","strings","nameToSlug","createNewComponentUIDMap","components","reduce","uidMap","component","tmpUID","createComponentAttributes","uid","attributes","has","get","setAttributes","convertAttributes","createComponent","infos","handler","createSchemaHandler","dir","path","join","strapi","dirs","app","filename","collectionName","nameToCollectionName","pluralize","forEach","compo","schema","setUID","set","icon","description","pluginOptions","config","size","telemetry","send","editComponent","nameUID","split","newCategory","newUID","newDir","oldAttributes","newAttributes","_","omitBy","attr","key","isConfigurable","setDir","updateComponent","contentTypes","ct","deleteComponent","removeComponent","delete"],"mappings":"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"}
|