@focus-reactive/payload-plugin-translator 0.1.0 → 0.1.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/README.md +27 -14
- package/dist/client/app/cache/CacheProvider.export.js +1 -1
- package/dist/client/entities/translation/ui/CompletedTranslationStatus/styles.module.scss +3 -0
- package/dist/client/entities/translation/ui/FailedTranslationStatus/styles.module.scss +3 -0
- package/dist/client/entities/translation/ui/TranslationDirection/styles.module.scss +16 -0
- package/dist/client/features/collection-translation-form/ui/styles.module.scss +31 -0
- package/dist/client/features/collection-translation-popup/ui/styles.module.scss +18 -0
- package/dist/client/features/collection-translation-progress/ui/styles.module.scss +8 -0
- package/dist/client/features/open-document-translation-popup/ui/styles.module.scss +11 -0
- package/dist/client/features/translate-document-form/ui/styles.module.scss +18 -0
- package/dist/client/shared/ui/Alert/styles.module.scss +31 -0
- package/dist/client/shared/ui/Button/styles.module.scss +103 -0
- package/dist/client/shared/ui/Checkbox/styles.module.scss +17 -0
- package/dist/client/shared/ui/ColorIndicator/styles.module.scss +37 -0
- package/dist/client/shared/ui/Description/styles.module.scss +14 -0
- package/dist/client/shared/ui/Divider/styles.module.scss +56 -0
- package/dist/client/shared/ui/Label/styles.module.scss +12 -0
- package/dist/client/shared/ui/Loading/styles.module.scss +141 -0
- package/dist/client/shared/ui/Popup/styles.module.scss +7 -0
- package/dist/client/shared/ui/ProgressBar/styles.module.scss +64 -0
- package/dist/client/shared/ui/Select/styles.module.scss +55 -0
- package/dist/client/shared/ui/StatusCounter/styles.module.scss +46 -0
- package/dist/client/shared/ui/StatusIndicator/styles.module.scss +12 -0
- package/dist/client/shared/ui/Tooltip/styles.module.scss +84 -0
- package/dist/client/shared/ui/form/FormCheckbox/styles.module.scss +23 -0
- package/dist/client/shared/ui/form/FormCheckboxPublish/styles.module.scss +16 -0
- package/dist/client/shared/ui/form/FormSelectStrategy/styles.module.scss +16 -0
- package/dist/client/shared/utils/componentPath.d.ts +1 -1
- package/dist/client/shared/utils/componentPath.js +1 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.export.js +1 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.export.js +1 -1
- package/package.json +32 -17
- package/dist/client/app/cache/CacheProvider.d.ts.map +0 -1
- package/dist/client/app/cache/CacheProvider.export.d.ts.map +0 -1
- package/dist/client/app/cache/CacheProvider.export.js.map +0 -1
- package/dist/client/app/cache/CacheProvider.js.map +0 -1
- package/dist/client/app/cache/CacheProvider.jsx +0 -11
- package/dist/client/app/config/TranslateKitConfigContext.d.ts.map +0 -1
- package/dist/client/app/config/TranslateKitConfigContext.js.map +0 -1
- package/dist/client/app/config/TranslateKitConfigContext.jsx +0 -13
- package/dist/client/app/config/index.d.ts.map +0 -1
- package/dist/client/app/config/index.js.map +0 -1
- package/dist/client/entities/translation/api/mutations/useCancelCollectionTranslations.d.ts.map +0 -1
- package/dist/client/entities/translation/api/mutations/useCancelCollectionTranslations.js.map +0 -1
- package/dist/client/entities/translation/api/mutations/useCancelDocumentTranslation.d.ts.map +0 -1
- package/dist/client/entities/translation/api/mutations/useCancelDocumentTranslation.js.map +0 -1
- package/dist/client/entities/translation/api/mutations/useQueueDocumentTranslation.d.ts.map +0 -1
- package/dist/client/entities/translation/api/mutations/useQueueDocumentTranslation.js.map +0 -1
- package/dist/client/entities/translation/api/mutations/useQueueDocumentTranslations.d.ts.map +0 -1
- package/dist/client/entities/translation/api/mutations/useQueueDocumentTranslations.js.map +0 -1
- package/dist/client/entities/translation/api/mutations/useRunDocumentTranslation.d.ts.map +0 -1
- package/dist/client/entities/translation/api/mutations/useRunDocumentTranslation.js.map +0 -1
- package/dist/client/entities/translation/api/queries/useCollectionTranslationStatus.d.ts.map +0 -1
- package/dist/client/entities/translation/api/queries/useCollectionTranslationStatus.js.map +0 -1
- package/dist/client/entities/translation/api/queries/useDocumentTranslation.d.ts.map +0 -1
- package/dist/client/entities/translation/api/queries/useDocumentTranslation.js.map +0 -1
- package/dist/client/entities/translation/index.d.ts.map +0 -1
- package/dist/client/entities/translation/index.js.map +0 -1
- package/dist/client/entities/translation/model/enums.d.ts.map +0 -1
- package/dist/client/entities/translation/model/enums.js.map +0 -1
- package/dist/client/entities/translation/model/types.d.ts.map +0 -1
- package/dist/client/entities/translation/model/types.js.map +0 -1
- package/dist/client/entities/translation/ui/CompletedTranslationStatus/CompletedTranslationStatus.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/CompletedTranslationStatus/CompletedTranslationStatus.js.map +0 -1
- package/dist/client/entities/translation/ui/CompletedTranslationStatus/CompletedTranslationStatus.jsx +0 -25
- package/dist/client/entities/translation/ui/CompletedTranslationStatus/index.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/CompletedTranslationStatus/index.js.map +0 -1
- package/dist/client/entities/translation/ui/FailedTranslationStatus/FailedTranslationStatus.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/FailedTranslationStatus/FailedTranslationStatus.js.map +0 -1
- package/dist/client/entities/translation/ui/FailedTranslationStatus/FailedTranslationStatus.jsx +0 -24
- package/dist/client/entities/translation/ui/FailedTranslationStatus/index.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/FailedTranslationStatus/index.js.map +0 -1
- package/dist/client/entities/translation/ui/PendingTranslationStatus/PendingTranslationStatus.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/PendingTranslationStatus/PendingTranslationStatus.js.map +0 -1
- package/dist/client/entities/translation/ui/PendingTranslationStatus/PendingTranslationStatus.jsx +0 -38
- package/dist/client/entities/translation/ui/PendingTranslationStatus/index.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/PendingTranslationStatus/index.js.map +0 -1
- package/dist/client/entities/translation/ui/RunningTranslationStatus/RunningTranslationStatus.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/RunningTranslationStatus/RunningTranslationStatus.js.map +0 -1
- package/dist/client/entities/translation/ui/RunningTranslationStatus/RunningTranslationStatus.jsx +0 -32
- package/dist/client/entities/translation/ui/RunningTranslationStatus/index.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/RunningTranslationStatus/index.js.map +0 -1
- package/dist/client/entities/translation/ui/TranslationDirection/TranslationDirection.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/TranslationDirection/TranslationDirection.js.map +0 -1
- package/dist/client/entities/translation/ui/TranslationDirection/TranslationDirection.jsx +0 -16
- package/dist/client/entities/translation/ui/TranslationDirection/index.d.ts.map +0 -1
- package/dist/client/entities/translation/ui/TranslationDirection/index.js.map +0 -1
- package/dist/client/features/collection-translation-form/index.client.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/index.client.js.map +0 -1
- package/dist/client/features/collection-translation-form/index.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/index.js.map +0 -1
- package/dist/client/features/collection-translation-form/model/constants.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/model/constants.js.map +0 -1
- package/dist/client/features/collection-translation-form/model/form-model.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/model/form-model.js.map +0 -1
- package/dist/client/features/collection-translation-form/model/index.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/model/index.js.map +0 -1
- package/dist/client/features/collection-translation-form/model/schema.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/model/schema.js.map +0 -1
- package/dist/client/features/collection-translation-form/ui/CollectionTranslationForm.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/ui/CollectionTranslationForm.js.map +0 -1
- package/dist/client/features/collection-translation-form/ui/CollectionTranslationForm.jsx +0 -25
- package/dist/client/features/collection-translation-form/ui/index.d.ts.map +0 -1
- package/dist/client/features/collection-translation-form/ui/index.js.map +0 -1
- package/dist/client/features/collection-translation-popup/index.d.ts.map +0 -1
- package/dist/client/features/collection-translation-popup/index.js.map +0 -1
- package/dist/client/features/collection-translation-popup/ui/CollectionTranslationPopup.d.ts.map +0 -1
- package/dist/client/features/collection-translation-popup/ui/CollectionTranslationPopup.js.map +0 -1
- package/dist/client/features/collection-translation-popup/ui/CollectionTranslationPopup.jsx +0 -23
- package/dist/client/features/collection-translation-progress/index.d.ts.map +0 -1
- package/dist/client/features/collection-translation-progress/index.js.map +0 -1
- package/dist/client/features/collection-translation-progress/ui/CollectionTranslationProgress.d.ts.map +0 -1
- package/dist/client/features/collection-translation-progress/ui/CollectionTranslationProgress.js.map +0 -1
- package/dist/client/features/collection-translation-progress/ui/CollectionTranslationProgress.jsx +0 -47
- package/dist/client/features/document-translation-progress-failed/index.d.ts.map +0 -1
- package/dist/client/features/document-translation-progress-failed/index.js.map +0 -1
- package/dist/client/features/document-translation-progress-failed/ui/DocumentTranslationProgressFailed.d.ts.map +0 -1
- package/dist/client/features/document-translation-progress-failed/ui/DocumentTranslationProgressFailed.js.map +0 -1
- package/dist/client/features/document-translation-progress-failed/ui/DocumentTranslationProgressFailed.jsx +0 -19
- package/dist/client/features/document-translation-progress-pending/index.d.ts.map +0 -1
- package/dist/client/features/document-translation-progress-pending/index.js.map +0 -1
- package/dist/client/features/document-translation-progress-pending/ui/DocumentTranslationProgressPending.d.ts.map +0 -1
- package/dist/client/features/document-translation-progress-pending/ui/DocumentTranslationProgressPending.js.map +0 -1
- package/dist/client/features/document-translation-progress-pending/ui/DocumentTranslationProgressPending.jsx +0 -34
- package/dist/client/features/document-translation-progress-running/index.d.ts.map +0 -1
- package/dist/client/features/document-translation-progress-running/index.js.map +0 -1
- package/dist/client/features/document-translation-progress-running/ui/DocumentTranslationProgressRunning.d.ts.map +0 -1
- package/dist/client/features/document-translation-progress-running/ui/DocumentTranslationProgressRunning.js.map +0 -1
- package/dist/client/features/document-translation-progress-running/ui/DocumentTranslationProgressRunning.jsx +0 -19
- package/dist/client/features/open-document-translation-popup/index.d.ts.map +0 -1
- package/dist/client/features/open-document-translation-popup/index.js.map +0 -1
- package/dist/client/features/open-document-translation-popup/ui/OpenDocumentTranslationPopup.d.ts.map +0 -1
- package/dist/client/features/open-document-translation-popup/ui/OpenDocumentTranslationPopup.js.map +0 -1
- package/dist/client/features/open-document-translation-popup/ui/OpenDocumentTranslationPopup.jsx +0 -15
- package/dist/client/features/translate-document-form/index.client.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/index.client.js.map +0 -1
- package/dist/client/features/translate-document-form/index.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/index.js.map +0 -1
- package/dist/client/features/translate-document-form/model/constants.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/model/constants.js.map +0 -1
- package/dist/client/features/translate-document-form/model/form-model.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/model/form-model.js.map +0 -1
- package/dist/client/features/translate-document-form/model/index.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/model/index.js.map +0 -1
- package/dist/client/features/translate-document-form/model/schema.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/model/schema.js.map +0 -1
- package/dist/client/features/translate-document-form/ui/DocumentTranslationForm.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/ui/DocumentTranslationForm.js.map +0 -1
- package/dist/client/features/translate-document-form/ui/DocumentTranslationForm.jsx +0 -24
- package/dist/client/features/translate-document-form/ui/index.d.ts.map +0 -1
- package/dist/client/features/translate-document-form/ui/index.js.map +0 -1
- package/dist/client/shared/lib/assets/icons/LanguageTranslateIcon.d.ts.map +0 -1
- package/dist/client/shared/lib/assets/icons/LanguageTranslateIcon.js.map +0 -1
- package/dist/client/shared/lib/assets/icons/LanguageTranslateIcon.jsx +0 -4
- package/dist/client/shared/lib/assets/icons/QuestionCircleIcon.d.ts.map +0 -1
- package/dist/client/shared/lib/assets/icons/QuestionCircleIcon.js.map +0 -1
- package/dist/client/shared/lib/assets/icons/QuestionCircleIcon.jsx +0 -3
- package/dist/client/shared/lib/assets/icons/ReloadIcon.d.ts.map +0 -1
- package/dist/client/shared/lib/assets/icons/ReloadIcon.js.map +0 -1
- package/dist/client/shared/lib/assets/icons/ReloadIcon.jsx +0 -3
- package/dist/client/shared/lib/errors/handleApiError.d.ts.map +0 -1
- package/dist/client/shared/lib/errors/handleApiError.js.map +0 -1
- package/dist/client/shared/lib/forms/handle-form-error.d.ts.map +0 -1
- package/dist/client/shared/lib/forms/handle-form-error.js.map +0 -1
- package/dist/client/shared/lib/payload/hooks/useCollectionDashboardUrlParams.d.ts.map +0 -1
- package/dist/client/shared/lib/payload/hooks/useCollectionDashboardUrlParams.js.map +0 -1
- package/dist/client/shared/lib/payload/hooks/useCollectionDocumentUrlParams.d.ts.map +0 -1
- package/dist/client/shared/lib/payload/hooks/useCollectionDocumentUrlParams.js.map +0 -1
- package/dist/client/shared/lib/payload/hooks/useLocaleOptions.d.ts.map +0 -1
- package/dist/client/shared/lib/payload/hooks/useLocaleOptions.js.map +0 -1
- package/dist/client/shared/lib/utils/errors/handleApiError.d.ts.map +0 -1
- package/dist/client/shared/lib/utils/errors/handleApiError.js.map +0 -1
- package/dist/client/shared/lib/utils/react/useToggle.d.ts.map +0 -1
- package/dist/client/shared/lib/utils/react/useToggle.js.map +0 -1
- package/dist/client/shared/providers/CacheClientProvider/CacheClientProvider.factory.d.ts.map +0 -1
- package/dist/client/shared/providers/CacheClientProvider/CacheClientProvider.factory.js.map +0 -1
- package/dist/client/shared/providers/CacheClientProvider/index.d.ts.map +0 -1
- package/dist/client/shared/providers/CacheClientProvider/index.js.map +0 -1
- package/dist/client/shared/types/AccessGuard.d.ts.map +0 -1
- package/dist/client/shared/types/AccessGuard.js.map +0 -1
- package/dist/client/shared/types/PayloadComponentExport.d.ts.map +0 -1
- package/dist/client/shared/types/PayloadComponentExport.js.map +0 -1
- package/dist/client/shared/ui/Alert/Alert.d.ts.map +0 -1
- package/dist/client/shared/ui/Alert/Alert.js.map +0 -1
- package/dist/client/shared/ui/Alert/Alert.jsx +0 -33
- package/dist/client/shared/ui/Alert/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Alert/index.js.map +0 -1
- package/dist/client/shared/ui/Button/Button.d.ts.map +0 -1
- package/dist/client/shared/ui/Button/Button.js.map +0 -1
- package/dist/client/shared/ui/Button/Button.jsx +0 -35
- package/dist/client/shared/ui/Button/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Button/index.js.map +0 -1
- package/dist/client/shared/ui/Checkbox/Checkbox.d.ts.map +0 -1
- package/dist/client/shared/ui/Checkbox/Checkbox.js.map +0 -1
- package/dist/client/shared/ui/Checkbox/Checkbox.jsx +0 -6
- package/dist/client/shared/ui/Checkbox/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Checkbox/index.js.map +0 -1
- package/dist/client/shared/ui/ColorIndicator/ColorIndicator.d.ts.map +0 -1
- package/dist/client/shared/ui/ColorIndicator/ColorIndicator.js.map +0 -1
- package/dist/client/shared/ui/ColorIndicator/ColorIndicator.jsx +0 -7
- package/dist/client/shared/ui/ColorIndicator/index.d.ts.map +0 -1
- package/dist/client/shared/ui/ColorIndicator/index.js.map +0 -1
- package/dist/client/shared/ui/Description/Description.d.ts.map +0 -1
- package/dist/client/shared/ui/Description/Description.js.map +0 -1
- package/dist/client/shared/ui/Description/Description.jsx +0 -7
- package/dist/client/shared/ui/Description/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Description/index.js.map +0 -1
- package/dist/client/shared/ui/Divider/Divider.d.ts.map +0 -1
- package/dist/client/shared/ui/Divider/Divider.js.map +0 -1
- package/dist/client/shared/ui/Divider/Divider.jsx +0 -7
- package/dist/client/shared/ui/Divider/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Divider/index.js.map +0 -1
- package/dist/client/shared/ui/Label/Label.d.ts.map +0 -1
- package/dist/client/shared/ui/Label/Label.js.map +0 -1
- package/dist/client/shared/ui/Label/Label.jsx +0 -9
- package/dist/client/shared/ui/Label/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Label/index.js.map +0 -1
- package/dist/client/shared/ui/Loading/Loading.d.ts.map +0 -1
- package/dist/client/shared/ui/Loading/Loading.js.map +0 -1
- package/dist/client/shared/ui/Loading/Loading.jsx +0 -11
- package/dist/client/shared/ui/Loading/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Loading/index.js.map +0 -1
- package/dist/client/shared/ui/Popup/Popup.d.ts.map +0 -1
- package/dist/client/shared/ui/Popup/Popup.js.map +0 -1
- package/dist/client/shared/ui/Popup/Popup.jsx +0 -13
- package/dist/client/shared/ui/Popup/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Popup/index.js.map +0 -1
- package/dist/client/shared/ui/ProgressBar/ProgressBar.d.ts.map +0 -1
- package/dist/client/shared/ui/ProgressBar/ProgressBar.js.map +0 -1
- package/dist/client/shared/ui/ProgressBar/ProgressBar.jsx +0 -11
- package/dist/client/shared/ui/ProgressBar/index.d.ts.map +0 -1
- package/dist/client/shared/ui/ProgressBar/index.js.map +0 -1
- package/dist/client/shared/ui/Select/Select.d.ts.map +0 -1
- package/dist/client/shared/ui/Select/Select.js.map +0 -1
- package/dist/client/shared/ui/Select/Select.jsx +0 -41
- package/dist/client/shared/ui/Select/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Select/index.js.map +0 -1
- package/dist/client/shared/ui/StatusCounter/StatusCounter.d.ts.map +0 -1
- package/dist/client/shared/ui/StatusCounter/StatusCounter.js.map +0 -1
- package/dist/client/shared/ui/StatusCounter/StatusCounter.jsx +0 -26
- package/dist/client/shared/ui/StatusCounter/index.d.ts.map +0 -1
- package/dist/client/shared/ui/StatusCounter/index.js.map +0 -1
- package/dist/client/shared/ui/StatusIndicator/StatusIndicator.d.ts.map +0 -1
- package/dist/client/shared/ui/StatusIndicator/StatusIndicator.js.map +0 -1
- package/dist/client/shared/ui/StatusIndicator/StatusIndicator.jsx +0 -10
- package/dist/client/shared/ui/StatusIndicator/index.d.ts.map +0 -1
- package/dist/client/shared/ui/StatusIndicator/index.js.map +0 -1
- package/dist/client/shared/ui/Tooltip/Tooltip.d.ts.map +0 -1
- package/dist/client/shared/ui/Tooltip/Tooltip.js.map +0 -1
- package/dist/client/shared/ui/Tooltip/Tooltip.jsx +0 -16
- package/dist/client/shared/ui/Tooltip/index.d.ts.map +0 -1
- package/dist/client/shared/ui/Tooltip/index.js.map +0 -1
- package/dist/client/shared/ui/form/FormCheckbox/FormCheckbox.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormCheckbox/FormCheckbox.js.map +0 -1
- package/dist/client/shared/ui/form/FormCheckbox/FormCheckbox.jsx +0 -24
- package/dist/client/shared/ui/form/FormCheckbox/index.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormCheckbox/index.js.map +0 -1
- package/dist/client/shared/ui/form/FormCheckboxPublish/FormCheckboxPublish.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormCheckboxPublish/FormCheckboxPublish.js.map +0 -1
- package/dist/client/shared/ui/form/FormCheckboxPublish/FormCheckboxPublish.jsx +0 -21
- package/dist/client/shared/ui/form/FormCheckboxPublish/index.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormCheckboxPublish/index.js.map +0 -1
- package/dist/client/shared/ui/form/FormSelect/FormSelect.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormSelect/FormSelect.js.map +0 -1
- package/dist/client/shared/ui/form/FormSelect/FormSelect.jsx +0 -44
- package/dist/client/shared/ui/form/FormSelect/index.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormSelect/index.js.map +0 -1
- package/dist/client/shared/ui/form/FormSelectLocale/FormSelectLocale.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormSelectLocale/FormSelectLocale.js.map +0 -1
- package/dist/client/shared/ui/form/FormSelectLocale/FormSelectLocale.jsx +0 -6
- package/dist/client/shared/ui/form/FormSelectLocale/index.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormSelectLocale/index.js.map +0 -1
- package/dist/client/shared/ui/form/FormSelectStrategy/FormSelectStrategy.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormSelectStrategy/FormSelectStrategy.js.map +0 -1
- package/dist/client/shared/ui/form/FormSelectStrategy/FormSelectStrategy.jsx +0 -25
- package/dist/client/shared/ui/form/FormSelectStrategy/index.d.ts.map +0 -1
- package/dist/client/shared/ui/form/FormSelectStrategy/index.js.map +0 -1
- package/dist/client/shared/utils/componentPath.d.ts.map +0 -1
- package/dist/client/shared/utils/componentPath.js.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/index.d.ts.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/index.js.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.d.ts.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.export.d.ts.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.export.js.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.export.jsx +0 -11
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.js.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.jsx +0 -55
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.server.d.ts.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.server.js.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/BulkTranslationDashboard.server.jsx +0 -17
- package/dist/client/widgets/bulk-translation-dashboard/ui/index.d.ts.map +0 -1
- package/dist/client/widgets/bulk-translation-dashboard/ui/index.js.map +0 -1
- package/dist/client/widgets/translate-document/index.d.ts.map +0 -1
- package/dist/client/widgets/translate-document/index.js.map +0 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.d.ts.map +0 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.export.d.ts.map +0 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.export.js.map +0 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.js.map +0 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.jsx +0 -55
- package/dist/client/widgets/translate-document/ui/TranslateDocument.server.d.ts.map +0 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.server.js.map +0 -1
- package/dist/client/widgets/translate-document/ui/TranslateDocument.server.jsx +0 -16
- package/dist/client/widgets/translate-document/ui/index.d.ts.map +0 -1
- package/dist/client/widgets/translate-document/ui/index.js.map +0 -1
- package/dist/field-config.d.ts.map +0 -1
- package/dist/field-config.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/plugin.d.ts.map +0 -1
- package/dist/plugin.js.map +0 -1
- package/dist/server/features/_lib/collection-utils.d.ts.map +0 -1
- package/dist/server/features/_lib/collection-utils.js.map +0 -1
- package/dist/server/features/_lib/index.d.ts.map +0 -1
- package/dist/server/features/_lib/index.js.map +0 -1
- package/dist/server/features/cancel/handler.d.ts.map +0 -1
- package/dist/server/features/cancel/handler.js.map +0 -1
- package/dist/server/features/cancel/handler.test.d.ts +0 -2
- package/dist/server/features/cancel/handler.test.d.ts.map +0 -1
- package/dist/server/features/cancel/handler.test.js +0 -63
- package/dist/server/features/cancel/index.d.ts.map +0 -1
- package/dist/server/features/cancel/index.js.map +0 -1
- package/dist/server/features/cancel/model.d.ts.map +0 -1
- package/dist/server/features/cancel/model.js.map +0 -1
- package/dist/server/features/cancel/route.d.ts.map +0 -1
- package/dist/server/features/cancel/route.js.map +0 -1
- package/dist/server/features/cancel-by-collection/handler.d.ts.map +0 -1
- package/dist/server/features/cancel-by-collection/handler.js.map +0 -1
- package/dist/server/features/cancel-by-collection/handler.test.d.ts +0 -2
- package/dist/server/features/cancel-by-collection/handler.test.d.ts.map +0 -1
- package/dist/server/features/cancel-by-collection/handler.test.js +0 -126
- package/dist/server/features/cancel-by-collection/index.d.ts.map +0 -1
- package/dist/server/features/cancel-by-collection/index.js.map +0 -1
- package/dist/server/features/cancel-by-collection/model.d.ts.map +0 -1
- package/dist/server/features/cancel-by-collection/model.js.map +0 -1
- package/dist/server/features/cancel-by-collection/route.d.ts.map +0 -1
- package/dist/server/features/cancel-by-collection/route.js.map +0 -1
- package/dist/server/features/enqueue-translation/handler.d.ts.map +0 -1
- package/dist/server/features/enqueue-translation/handler.js.map +0 -1
- package/dist/server/features/enqueue-translation/handler.test.d.ts +0 -2
- package/dist/server/features/enqueue-translation/handler.test.d.ts.map +0 -1
- package/dist/server/features/enqueue-translation/handler.test.js +0 -115
- package/dist/server/features/enqueue-translation/index.d.ts.map +0 -1
- package/dist/server/features/enqueue-translation/index.js.map +0 -1
- package/dist/server/features/enqueue-translation/model.d.ts.map +0 -1
- package/dist/server/features/enqueue-translation/model.js.map +0 -1
- package/dist/server/features/enqueue-translation/route.d.ts.map +0 -1
- package/dist/server/features/enqueue-translation/route.js.map +0 -1
- package/dist/server/features/get-collection-status/handler.d.ts.map +0 -1
- package/dist/server/features/get-collection-status/handler.js.map +0 -1
- package/dist/server/features/get-collection-status/handler.test.d.ts +0 -2
- package/dist/server/features/get-collection-status/handler.test.d.ts.map +0 -1
- package/dist/server/features/get-collection-status/handler.test.js +0 -108
- package/dist/server/features/get-collection-status/index.d.ts.map +0 -1
- package/dist/server/features/get-collection-status/index.js.map +0 -1
- package/dist/server/features/get-collection-status/model.d.ts.map +0 -1
- package/dist/server/features/get-collection-status/model.js.map +0 -1
- package/dist/server/features/get-collection-status/route.d.ts.map +0 -1
- package/dist/server/features/get-collection-status/route.js.map +0 -1
- package/dist/server/features/get-document-status/handler.d.ts.map +0 -1
- package/dist/server/features/get-document-status/handler.js.map +0 -1
- package/dist/server/features/get-document-status/handler.test.d.ts +0 -2
- package/dist/server/features/get-document-status/handler.test.d.ts.map +0 -1
- package/dist/server/features/get-document-status/handler.test.js +0 -138
- package/dist/server/features/get-document-status/index.d.ts.map +0 -1
- package/dist/server/features/get-document-status/index.js.map +0 -1
- package/dist/server/features/get-document-status/model.d.ts.map +0 -1
- package/dist/server/features/get-document-status/model.js.map +0 -1
- package/dist/server/features/get-document-status/route.d.ts.map +0 -1
- package/dist/server/features/get-document-status/route.js.map +0 -1
- package/dist/server/features/index.d.ts.map +0 -1
- package/dist/server/features/index.js.map +0 -1
- package/dist/server/features/run-translation/handler.d.ts.map +0 -1
- package/dist/server/features/run-translation/handler.js.map +0 -1
- package/dist/server/features/run-translation/handler.test.d.ts +0 -2
- package/dist/server/features/run-translation/handler.test.d.ts.map +0 -1
- package/dist/server/features/run-translation/handler.test.js +0 -98
- package/dist/server/features/run-translation/index.d.ts.map +0 -1
- package/dist/server/features/run-translation/index.js.map +0 -1
- package/dist/server/features/run-translation/model.d.ts.map +0 -1
- package/dist/server/features/run-translation/model.js.map +0 -1
- package/dist/server/features/run-translation/route.d.ts.map +0 -1
- package/dist/server/features/run-translation/route.js.map +0 -1
- package/dist/server/features/translate-document/handler.d.ts.map +0 -1
- package/dist/server/features/translate-document/handler.js.map +0 -1
- package/dist/server/features/translate-document/handler.test.d.ts +0 -2
- package/dist/server/features/translate-document/handler.test.d.ts.map +0 -1
- package/dist/server/features/translate-document/handler.test.js +0 -171
- package/dist/server/features/translate-document/index.d.ts.map +0 -1
- package/dist/server/features/translate-document/index.js.map +0 -1
- package/dist/server/features/translate-document/model.d.ts.map +0 -1
- package/dist/server/features/translate-document/model.js.map +0 -1
- package/dist/server/features/translate-document/task.d.ts.map +0 -1
- package/dist/server/features/translate-document/task.js.map +0 -1
- package/dist/server/index.d.ts.map +0 -1
- package/dist/server/index.js.map +0 -1
- package/dist/server/modules/index.d.ts.map +0 -1
- package/dist/server/modules/index.js.map +0 -1
- package/dist/server/modules/task-runner/TaskRunner.interface.d.ts.map +0 -1
- package/dist/server/modules/task-runner/TaskRunner.interface.js.map +0 -1
- package/dist/server/modules/task-runner/TaskRunnerProvider.interface.d.ts.map +0 -1
- package/dist/server/modules/task-runner/TaskRunnerProvider.interface.js.map +0 -1
- package/dist/server/modules/task-runner/index.d.ts.map +0 -1
- package/dist/server/modules/task-runner/index.js.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/PayloadJobsRunnerProvider.d.ts.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/PayloadJobsRunnerProvider.js.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/PayloadJobsTaskRunner.d.ts.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/PayloadJobsTaskRunner.js.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/PayloadJobsTaskRunner.test.d.ts +0 -2
- package/dist/server/modules/task-runner/payload-jobs-runner/PayloadJobsTaskRunner.test.d.ts.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/PayloadJobsTaskRunner.test.js +0 -188
- package/dist/server/modules/task-runner/payload-jobs-runner/index.d.ts.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/index.js.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/normalizeJob.d.ts.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/normalizeJob.js.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/normalizeJob.test.d.ts +0 -2
- package/dist/server/modules/task-runner/payload-jobs-runner/normalizeJob.test.d.ts.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/normalizeJob.test.js +0 -169
- package/dist/server/modules/task-runner/payload-jobs-runner/types.d.ts.map +0 -1
- package/dist/server/modules/task-runner/payload-jobs-runner/types.js.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/SyncRunnerProvider.d.ts.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/SyncRunnerProvider.js.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/SyncTaskRunner.d.ts.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/SyncTaskRunner.js.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/SyncTaskRunner.test.d.ts +0 -2
- package/dist/server/modules/task-runner/sync-runner/SyncTaskRunner.test.d.ts.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/SyncTaskRunner.test.js +0 -148
- package/dist/server/modules/task-runner/sync-runner/index.d.ts.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/index.js.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/types.d.ts.map +0 -1
- package/dist/server/modules/task-runner/sync-runner/types.js.map +0 -1
- package/dist/server/modules/task-runner/types.d.ts.map +0 -1
- package/dist/server/modules/task-runner/types.js.map +0 -1
- package/dist/server/modules/translation-pipeline/TranslationPipeline.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/TranslationPipeline.js.map +0 -1
- package/dist/server/modules/translation-pipeline/TranslationPipeline.test.d.ts +0 -2
- package/dist/server/modules/translation-pipeline/TranslationPipeline.test.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/TranslationPipeline.test.js +0 -552
- package/dist/server/modules/translation-pipeline/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/DataReconciler.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/DataReconciler.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/DataReconciler.stage.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/DataReconciler.stage.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/DataReconciler.test.d.ts +0 -2
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/DataReconciler.test.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/DataReconciler.test.js +0 -294
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/data-reconciler/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/field-collector/FieldChunkCollector.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/field-collector/FieldChunkCollector.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/field-collector/FieldChunkCollector.stage.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/field-collector/FieldChunkCollector.stage.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/field-collector/FieldChunkCollector.test.d.ts +0 -2
- package/dist/server/modules/translation-pipeline/stages/field-collector/FieldChunkCollector.test.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/field-collector/FieldChunkCollector.test.js +0 -737
- package/dist/server/modules/translation-pipeline/stages/field-collector/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/field-collector/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/PlainTextExpander.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/PlainTextExpander.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/RichTextExpander.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/RichTextExpander.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextChunkExpander.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextChunkExpander.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextChunkExpander.stage.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextChunkExpander.stage.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextChunkExpander.test.d.ts +0 -2
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextChunkExpander.test.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextChunkExpander.test.js +0 -396
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextExpander.interface.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/TextExpander.interface.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/text-expander/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation/Translation.stage.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation/Translation.stage.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/TranslationMutator.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/TranslationMutator.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/TranslationMutator.stage.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/TranslationMutator.stage.js.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/TranslationMutator.test.d.ts +0 -2
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/TranslationMutator.test.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/TranslationMutator.test.js +0 -110
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/stages/translation-applicator/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/Overwrite.strategy.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/Overwrite.strategy.js.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/Overwrite.strategy.test.d.ts +0 -2
- package/dist/server/modules/translation-pipeline/strategies/Overwrite.strategy.test.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/Overwrite.strategy.test.js +0 -36
- package/dist/server/modules/translation-pipeline/strategies/SkipExisting.strategy.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/SkipExisting.strategy.js.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/SkipExisting.strategy.test.d.ts +0 -2
- package/dist/server/modules/translation-pipeline/strategies/SkipExisting.strategy.test.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/SkipExisting.strategy.test.js +0 -77
- package/dist/server/modules/translation-pipeline/strategies/TranslationStrategy.interface.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/TranslationStrategy.interface.js.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/strategies/index.js.map +0 -1
- package/dist/server/modules/translation-pipeline/types/FieldChunk.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/types/FieldChunk.js.map +0 -1
- package/dist/server/modules/translation-pipeline/types/Pipeline.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/types/Pipeline.js.map +0 -1
- package/dist/server/modules/translation-pipeline/types/PipelineContext.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/types/PipelineContext.js.map +0 -1
- package/dist/server/modules/translation-pipeline/types/TextChunk.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/types/TextChunk.js.map +0 -1
- package/dist/server/modules/translation-pipeline/types/index.d.ts.map +0 -1
- package/dist/server/modules/translation-pipeline/types/index.js.map +0 -1
- package/dist/server/modules/translation-providers/OpenAITranslation.provider.d.ts.map +0 -1
- package/dist/server/modules/translation-providers/OpenAITranslation.provider.js.map +0 -1
- package/dist/server/modules/translation-providers/OpenAITranslation.provider.test.d.ts +0 -2
- package/dist/server/modules/translation-providers/OpenAITranslation.provider.test.d.ts.map +0 -1
- package/dist/server/modules/translation-providers/OpenAITranslation.provider.test.js +0 -214
- package/dist/server/modules/translation-providers/TranslationProvider.interface.d.ts.map +0 -1
- package/dist/server/modules/translation-providers/TranslationProvider.interface.js.map +0 -1
- package/dist/server/modules/translation-providers/index.d.ts.map +0 -1
- package/dist/server/modules/translation-providers/index.js.map +0 -1
- package/dist/server/shared/access/AnyAccessGuard.d.ts.map +0 -1
- package/dist/server/shared/access/AnyAccessGuard.js.map +0 -1
- package/dist/server/shared/access/handler.d.ts.map +0 -1
- package/dist/server/shared/access/handler.js.map +0 -1
- package/dist/server/shared/access/index.d.ts.map +0 -1
- package/dist/server/shared/access/index.js.map +0 -1
- package/dist/server/shared/access/types.d.ts.map +0 -1
- package/dist/server/shared/access/types.js.map +0 -1
- package/dist/server/shared/field-config/getFieldConfig.d.ts.map +0 -1
- package/dist/server/shared/field-config/getFieldConfig.js.map +0 -1
- package/dist/server/shared/field-config/getFieldConfig.test.d.ts +0 -2
- package/dist/server/shared/field-config/getFieldConfig.test.d.ts.map +0 -1
- package/dist/server/shared/field-config/getFieldConfig.test.js +0 -74
- package/dist/server/shared/field-config/index.d.ts.map +0 -1
- package/dist/server/shared/field-config/index.js.map +0 -1
- package/dist/server/shared/field-config/types.d.ts.map +0 -1
- package/dist/server/shared/field-config/types.js.map +0 -1
- package/dist/server/shared/guards/collection-guards.d.ts.map +0 -1
- package/dist/server/shared/guards/collection-guards.js.map +0 -1
- package/dist/server/shared/guards/field-guards.d.ts.map +0 -1
- package/dist/server/shared/guards/field-guards.js.map +0 -1
- package/dist/server/shared/guards/field-guards.test.d.ts +0 -2
- package/dist/server/shared/guards/field-guards.test.d.ts.map +0 -1
- package/dist/server/shared/guards/field-guards.test.js +0 -166
- package/dist/server/shared/guards/index.d.ts.map +0 -1
- package/dist/server/shared/guards/index.js.map +0 -1
- package/dist/server/shared/http/ServerResponse.d.ts.map +0 -1
- package/dist/server/shared/http/ServerResponse.js.map +0 -1
- package/dist/server/shared/http/ServerResponse.test.d.ts +0 -2
- package/dist/server/shared/http/ServerResponse.test.d.ts.map +0 -1
- package/dist/server/shared/http/ServerResponse.test.js +0 -161
- package/dist/server/shared/http/index.d.ts.map +0 -1
- package/dist/server/shared/http/index.js.map +0 -1
- package/dist/server/shared/http/withAccessCheck.d.ts.map +0 -1
- package/dist/server/shared/http/withAccessCheck.js.map +0 -1
- package/dist/server/shared/http/withAccessCheck.test.d.ts +0 -2
- package/dist/server/shared/http/withAccessCheck.test.d.ts.map +0 -1
- package/dist/server/shared/http/withAccessCheck.test.js +0 -46
- package/dist/server/shared/http/withErrorHandler.d.ts.map +0 -1
- package/dist/server/shared/http/withErrorHandler.js.map +0 -1
- package/dist/server/shared/http/withErrorHandler.test.d.ts +0 -2
- package/dist/server/shared/http/withErrorHandler.test.d.ts.map +0 -1
- package/dist/server/shared/http/withErrorHandler.test.js +0 -69
- package/dist/server/shared/index.d.ts.map +0 -1
- package/dist/server/shared/index.js.map +0 -1
- package/dist/server/shared/lexical/collectTextNodes.d.ts.map +0 -1
- package/dist/server/shared/lexical/collectTextNodes.js.map +0 -1
- package/dist/server/shared/lexical/collectTextNodes.test.d.ts +0 -2
- package/dist/server/shared/lexical/collectTextNodes.test.d.ts.map +0 -1
- package/dist/server/shared/lexical/collectTextNodes.test.js +0 -120
- package/dist/server/shared/lexical/guards.d.ts.map +0 -1
- package/dist/server/shared/lexical/guards.js.map +0 -1
- package/dist/server/shared/lexical/guards.test.d.ts +0 -2
- package/dist/server/shared/lexical/guards.test.d.ts.map +0 -1
- package/dist/server/shared/lexical/guards.test.js +0 -160
- package/dist/server/shared/lexical/index.d.ts.map +0 -1
- package/dist/server/shared/lexical/index.js.map +0 -1
- package/dist/server/shared/lexical/isEmptyRichText.d.ts.map +0 -1
- package/dist/server/shared/lexical/isEmptyRichText.js.map +0 -1
- package/dist/server/shared/lexical/isEmptyRichText.test.d.ts +0 -2
- package/dist/server/shared/lexical/isEmptyRichText.test.d.ts.map +0 -1
- package/dist/server/shared/lexical/isEmptyRichText.test.js +0 -251
- package/dist/server/shared/lexical/traverseLexicalTree.d.ts.map +0 -1
- package/dist/server/shared/lexical/traverseLexicalTree.js.map +0 -1
- package/dist/server/shared/lexical/traverseLexicalTree.test.d.ts +0 -2
- package/dist/server/shared/lexical/traverseLexicalTree.test.d.ts.map +0 -1
- package/dist/server/shared/lexical/traverseLexicalTree.test.js +0 -112
- package/dist/server/shared/lexical/types.d.ts.map +0 -1
- package/dist/server/shared/lexical/types.js.map +0 -1
- package/dist/server/shared/utils/LazyMap.d.ts.map +0 -1
- package/dist/server/shared/utils/LazyMap.js.map +0 -1
- package/dist/server/shared/utils/LazyMap.test.d.ts +0 -2
- package/dist/server/shared/utils/LazyMap.test.d.ts.map +0 -1
- package/dist/server/shared/utils/LazyMap.test.js +0 -262
- package/dist/server/shared/utils/filterLocalizedFields.d.ts.map +0 -1
- package/dist/server/shared/utils/filterLocalizedFields.js.map +0 -1
- package/dist/server/shared/utils/filterLocalizedFields.test.d.ts +0 -2
- package/dist/server/shared/utils/filterLocalizedFields.test.d.ts.map +0 -1
- package/dist/server/shared/utils/filterLocalizedFields.test.js +0 -338
- package/dist/server/shared/utils/getByPath.d.ts.map +0 -1
- package/dist/server/shared/utils/getByPath.js.map +0 -1
- package/dist/server/shared/utils/getByPath.test.d.ts +0 -2
- package/dist/server/shared/utils/getByPath.test.d.ts.map +0 -1
- package/dist/server/shared/utils/getByPath.test.js +0 -33
- package/dist/server/shared/utils/index.d.ts.map +0 -1
- package/dist/server/shared/utils/index.js.map +0 -1
- package/dist/server/shared/utils/isEmpty.d.ts.map +0 -1
- package/dist/server/shared/utils/isEmpty.js.map +0 -1
- package/dist/server/shared/utils/isEmpty.test.d.ts +0 -2
- package/dist/server/shared/utils/isEmpty.test.d.ts.map +0 -1
- package/dist/server/shared/utils/isEmpty.test.js +0 -60
- package/dist/server/shared/utils/isObject.d.ts.map +0 -1
- package/dist/server/shared/utils/isObject.js.map +0 -1
- package/dist/server/shared/utils/isObject.test.d.ts +0 -2
- package/dist/server/shared/utils/isObject.test.d.ts.map +0 -1
- package/dist/server/shared/utils/isObject.test.js +0 -57
- package/dist/server/shared/utils/normalizePath.d.ts.map +0 -1
- package/dist/server/shared/utils/normalizePath.js.map +0 -1
- package/dist/server/shared/utils/normalizePath.test.d.ts +0 -2
- package/dist/server/shared/utils/normalizePath.test.d.ts.map +0 -1
- package/dist/server/shared/utils/normalizePath.test.js +0 -33
- package/dist/server/shared/utils/pipe.d.ts.map +0 -1
- package/dist/server/shared/utils/pipe.js.map +0 -1
- package/dist/server/shared/utils/pipe.test.d.ts +0 -2
- package/dist/server/shared/utils/pipe.test.d.ts.map +0 -1
- package/dist/server/shared/utils/pipe.test.js +0 -55
- package/dist/server/shared/utils/setByPath.d.ts.map +0 -1
- package/dist/server/shared/utils/setByPath.js.map +0 -1
- package/dist/server/shared/utils/setByPath.test.d.ts +0 -2
- package/dist/server/shared/utils/setByPath.test.d.ts.map +0 -1
- package/dist/server/shared/utils/setByPath.test.js +0 -46
- package/dist/types/AccessGuard.d.ts.map +0 -1
- package/dist/types/AccessGuard.js.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/vitest-env.d.js.map +0 -1
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
2
|
-
import { CancelByCollectionHandler } from './handler';
|
|
3
|
-
describe('CancelByCollectionHandler', () => {
|
|
4
|
-
let handler;
|
|
5
|
-
let mockTaskRunner;
|
|
6
|
-
let mockTaskRunnerFactory;
|
|
7
|
-
let config;
|
|
8
|
-
const createMockTask = (overrides = {}) => ({
|
|
9
|
-
id: 'task-123',
|
|
10
|
-
status: 'pending',
|
|
11
|
-
input: {
|
|
12
|
-
collectionSlug: 'posts',
|
|
13
|
-
collectionId: 'doc-123',
|
|
14
|
-
sourceLng: 'en',
|
|
15
|
-
targetLng: 'de',
|
|
16
|
-
strategy: 'overwrite',
|
|
17
|
-
publishOnTranslation: false,
|
|
18
|
-
},
|
|
19
|
-
createdAt: '2024-01-01T00:00:00Z',
|
|
20
|
-
updatedAt: '2024-01-01T01:00:00Z',
|
|
21
|
-
cancelled: false,
|
|
22
|
-
...overrides,
|
|
23
|
-
});
|
|
24
|
-
const createMockRequest = (params = {}) => ({
|
|
25
|
-
payload: {},
|
|
26
|
-
routeParams: params,
|
|
27
|
-
});
|
|
28
|
-
beforeEach(() => {
|
|
29
|
-
mockTaskRunner = {
|
|
30
|
-
enqueue: vi.fn(),
|
|
31
|
-
cancel: vi.fn().mockResolvedValue(undefined),
|
|
32
|
-
run: vi.fn(),
|
|
33
|
-
findByCollection: vi.fn().mockResolvedValue([]),
|
|
34
|
-
};
|
|
35
|
-
mockTaskRunnerFactory = {
|
|
36
|
-
create: vi.fn().mockReturnValue(mockTaskRunner),
|
|
37
|
-
configure: vi.fn(),
|
|
38
|
-
};
|
|
39
|
-
config = {
|
|
40
|
-
availableCollections: new Set(['posts', 'pages']),
|
|
41
|
-
};
|
|
42
|
-
handler = new CancelByCollectionHandler(config, mockTaskRunnerFactory);
|
|
43
|
-
});
|
|
44
|
-
describe('validation', () => {
|
|
45
|
-
it('returns validation error for missing collection_slug', async () => {
|
|
46
|
-
const req = createMockRequest({});
|
|
47
|
-
const response = await handler.handle(req);
|
|
48
|
-
expect(response.status).toBe(400);
|
|
49
|
-
const body = await response.json();
|
|
50
|
-
expect(body.message).toBe('Validation error');
|
|
51
|
-
});
|
|
52
|
-
it('returns validation error for empty collection_slug', async () => {
|
|
53
|
-
const req = createMockRequest({ collection_slug: '' });
|
|
54
|
-
const response = await handler.handle(req);
|
|
55
|
-
expect(response.status).toBe(400);
|
|
56
|
-
});
|
|
57
|
-
});
|
|
58
|
-
describe('collection availability', () => {
|
|
59
|
-
it('returns bad request for unavailable collection', async () => {
|
|
60
|
-
const req = createMockRequest({ collection_slug: 'users' });
|
|
61
|
-
const response = await handler.handle(req);
|
|
62
|
-
expect(response.status).toBe(400);
|
|
63
|
-
const body = await response.json();
|
|
64
|
-
expect(body.message).toBe('Collection not available for translation');
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
describe('no tasks to cancel', () => {
|
|
68
|
-
it('returns 204 when no tasks exist for collection', async () => {
|
|
69
|
-
;
|
|
70
|
-
mockTaskRunner.findByCollection.mockResolvedValue([]);
|
|
71
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
72
|
-
const response = await handler.handle(req);
|
|
73
|
-
expect(response.status).toBe(204);
|
|
74
|
-
expect(response.body).toBeNull();
|
|
75
|
-
});
|
|
76
|
-
it('returns 204 when all tasks are already completed', async () => {
|
|
77
|
-
const tasks = [
|
|
78
|
-
createMockTask({ id: 'task-1', status: 'completed' }),
|
|
79
|
-
createMockTask({ id: 'task-2', status: 'failed' }),
|
|
80
|
-
];
|
|
81
|
-
mockTaskRunner.findByCollection.mockResolvedValue(tasks);
|
|
82
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
83
|
-
const response = await handler.handle(req);
|
|
84
|
-
expect(response.status).toBe(204);
|
|
85
|
-
expect(mockTaskRunner.cancel).not.toHaveBeenCalled();
|
|
86
|
-
});
|
|
87
|
-
it('returns 204 when all tasks are running (not pending)', async () => {
|
|
88
|
-
const tasks = [
|
|
89
|
-
createMockTask({ id: 'task-1', status: 'running' }),
|
|
90
|
-
createMockTask({ id: 'task-2', status: 'running' }),
|
|
91
|
-
];
|
|
92
|
-
mockTaskRunner.findByCollection.mockResolvedValue(tasks);
|
|
93
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
94
|
-
const response = await handler.handle(req);
|
|
95
|
-
expect(response.status).toBe(204);
|
|
96
|
-
expect(mockTaskRunner.cancel).not.toHaveBeenCalled();
|
|
97
|
-
});
|
|
98
|
-
});
|
|
99
|
-
describe('cancelling pending tasks', () => {
|
|
100
|
-
it('cancels only pending tasks', async () => {
|
|
101
|
-
const tasks = [
|
|
102
|
-
createMockTask({ id: 'task-1', status: 'pending' }),
|
|
103
|
-
createMockTask({ id: 'task-2', status: 'running' }),
|
|
104
|
-
createMockTask({ id: 'task-3', status: 'pending' }),
|
|
105
|
-
createMockTask({ id: 'task-4', status: 'completed' }),
|
|
106
|
-
];
|
|
107
|
-
mockTaskRunner.findByCollection.mockResolvedValue(tasks);
|
|
108
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
109
|
-
const response = await handler.handle(req);
|
|
110
|
-
expect(response.status).toBe(204);
|
|
111
|
-
expect(mockTaskRunner.cancel).toHaveBeenCalledWith(['task-1', 'task-3']);
|
|
112
|
-
});
|
|
113
|
-
it('calls findByCollection with correct collection slug', async () => {
|
|
114
|
-
const req = createMockRequest({ collection_slug: 'pages' });
|
|
115
|
-
await handler.handle(req);
|
|
116
|
-
expect(mockTaskRunner.findByCollection).toHaveBeenCalledWith('pages');
|
|
117
|
-
});
|
|
118
|
-
it('creates task runner with request payload', async () => {
|
|
119
|
-
const mockPayload = { collections: {} };
|
|
120
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
121
|
-
req.payload = mockPayload;
|
|
122
|
-
await handler.handle(req);
|
|
123
|
-
expect(mockTaskRunnerFactory.create).toHaveBeenCalledWith(mockPayload);
|
|
124
|
-
});
|
|
125
|
-
});
|
|
126
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/features/cancel-by-collection/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/cancel-by-collection/index.ts"],"sourcesContent":["export { createCancelByCollectionRoute } from './route'\n"],"names":["createCancelByCollectionRoute"],"mappings":"AAAA,SAASA,6BAA6B,QAAQ,UAAS"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/server/features/cancel-by-collection/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;EAExC,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,oBAAoB,EAAE,GAAG,CAAC,cAAc,CAAC,CAAA;CAC1C,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/cancel-by-collection/model.ts"],"sourcesContent":["import { z } from 'zod'\nimport type { CollectionSlug } from 'payload'\n\n/**\n * Input validation schema\n */\nexport const CancelByCollectionInputSchema = z.object({\n collection_slug: z.string().nonempty(),\n})\n\n/**\n * Handler configuration\n */\nexport type CancelConfig = {\n availableCollections: Set<CollectionSlug>\n}\n"],"names":["z","CancelByCollectionInputSchema","object","collection_slug","string","nonempty"],"mappings":"AAAA,SAASA,CAAC,QAAQ,MAAK;AAGvB;;CAEC,GACD,OAAO,MAAMC,gCAAgCD,EAAEE,MAAM,CAAC;IACpDC,iBAAiBH,EAAEI,MAAM,GAAGC,QAAQ;AACtC,GAAE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/server/features/cancel-by-collection/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAGvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAG3C;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,YAAY,EACpB,iBAAiB,EAAE,kBAAkB,EACrC,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,SAAe,GACtB,QAAQ,CAQV"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/cancel-by-collection/route.ts"],"sourcesContent":["import type { Endpoint } from 'payload'\n\nimport { withErrorHandler, withAccessCheck } from '../../shared'\nimport type { AccessGuard } from '../../shared'\nimport type { TaskRunnerProvider } from '../../modules/task-runner'\n\nimport type { CancelConfig } from './model'\nimport { CancelByCollectionHandler } from './handler'\n\n/**\n * Creates the cancel by collection endpoint\n */\nexport function createCancelByCollectionRoute(\n config: CancelConfig,\n taskRunnerFactory: TaskRunnerProvider,\n access?: AccessGuard,\n basePath = '/translate',\n): Endpoint {\n const handler = new CancelByCollectionHandler(config, taskRunnerFactory)\n\n return {\n path: `${basePath}/cancel-by-collection/:collection_slug`,\n method: 'delete',\n handler: withAccessCheck(withErrorHandler(handler.handle.bind(handler)), access),\n }\n}\n"],"names":["withErrorHandler","withAccessCheck","CancelByCollectionHandler","createCancelByCollectionRoute","config","taskRunnerFactory","access","basePath","handler","path","method","handle","bind"],"mappings":"AAEA,SAASA,gBAAgB,EAAEC,eAAe,QAAQ,eAAc;AAKhE,SAASC,yBAAyB,QAAQ,YAAW;AAErD;;CAEC,GACD,OAAO,SAASC,8BACdC,MAAoB,EACpBC,iBAAqC,EACrCC,MAAoB,EACpBC,WAAW,YAAY;IAEvB,MAAMC,UAAU,IAAIN,0BAA0BE,QAAQC;IAEtD,OAAO;QACLI,MAAM,GAAGF,SAAS,sCAAsC,CAAC;QACzDG,QAAQ;QACRF,SAASP,gBAAgBD,iBAAiBQ,QAAQG,MAAM,CAACC,IAAI,CAACJ,WAAWF;IAC3E;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/server/features/enqueue-translation/handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAG7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAGnE,OAAO,EAAsB,KAAK,aAAa,EAAE,MAAM,SAAS,CAAA;AAEhE;;GAEG;AACH,qBAAa,yBAAyB;IAElC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBADjB,MAAM,EAAE,aAAa,EACrB,iBAAiB,EAAE,kBAAkB;IAGlD,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;CA0BrD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/enqueue-translation/handler.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\nimport { ServerResponse } from '../../shared'\nimport type { TaskRunnerProvider } from '../../modules/task-runner'\nimport { isCollectionAvailable, getAllCollectionIds } from '../_lib/collection-utils'\n\nimport { EnqueueInputSchema, type EnqueueConfig } from './model'\n\n/**\n * Enqueues translation tasks for documents\n */\nexport class EnqueueTranslationHandler {\n constructor(\n private readonly config: EnqueueConfig,\n private readonly taskRunnerFactory: TaskRunnerProvider,\n ) {}\n\n async handle(req: PayloadRequest): Promise<Response> {\n const validationResult = EnqueueInputSchema.safeParse(await req.json?.())\n if (validationResult.error) return ServerResponse.validationError(validationResult.error.errors)\n\n const { source_lng, target_lng, collection_slug, collection_id, select_all, strategy, publish_on_translation } =\n validationResult.data\n\n const collectionSlug = isCollectionAvailable(collection_slug, this.config.availableCollections)\n if (!collectionSlug) return ServerResponse.badRequest('Content of this collection is not available for translation')\n\n const collectionIds = select_all ? await getAllCollectionIds(req.payload, collectionSlug) : collection_id\n\n const runner = this.taskRunnerFactory.create(req.payload)\n const tasks = collectionIds.map((id) => ({\n collectionSlug,\n collectionId: id,\n sourceLng: source_lng,\n targetLng: target_lng,\n strategy: strategy,\n publishOnTranslation: publish_on_translation,\n }))\n\n await runner.enqueue(tasks)\n\n return ServerResponse.success({ success: true, queued: tasks.length })\n }\n}\n"],"names":["ServerResponse","isCollectionAvailable","getAllCollectionIds","EnqueueInputSchema","EnqueueTranslationHandler","config","taskRunnerFactory","handle","req","validationResult","safeParse","json","error","validationError","errors","source_lng","target_lng","collection_slug","collection_id","select_all","strategy","publish_on_translation","data","collectionSlug","availableCollections","badRequest","collectionIds","payload","runner","create","tasks","map","id","collectionId","sourceLng","targetLng","publishOnTranslation","enqueue","success","queued","length"],"mappings":"AAEA,SAASA,cAAc,QAAQ,eAAc;AAE7C,SAASC,qBAAqB,EAAEC,mBAAmB,QAAQ,2BAA0B;AAErF,SAASC,kBAAkB,QAA4B,UAAS;AAEhE;;CAEC,GACD,OAAO,MAAMC;;;IACX,YACE,AAAiBC,MAAqB,EACtC,AAAiBC,iBAAqC,CACtD;aAFiBD,SAAAA;aACAC,oBAAAA;IAChB;IAEH,MAAMC,OAAOC,GAAmB,EAAqB;QACnD,MAAMC,mBAAmBN,mBAAmBO,SAAS,CAAC,MAAMF,IAAIG,IAAI;QACpE,IAAIF,iBAAiBG,KAAK,EAAE,OAAOZ,eAAea,eAAe,CAACJ,iBAAiBG,KAAK,CAACE,MAAM;QAE/F,MAAM,EAAEC,UAAU,EAAEC,UAAU,EAAEC,eAAe,EAAEC,aAAa,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,sBAAsB,EAAE,GAC5GZ,iBAAiBa,IAAI;QAEvB,MAAMC,iBAAiBtB,sBAAsBgB,iBAAiB,IAAI,CAACZ,MAAM,CAACmB,oBAAoB;QAC9F,IAAI,CAACD,gBAAgB,OAAOvB,eAAeyB,UAAU,CAAC;QAEtD,MAAMC,gBAAgBP,aAAa,MAAMjB,oBAAoBM,IAAImB,OAAO,EAAEJ,kBAAkBL;QAE5F,MAAMU,SAAS,IAAI,CAACtB,iBAAiB,CAACuB,MAAM,CAACrB,IAAImB,OAAO;QACxD,MAAMG,QAAQJ,cAAcK,GAAG,CAAC,CAACC,KAAQ,CAAA;gBACvCT;gBACAU,cAAcD;gBACdE,WAAWnB;gBACXoB,WAAWnB;gBACXI,UAAUA;gBACVgB,sBAAsBf;YACxB,CAAA;QAEA,MAAMO,OAAOS,OAAO,CAACP;QAErB,OAAO9B,eAAesC,OAAO,CAAC;YAAEA,SAAS;YAAMC,QAAQT,MAAMU,MAAM;QAAC;IACtE;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handler.test.d.ts","sourceRoot":"","sources":["../../../../src/server/features/enqueue-translation/handler.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
2
|
-
import { EnqueueTranslationHandler } from './handler';
|
|
3
|
-
// Mock collection-utils
|
|
4
|
-
vi.mock('../_lib/collection-utils', () => ({
|
|
5
|
-
isCollectionAvailable: vi.fn((slug, available) => (available.has(slug) ? slug : null)),
|
|
6
|
-
getAllCollectionIds: vi.fn().mockResolvedValue(['doc-1', 'doc-2', 'doc-3']),
|
|
7
|
-
}));
|
|
8
|
-
describe('EnqueueTranslationHandler', () => {
|
|
9
|
-
let handler;
|
|
10
|
-
let mockTaskRunner;
|
|
11
|
-
let mockTaskRunnerFactory;
|
|
12
|
-
let config;
|
|
13
|
-
const createMockRequest = (body) => ({
|
|
14
|
-
payload: {},
|
|
15
|
-
json: vi.fn().mockResolvedValue(body),
|
|
16
|
-
});
|
|
17
|
-
beforeEach(() => {
|
|
18
|
-
vi.clearAllMocks();
|
|
19
|
-
mockTaskRunner = {
|
|
20
|
-
enqueue: vi.fn().mockResolvedValue(undefined),
|
|
21
|
-
cancel: vi.fn(),
|
|
22
|
-
run: vi.fn(),
|
|
23
|
-
findByCollection: vi.fn(),
|
|
24
|
-
};
|
|
25
|
-
mockTaskRunnerFactory = {
|
|
26
|
-
create: vi.fn().mockReturnValue(mockTaskRunner),
|
|
27
|
-
configure: vi.fn(),
|
|
28
|
-
};
|
|
29
|
-
config = {
|
|
30
|
-
availableCollections: new Set(['posts', 'pages']),
|
|
31
|
-
};
|
|
32
|
-
handler = new EnqueueTranslationHandler(config, mockTaskRunnerFactory);
|
|
33
|
-
});
|
|
34
|
-
describe('validation', () => {
|
|
35
|
-
it('returns validation error for missing required fields', async () => {
|
|
36
|
-
const req = createMockRequest({});
|
|
37
|
-
const response = await handler.handle(req);
|
|
38
|
-
expect(response.status).toBe(400);
|
|
39
|
-
});
|
|
40
|
-
it('returns validation error for missing source_lng', async () => {
|
|
41
|
-
const req = createMockRequest({
|
|
42
|
-
target_lng: 'de',
|
|
43
|
-
collection_slug: 'posts',
|
|
44
|
-
collection_id: ['doc-1'],
|
|
45
|
-
});
|
|
46
|
-
const response = await handler.handle(req);
|
|
47
|
-
expect(response.status).toBe(400);
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
describe('collection availability', () => {
|
|
51
|
-
it('returns bad request for unavailable collection', async () => {
|
|
52
|
-
const req = createMockRequest({
|
|
53
|
-
source_lng: 'en',
|
|
54
|
-
target_lng: 'de',
|
|
55
|
-
collection_slug: 'users',
|
|
56
|
-
collection_id: ['doc-1'],
|
|
57
|
-
strategy: 'overwrite',
|
|
58
|
-
});
|
|
59
|
-
const response = await handler.handle(req);
|
|
60
|
-
expect(response.status).toBe(400);
|
|
61
|
-
const body = await response.json();
|
|
62
|
-
expect(body.message).toContain('not available for translation');
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
describe('success responses', () => {
|
|
66
|
-
it('enqueues tasks for specific documents', async () => {
|
|
67
|
-
const req = createMockRequest({
|
|
68
|
-
source_lng: 'en',
|
|
69
|
-
target_lng: 'de',
|
|
70
|
-
collection_slug: 'posts',
|
|
71
|
-
collection_id: ['doc-1', 'doc-2'],
|
|
72
|
-
strategy: 'overwrite',
|
|
73
|
-
});
|
|
74
|
-
const response = await handler.handle(req);
|
|
75
|
-
expect(response.status).toBe(200);
|
|
76
|
-
const body = await response.json();
|
|
77
|
-
expect(body.data).toEqual({ success: true, queued: 2 });
|
|
78
|
-
});
|
|
79
|
-
it('calls runner.enqueue with correct tasks', async () => {
|
|
80
|
-
const req = createMockRequest({
|
|
81
|
-
source_lng: 'en',
|
|
82
|
-
target_lng: 'fr',
|
|
83
|
-
collection_slug: 'posts',
|
|
84
|
-
collection_id: ['doc-123'],
|
|
85
|
-
strategy: 'skip_existing',
|
|
86
|
-
});
|
|
87
|
-
await handler.handle(req);
|
|
88
|
-
expect(mockTaskRunner.enqueue).toHaveBeenCalledWith([
|
|
89
|
-
{
|
|
90
|
-
collectionSlug: 'posts',
|
|
91
|
-
collectionId: 'doc-123',
|
|
92
|
-
sourceLng: 'en',
|
|
93
|
-
targetLng: 'fr',
|
|
94
|
-
strategy: 'skip_existing',
|
|
95
|
-
publishOnTranslation: false,
|
|
96
|
-
},
|
|
97
|
-
]);
|
|
98
|
-
});
|
|
99
|
-
// Note: select_all test skipped - requires non-empty collection_id in schema validation
|
|
100
|
-
// This is a schema design decision that should be tested at integration level
|
|
101
|
-
it('creates task runner with request payload', async () => {
|
|
102
|
-
const mockPayload = { collections: {} };
|
|
103
|
-
const req = createMockRequest({
|
|
104
|
-
source_lng: 'en',
|
|
105
|
-
target_lng: 'de',
|
|
106
|
-
collection_slug: 'posts',
|
|
107
|
-
collection_id: ['doc-1'],
|
|
108
|
-
strategy: 'overwrite',
|
|
109
|
-
});
|
|
110
|
-
req.payload = mockPayload;
|
|
111
|
-
await handler.handle(req);
|
|
112
|
-
expect(mockTaskRunnerFactory.create).toHaveBeenCalledWith(mockPayload);
|
|
113
|
-
});
|
|
114
|
-
});
|
|
115
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/features/enqueue-translation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/enqueue-translation/index.ts"],"sourcesContent":["export { createEnqueueRoute } from './route'\n"],"names":["createEnqueueRoute"],"mappings":"AAAA,SAASA,kBAAkB,QAAQ,UAAS"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/server/features/enqueue-translation/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;EAQ7B,CAAA;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,oBAAoB,EAAE,GAAG,CAAC,cAAc,CAAC,CAAA;CAC1C,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/enqueue-translation/model.ts"],"sourcesContent":["import { z } from 'zod'\nimport type { CollectionSlug } from 'payload'\n\n/**\n * Input validation schema\n */\nexport const EnqueueInputSchema = z.object({\n source_lng: z.string().nonempty(),\n target_lng: z.string().nonempty(),\n collection_slug: z.string().nonempty(),\n collection_id: z.array(z.coerce.string()).nonempty(),\n select_all: z.boolean().optional(),\n strategy: z.enum(['overwrite', 'skip_existing']).optional().default('overwrite'),\n publish_on_translation: z.boolean().optional().default(false),\n})\n\n/**\n * Handler configuration\n */\nexport type EnqueueConfig = {\n availableCollections: Set<CollectionSlug>\n}\n"],"names":["z","EnqueueInputSchema","object","source_lng","string","nonempty","target_lng","collection_slug","collection_id","array","coerce","select_all","boolean","optional","strategy","enum","default","publish_on_translation"],"mappings":"AAAA,SAASA,CAAC,QAAQ,MAAK;AAGvB;;CAEC,GACD,OAAO,MAAMC,qBAAqBD,EAAEE,MAAM,CAAC;IACzCC,YAAYH,EAAEI,MAAM,GAAGC,QAAQ;IAC/BC,YAAYN,EAAEI,MAAM,GAAGC,QAAQ;IAC/BE,iBAAiBP,EAAEI,MAAM,GAAGC,QAAQ;IACpCG,eAAeR,EAAES,KAAK,CAACT,EAAEU,MAAM,CAACN,MAAM,IAAIC,QAAQ;IAClDM,YAAYX,EAAEY,OAAO,GAAGC,QAAQ;IAChCC,UAAUd,EAAEe,IAAI,CAAC;QAAC;QAAa;KAAgB,EAAEF,QAAQ,GAAGG,OAAO,CAAC;IACpEC,wBAAwBjB,EAAEY,OAAO,GAAGC,QAAQ,GAAGG,OAAO,CAAC;AACzD,GAAE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/server/features/enqueue-translation/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAGvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAG5C;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,iBAAiB,EAAE,kBAAkB,EACrC,MAAM,EAAE,aAAa,EACrB,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,SAAe,GACtB,QAAQ,CAQV"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/enqueue-translation/route.ts"],"sourcesContent":["import type { Endpoint } from 'payload'\n\nimport { withErrorHandler, withAccessCheck } from '../../shared'\nimport type { AccessGuard } from '../../shared'\nimport type { TaskRunnerProvider } from '../../modules/task-runner'\n\nimport type { EnqueueConfig } from './model'\nimport { EnqueueTranslationHandler } from './handler'\n\n/**\n * Creates the enqueue translation endpoint\n */\nexport function createEnqueueRoute(\n taskRunnerFactory: TaskRunnerProvider,\n config: EnqueueConfig,\n access?: AccessGuard,\n basePath = '/translate',\n): Endpoint {\n const handler = new EnqueueTranslationHandler(config, taskRunnerFactory)\n\n return {\n path: `${basePath}/enqueue`,\n method: 'post',\n handler: withAccessCheck(withErrorHandler(handler.handle.bind(handler)), access),\n }\n}\n"],"names":["withErrorHandler","withAccessCheck","EnqueueTranslationHandler","createEnqueueRoute","taskRunnerFactory","config","access","basePath","handler","path","method","handle","bind"],"mappings":"AAEA,SAASA,gBAAgB,EAAEC,eAAe,QAAQ,eAAc;AAKhE,SAASC,yBAAyB,QAAQ,YAAW;AAErD;;CAEC,GACD,OAAO,SAASC,mBACdC,iBAAqC,EACrCC,MAAqB,EACrBC,MAAoB,EACpBC,WAAW,YAAY;IAEvB,MAAMC,UAAU,IAAIN,0BAA0BG,QAAQD;IAEtD,OAAO;QACLK,MAAM,GAAGF,SAAS,QAAQ,CAAC;QAC3BG,QAAQ;QACRF,SAASP,gBAAgBD,iBAAiBQ,QAAQG,MAAM,CAACC,IAAI,CAACJ,WAAWF;IAC3E;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/server/features/get-collection-status/handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAG7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAGnE,OAAO,EAAkC,KAAK,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAExF;;GAEG;AACH,qBAAa,0BAA0B;IAEnC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBADjB,MAAM,EAAE,yBAAyB,EACjC,iBAAiB,EAAE,kBAAkB;IAGlD,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;CAoBrD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/get-collection-status/handler.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\nimport { ServerResponse } from '../../shared'\nimport type { TaskRunnerProvider } from '../../modules/task-runner'\nimport { isCollectionAvailable } from '../_lib/collection-utils'\n\nimport { GetCollectionStatusInputSchema, type GetCollectionStatusConfig } from './model'\n\n/**\n * Gets translation status for all documents in a collection\n */\nexport class GetCollectionStatusHandler {\n constructor(\n private readonly config: GetCollectionStatusConfig,\n private readonly taskRunnerFactory: TaskRunnerProvider,\n ) {}\n\n async handle(req: PayloadRequest): Promise<Response> {\n const validationResult = GetCollectionStatusInputSchema.safeParse(req.routeParams)\n if (validationResult.error) return ServerResponse.validationError(validationResult.error.errors)\n\n const collectionSlug = isCollectionAvailable(\n validationResult.data.collection_slug,\n this.config.availableCollections,\n )\n if (!collectionSlug) return ServerResponse.badRequest('Collection not available for translation')\n\n const runner = this.taskRunnerFactory.create(req.payload)\n const tasks = await runner.findByCollection(collectionSlug)\n\n return ServerResponse.success({\n docs: tasks.map((task) => ({\n id: task.id,\n status: task.status,\n })),\n })\n }\n}\n"],"names":["ServerResponse","isCollectionAvailable","GetCollectionStatusInputSchema","GetCollectionStatusHandler","config","taskRunnerFactory","handle","req","validationResult","safeParse","routeParams","error","validationError","errors","collectionSlug","data","collection_slug","availableCollections","badRequest","runner","create","payload","tasks","findByCollection","success","docs","map","task","id","status"],"mappings":"AAEA,SAASA,cAAc,QAAQ,eAAc;AAE7C,SAASC,qBAAqB,QAAQ,2BAA0B;AAEhE,SAASC,8BAA8B,QAAwC,UAAS;AAExF;;CAEC,GACD,OAAO,MAAMC;;;IACX,YACE,AAAiBC,MAAiC,EAClD,AAAiBC,iBAAqC,CACtD;aAFiBD,SAAAA;aACAC,oBAAAA;IAChB;IAEH,MAAMC,OAAOC,GAAmB,EAAqB;QACnD,MAAMC,mBAAmBN,+BAA+BO,SAAS,CAACF,IAAIG,WAAW;QACjF,IAAIF,iBAAiBG,KAAK,EAAE,OAAOX,eAAeY,eAAe,CAACJ,iBAAiBG,KAAK,CAACE,MAAM;QAE/F,MAAMC,iBAAiBb,sBACrBO,iBAAiBO,IAAI,CAACC,eAAe,EACrC,IAAI,CAACZ,MAAM,CAACa,oBAAoB;QAElC,IAAI,CAACH,gBAAgB,OAAOd,eAAekB,UAAU,CAAC;QAEtD,MAAMC,SAAS,IAAI,CAACd,iBAAiB,CAACe,MAAM,CAACb,IAAIc,OAAO;QACxD,MAAMC,QAAQ,MAAMH,OAAOI,gBAAgB,CAACT;QAE5C,OAAOd,eAAewB,OAAO,CAAC;YAC5BC,MAAMH,MAAMI,GAAG,CAAC,CAACC,OAAU,CAAA;oBACzBC,IAAID,KAAKC,EAAE;oBACXC,QAAQF,KAAKE,MAAM;gBACrB,CAAA;QACF;IACF;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handler.test.d.ts","sourceRoot":"","sources":["../../../../src/server/features/get-collection-status/handler.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
2
|
-
import { GetCollectionStatusHandler } from './handler';
|
|
3
|
-
describe('GetCollectionStatusHandler', () => {
|
|
4
|
-
let handler;
|
|
5
|
-
let mockTaskRunner;
|
|
6
|
-
let mockTaskRunnerFactory;
|
|
7
|
-
let config;
|
|
8
|
-
const createMockTask = (overrides = {}) => ({
|
|
9
|
-
id: 'task-123',
|
|
10
|
-
status: 'completed',
|
|
11
|
-
input: {
|
|
12
|
-
collectionSlug: 'posts',
|
|
13
|
-
collectionId: 'doc-123',
|
|
14
|
-
sourceLng: 'en',
|
|
15
|
-
targetLng: 'de',
|
|
16
|
-
strategy: 'overwrite',
|
|
17
|
-
publishOnTranslation: false,
|
|
18
|
-
},
|
|
19
|
-
createdAt: '2024-01-01T00:00:00Z',
|
|
20
|
-
updatedAt: '2024-01-01T01:00:00Z',
|
|
21
|
-
completedAt: '2024-01-01T01:00:00Z',
|
|
22
|
-
cancelled: false,
|
|
23
|
-
...overrides,
|
|
24
|
-
});
|
|
25
|
-
const createMockRequest = (params = {}) => ({
|
|
26
|
-
payload: {},
|
|
27
|
-
routeParams: params,
|
|
28
|
-
});
|
|
29
|
-
beforeEach(() => {
|
|
30
|
-
mockTaskRunner = {
|
|
31
|
-
enqueue: vi.fn(),
|
|
32
|
-
cancel: vi.fn(),
|
|
33
|
-
run: vi.fn(),
|
|
34
|
-
findByCollection: vi.fn().mockResolvedValue([]),
|
|
35
|
-
};
|
|
36
|
-
mockTaskRunnerFactory = {
|
|
37
|
-
create: vi.fn().mockReturnValue(mockTaskRunner),
|
|
38
|
-
configure: vi.fn(),
|
|
39
|
-
};
|
|
40
|
-
config = {
|
|
41
|
-
availableCollections: new Set(['posts', 'pages']),
|
|
42
|
-
};
|
|
43
|
-
handler = new GetCollectionStatusHandler(config, mockTaskRunnerFactory);
|
|
44
|
-
});
|
|
45
|
-
describe('validation', () => {
|
|
46
|
-
it('returns validation error for missing collection_slug', async () => {
|
|
47
|
-
const req = createMockRequest({});
|
|
48
|
-
const response = await handler.handle(req);
|
|
49
|
-
expect(response.status).toBe(400);
|
|
50
|
-
const body = await response.json();
|
|
51
|
-
expect(body.message).toBe('Validation error');
|
|
52
|
-
});
|
|
53
|
-
it('returns validation error for empty collection_slug', async () => {
|
|
54
|
-
const req = createMockRequest({ collection_slug: '' });
|
|
55
|
-
const response = await handler.handle(req);
|
|
56
|
-
expect(response.status).toBe(400);
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
describe('collection availability', () => {
|
|
60
|
-
it('returns bad request for unavailable collection', async () => {
|
|
61
|
-
const req = createMockRequest({ collection_slug: 'users' });
|
|
62
|
-
const response = await handler.handle(req);
|
|
63
|
-
expect(response.status).toBe(400);
|
|
64
|
-
const body = await response.json();
|
|
65
|
-
expect(body.message).toBe('Collection not available for translation');
|
|
66
|
-
});
|
|
67
|
-
});
|
|
68
|
-
describe('success responses', () => {
|
|
69
|
-
it('returns empty docs array when no tasks exist', async () => {
|
|
70
|
-
;
|
|
71
|
-
mockTaskRunner.findByCollection.mockResolvedValue([]);
|
|
72
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
73
|
-
const response = await handler.handle(req);
|
|
74
|
-
expect(response.status).toBe(200);
|
|
75
|
-
const body = await response.json();
|
|
76
|
-
expect(body.data).toEqual({ docs: [] });
|
|
77
|
-
});
|
|
78
|
-
it('returns task statuses for all documents in collection', async () => {
|
|
79
|
-
const tasks = [
|
|
80
|
-
createMockTask({ id: 'task-1', status: 'completed' }),
|
|
81
|
-
createMockTask({ id: 'task-2', status: 'pending' }),
|
|
82
|
-
createMockTask({ id: 'task-3', status: 'running' }),
|
|
83
|
-
];
|
|
84
|
-
mockTaskRunner.findByCollection.mockResolvedValue(tasks);
|
|
85
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
86
|
-
const response = await handler.handle(req);
|
|
87
|
-
expect(response.status).toBe(200);
|
|
88
|
-
const body = await response.json();
|
|
89
|
-
expect(body.data.docs).toEqual([
|
|
90
|
-
{ id: 'task-1', status: 'completed' },
|
|
91
|
-
{ id: 'task-2', status: 'pending' },
|
|
92
|
-
{ id: 'task-3', status: 'running' },
|
|
93
|
-
]);
|
|
94
|
-
});
|
|
95
|
-
it('calls findByCollection with correct collection slug', async () => {
|
|
96
|
-
const req = createMockRequest({ collection_slug: 'pages' });
|
|
97
|
-
await handler.handle(req);
|
|
98
|
-
expect(mockTaskRunner.findByCollection).toHaveBeenCalledWith('pages');
|
|
99
|
-
});
|
|
100
|
-
it('creates task runner with request payload', async () => {
|
|
101
|
-
const mockPayload = { collections: {} };
|
|
102
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
103
|
-
req.payload = mockPayload;
|
|
104
|
-
await handler.handle(req);
|
|
105
|
-
expect(mockTaskRunnerFactory.create).toHaveBeenCalledWith(mockPayload);
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/server/features/get-collection-status/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/get-collection-status/index.ts"],"sourcesContent":["export { createGetCollectionStatusRoute } from './route'\n"],"names":["createGetCollectionStatusRoute"],"mappings":"AAAA,SAASA,8BAA8B,QAAQ,UAAS"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../../src/server/features/get-collection-status/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE3D;;GAEG;AACH,eAAO,MAAM,8BAA8B;;;;;;EAEzC,CAAA;AAEF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAA;AAErF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,UAAU,CAAA;CACnB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,oBAAoB,EAAE,CAAA;CAC7B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,oBAAoB,EAAE,GAAG,CAAC,cAAc,CAAC,CAAA;CAC1C,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/get-collection-status/model.ts"],"sourcesContent":["import { z } from 'zod'\nimport type { CollectionSlug } from 'payload'\n\nimport type { TaskStatus } from '../../modules/task-runner'\n\n/**\n * Input validation schema\n */\nexport const GetCollectionStatusInputSchema = z.object({\n collection_slug: z.string().nonempty(),\n})\n\nexport type GetCollectionStatusInput = z.infer<typeof GetCollectionStatusInputSchema>\n\n/**\n * Summary item for a single document\n */\nexport type CollectionStatusItem = {\n id: string\n status: TaskStatus\n}\n\n/**\n * Handler output\n */\nexport type GetCollectionStatusOutput = {\n docs: CollectionStatusItem[]\n}\n\n/**\n * Handler configuration\n */\nexport type GetCollectionStatusConfig = {\n availableCollections: Set<CollectionSlug>\n}\n"],"names":["z","GetCollectionStatusInputSchema","object","collection_slug","string","nonempty"],"mappings":"AAAA,SAASA,CAAC,QAAQ,MAAK;AAKvB;;CAEC,GACD,OAAO,MAAMC,iCAAiCD,EAAEE,MAAM,CAAC;IACrDC,iBAAiBH,EAAEI,MAAM,GAAGC,QAAQ;AACtC,GAAE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../../src/server/features/get-collection-status/route.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAGvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAGxD;;GAEG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,yBAAyB,EACjC,iBAAiB,EAAE,kBAAkB,EACrC,MAAM,CAAC,EAAE,WAAW,EACpB,QAAQ,SAAe,GACtB,QAAQ,CAQV"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/get-collection-status/route.ts"],"sourcesContent":["import type { Endpoint } from 'payload'\n\nimport { withErrorHandler, withAccessCheck } from '../../shared'\nimport type { AccessGuard } from '../../shared'\nimport type { TaskRunnerProvider } from '../../modules/task-runner'\n\nimport type { GetCollectionStatusConfig } from './model'\nimport { GetCollectionStatusHandler } from './handler'\n\n/**\n * Creates the get collection status endpoint\n */\nexport function createGetCollectionStatusRoute(\n config: GetCollectionStatusConfig,\n taskRunnerFactory: TaskRunnerProvider,\n access?: AccessGuard,\n basePath = '/translate',\n): Endpoint {\n const handler = new GetCollectionStatusHandler(config, taskRunnerFactory)\n\n return {\n path: `${basePath}/collection/:collection_slug`,\n method: 'get',\n handler: withAccessCheck(withErrorHandler(handler.handle.bind(handler)), access),\n }\n}\n"],"names":["withErrorHandler","withAccessCheck","GetCollectionStatusHandler","createGetCollectionStatusRoute","config","taskRunnerFactory","access","basePath","handler","path","method","handle","bind"],"mappings":"AAEA,SAASA,gBAAgB,EAAEC,eAAe,QAAQ,eAAc;AAKhE,SAASC,0BAA0B,QAAQ,YAAW;AAEtD;;CAEC,GACD,OAAO,SAASC,+BACdC,MAAiC,EACjCC,iBAAqC,EACrCC,MAAoB,EACpBC,WAAW,YAAY;IAEvB,MAAMC,UAAU,IAAIN,2BAA2BE,QAAQC;IAEvD,OAAO;QACLI,MAAM,GAAGF,SAAS,4BAA4B,CAAC;QAC/CG,QAAQ;QACRF,SAASP,gBAAgBD,iBAAiBQ,QAAQG,MAAM,CAACC,IAAI,CAACJ,WAAWF;IAC3E;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/server/features/get-document-status/handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAG7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAGnE,OAAO,EAAgC,KAAK,uBAAuB,EAAyB,MAAM,SAAS,CAAA;AAE3G;;GAEG;AACH,qBAAa,wBAAwB;IAEjC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;gBADjB,MAAM,EAAE,uBAAuB,EAC/B,iBAAiB,EAAE,kBAAkB;IAGlD,MAAM,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;CAcrD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/server/features/get-document-status/handler.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\nimport { ServerResponse } from '../../shared'\nimport type { TaskRunnerProvider } from '../../modules/task-runner'\nimport { isCollectionAvailable } from '../_lib/collection-utils'\n\nimport { GetDocumentStatusInputSchema, type GetDocumentStatusConfig, taskToJobStatusOutput } from './model'\n\n/**\n * Gets the translation status for a specific document\n */\nexport class GetDocumentStatusHandler {\n constructor(\n private readonly config: GetDocumentStatusConfig,\n private readonly taskRunnerFactory: TaskRunnerProvider,\n ) {}\n\n async handle(req: PayloadRequest): Promise<Response> {\n const validationResult = GetDocumentStatusInputSchema.safeParse(req.routeParams)\n if (validationResult.error) return ServerResponse.validationError(validationResult.error.errors)\n\n const { collection_slug, collection_id } = validationResult.data\n\n const collectionSlug = isCollectionAvailable(collection_slug, this.config.availableCollections)\n if (!collectionSlug) return ServerResponse.badRequest('Collection not available for translation')\n\n const runner = this.taskRunnerFactory.create(req.payload)\n const tasks = await runner.findByCollection(collectionSlug, [collection_id])\n\n return ServerResponse.success(tasks[0] ? taskToJobStatusOutput(tasks[0]) : null)\n }\n}\n"],"names":["ServerResponse","isCollectionAvailable","GetDocumentStatusInputSchema","taskToJobStatusOutput","GetDocumentStatusHandler","config","taskRunnerFactory","handle","req","validationResult","safeParse","routeParams","error","validationError","errors","collection_slug","collection_id","data","collectionSlug","availableCollections","badRequest","runner","create","payload","tasks","findByCollection","success"],"mappings":"AAEA,SAASA,cAAc,QAAQ,eAAc;AAE7C,SAASC,qBAAqB,QAAQ,2BAA0B;AAEhE,SAASC,4BAA4B,EAAgCC,qBAAqB,QAAQ,UAAS;AAE3G;;CAEC,GACD,OAAO,MAAMC;;;IACX,YACE,AAAiBC,MAA+B,EAChD,AAAiBC,iBAAqC,CACtD;aAFiBD,SAAAA;aACAC,oBAAAA;IAChB;IAEH,MAAMC,OAAOC,GAAmB,EAAqB;QACnD,MAAMC,mBAAmBP,6BAA6BQ,SAAS,CAACF,IAAIG,WAAW;QAC/E,IAAIF,iBAAiBG,KAAK,EAAE,OAAOZ,eAAea,eAAe,CAACJ,iBAAiBG,KAAK,CAACE,MAAM;QAE/F,MAAM,EAAEC,eAAe,EAAEC,aAAa,EAAE,GAAGP,iBAAiBQ,IAAI;QAEhE,MAAMC,iBAAiBjB,sBAAsBc,iBAAiB,IAAI,CAACV,MAAM,CAACc,oBAAoB;QAC9F,IAAI,CAACD,gBAAgB,OAAOlB,eAAeoB,UAAU,CAAC;QAEtD,MAAMC,SAAS,IAAI,CAACf,iBAAiB,CAACgB,MAAM,CAACd,IAAIe,OAAO;QACxD,MAAMC,QAAQ,MAAMH,OAAOI,gBAAgB,CAACP,gBAAgB;YAACF;SAAc;QAE3E,OAAOhB,eAAe0B,OAAO,CAACF,KAAK,CAAC,EAAE,GAAGrB,sBAAsBqB,KAAK,CAAC,EAAE,IAAI;IAC7E;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"handler.test.d.ts","sourceRoot":"","sources":["../../../../src/server/features/get-document-status/handler.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
import { describe, it, expect, vi, beforeEach } from 'vitest';
|
|
2
|
-
import { GetDocumentStatusHandler } from './handler';
|
|
3
|
-
describe('GetDocumentStatusHandler', () => {
|
|
4
|
-
let handler;
|
|
5
|
-
let mockTaskRunner;
|
|
6
|
-
let mockTaskRunnerFactory;
|
|
7
|
-
let config;
|
|
8
|
-
const createMockTask = (overrides = {}) => ({
|
|
9
|
-
id: 'task-123',
|
|
10
|
-
status: 'completed',
|
|
11
|
-
input: {
|
|
12
|
-
collectionSlug: 'posts',
|
|
13
|
-
collectionId: 'doc-123',
|
|
14
|
-
sourceLng: 'en',
|
|
15
|
-
targetLng: 'de',
|
|
16
|
-
strategy: 'overwrite',
|
|
17
|
-
publishOnTranslation: false,
|
|
18
|
-
},
|
|
19
|
-
createdAt: '2024-01-01T00:00:00Z',
|
|
20
|
-
updatedAt: '2024-01-01T01:00:00Z',
|
|
21
|
-
completedAt: '2024-01-01T01:00:00Z',
|
|
22
|
-
cancelled: false,
|
|
23
|
-
...overrides,
|
|
24
|
-
});
|
|
25
|
-
const createMockRequest = (params = {}) => ({
|
|
26
|
-
payload: {},
|
|
27
|
-
routeParams: params,
|
|
28
|
-
});
|
|
29
|
-
beforeEach(() => {
|
|
30
|
-
mockTaskRunner = {
|
|
31
|
-
enqueue: vi.fn(),
|
|
32
|
-
cancel: vi.fn(),
|
|
33
|
-
run: vi.fn(),
|
|
34
|
-
findByCollection: vi.fn().mockResolvedValue([]),
|
|
35
|
-
};
|
|
36
|
-
mockTaskRunnerFactory = {
|
|
37
|
-
create: vi.fn().mockReturnValue(mockTaskRunner),
|
|
38
|
-
configure: vi.fn(),
|
|
39
|
-
};
|
|
40
|
-
config = {
|
|
41
|
-
availableCollections: new Set(['posts', 'pages']),
|
|
42
|
-
};
|
|
43
|
-
handler = new GetDocumentStatusHandler(config, mockTaskRunnerFactory);
|
|
44
|
-
});
|
|
45
|
-
describe('validation', () => {
|
|
46
|
-
it('returns validation error for missing collection_slug', async () => {
|
|
47
|
-
const req = createMockRequest({ collection_id: 'doc-123' });
|
|
48
|
-
const response = await handler.handle(req);
|
|
49
|
-
expect(response.status).toBe(400);
|
|
50
|
-
const body = await response.json();
|
|
51
|
-
expect(body.message).toBe('Validation error');
|
|
52
|
-
});
|
|
53
|
-
it('returns validation error for missing collection_id', async () => {
|
|
54
|
-
const req = createMockRequest({ collection_slug: 'posts' });
|
|
55
|
-
const response = await handler.handle(req);
|
|
56
|
-
expect(response.status).toBe(400);
|
|
57
|
-
});
|
|
58
|
-
it('returns validation error for empty collection_slug', async () => {
|
|
59
|
-
const req = createMockRequest({ collection_slug: '', collection_id: 'doc-123' });
|
|
60
|
-
const response = await handler.handle(req);
|
|
61
|
-
expect(response.status).toBe(400);
|
|
62
|
-
});
|
|
63
|
-
});
|
|
64
|
-
describe('collection availability', () => {
|
|
65
|
-
it('returns bad request for unavailable collection', async () => {
|
|
66
|
-
const req = createMockRequest({ collection_slug: 'users', collection_id: 'doc-123' });
|
|
67
|
-
const response = await handler.handle(req);
|
|
68
|
-
expect(response.status).toBe(400);
|
|
69
|
-
const body = await response.json();
|
|
70
|
-
expect(body.message).toBe('Collection not available for translation');
|
|
71
|
-
});
|
|
72
|
-
});
|
|
73
|
-
describe('success responses', () => {
|
|
74
|
-
it('returns task status when task exists', async () => {
|
|
75
|
-
const task = createMockTask();
|
|
76
|
-
mockTaskRunner.findByCollection.mockResolvedValue([task]);
|
|
77
|
-
const req = createMockRequest({ collection_slug: 'posts', collection_id: 'doc-123' });
|
|
78
|
-
const response = await handler.handle(req);
|
|
79
|
-
expect(response.status).toBe(200);
|
|
80
|
-
const body = await response.json();
|
|
81
|
-
expect(body.data).toMatchObject({
|
|
82
|
-
id: 'task-123',
|
|
83
|
-
status: 'completed',
|
|
84
|
-
input: {
|
|
85
|
-
collection: {
|
|
86
|
-
relationTo: 'posts',
|
|
87
|
-
value: 'doc-123',
|
|
88
|
-
},
|
|
89
|
-
source_lng: 'en',
|
|
90
|
-
target_lng: 'de',
|
|
91
|
-
},
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
it('returns null when no task exists', async () => {
|
|
95
|
-
;
|
|
96
|
-
mockTaskRunner.findByCollection.mockResolvedValue([]);
|
|
97
|
-
const req = createMockRequest({ collection_slug: 'posts', collection_id: 'doc-123' });
|
|
98
|
-
const response = await handler.handle(req);
|
|
99
|
-
expect(response.status).toBe(200);
|
|
100
|
-
const body = await response.json();
|
|
101
|
-
expect(body.data).toBeNull();
|
|
102
|
-
});
|
|
103
|
-
it('calls findByCollection with correct parameters', async () => {
|
|
104
|
-
const req = createMockRequest({ collection_slug: 'posts', collection_id: 'doc-456' });
|
|
105
|
-
await handler.handle(req);
|
|
106
|
-
expect(mockTaskRunner.findByCollection).toHaveBeenCalledWith('posts', ['doc-456']);
|
|
107
|
-
});
|
|
108
|
-
it('creates task runner with request payload', async () => {
|
|
109
|
-
const mockPayload = { collections: {} };
|
|
110
|
-
const req = createMockRequest({ collection_slug: 'posts', collection_id: 'doc-123' });
|
|
111
|
-
req.payload = mockPayload;
|
|
112
|
-
await handler.handle(req);
|
|
113
|
-
expect(mockTaskRunnerFactory.create).toHaveBeenCalledWith(mockPayload);
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
describe('task status transformation', () => {
|
|
117
|
-
it('includes error information when present', async () => {
|
|
118
|
-
const task = createMockTask({
|
|
119
|
-
status: 'failed',
|
|
120
|
-
error: { message: 'Translation failed' },
|
|
121
|
-
});
|
|
122
|
-
mockTaskRunner.findByCollection.mockResolvedValue([task]);
|
|
123
|
-
const req = createMockRequest({ collection_slug: 'posts', collection_id: 'doc-123' });
|
|
124
|
-
const response = await handler.handle(req);
|
|
125
|
-
const body = await response.json();
|
|
126
|
-
expect(body.data.status).toBe('failed');
|
|
127
|
-
expect(body.data.error).toEqual({ message: 'Translation failed' });
|
|
128
|
-
});
|
|
129
|
-
it('includes cancelled flag', async () => {
|
|
130
|
-
const task = createMockTask({ cancelled: true });
|
|
131
|
-
mockTaskRunner.findByCollection.mockResolvedValue([task]);
|
|
132
|
-
const req = createMockRequest({ collection_slug: 'posts', collection_id: 'doc-123' });
|
|
133
|
-
const response = await handler.handle(req);
|
|
134
|
-
const body = await response.json();
|
|
135
|
-
expect(body.data.cancelled).toBe(true);
|
|
136
|
-
});
|
|
137
|
-
});
|
|
138
|
-
});
|