@webiny/api-headless-cms 6.3.0 → 6.4.0-beta.1
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/abstractions/entryHooks/OnEntryBeforeCreate.js +2 -1
- package/abstractions/entryHooks/OnEntryBeforeCreate.js.map +1 -1
- package/abstractions/entryHooks/index.js +0 -2
- package/abstractions/index.js +0 -2
- package/constants.js +56 -56
- package/constants.js.map +1 -1
- package/context.js +97 -127
- package/context.js.map +1 -1
- package/crud/AccessControl/AccessControl.js +315 -470
- package/crud/AccessControl/AccessControl.js.map +1 -1
- package/crud/contentEntry/entryDataValidation.js +191 -309
- package/crud/contentEntry/entryDataValidation.js.map +1 -1
- package/crud/contentEntry/referenceFieldsMapping.js +29 -59
- package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
- package/crud/contentEntry/references/buildPaths.js +105 -130
- package/crud/contentEntry/references/buildPaths.js.map +1 -1
- package/crud/contentEntry/references/validateEntries.js +36 -74
- package/crud/contentEntry/references/validateEntries.js.map +1 -1
- package/crud/contentEntry/searchableFields.js +42 -57
- package/crud/contentEntry/searchableFields.js.map +1 -1
- package/crud/contentEntry.crud.js +287 -348
- package/crud/contentEntry.crud.js.map +1 -1
- package/crud/contentModel/compatibility/modelApiName.js +7 -10
- package/crud/contentModel/compatibility/modelApiName.js.map +1 -1
- package/crud/contentModel/createFieldStorageId.js +6 -8
- package/crud/contentModel/createFieldStorageId.js.map +1 -1
- package/crud/contentModel/defaultFields.js +56 -49
- package/crud/contentModel/defaultFields.js.map +1 -1
- package/crud/contentModel/fields/descriptionField.js +8 -18
- package/crud/contentModel/fields/descriptionField.js.map +1 -1
- package/crud/contentModel/fields/getApplicableFieldById.js +4 -5
- package/crud/contentModel/fields/getApplicableFieldById.js.map +1 -1
- package/crud/contentModel/fields/imageField.js +8 -13
- package/crud/contentModel/fields/imageField.js.map +1 -1
- package/crud/contentModel/fields/titleField.js +8 -18
- package/crud/contentModel/fields/titleField.js.map +1 -1
- package/crud/contentModel/validate/endingAllowed.js +10 -14
- package/crud/contentModel/validate/endingAllowed.js.map +1 -1
- package/crud/contentModel/validate/isModelEndingAllowed.js +15 -14
- package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
- package/crud/contentModel/validate/modelId.js +19 -24
- package/crud/contentModel/validate/modelId.js.map +1 -1
- package/crud/contentModel/validate/pluralApiName.js +8 -13
- package/crud/contentModel/validate/pluralApiName.js.map +1 -1
- package/crud/contentModel/validate/singularApiName.js +8 -13
- package/crud/contentModel/validate/singularApiName.js.map +1 -1
- package/crud/contentModel/validateStorageId.js +10 -8
- package/crud/contentModel/validateStorageId.js.map +1 -1
- package/crud/contentModel/validation.js +190 -209
- package/crud/contentModel/validation.js.map +1 -1
- package/crud/contentModel.crud.js +65 -109
- package/crud/contentModel.crud.js.map +1 -1
- package/crud/contentModelGroup.crud.js +65 -90
- package/crud/contentModelGroup.crud.js.map +1 -1
- package/domain/contentEntry/EntryId.js +37 -45
- package/domain/contentEntry/EntryId.js.map +1 -1
- package/domain/contentEntry/errors.js +38 -42
- package/domain/contentEntry/errors.js.map +1 -1
- package/domain/contentModel/createFieldStorageId.js +6 -8
- package/domain/contentModel/createFieldStorageId.js.map +1 -1
- package/domain/contentModel/ensureTypeTag.js +5 -11
- package/domain/contentModel/ensureTypeTag.js.map +1 -1
- package/domain/contentModel/errors.js +82 -91
- package/domain/contentModel/errors.js.map +1 -1
- package/domain/contentModel/schemas.js +130 -161
- package/domain/contentModel/schemas.js.map +1 -1
- package/domain/contentModel/validation/endingAllowed.js +10 -14
- package/domain/contentModel/validation/endingAllowed.js.map +1 -1
- package/domain/contentModel/validation/fields/descriptionField.js +8 -18
- package/domain/contentModel/validation/fields/descriptionField.js.map +1 -1
- package/domain/contentModel/validation/fields/getApplicableFieldById.js +4 -5
- package/domain/contentModel/validation/fields/getApplicableFieldById.js.map +1 -1
- package/domain/contentModel/validation/fields/imageField.js +8 -13
- package/domain/contentModel/validation/fields/imageField.js.map +1 -1
- package/domain/contentModel/validation/fields/titleField.js +8 -18
- package/domain/contentModel/validation/fields/titleField.js.map +1 -1
- package/domain/contentModel/validation/isModelEndingAllowed.js +15 -14
- package/domain/contentModel/validation/isModelEndingAllowed.js.map +1 -1
- package/domain/contentModel/validation/modelFields.js +140 -242
- package/domain/contentModel/validation/modelFields.js.map +1 -1
- package/domain/contentModel/validation/modelId.js +19 -24
- package/domain/contentModel/validation/modelId.js.map +1 -1
- package/domain/contentModel/validation/pluralApiName.js +8 -13
- package/domain/contentModel/validation/pluralApiName.js.map +1 -1
- package/domain/contentModel/validation/singularApiName.js +8 -13
- package/domain/contentModel/validation/singularApiName.js.map +1 -1
- package/domain/contentModelGroup/errors.js +60 -67
- package/domain/contentModelGroup/errors.js.map +1 -1
- package/domain/contentModelGroup/validation.js +22 -31
- package/domain/contentModelGroup/validation.js.map +1 -1
- package/export/crud/exporting.js +18 -38
- package/export/crud/exporting.js.map +1 -1
- package/export/crud/importing.js +48 -67
- package/export/crud/importing.js.map +1 -1
- package/export/crud/imports/importData.js +28 -39
- package/export/crud/imports/importData.js.map +1 -1
- package/export/crud/imports/importGroups.js +75 -90
- package/export/crud/imports/importGroups.js.map +1 -1
- package/export/crud/imports/importModels.js +99 -120
- package/export/crud/imports/importModels.js.map +1 -1
- package/export/crud/imports/remapIcon.js +7 -10
- package/export/crud/imports/remapIcon.js.map +1 -1
- package/export/crud/imports/validateGroups.js +75 -99
- package/export/crud/imports/validateGroups.js.map +1 -1
- package/export/crud/imports/validateInput.js +42 -60
- package/export/crud/imports/validateInput.js.map +1 -1
- package/export/crud/imports/validateModels.js +117 -175
- package/export/crud/imports/validateModels.js.map +1 -1
- package/export/crud/index.js +4 -5
- package/export/crud/index.js.map +1 -1
- package/export/crud/sanitize.js +23 -26
- package/export/crud/sanitize.js.map +1 -1
- package/export/graphql/index.js +43 -46
- package/export/graphql/index.js.map +1 -1
- package/export/index.js +0 -2
- package/export/types.js +7 -13
- package/export/types.js.map +1 -1
- package/exports/api/cms/entry.d.ts +8 -0
- package/exports/api/cms/entry.js +21 -69
- package/exports/api/cms/graphql.js +1 -3
- package/exports/api/cms/group.js +3 -14
- package/exports/api/cms/model.js +5 -21
- package/exports/api/cms/storage.js +0 -2
- package/exports/api/cms/validation.js +0 -2
- package/extensions/entryHooks/OnEntryBeforeCreate.js +16 -19
- package/extensions/entryHooks/OnEntryBeforeCreate.js.map +1 -1
- package/extensions/entryHooks/index.js +0 -2
- package/extensions/index.js +4 -2
- package/extensions/index.js.map +1 -1
- package/features/contentEntry/ContentEntriesFeature.js +36 -36
- package/features/contentEntry/ContentEntriesFeature.js.map +1 -1
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js +61 -81
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js.map +1 -1
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js +18 -16
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js.map +1 -1
- package/features/contentEntry/ContentEntryTraverser/abstractions.js +2 -4
- package/features/contentEntry/ContentEntryTraverser/abstractions.js.map +1 -1
- package/features/contentEntry/ContentEntryTraverser/feature.js +6 -5
- package/features/contentEntry/ContentEntryTraverser/feature.js.map +1 -1
- package/features/contentEntry/ContentEntryTraverser/index.js +0 -2
- package/features/contentEntry/CreateEntry/CreateEntryRepository.js +25 -30
- package/features/contentEntry/CreateEntry/CreateEntryRepository.js.map +1 -1
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +4 -16
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +50 -88
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
- package/features/contentEntry/CreateEntry/abstractions.js +3 -14
- package/features/contentEntry/CreateEntry/abstractions.js.map +1 -1
- package/features/contentEntry/CreateEntry/events.js +17 -27
- package/features/contentEntry/CreateEntry/events.js.map +1 -1
- package/features/contentEntry/CreateEntry/feature.js +7 -18
- package/features/contentEntry/CreateEntry/feature.js.map +1 -1
- package/features/contentEntry/CreateEntry/index.js +1 -3
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js +29 -41
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +4 -20
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +81 -129
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js +3 -25
- package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/events.js +25 -31
- package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/feature.js +7 -9
- package/features/contentEntry/CreateEntryRevisionFrom/feature.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/index.js +0 -2
- package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js +21 -23
- package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js.map +1 -1
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +70 -96
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js +26 -30
- package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js.map +1 -1
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +86 -115
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntry/abstractions.js +5 -40
- package/features/contentEntry/DeleteEntry/abstractions.js.map +1 -1
- package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js +30 -41
- package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js.map +1 -1
- package/features/contentEntry/DeleteEntry/events.js +25 -31
- package/features/contentEntry/DeleteEntry/events.js.map +1 -1
- package/features/contentEntry/DeleteEntry/feature.js +10 -14
- package/features/contentEntry/DeleteEntry/feature.js.map +1 -1
- package/features/contentEntry/DeleteEntry/index.js +2 -4
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js +37 -43
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +85 -126
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/abstractions.js +3 -26
- package/features/contentEntry/DeleteEntryRevision/abstractions.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/events.js +25 -31
- package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/feature.js +7 -9
- package/features/contentEntry/DeleteEntryRevision/feature.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/index.js +2 -4
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js +21 -27
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +82 -122
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/abstractions.js +3 -25
- package/features/contentEntry/DeleteMultipleEntries/abstractions.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/events.js +25 -31
- package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/feature.js +7 -9
- package/features/contentEntry/DeleteMultipleEntries/feature.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/index.js +0 -2
- package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js +30 -35
- package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js.map +1 -1
- package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js +21 -34
- package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js.map +1 -1
- package/features/contentEntry/GetEntriesByIds/abstractions.js +3 -14
- package/features/contentEntry/GetEntriesByIds/abstractions.js.map +1 -1
- package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js +15 -25
- package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js.map +1 -1
- package/features/contentEntry/GetEntriesByIds/feature.js +8 -7
- package/features/contentEntry/GetEntriesByIds/feature.js.map +1 -1
- package/features/contentEntry/GetEntriesByIds/index.js +1 -3
- package/features/contentEntry/GetEntry/GetEntryUseCase.js +22 -31
- package/features/contentEntry/GetEntry/GetEntryUseCase.js.map +1 -1
- package/features/contentEntry/GetEntry/abstractions.js +2 -8
- package/features/contentEntry/GetEntry/abstractions.js.map +1 -1
- package/features/contentEntry/GetEntry/feature.js +6 -5
- package/features/contentEntry/GetEntry/feature.js.map +1 -1
- package/features/contentEntry/GetEntry/index.js +0 -2
- package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js +20 -25
- package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js.map +1 -1
- package/features/contentEntry/GetEntryById/abstractions.js +2 -8
- package/features/contentEntry/GetEntryById/abstractions.js.map +1 -1
- package/features/contentEntry/GetEntryById/feature.js +6 -5
- package/features/contentEntry/GetEntryById/feature.js.map +1 -1
- package/features/contentEntry/GetEntryById/index.js +0 -2
- package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js +24 -30
- package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js.map +1 -1
- package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js +21 -34
- package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js.map +1 -1
- package/features/contentEntry/GetLatestEntriesByIds/abstractions.js +3 -14
- package/features/contentEntry/GetLatestEntriesByIds/abstractions.js.map +1 -1
- package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js +15 -25
- package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js.map +1 -1
- package/features/contentEntry/GetLatestEntriesByIds/feature.js +8 -7
- package/features/contentEntry/GetLatestEntriesByIds/feature.js.map +1 -1
- package/features/contentEntry/GetLatestEntriesByIds/index.js +1 -3
- package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js +21 -35
- package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js.map +1 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js +23 -29
- package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js.map +1 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js +6 -21
- package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/feature.js +10 -19
- package/features/contentEntry/GetLatestRevisionByEntryId/feature.js.map +1 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/index.js +1 -3
- package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js +17 -29
- package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js.map +1 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js +14 -16
- package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js.map +1 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js +17 -27
- package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js.map +1 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js +21 -35
- package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js.map +1 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js +23 -29
- package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js.map +1 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js +17 -28
- package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js.map +1 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js +4 -16
- package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js +8 -12
- package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js.map +1 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/index.js +1 -3
- package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js +24 -29
- package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js.map +1 -1
- package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js +21 -34
- package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js.map +1 -1
- package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js +3 -14
- package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js.map +1 -1
- package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js +15 -25
- package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js.map +1 -1
- package/features/contentEntry/GetPublishedEntriesByIds/feature.js +8 -7
- package/features/contentEntry/GetPublishedEntriesByIds/feature.js.map +1 -1
- package/features/contentEntry/GetPublishedEntriesByIds/index.js +1 -3
- package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js +25 -31
- package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js.map +1 -1
- package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js +16 -23
- package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js.map +1 -1
- package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js +3 -13
- package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js +7 -17
- package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js.map +1 -1
- package/features/contentEntry/GetPublishedRevisionByEntryId/index.js +1 -3
- package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js +26 -33
- package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js.map +1 -1
- package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js +14 -17
- package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js.map +1 -1
- package/features/contentEntry/GetRevisionById/abstractions.js +3 -15
- package/features/contentEntry/GetRevisionById/abstractions.js.map +1 -1
- package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js +14 -26
- package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js.map +1 -1
- package/features/contentEntry/GetRevisionById/feature.js +8 -21
- package/features/contentEntry/GetRevisionById/feature.js.map +1 -1
- package/features/contentEntry/GetRevisionById/index.js +1 -3
- package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js +24 -30
- package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js.map +1 -1
- package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js +21 -34
- package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js.map +1 -1
- package/features/contentEntry/GetRevisionsByEntryId/abstractions.js +3 -14
- package/features/contentEntry/GetRevisionsByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetRevisionsByEntryId/feature.js +7 -6
- package/features/contentEntry/GetRevisionsByEntryId/feature.js.map +1 -1
- package/features/contentEntry/GetRevisionsByEntryId/index.js +1 -3
- package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js +25 -43
- package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js.map +1 -1
- package/features/contentEntry/GetSingletonEntry/abstractions.js +2 -9
- package/features/contentEntry/GetSingletonEntry/abstractions.js.map +1 -1
- package/features/contentEntry/GetSingletonEntry/feature.js +6 -13
- package/features/contentEntry/GetSingletonEntry/feature.js.map +1 -1
- package/features/contentEntry/GetSingletonEntry/index.js +0 -2
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js +23 -24
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js.map +1 -1
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +45 -61
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
- package/features/contentEntry/GetUniqueFieldValues/abstractions.js +3 -13
- package/features/contentEntry/GetUniqueFieldValues/abstractions.js.map +1 -1
- package/features/contentEntry/GetUniqueFieldValues/errors.js +19 -20
- package/features/contentEntry/GetUniqueFieldValues/errors.js.map +1 -1
- package/features/contentEntry/GetUniqueFieldValues/feature.js +7 -6
- package/features/contentEntry/GetUniqueFieldValues/feature.js.map +1 -1
- package/features/contentEntry/GetUniqueFieldValues/index.js +1 -3
- package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js +22 -29
- package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js.map +1 -1
- package/features/contentEntry/ListEntries/ListEntriesRepository.js +55 -57
- package/features/contentEntry/ListEntries/ListEntriesRepository.js.map +1 -1
- package/features/contentEntry/ListEntries/ListEntriesUseCase.js +33 -53
- package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
- package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js +25 -27
- package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js.map +1 -1
- package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js +22 -29
- package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js.map +1 -1
- package/features/contentEntry/ListEntries/abstractions.js +6 -35
- package/features/contentEntry/ListEntries/abstractions.js.map +1 -1
- package/features/contentEntry/ListEntries/feature.js +10 -12
- package/features/contentEntry/ListEntries/feature.js.map +1 -1
- package/features/contentEntry/ListEntries/index.js +1 -3
- package/features/contentEntry/MoveEntry/MoveEntryRepository.js +19 -25
- package/features/contentEntry/MoveEntry/MoveEntryRepository.js.map +1 -1
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +66 -94
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
- package/features/contentEntry/MoveEntry/abstractions.js +3 -25
- package/features/contentEntry/MoveEntry/abstractions.js.map +1 -1
- package/features/contentEntry/MoveEntry/events.js +25 -31
- package/features/contentEntry/MoveEntry/events.js.map +1 -1
- package/features/contentEntry/MoveEntry/feature.js +7 -9
- package/features/contentEntry/MoveEntry/feature.js.map +1 -1
- package/features/contentEntry/MoveEntry/index.js +1 -3
- package/features/contentEntry/PublishEntry/PublishEntryRepository.js +28 -38
- package/features/contentEntry/PublishEntry/PublishEntryRepository.js.map +1 -1
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +3 -17
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +77 -118
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/PublishEntry/abstractions.js +3 -25
- package/features/contentEntry/PublishEntry/abstractions.js.map +1 -1
- package/features/contentEntry/PublishEntry/events.js +25 -31
- package/features/contentEntry/PublishEntry/events.js.map +1 -1
- package/features/contentEntry/PublishEntry/feature.js +7 -9
- package/features/contentEntry/PublishEntry/feature.js.map +1 -1
- package/features/contentEntry/PublishEntry/index.js +1 -3
- package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js +33 -48
- package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js.map +1 -1
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +3 -15
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +68 -103
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/RepublishEntry/abstractions.js +3 -26
- package/features/contentEntry/RepublishEntry/abstractions.js.map +1 -1
- package/features/contentEntry/RepublishEntry/events.js +25 -31
- package/features/contentEntry/RepublishEntry/events.js.map +1 -1
- package/features/contentEntry/RepublishEntry/feature.js +7 -9
- package/features/contentEntry/RepublishEntry/feature.js.map +1 -1
- package/features/contentEntry/RepublishEntry/index.js +0 -2
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js +28 -38
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +80 -110
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/abstractions.js +3 -26
- package/features/contentEntry/RestoreEntryFromBin/abstractions.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/events.js +25 -31
- package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/feature.js +7 -9
- package/features/contentEntry/RestoreEntryFromBin/feature.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/index.js +0 -2
- package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js +25 -30
- package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +3 -14
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +70 -115
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/abstractions.js +3 -14
- package/features/contentEntry/UnpublishEntry/abstractions.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/events.js +25 -36
- package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/feature.js +7 -18
- package/features/contentEntry/UnpublishEntry/feature.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/index.js +1 -3
- package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js +25 -30
- package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js.map +1 -1
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +5 -22
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +58 -107
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
- package/features/contentEntry/UpdateEntry/abstractions.d.ts +1 -3
- package/features/contentEntry/UpdateEntry/abstractions.js +3 -14
- package/features/contentEntry/UpdateEntry/abstractions.js.map +1 -1
- package/features/contentEntry/UpdateEntry/events.js +17 -27
- package/features/contentEntry/UpdateEntry/events.js.map +1 -1
- package/features/contentEntry/UpdateEntry/feature.js +7 -18
- package/features/contentEntry/UpdateEntry/feature.js.map +1 -1
- package/features/contentEntry/UpdateEntry/index.js +1 -3
- package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.d.ts +22 -0
- package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js +77 -0
- package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js.map +1 -0
- package/features/contentEntry/UpdateRevisionDescription/abstractions.d.ts +25 -0
- package/features/contentEntry/UpdateRevisionDescription/abstractions.js +5 -0
- package/features/contentEntry/UpdateRevisionDescription/abstractions.js.map +1 -0
- package/features/contentEntry/UpdateRevisionDescription/events.d.ts +44 -0
- package/features/contentEntry/UpdateRevisionDescription/events.js +23 -0
- package/features/contentEntry/UpdateRevisionDescription/events.js.map +1 -0
- package/features/contentEntry/UpdateRevisionDescription/feature.d.ts +12 -0
- package/features/contentEntry/UpdateRevisionDescription/feature.js +11 -0
- package/features/contentEntry/UpdateRevisionDescription/feature.js.map +1 -0
- package/features/contentEntry/UpdateRevisionDescription/index.d.ts +2 -0
- package/features/contentEntry/UpdateRevisionDescription/index.js +2 -0
- package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js +17 -26
- package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js.map +1 -1
- package/features/contentEntry/UpdateSingletonEntry/abstractions.js +2 -9
- package/features/contentEntry/UpdateSingletonEntry/abstractions.js.map +1 -1
- package/features/contentEntry/UpdateSingletonEntry/feature.js +6 -13
- package/features/contentEntry/UpdateSingletonEntry/feature.js.map +1 -1
- package/features/contentEntry/UpdateSingletonEntry/index.js +0 -2
- package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js +42 -63
- package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js.map +1 -1
- package/features/contentEntry/ValidateEntry/abstractions.js +2 -8
- package/features/contentEntry/ValidateEntry/abstractions.js.map +1 -1
- package/features/contentEntry/ValidateEntry/feature.js +6 -6
- package/features/contentEntry/ValidateEntry/feature.js.map +1 -1
- package/features/contentEntry/ValidateEntry/index.js +0 -2
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.d.ts +15 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js +212 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.d.ts +13 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js +5 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.d.ts +4 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js +11 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.d.ts +2 -0
- package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.js +2 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.d.ts +15 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js +150 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.d.ts +13 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js +5 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.d.ts +4 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js +11 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.d.ts +2 -0
- package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.js +2 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.d.ts +12 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js +66 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.d.ts +12 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js +5 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.d.ts +4 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js +11 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.d.ts +2 -0
- package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.js +2 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.d.ts +12 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js +62 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.d.ts +12 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js +5 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.d.ts +4 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js +11 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.d.ts +2 -0
- package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.js +2 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.d.ts +10 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js +41 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.d.ts +12 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js +5 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.d.ts +4 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js +11 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js.map +1 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.d.ts +2 -0
- package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.js +2 -0
- package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.d.ts +4 -0
- package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js +21 -0
- package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js.map +1 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.d.ts +12 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js +104 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js.map +1 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.d.ts +13 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js +5 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js.map +1 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.d.ts +4 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js +11 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js.map +1 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.d.ts +2 -0
- package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.js +2 -0
- package/{crud → features}/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.d.ts +0 -3
- package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +17 -0
- package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +1 -0
- package/features/contentEntry/entryDataFactories/statuses.js +7 -0
- package/features/contentEntry/entryDataFactories/statuses.js.map +1 -0
- package/features/contentEntry/entryDataFactories/system.js +10 -0
- package/features/contentEntry/entryDataFactories/system.js.map +1 -0
- package/features/contentModel/ContentModelFeature.js +16 -19
- package/features/contentModel/ContentModelFeature.js.map +1 -1
- package/features/contentModel/CreateModel/CreateModelRepository.js +104 -148
- package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
- package/features/contentModel/CreateModel/CreateModelUseCase.js +74 -119
- package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
- package/features/contentModel/CreateModel/abstractions.js +3 -13
- package/features/contentModel/CreateModel/abstractions.js.map +1 -1
- package/features/contentModel/CreateModel/events.js +25 -36
- package/features/contentModel/CreateModel/events.js.map +1 -1
- package/features/contentModel/CreateModel/feature.js +7 -16
- package/features/contentModel/CreateModel/feature.js.map +1 -1
- package/features/contentModel/CreateModel/index.js +1 -3
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +107 -150
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +84 -119
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
- package/features/contentModel/CreateModelFrom/abstractions.js +3 -13
- package/features/contentModel/CreateModelFrom/abstractions.js.map +1 -1
- package/features/contentModel/CreateModelFrom/events.js +25 -36
- package/features/contentModel/CreateModelFrom/events.js.map +1 -1
- package/features/contentModel/CreateModelFrom/feature.js +7 -16
- package/features/contentModel/CreateModelFrom/feature.js.map +1 -1
- package/features/contentModel/CreateModelFrom/index.js +1 -3
- package/features/contentModel/DeleteModel/DeleteModelRepository.js +27 -41
- package/features/contentModel/DeleteModel/DeleteModelRepository.js.map +1 -1
- package/features/contentModel/DeleteModel/DeleteModelUseCase.js +44 -72
- package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
- package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js +50 -83
- package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js.map +1 -1
- package/features/contentModel/DeleteModel/abstractions.js +3 -13
- package/features/contentModel/DeleteModel/abstractions.js.map +1 -1
- package/features/contentModel/DeleteModel/events.js +25 -36
- package/features/contentModel/DeleteModel/events.js.map +1 -1
- package/features/contentModel/DeleteModel/feature.js +8 -19
- package/features/contentModel/DeleteModel/feature.js.map +1 -1
- package/features/contentModel/DeleteModel/index.js +1 -3
- package/features/contentModel/GetModel/GetModelRepository.js +15 -23
- package/features/contentModel/GetModel/GetModelRepository.js.map +1 -1
- package/features/contentModel/GetModel/GetModelUseCase.js +21 -34
- package/features/contentModel/GetModel/GetModelUseCase.js.map +1 -1
- package/features/contentModel/GetModel/abstractions.js +3 -13
- package/features/contentModel/GetModel/abstractions.js.map +1 -1
- package/features/contentModel/GetModel/feature.js +7 -16
- package/features/contentModel/GetModel/feature.js.map +1 -1
- package/features/contentModel/GetModel/index.d.ts +1 -1
- package/features/contentModel/GetModel/index.js +1 -3
- package/features/contentModel/ListModels/ListModelsRepository.js +18 -36
- package/features/contentModel/ListModels/ListModelsRepository.js.map +1 -1
- package/features/contentModel/ListModels/ListModelsUseCase.js +23 -41
- package/features/contentModel/ListModels/ListModelsUseCase.js.map +1 -1
- package/features/contentModel/ListModels/abstractions.js +3 -13
- package/features/contentModel/ListModels/abstractions.js.map +1 -1
- package/features/contentModel/ListModels/feature.js +7 -17
- package/features/contentModel/ListModels/feature.js.map +1 -1
- package/features/contentModel/ListModels/index.js +0 -2
- package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js +18 -18
- package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js.map +1 -1
- package/features/contentModel/ModelFieldCompression/abstractions.js +2 -1
- package/features/contentModel/ModelFieldCompression/abstractions.js.map +1 -1
- package/features/contentModel/ModelFieldCompression/feature.js +6 -5
- package/features/contentModel/ModelFieldCompression/feature.js.map +1 -1
- package/features/contentModel/ModelFieldCompression/index.js +0 -2
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +15 -19
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
- package/features/contentModel/ModelToAstConverter/abstractions.js +2 -6
- package/features/contentModel/ModelToAstConverter/abstractions.js.map +1 -1
- package/features/contentModel/ModelToAstConverter/feature.js +6 -5
- package/features/contentModel/ModelToAstConverter/feature.js.map +1 -1
- package/features/contentModel/ModelToAstConverter/index.js +0 -2
- package/features/contentModel/UpdateModel/UpdateModelRepository.js +71 -97
- package/features/contentModel/UpdateModel/UpdateModelRepository.js.map +1 -1
- package/features/contentModel/UpdateModel/UpdateModelUseCase.js +75 -118
- package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
- package/features/contentModel/UpdateModel/abstractions.js +3 -13
- package/features/contentModel/UpdateModel/abstractions.js.map +1 -1
- package/features/contentModel/UpdateModel/events.js +25 -36
- package/features/contentModel/UpdateModel/events.js.map +1 -1
- package/features/contentModel/UpdateModel/feature.js +7 -16
- package/features/contentModel/UpdateModel/feature.js.map +1 -1
- package/features/contentModel/UpdateModel/index.js +1 -3
- package/features/contentModel/shared/ModelsFetcher.js +66 -81
- package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
- package/features/contentModel/shared/PluginModelsProvider.js +38 -54
- package/features/contentModel/shared/PluginModelsProvider.js.map +1 -1
- package/features/contentModel/shared/abstractions.js +4 -16
- package/features/contentModel/shared/abstractions.js.map +1 -1
- package/features/contentModelGroup/ContentModelGroupFeature.js +12 -16
- package/features/contentModelGroup/ContentModelGroupFeature.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +63 -94
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +80 -107
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/abstractions.js +3 -13
- package/features/contentModelGroup/CreateGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/events.js +25 -36
- package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/feature.js +7 -16
- package/features/contentModelGroup/CreateGroup/feature.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/index.js +0 -2
- package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js +37 -56
- package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +53 -80
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/abstractions.js +3 -13
- package/features/contentModelGroup/DeleteGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/events.js +25 -36
- package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/feature.js +7 -16
- package/features/contentModelGroup/DeleteGroup/feature.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/index.js +0 -2
- package/features/contentModelGroup/GetGroup/GetGroupRepository.js +60 -80
- package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
- package/features/contentModelGroup/GetGroup/GetGroupUseCase.js +19 -34
- package/features/contentModelGroup/GetGroup/GetGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/GetGroup/abstractions.js +3 -13
- package/features/contentModelGroup/GetGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/GetGroup/feature.js +7 -16
- package/features/contentModelGroup/GetGroup/feature.js.map +1 -1
- package/features/contentModelGroup/GetGroup/index.js +0 -2
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +57 -74
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
- package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js +19 -34
- package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js.map +1 -1
- package/features/contentModelGroup/ListGroups/abstractions.js +3 -13
- package/features/contentModelGroup/ListGroups/abstractions.js.map +1 -1
- package/features/contentModelGroup/ListGroups/feature.js +7 -16
- package/features/contentModelGroup/ListGroups/feature.js.map +1 -1
- package/features/contentModelGroup/ListGroups/index.js +0 -2
- package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js +31 -44
- package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +75 -111
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/abstractions.js +3 -13
- package/features/contentModelGroup/UpdateGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/events.js +25 -36
- package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/feature.js +7 -16
- package/features/contentModelGroup/UpdateGroup/feature.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/index.js +0 -2
- package/features/contentModelGroup/shared/PluginGroupsProvider.js +61 -78
- package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
- package/features/contentModelGroup/shared/abstractions.js +4 -9
- package/features/contentModelGroup/shared/abstractions.js.map +1 -1
- package/features/contentModelGroup/shared/index.js +1 -3
- package/features/graphql/feature.js +18 -17
- package/features/graphql/feature.js.map +1 -1
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +24 -20
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -1
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +2 -1
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -1
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +2 -1
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -1
- package/features/graphql/fields/base/BooleanToGraphQL.js +37 -52
- package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/DateTimeToGraphQL.js +48 -63
- package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/DynamicZoneToGraphQL.js +168 -252
- package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/FileToGraphQL.js +24 -27
- package/features/graphql/fields/base/FileToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/JsonToGraphQL.js +30 -39
- package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/LongTextToGraphQL.js +31 -42
- package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/NumberToGraphQL.js +37 -52
- package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/ObjectToGraphQL.js +180 -239
- package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/RefToGraphQL.js +150 -210
- package/features/graphql/fields/base/RefToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/RichTextToGraphQL.js +35 -46
- package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/SearchableJsonToGraphQL.js +38 -51
- package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/TextToGraphQL.js +37 -52
- package/features/graphql/fields/base/TextToGraphQL.js.map +1 -1
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +26 -31
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -1
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +7 -10
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -1
- package/features/graphql/fields/base/richText/richTextResolver.js +11 -20
- package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -1
- package/features/graphql/fields/base/utils/createGraphQLInputField.js +6 -13
- package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -1
- package/features/graphql/index.js +0 -2
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +2 -1
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -1
- package/features/installer/CmsInstaller.js +31 -32
- package/features/installer/CmsInstaller.js.map +1 -1
- package/features/installer/feature.js +6 -5
- package/features/installer/feature.js.map +1 -1
- package/features/modelBuilder/LayoutBuilder.js +66 -122
- package/features/modelBuilder/LayoutBuilder.js.map +1 -1
- package/features/modelBuilder/abstractions.js +3 -17
- package/features/modelBuilder/abstractions.js.map +1 -1
- package/features/modelBuilder/feature.js +31 -42
- package/features/modelBuilder/feature.js.map +1 -1
- package/features/modelBuilder/fields/BaseFieldBuilder.d.ts +3 -0
- package/features/modelBuilder/fields/BaseFieldBuilder.js +38 -38
- package/features/modelBuilder/fields/BaseFieldBuilder.js.map +1 -1
- package/features/modelBuilder/fields/BooleanFieldType.js +18 -17
- package/features/modelBuilder/fields/BooleanFieldType.js.map +1 -1
- package/features/modelBuilder/fields/DataFieldBuilder.d.ts +1 -0
- package/features/modelBuilder/fields/DataFieldBuilder.js +161 -201
- package/features/modelBuilder/fields/DataFieldBuilder.js.map +1 -1
- package/features/modelBuilder/fields/DateTimeFieldType.js +59 -78
- package/features/modelBuilder/fields/DateTimeFieldType.js.map +1 -1
- package/features/modelBuilder/fields/DynamicZoneFieldType.js +51 -54
- package/features/modelBuilder/fields/DynamicZoneFieldType.js.map +1 -1
- package/features/modelBuilder/fields/FieldBuilder.js +0 -2
- package/features/modelBuilder/fields/FieldBuilderRegistry.js +38 -62
- package/features/modelBuilder/fields/FieldBuilderRegistry.js.map +1 -1
- package/features/modelBuilder/fields/FileFieldType.js +25 -24
- package/features/modelBuilder/fields/FileFieldType.js.map +1 -1
- package/features/modelBuilder/fields/JsonFieldType.js +13 -12
- package/features/modelBuilder/fields/JsonFieldType.js.map +1 -1
- package/features/modelBuilder/fields/LayoutFieldBuilder.js +3 -6
- package/features/modelBuilder/fields/LayoutFieldBuilder.js.map +1 -1
- package/features/modelBuilder/fields/LocationFieldType.js +15 -14
- package/features/modelBuilder/fields/LocationFieldType.js.map +1 -1
- package/features/modelBuilder/fields/LongTextFieldType.js +115 -114
- package/features/modelBuilder/fields/LongTextFieldType.js.map +1 -1
- package/features/modelBuilder/fields/NumberFieldType.js +38 -37
- package/features/modelBuilder/fields/NumberFieldType.js.map +1 -1
- package/features/modelBuilder/fields/ObjectFieldType.js +50 -67
- package/features/modelBuilder/fields/ObjectFieldType.js.map +1 -1
- package/features/modelBuilder/fields/RefFieldType.js +25 -24
- package/features/modelBuilder/fields/RefFieldType.js.map +1 -1
- package/features/modelBuilder/fields/RichTextFieldType.js +20 -19
- package/features/modelBuilder/fields/RichTextFieldType.js.map +1 -1
- package/features/modelBuilder/fields/SearchableJsonFieldType.js +13 -12
- package/features/modelBuilder/fields/SearchableJsonFieldType.js.map +1 -1
- package/features/modelBuilder/fields/TextFieldType.d.ts +1 -0
- package/features/modelBuilder/fields/TextFieldType.js +130 -123
- package/features/modelBuilder/fields/TextFieldType.js.map +1 -1
- package/features/modelBuilder/fields/UiAlertFieldType.js +27 -27
- package/features/modelBuilder/fields/UiAlertFieldType.js.map +1 -1
- package/features/modelBuilder/fields/UiSeparatorFieldType.js +23 -22
- package/features/modelBuilder/fields/UiSeparatorFieldType.js.map +1 -1
- package/features/modelBuilder/fields/UiTabsFieldType.js +58 -63
- package/features/modelBuilder/fields/UiTabsFieldType.js.map +1 -1
- package/features/modelBuilder/fields/abstractions.js +2 -9
- package/features/modelBuilder/fields/abstractions.js.map +1 -1
- package/features/modelBuilder/fields/fieldTypeValidator.js +0 -31
- package/features/modelBuilder/index.js +10 -16
- package/features/modelBuilder/models/BaseModelBuilder.js +70 -130
- package/features/modelBuilder/models/BaseModelBuilder.js.map +1 -1
- package/features/modelBuilder/models/ModelBuilder.js +18 -33
- package/features/modelBuilder/models/ModelBuilder.js.map +1 -1
- package/features/modelBuilder/models/ModelsProvider.js +24 -33
- package/features/modelBuilder/models/ModelsProvider.js.map +1 -1
- package/features/modelBuilder/models/PrivateModelBuilder.js +15 -24
- package/features/modelBuilder/models/PrivateModelBuilder.js.map +1 -1
- package/features/modelBuilder/models/PublicModelBuilder.js +89 -114
- package/features/modelBuilder/models/PublicModelBuilder.js.map +1 -1
- package/features/modelBuilder/models/abstractions.js +2 -6
- package/features/modelBuilder/models/abstractions.js.map +1 -1
- package/features/shared/abstractions.js +5 -16
- package/features/shared/abstractions.js.map +1 -1
- package/features/sortMapper/SortMapper.js +27 -46
- package/features/sortMapper/SortMapper.js.map +1 -1
- package/features/sortMapper/abstractions.js +2 -2
- package/features/sortMapper/abstractions.js.map +1 -1
- package/features/sortMapper/feature.js +7 -6
- package/features/sortMapper/feature.js.map +1 -1
- package/features/storage/StorageTransformRegistry.d.ts +1 -0
- package/features/storage/StorageTransformRegistry.js +29 -20
- package/features/storage/StorageTransformRegistry.js.map +1 -1
- package/features/storage/abstractions/StorageTransform.js +2 -1
- package/features/storage/abstractions/StorageTransform.js.map +1 -1
- package/features/storage/abstractions/StorageTransformRegistry.js +2 -1
- package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -1
- package/features/storage/feature.js +15 -12
- package/features/storage/feature.js.map +1 -1
- package/features/storage/fields/CompressedTextStorageTransform.d.ts +13 -0
- package/features/storage/fields/CompressedTextStorageTransform.js +37 -0
- package/features/storage/fields/CompressedTextStorageTransform.js.map +1 -0
- package/features/storage/fields/DateStorageTransform.js +67 -96
- package/features/storage/fields/DateStorageTransform.js.map +1 -1
- package/features/storage/fields/DefaultStorageTransform.js +13 -14
- package/features/storage/fields/DefaultStorageTransform.js.map +1 -1
- package/features/storage/fields/DynamicZoneStorageTransform.js +91 -128
- package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -1
- package/features/storage/fields/JsonStorageTransform.js +17 -22
- package/features/storage/fields/JsonStorageTransform.js.map +1 -1
- package/features/storage/fields/LongTextStorageTransform.js +33 -44
- package/features/storage/fields/LongTextStorageTransform.js.map +1 -1
- package/features/storage/fields/ObjectStorageTransform.js +64 -87
- package/features/storage/fields/ObjectStorageTransform.js.map +1 -1
- package/features/storage/fields/RichTextStorageTransform.js +23 -28
- package/features/storage/fields/RichTextStorageTransform.js.map +1 -1
- package/features/storage/index.js +0 -2
- package/features/validation/CmsModelFieldPatternValidatorRegistry.js +21 -15
- package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -1
- package/features/validation/CmsModelFieldValidatorRegistry.js +21 -17
- package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -1
- package/features/validation/abstractions/CmsModelFieldPatternValidator.js +2 -1
- package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -1
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +2 -1
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -1
- package/features/validation/abstractions/CmsModelFieldValidator.js +2 -1
- package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -1
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +2 -1
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -1
- package/features/validation/feature.js +25 -24
- package/features/validation/feature.js.map +1 -1
- package/features/validation/index.js +0 -2
- package/features/validation/validators/DateGteValidator.js +12 -18
- package/features/validation/validators/DateGteValidator.js.map +1 -1
- package/features/validation/validators/DateLteValidator.js +12 -18
- package/features/validation/validators/DateLteValidator.js.map +1 -1
- package/features/validation/validators/GteValidator.js +11 -13
- package/features/validation/validators/GteValidator.js.map +1 -1
- package/features/validation/validators/InValidator.js +11 -13
- package/features/validation/validators/InValidator.js.map +1 -1
- package/features/validation/validators/LteValidator.js +11 -13
- package/features/validation/validators/LteValidator.js.map +1 -1
- package/features/validation/validators/MaxLengthValidator.js +11 -13
- package/features/validation/validators/MaxLengthValidator.js.map +1 -1
- package/features/validation/validators/MinLengthValidator.js +11 -13
- package/features/validation/validators/MinLengthValidator.js.map +1 -1
- package/features/validation/validators/PatternValidator.js +20 -29
- package/features/validation/validators/PatternValidator.js.map +1 -1
- package/features/validation/validators/RequiredValidator.js +10 -9
- package/features/validation/validators/RequiredValidator.js.map +1 -1
- package/features/validation/validators/TimeGteValidator.js +11 -13
- package/features/validation/validators/TimeGteValidator.js.map +1 -1
- package/features/validation/validators/TimeLteValidator.js +11 -13
- package/features/validation/validators/TimeLteValidator.js.map +1 -1
- package/features/validation/validators/UniqueValidator.js +31 -38
- package/features/validation/validators/UniqueValidator.js.map +1 -1
- package/features/validation/validators/patterns/EmailPattern.js +11 -8
- package/features/validation/validators/patterns/EmailPattern.js.map +1 -1
- package/features/validation/validators/patterns/LowerCasePattern.js +11 -8
- package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -1
- package/features/validation/validators/patterns/LowerCaseSpacePattern.js +11 -8
- package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -1
- package/features/validation/validators/patterns/UpperCasePattern.js +11 -8
- package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -1
- package/features/validation/validators/patterns/UpperCaseSpacePattern.js +11 -8
- package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -1
- package/features/validation/validators/patterns/UrlPattern.js +11 -8
- package/features/validation/validators/patterns/UrlPattern.js.map +1 -1
- package/features/whereMapper/WhereMapper.js +42 -69
- package/features/whereMapper/WhereMapper.js.map +1 -1
- package/features/whereMapper/abstractions.js +2 -2
- package/features/whereMapper/abstractions.js.map +1 -1
- package/features/whereMapper/feature.js +7 -6
- package/features/whereMapper/feature.js.map +1 -1
- package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +18 -37
- package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +92 -136
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +103 -152
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/index.js +6 -6
- package/fieldConverters/index.js.map +1 -1
- package/graphql/buildSchemaPlugins.js +16 -20
- package/graphql/buildSchemaPlugins.js.map +1 -1
- package/graphql/checkEndpointAccess.js +4 -5
- package/graphql/checkEndpointAccess.js.map +1 -1
- package/graphql/createExecutableSchema.js +30 -41
- package/graphql/createExecutableSchema.js.map +1 -1
- package/graphql/formatErrorPayload.js +13 -14
- package/graphql/formatErrorPayload.js.map +1 -1
- package/graphql/generateSchema.js +20 -24
- package/graphql/generateSchema.js.map +1 -1
- package/graphql/getSchema/generateCacheId.js +7 -6
- package/graphql/getSchema/generateCacheId.js.map +1 -1
- package/graphql/getSchema/generateCacheKey.js +23 -23
- package/graphql/getSchema/generateCacheKey.js.map +1 -1
- package/graphql/getSchema.js +46 -63
- package/graphql/getSchema.js.map +1 -1
- package/graphql/graphQLHandlerFactory.js +15 -23
- package/graphql/graphQLHandlerFactory.js.map +1 -1
- package/graphql/handleRequest.js +50 -63
- package/graphql/handleRequest.js.map +1 -1
- package/graphql/index.js +6 -3
- package/graphql/index.js.map +1 -1
- package/graphql/scalars/RevisionId.js +10 -14
- package/graphql/scalars/RevisionId.js.map +1 -1
- package/graphql/scalars/RevisionIdScalarPlugin.js +10 -7
- package/graphql/scalars/RevisionIdScalarPlugin.js.map +1 -1
- package/graphql/schema/baseContentSchema.js +29 -30
- package/graphql/schema/baseContentSchema.js.map +1 -1
- package/graphql/schema/baseSchema.js +33 -36
- package/graphql/schema/baseSchema.js.map +1 -1
- package/graphql/schema/cms/createEntryResolver.js +37 -49
- package/graphql/schema/cms/createEntryResolver.js.map +1 -1
- package/graphql/schema/cms/deleteEntryResolver.js +39 -51
- package/graphql/schema/cms/deleteEntryResolver.js.map +1 -1
- package/graphql/schema/cms/getEntryResolver.js +37 -51
- package/graphql/schema/cms/getEntryResolver.js.map +1 -1
- package/graphql/schema/cms/helpers/buildFieldsSelection.js +26 -71
- package/graphql/schema/cms/helpers/buildFieldsSelection.js.map +1 -1
- package/graphql/schema/cms/helpers/getErrorMessage.js +5 -11
- package/graphql/schema/cms/helpers/getErrorMessage.js.map +1 -1
- package/graphql/schema/cms/helpers/getModel.js +5 -9
- package/graphql/schema/cms/helpers/getModel.js.map +1 -1
- package/graphql/schema/cms/helpers/index.js +0 -2
- package/graphql/schema/cms/helpers/transformSortToArray.js +7 -34
- package/graphql/schema/cms/helpers/transformSortToArray.js.map +1 -1
- package/graphql/schema/cms/helpers/transformWhereToNested.js +23 -50
- package/graphql/schema/cms/helpers/transformWhereToNested.js.map +1 -1
- package/graphql/schema/cms/helpers.js +0 -2
- package/graphql/schema/cms/index.js +20 -22
- package/graphql/schema/cms/index.js.map +1 -1
- package/graphql/schema/cms/listEntriesResolver.js +58 -82
- package/graphql/schema/cms/listEntriesResolver.js.map +1 -1
- package/graphql/schema/cms/publishEntryResolver.js +37 -49
- package/graphql/schema/cms/publishEntryResolver.js.map +1 -1
- package/graphql/schema/cms/resolvers/createEntry.js +11 -10
- package/graphql/schema/cms/resolvers/createEntry.js.map +1 -1
- package/graphql/schema/cms/resolvers/deleteEntryRevision.js +11 -10
- package/graphql/schema/cms/resolvers/deleteEntryRevision.js.map +1 -1
- package/graphql/schema/cms/resolvers/getEntry.js +11 -10
- package/graphql/schema/cms/resolvers/getEntry.js.map +1 -1
- package/graphql/schema/cms/resolvers/index.js +0 -2
- package/graphql/schema/cms/resolvers/listEntries.js +11 -10
- package/graphql/schema/cms/resolvers/listEntries.js.map +1 -1
- package/graphql/schema/cms/resolvers/mutationCms.js +13 -18
- package/graphql/schema/cms/resolvers/mutationCms.js.map +1 -1
- package/graphql/schema/cms/resolvers/publishEntryRevision.js +11 -10
- package/graphql/schema/cms/resolvers/publishEntryRevision.js.map +1 -1
- package/graphql/schema/cms/resolvers/queryCms.js +13 -17
- package/graphql/schema/cms/resolvers/queryCms.js.map +1 -1
- package/graphql/schema/cms/resolvers/unpublishEntryRevision.js +11 -10
- package/graphql/schema/cms/resolvers/unpublishEntryRevision.js.map +1 -1
- package/graphql/schema/cms/resolvers/updateEntryRevision.js +11 -10
- package/graphql/schema/cms/resolvers/updateEntryRevision.js.map +1 -1
- package/graphql/schema/cms/typeDefs/index.js +0 -2
- package/graphql/schema/cms/typeDefs/mutation.js +8 -7
- package/graphql/schema/cms/typeDefs/mutation.js.map +1 -1
- package/graphql/schema/cms/typeDefs/query.js +8 -7
- package/graphql/schema/cms/typeDefs/query.js.map +1 -1
- package/graphql/schema/cms/typeDefs/responses.js +8 -7
- package/graphql/schema/cms/typeDefs/responses.js.map +1 -1
- package/graphql/schema/cms/unpublishEntryResolver.js +37 -49
- package/graphql/schema/cms/unpublishEntryResolver.js.map +1 -1
- package/graphql/schema/cms/updateEntryResolver.js +38 -51
- package/graphql/schema/cms/updateEntryResolver.js.map +1 -1
- package/graphql/schema/contentEntries.js +218 -305
- package/graphql/schema/contentEntries.js.map +1 -1
- package/graphql/schema/contentModelGroups.js +70 -89
- package/graphql/schema/contentModelGroups.js.map +1 -1
- package/graphql/schema/contentModels.js +92 -105
- package/graphql/schema/contentModels.js.map +1 -1
- package/graphql/schema/createFieldResolvers.js +67 -121
- package/graphql/schema/createFieldResolvers.js.map +1 -1
- package/graphql/schema/createManageResolvers.js +70 -86
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.js +48 -58
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.js +24 -27
- package/graphql/schema/createPreviewResolvers.js.map +1 -1
- package/graphql/schema/createReadResolvers.js +26 -35
- package/graphql/schema/createReadResolvers.js.map +1 -1
- package/graphql/schema/createReadSDL.js +35 -42
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/createSingularResolvers.js +32 -40
- package/graphql/schema/createSingularResolvers.js.map +1 -1
- package/graphql/schema/createSingularSDL.js +32 -44
- package/graphql/schema/createSingularSDL.js.map +1 -1
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +36 -48
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveCreate.js +9 -10
- package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveCreateFrom.js +9 -10
- package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDelete.js +18 -28
- package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +11 -12
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGet.js +41 -53
- package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetByIds.js +9 -10
- package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetRevisions.js +9 -10
- package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +9 -10
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveList.js +10 -11
- package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveListDeleted.js +10 -11
- package/graphql/schema/resolvers/manage/resolveListDeleted.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveMove.js +11 -17
- package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolvePublish.js +9 -10
- package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveRepublish.js +10 -11
- package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js +9 -10
- package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveUnpublish.js +10 -11
- package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveUpdate.js +9 -10
- package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.d.ts +8 -0
- package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js +12 -0
- package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js.map +1 -0
- package/graphql/schema/resolvers/manage/resolveValidate.js +10 -11
- package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -1
- package/graphql/schema/resolvers/preview/resolveGet.js +13 -16
- package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/preview/resolveList.js +10 -11
- package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/read/resolveGet.js +13 -16
- package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/read/resolveList.js +10 -11
- package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/singular/resolveGet.js +7 -10
- package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/singular/resolveUpdate.js +7 -10
- package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -1
- package/graphql/schema/schemaPlugins.js +81 -97
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/index.js +17 -23
- package/index.js.map +1 -1
- package/legacy/abstractions.js +5 -22
- package/legacy/abstractions.js.map +1 -1
- package/package.json +26 -26
- package/parameters/context.js +4 -7
- package/parameters/context.js.map +1 -1
- package/parameters/header.js +10 -22
- package/parameters/header.js.map +1 -1
- package/parameters/index.js +0 -2
- package/parameters/path.js +9 -19
- package/parameters/path.js.map +1 -1
- package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js +6 -5
- package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js.map +1 -1
- package/plugins/CmsGraphQLSchemaPlugin/index.js +0 -2
- package/plugins/CmsGroupPlugin.js +15 -26
- package/plugins/CmsGroupPlugin.js.map +1 -1
- package/plugins/CmsModelFieldConverterPlugin.js +5 -5
- package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
- package/plugins/CmsModelPlugin.js +135 -213
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/plugins/CmsParametersPlugin.js +12 -14
- package/plugins/CmsParametersPlugin.js.map +1 -1
- package/plugins/StorageOperationsCmsModelPlugin.js +22 -29
- package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -1
- package/plugins/index.js +0 -2
- package/types/context.d.ts +6 -2
- package/types/context.js +0 -3
- package/types/fields/dynamicZoneField.js +0 -3
- package/types/fields/objectField.js +0 -3
- package/types/identity.js +0 -3
- package/types/index.js +0 -2
- package/types/model.js +0 -3
- package/types/modelAst.js +0 -3
- package/types/modelField.js +0 -3
- package/types/modelGroup.js +0 -3
- package/types/plugins.js +0 -3
- package/types/types.d.ts +4 -9
- package/types/types.js +6 -218
- package/types/types.js.map +1 -1
- package/utils/caching/Cache.js +28 -35
- package/utils/caching/Cache.js.map +1 -1
- package/utils/caching/CacheKey.js +13 -14
- package/utils/caching/CacheKey.js.map +1 -1
- package/utils/caching/index.js +0 -2
- package/utils/caching/types.js +0 -3
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +12 -15
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +13 -12
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
- package/utils/contentModelAst/CmsModelToAstConverter.js +14 -18
- package/utils/contentModelAst/CmsModelToAstConverter.js.map +1 -1
- package/utils/contentModelAst/index.js +0 -2
- package/utils/converters/Converter.js +35 -44
- package/utils/converters/Converter.js.map +1 -1
- package/utils/converters/ConverterCollection.js +70 -107
- package/utils/converters/ConverterCollection.js.map +1 -1
- package/utils/converters/types.js +0 -3
- package/utils/converters/valueKeyFromStorageConverter.js +13 -19
- package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.js +18 -21
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/converters/valueKeyToStorageConverter.js +13 -19
- package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
- package/utils/createModelField.js +24 -44
- package/utils/createModelField.js.map +1 -1
- package/utils/createTypeFromFields.js +30 -52
- package/utils/createTypeFromFields.js.map +1 -1
- package/utils/createTypeName.js +2 -3
- package/utils/createTypeName.js.map +1 -1
- package/utils/date.js +9 -24
- package/utils/date.js.map +1 -1
- package/utils/entryStorage.js +57 -90
- package/utils/entryStorage.js.map +1 -1
- package/utils/errors.js +7 -7
- package/utils/errors.js.map +1 -1
- package/utils/filterAsync.js +8 -9
- package/utils/filterAsync.js.map +1 -1
- package/utils/getBaseFieldType.js +4 -5
- package/utils/getBaseFieldType.js.map +1 -1
- package/utils/getEntryDescription.js +9 -14
- package/utils/getEntryDescription.js.map +1 -1
- package/utils/getEntryImage.js +9 -14
- package/utils/getEntryImage.js.map +1 -1
- package/utils/getEntryTitle.js +11 -26
- package/utils/getEntryTitle.js.map +1 -1
- package/utils/getSchemaFromFieldPlugins.js +27 -39
- package/utils/getSchemaFromFieldPlugins.js.map +1 -1
- package/utils/identity.js +9 -16
- package/utils/identity.js.map +1 -1
- package/utils/incrementEntryIdVersion.js +14 -18
- package/utils/incrementEntryIdVersion.js.map +1 -1
- package/utils/index.js +0 -2
- package/utils/isHeadlessCmsReady.js +5 -14
- package/utils/isHeadlessCmsReady.js.map +1 -1
- package/utils/modelFieldTraverser/ModelFieldTraverser.js +27 -29
- package/utils/modelFieldTraverser/ModelFieldTraverser.js.map +1 -1
- package/utils/modelFieldTraverser/index.js +0 -2
- package/utils/renderFields.js +26 -49
- package/utils/renderFields.js.map +1 -1
- package/utils/renderGetFilterFields.js +31 -37
- package/utils/renderGetFilterFields.js.map +1 -1
- package/utils/renderInputFields.js +23 -40
- package/utils/renderInputFields.js.map +1 -1
- package/utils/renderListFilterFields.js +60 -56
- package/utils/renderListFilterFields.js.map +1 -1
- package/utils/renderSortEnum.js +21 -23
- package/utils/renderSortEnum.js.map +1 -1
- package/utils/toSlug.js +6 -7
- package/utils/toSlug.js.map +1 -1
- package/abstractions/entryHooks/index.js.map +0 -1
- package/abstractions/index.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/createEntryData.d.ts +0 -19
- package/crud/contentEntry/entryDataFactories/createEntryData.js +0 -263
- package/crud/contentEntry/entryDataFactories/createEntryData.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.d.ts +0 -22
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +0 -165
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.d.ts +0 -14
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +0 -59
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.d.ts +0 -13
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +0 -54
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.d.ts +0 -11
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +0 -34
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.d.ts +0 -19
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +0 -131
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/index.d.ts +0 -8
- package/crud/contentEntry/entryDataFactories/index.js +0 -10
- package/crud/contentEntry/entryDataFactories/index.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +0 -32
- package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/statuses.js +0 -6
- package/crud/contentEntry/entryDataFactories/statuses.js.map +0 -1
- package/crud/contentEntry/entryDataFactories/system.js +0 -14
- package/crud/contentEntry/entryDataFactories/system.js.map +0 -1
- package/export/index.js.map +0 -1
- package/exports/api/cms/entry.js.map +0 -1
- package/exports/api/cms/graphql.js.map +0 -1
- package/exports/api/cms/group.js.map +0 -1
- package/exports/api/cms/model.js.map +0 -1
- package/exports/api/cms/storage.js.map +0 -1
- package/exports/api/cms/validation.js.map +0 -1
- package/extensions/entryHooks/index.js.map +0 -1
- package/features/contentEntry/ContentEntryTraverser/index.js.map +0 -1
- package/features/contentEntry/CreateEntry/index.js.map +0 -1
- package/features/contentEntry/CreateEntryRevisionFrom/index.js.map +0 -1
- package/features/contentEntry/DeleteEntry/index.js.map +0 -1
- package/features/contentEntry/DeleteEntryRevision/index.js.map +0 -1
- package/features/contentEntry/DeleteMultipleEntries/index.js.map +0 -1
- package/features/contentEntry/GetEntriesByIds/index.js.map +0 -1
- package/features/contentEntry/GetEntry/index.js.map +0 -1
- package/features/contentEntry/GetEntryById/index.js.map +0 -1
- package/features/contentEntry/GetLatestEntriesByIds/index.js.map +0 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/index.js.map +0 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/index.js.map +0 -1
- package/features/contentEntry/GetPublishedEntriesByIds/index.js.map +0 -1
- package/features/contentEntry/GetPublishedRevisionByEntryId/index.js.map +0 -1
- package/features/contentEntry/GetRevisionById/index.js.map +0 -1
- package/features/contentEntry/GetRevisionsByEntryId/index.js.map +0 -1
- package/features/contentEntry/GetSingletonEntry/index.js.map +0 -1
- package/features/contentEntry/GetUniqueFieldValues/index.js.map +0 -1
- package/features/contentEntry/ListEntries/index.js.map +0 -1
- package/features/contentEntry/MoveEntry/index.js.map +0 -1
- package/features/contentEntry/PublishEntry/index.js.map +0 -1
- package/features/contentEntry/RepublishEntry/index.js.map +0 -1
- package/features/contentEntry/RestoreEntryFromBin/index.js.map +0 -1
- package/features/contentEntry/UnpublishEntry/index.js.map +0 -1
- package/features/contentEntry/UpdateEntry/index.js.map +0 -1
- package/features/contentEntry/UpdateSingletonEntry/index.js.map +0 -1
- package/features/contentEntry/ValidateEntry/index.js.map +0 -1
- package/features/contentModel/CreateModel/index.js.map +0 -1
- package/features/contentModel/CreateModelFrom/index.js.map +0 -1
- package/features/contentModel/DeleteModel/index.js.map +0 -1
- package/features/contentModel/GetModel/index.js.map +0 -1
- package/features/contentModel/ListModels/index.js.map +0 -1
- package/features/contentModel/ModelFieldCompression/index.js.map +0 -1
- package/features/contentModel/ModelToAstConverter/index.js.map +0 -1
- package/features/contentModel/UpdateModel/index.js.map +0 -1
- package/features/contentModelGroup/CreateGroup/index.js.map +0 -1
- package/features/contentModelGroup/DeleteGroup/index.js.map +0 -1
- package/features/contentModelGroup/GetGroup/index.js.map +0 -1
- package/features/contentModelGroup/ListGroups/index.js.map +0 -1
- package/features/contentModelGroup/UpdateGroup/index.js.map +0 -1
- package/features/contentModelGroup/shared/index.js.map +0 -1
- package/features/graphql/index.js.map +0 -1
- package/features/modelBuilder/fields/FieldBuilder.js.map +0 -1
- package/features/modelBuilder/fields/fieldTypeValidator.js.map +0 -1
- package/features/modelBuilder/index.js.map +0 -1
- package/features/storage/index.js.map +0 -1
- package/features/validation/index.js.map +0 -1
- package/graphql/schema/cms/helpers/index.js.map +0 -1
- package/graphql/schema/cms/helpers.js.map +0 -1
- package/graphql/schema/cms/resolvers/index.js.map +0 -1
- package/graphql/schema/cms/typeDefs/index.js.map +0 -1
- package/parameters/index.js.map +0 -1
- package/plugins/CmsGraphQLSchemaPlugin/index.js.map +0 -1
- package/plugins/index.js.map +0 -1
- package/types/context.js.map +0 -1
- package/types/fields/dynamicZoneField.js.map +0 -1
- package/types/fields/objectField.js.map +0 -1
- package/types/identity.js.map +0 -1
- package/types/index.js.map +0 -1
- package/types/model.js.map +0 -1
- package/types/modelAst.js.map +0 -1
- package/types/modelField.js.map +0 -1
- package/types/modelGroup.js.map +0 -1
- package/types/plugins.js.map +0 -1
- package/utils/caching/index.js.map +0 -1
- package/utils/caching/types.js.map +0 -1
- package/utils/contentModelAst/index.js.map +0 -1
- package/utils/converters/types.js.map +0 -1
- package/utils/index.js.map +0 -1
- package/utils/modelFieldTraverser/index.js.map +0 -1
- /package/{crud → features}/contentEntry/entryDataFactories/statuses.d.ts +0 -0
- /package/{crud → features}/contentEntry/entryDataFactories/system.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/contentModel/shared/ModelsFetcher.js","sources":["../../../../src/features/contentModel/shared/ModelsFetcher.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n ModelCache,\n ModelsFetcher as FetcherAbstraction\n} from \"~/features/contentModel/shared/abstractions.js\";\nimport { PluginModelsProvider } from \"~/features/contentModel/shared/abstractions.js\";\nimport { StorageOperations } from \"~/features/shared/abstractions.js\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport { ModelNotFoundError, ModelPersistenceError } from \"~/domain/contentModel/errors.js\";\nimport { createCacheKey } from \"~/utils/index.js\";\nimport { ensureTypeTag } from \"~/domain/contentModel/ensureTypeTag.js\";\nimport type { CmsModel } from \"~/types/index.js\";\nimport { ModelFieldCompression } from \"~/features/contentModel/ModelFieldCompression/index.js\";\n\n/**\n * ModelsFetcherImpl - Implementation with multi-level caching.\n *\n * Caching strategy:\n * 1. Plugin models are cached per tenant (with access control applied by PluginModelsProvider)\n * 2. Database models are cached per tenant (raw from DB)\n * 3. Filtered database models are cached per tenant + identity (with access control applied)\n * 4. Final merged list is cached per tenant + identity\n */\nclass ModelsFetcherImpl implements FetcherAbstraction.Interface {\n public constructor(\n private readonly modelCache: ModelCache.Interface,\n private readonly pluginModelsProvider: PluginModelsProvider.Interface,\n private readonly storageOperations: StorageOperations.Interface,\n private readonly tenantContext: TenantContext.Interface,\n private readonly modelFieldCompression: ModelFieldCompression.Interface\n ) {}\n\n async fetchAll(): Promise<Result<CmsModel[], FetcherAbstraction.Error>> {\n try {\n const tenant = this.tenantContext.getTenant();\n\n // Create a cache key based on tenant + identity\n const cacheKey = createCacheKey({\n tenant: tenant.id\n });\n\n // Try to get from cache first\n const cached = await this.modelCache.getOrSet(cacheKey, async () => {\n // Fetch plugin models (with caching and access control)\n const pluginModels = await this.pluginModelsProvider.list(tenant.id);\n\n const databaseModels = await this.fetchAndMergeModels(tenant.id);\n\n return [...pluginModels, ...databaseModels];\n });\n\n return Result.ok(cached);\n } catch (error) {\n return Result.fail(new ModelPersistenceError(error as Error));\n }\n }\n\n async fetchById(modelId: string): Promise<Result<CmsModel, FetcherAbstraction.Error>> {\n const result = await this.fetchAll();\n if (result.isFail()) {\n return Result.fail(new ModelPersistenceError(result.error));\n }\n\n const model = result.value.find(m => m.modelId === modelId);\n if (!model) {\n return Result.fail(new ModelNotFoundError(modelId));\n }\n\n return Result.ok(model);\n }\n\n private async fetchAndMergeModels(tenant: string): Promise<CmsModel[]> {\n // 1. Fetch database models (with caching)\n const dbCacheKey = createCacheKey({ tenant, id: \"storage\" });\n const databaseModels = await this.modelCache.getOrSet(dbCacheKey, async () => {\n const models = await this.storageOperations.models.list({ where: { tenant } });\n\n return Promise.all(\n models.map(async model => {\n const fields = await this.modelFieldCompression.decompress(model.fields);\n\n return {\n ...model,\n fields\n };\n })\n );\n });\n\n // 2. Ensure type tags on database models\n const taggedDatabaseModels = databaseModels.map(model => {\n model.tags = ensureTypeTag(model);\n return model;\n });\n\n // 3. Return merged models.\n return taggedDatabaseModels;\n }\n}\n\nexport const ModelsFetcher = FetcherAbstraction.createImplementation({\n implementation: ModelsFetcherImpl,\n dependencies: [\n ModelCache,\n PluginModelsProvider,\n StorageOperations,\n TenantContext,\n ModelFieldCompression\n ]\n});\n"],"names":["ModelsFetcherImpl","modelCache","pluginModelsProvider","storageOperations","tenantContext","modelFieldCompression","tenant","cacheKey","createCacheKey","cached","pluginModels","databaseModels","Result","error","ModelPersistenceError","modelId","result","model","m","ModelNotFoundError","dbCacheKey","models","Promise","fields","taggedDatabaseModels","ensureTypeTag","ModelsFetcher","FetcherAbstraction","ModelCache","PluginModelsProvider","StorageOperations","TenantContext","ModelFieldCompression"],"mappings":";;;;;;;;AAuBA,MAAMA;IACF,YACqBC,UAAgC,EAChCC,oBAAoD,EACpDC,iBAA8C,EAC9CC,aAAsC,EACtCC,qBAAsD,CACzE;aALmBJ,UAAU,GAAVA;aACAC,oBAAoB,GAApBA;aACAC,iBAAiB,GAAjBA;aACAC,aAAa,GAAbA;aACAC,qBAAqB,GAArBA;IAClB;IAEH,MAAM,WAAkE;QACpE,IAAI;YACA,MAAMC,SAAS,IAAI,CAAC,aAAa,CAAC,SAAS;YAG3C,MAAMC,WAAWC,eAAe;gBAC5B,QAAQF,OAAO,EAAE;YACrB;YAGA,MAAMG,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAACF,UAAU;gBAEpD,MAAMG,eAAe,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAACJ,OAAO,EAAE;gBAEnE,MAAMK,iBAAiB,MAAM,IAAI,CAAC,mBAAmB,CAACL,OAAO,EAAE;gBAE/D,OAAO;uBAAII;uBAAiBC;iBAAe;YAC/C;YAEA,OAAOC,OAAO,EAAE,CAACH;QACrB,EAAE,OAAOI,OAAO;YACZ,OAAOD,OAAO,IAAI,CAAC,IAAIE,sBAAsBD;QACjD;IACJ;IAEA,MAAM,UAAUE,OAAe,EAAuD;QAClF,MAAMC,SAAS,MAAM,IAAI,CAAC,QAAQ;QAClC,IAAIA,OAAO,MAAM,IACb,OAAOJ,OAAO,IAAI,CAAC,IAAIE,sBAAsBE,OAAO,KAAK;QAG7D,MAAMC,QAAQD,OAAO,KAAK,CAAC,IAAI,CAACE,CAAAA,IAAKA,EAAE,OAAO,KAAKH;QACnD,IAAI,CAACE,OACD,OAAOL,OAAO,IAAI,CAAC,IAAIO,mBAAmBJ;QAG9C,OAAOH,OAAO,EAAE,CAACK;IACrB;IAEA,MAAc,oBAAoBX,MAAc,EAAuB;QAEnE,MAAMc,aAAaZ,eAAe;YAAEF;YAAQ,IAAI;QAAU;QAC1D,MAAMK,iBAAiB,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAACS,YAAY;YAC9D,MAAMC,SAAS,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;gBAAE,OAAO;oBAAEf;gBAAO;YAAE;YAE5E,OAAOgB,QAAQ,GAAG,CACdD,OAAO,GAAG,CAAC,OAAMJ;gBACb,MAAMM,SAAS,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAACN,MAAM,MAAM;gBAEvE,OAAO;oBACH,GAAGA,KAAK;oBACRM;gBACJ;YACJ;QAER;QAGA,MAAMC,uBAAuBb,eAAe,GAAG,CAACM,CAAAA;YAC5CA,MAAM,IAAI,GAAGQ,cAAcR;YAC3B,OAAOA;QACX;QAGA,OAAOO;IACX;AACJ;AAEO,MAAME,8BAAgBC,cAAAA,oBAAuC,CAAC;IACjE,gBAAgB3B;IAChB,cAAc;QACV4B;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
|
|
@@ -1,64 +1,48 @@
|
|
|
1
1
|
import { AccessControl, CmsContext } from "../../shared/abstractions.js";
|
|
2
|
-
import { PluginModelsProvider
|
|
2
|
+
import { PluginModelsProvider } from "./abstractions.js";
|
|
3
3
|
import { CmsModelPlugin } from "../../../plugins/CmsModelPlugin.js";
|
|
4
4
|
import { filterAsync } from "../../../utils/filterAsync.js";
|
|
5
5
|
import { ModelsProvider } from "../../modelBuilder/models/abstractions.js";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* PluginModelsProvider implementation that fetches models from:
|
|
9
|
-
* 1. Legacy CmsModelPlugin instances
|
|
10
|
-
* 2. New ModelBuilder providers (public and private)
|
|
11
|
-
*/
|
|
12
6
|
class PluginModelsProviderImpl {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
model
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
// Get models from new builder providers. These already have access control applied.
|
|
44
|
-
const builderModels = await this.modelsProvider.list(tenant);
|
|
45
|
-
|
|
46
|
-
// Combine both sources
|
|
47
|
-
return [...allowedLegacyModels, ...builderModels];
|
|
48
|
-
}
|
|
49
|
-
ensureTypeTag(model) {
|
|
50
|
-
// Let's make sure we have a `type` tag assigned.
|
|
51
|
-
// If `type` tag is not set, set it to a default one (`model`).
|
|
52
|
-
const tags = model.tags || [];
|
|
53
|
-
if (!tags.some(tag => tag.startsWith("type:"))) {
|
|
54
|
-
tags.push("type:model");
|
|
7
|
+
constructor(cmsContext, accessControl, modelsProvider){
|
|
8
|
+
this.cmsContext = cmsContext;
|
|
9
|
+
this.accessControl = accessControl;
|
|
10
|
+
this.modelsProvider = modelsProvider;
|
|
11
|
+
}
|
|
12
|
+
async list(tenant) {
|
|
13
|
+
const modelPlugins = this.cmsContext.plugins.byType(CmsModelPlugin.type);
|
|
14
|
+
const legacyModels = modelPlugins.filter((plugin)=>{
|
|
15
|
+
const { tenant: modelTenant } = plugin.contentModel;
|
|
16
|
+
if (modelTenant && modelTenant !== tenant) return false;
|
|
17
|
+
return true;
|
|
18
|
+
}).map((plugin)=>({
|
|
19
|
+
...plugin.contentModel,
|
|
20
|
+
tags: this.ensureTypeTag(plugin.contentModel),
|
|
21
|
+
tenant
|
|
22
|
+
}));
|
|
23
|
+
const allowedLegacyModels = await filterAsync(legacyModels, (model)=>this.accessControl.canAccessModel({
|
|
24
|
+
model
|
|
25
|
+
}));
|
|
26
|
+
const builderModels = await this.modelsProvider.list(tenant);
|
|
27
|
+
return [
|
|
28
|
+
...allowedLegacyModels,
|
|
29
|
+
...builderModels
|
|
30
|
+
];
|
|
31
|
+
}
|
|
32
|
+
ensureTypeTag(model) {
|
|
33
|
+
const tags = model.tags || [];
|
|
34
|
+
if (!tags.some((tag)=>tag.startsWith("type:"))) tags.push("type:model");
|
|
35
|
+
return tags;
|
|
55
36
|
}
|
|
56
|
-
return tags;
|
|
57
|
-
}
|
|
58
37
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
38
|
+
const PluginModelsProvider_PluginModelsProvider = PluginModelsProvider.createImplementation({
|
|
39
|
+
implementation: PluginModelsProviderImpl,
|
|
40
|
+
dependencies: [
|
|
41
|
+
CmsContext,
|
|
42
|
+
AccessControl,
|
|
43
|
+
ModelsProvider
|
|
44
|
+
]
|
|
62
45
|
});
|
|
46
|
+
export { PluginModelsProvider_PluginModelsProvider as PluginModelsProvider };
|
|
63
47
|
|
|
64
48
|
//# sourceMappingURL=PluginModelsProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/contentModel/shared/PluginModelsProvider.js","sources":["../../../../src/features/contentModel/shared/PluginModelsProvider.ts"],"sourcesContent":["import { AccessControl, CmsContext } from \"~/features/shared/abstractions.js\";\nimport { PluginModelsProvider as ProviderAbstraction } from \"./abstractions.js\";\nimport type { CmsModel } from \"~/types/index.js\";\nimport { CmsModelPlugin } from \"~/plugins/CmsModelPlugin.js\";\nimport { filterAsync } from \"~/utils/filterAsync.js\";\nimport {\n ModelsProvider,\n type IModelsProvider\n} from \"~/features/modelBuilder/models/abstractions.js\";\n\n/**\n * PluginModelsProvider implementation that fetches models from:\n * 1. Legacy CmsModelPlugin instances\n * 2. New ModelBuilder providers (public and private)\n */\nclass PluginModelsProviderImpl implements ProviderAbstraction.Interface {\n public constructor(\n private cmsContext: CmsContext.Interface,\n private accessControl: AccessControl.Interface,\n private modelsProvider: IModelsProvider\n ) {}\n\n async list(tenant: string): Promise<CmsModel[]> {\n // Get models from legacy plugins\n const modelPlugins = this.cmsContext.plugins.byType<CmsModelPlugin>(CmsModelPlugin.type);\n\n const legacyModels = modelPlugins\n .filter(plugin => {\n const { tenant: modelTenant } = plugin.contentModel;\n // Filter by tenant if specified in plugin\n if (modelTenant && modelTenant !== tenant) {\n return false;\n }\n\n return true;\n })\n .map(plugin => {\n return {\n ...plugin.contentModel,\n tags: this.ensureTypeTag(plugin.contentModel),\n tenant\n };\n }) as unknown as CmsModel[];\n\n const allowedLegacyModels = await filterAsync(legacyModels, model => {\n return this.accessControl.canAccessModel({ model });\n });\n\n // Get models from new builder providers. These already have access control applied.\n const builderModels = await this.modelsProvider.list(tenant);\n\n // Combine both sources\n return [...allowedLegacyModels, ...builderModels];\n }\n\n private ensureTypeTag(model: Pick<CmsModel, \"tags\">) {\n // Let's make sure we have a `type` tag assigned.\n // If `type` tag is not set, set it to a default one (`model`).\n const tags = model.tags || [];\n if (!tags.some(tag => tag.startsWith(\"type:\"))) {\n tags.push(\"type:model\");\n }\n\n return tags;\n }\n}\n\nexport const PluginModelsProvider = ProviderAbstraction.createImplementation({\n implementation: PluginModelsProviderImpl,\n dependencies: [CmsContext, AccessControl, ModelsProvider]\n});\n"],"names":["PluginModelsProviderImpl","cmsContext","accessControl","modelsProvider","tenant","modelPlugins","CmsModelPlugin","legacyModels","plugin","modelTenant","allowedLegacyModels","filterAsync","model","builderModels","tags","tag","PluginModelsProvider","ProviderAbstraction","CmsContext","AccessControl","ModelsProvider"],"mappings":";;;;;AAeA,MAAMA;IACF,YACYC,UAAgC,EAChCC,aAAsC,EACtCC,cAA+B,CACzC;aAHUF,UAAU,GAAVA;aACAC,aAAa,GAAbA;aACAC,cAAc,GAAdA;IACT;IAEH,MAAM,KAAKC,MAAc,EAAuB;QAE5C,MAAMC,eAAe,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAiBC,eAAe,IAAI;QAEvF,MAAMC,eAAeF,aAChB,MAAM,CAACG,CAAAA;YACJ,MAAM,EAAE,QAAQC,WAAW,EAAE,GAAGD,OAAO,YAAY;YAEnD,IAAIC,eAAeA,gBAAgBL,QAC/B,OAAO;YAGX,OAAO;QACX,GACC,GAAG,CAACI,CAAAA,SACM;gBACH,GAAGA,OAAO,YAAY;gBACtB,MAAM,IAAI,CAAC,aAAa,CAACA,OAAO,YAAY;gBAC5CJ;YACJ;QAGR,MAAMM,sBAAsB,MAAMC,YAAYJ,cAAcK,CAAAA,QACjD,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;gBAAEA;YAAM;QAIrD,MAAMC,gBAAgB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAACT;QAGrD,OAAO;eAAIM;eAAwBG;SAAc;IACrD;IAEQ,cAAcD,KAA6B,EAAE;QAGjD,MAAME,OAAOF,MAAM,IAAI,IAAI,EAAE;QAC7B,IAAI,CAACE,KAAK,IAAI,CAACC,CAAAA,MAAOA,IAAI,UAAU,CAAC,WACjCD,KAAK,IAAI,CAAC;QAGd,OAAOA;IACX;AACJ;AAEO,MAAME,4CAAuBC,qBAAAA,oBAAwC,CAAC;IACzE,gBAAgBjB;IAChB,cAAc;QAACkB;QAAYC;QAAeC;KAAe;AAC7D"}
|
|
@@ -1,19 +1,7 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export const PluginModelsProvider = createAbstraction("PluginModelsProvider");
|
|
8
|
-
export const ModelCache = createAbstraction("ModelCache");
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* ModelsFetcher - Centralized model fetching with caching.
|
|
12
|
-
*
|
|
13
|
-
* This abstraction handles fetching models from both plugins and database,
|
|
14
|
-
* applies access control filtering, and caches the results for optimal performance.
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
export const ModelsFetcher = createAbstraction("ModelsFetcher");
|
|
2
|
+
const PluginModelsProvider = createAbstraction("PluginModelsProvider");
|
|
3
|
+
const ModelCache = createAbstraction("ModelCache");
|
|
4
|
+
const ModelsFetcher = createAbstraction("ModelsFetcher");
|
|
5
|
+
export { ModelCache, ModelsFetcher, PluginModelsProvider };
|
|
18
6
|
|
|
19
7
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/contentModel/shared/abstractions.js","sources":["../../../../src/features/contentModel/shared/abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type { CmsModel } from \"~/types/index.js\";\nimport type { ICache } from \"~/utils/caching/types.js\";\nimport { ModelNotFoundError, ModelPersistenceError } from \"~/domain/contentModel/errors.js\";\n\n/**\n * PluginModelsProvider provides access to plugin-defined (code) models.\n */\nexport interface IPluginModelsProvider {\n list(tenant: string): Promise<CmsModel[]>;\n}\n\nexport const PluginModelsProvider =\n createAbstraction<IPluginModelsProvider>(\"PluginModelsProvider\");\n\nexport namespace PluginModelsProvider {\n export type Interface = IPluginModelsProvider;\n}\n\nexport const ModelCache = createAbstraction<ICache<Promise<CmsModel[]>>>(\"ModelCache\");\n\nexport namespace ModelCache {\n export type Interface = ICache<Promise<CmsModel[]>>;\n}\n\n/**\n * ModelsFetcher - Centralized model fetching with caching.\n *\n * This abstraction handles fetching models from both plugins and database,\n * applies access control filtering, and caches the results for optimal performance.\n */\nexport interface IModelsFetcher {\n /**\n * Fetch all accessible models for the current tenant and identity.\n * Results are cached based on tenant + identity.\n */\n fetchAll(): Promise<Result<CmsModel[], ModelsFetcherError>>;\n\n /**\n * Fetch a single model by modelId.\n * Uses the cached fetchAll result.\n */\n fetchById(modelId: string): Promise<Result<CmsModel, ModelsFetcherError>>;\n}\n\nexport interface IModelsFetcherErrors {\n notFound: ModelNotFoundError;\n persistence: ModelPersistenceError;\n}\n\ntype ModelsFetcherError = IModelsFetcherErrors[keyof IModelsFetcherErrors];\n\nexport const ModelsFetcher = createAbstraction<IModelsFetcher>(\"ModelsFetcher\");\n\nexport namespace ModelsFetcher {\n export type Interface = IModelsFetcher;\n export type Error = ModelsFetcherError;\n\n export type FetchAllReturn = Promise<Result<CmsModel[], ModelsFetcherError>>;\n export type FetchByIdReturn = Promise<Result<CmsModel, ModelsFetcherError>>;\n}\n"],"names":["PluginModelsProvider","createAbstraction","ModelCache","ModelsFetcher"],"mappings":";AAYO,MAAMA,uBACTC,kBAAyC;AAMtC,MAAMC,aAAaD,kBAA+C;AAiClE,MAAME,gBAAgBF,kBAAkC"}
|
|
@@ -7,22 +7,18 @@ import { DeleteGroupFeature } from "./DeleteGroup/feature.js";
|
|
|
7
7
|
import { GroupCache } from "./shared/abstractions.js";
|
|
8
8
|
import { PluginGroupsProvider } from "./shared/PluginGroupsProvider.js";
|
|
9
9
|
import { createMemoryCache } from "../../utils/index.js";
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
// Command features
|
|
22
|
-
CreateGroupFeature.register(container);
|
|
23
|
-
UpdateGroupFeature.register(container);
|
|
24
|
-
DeleteGroupFeature.register(container);
|
|
25
|
-
}
|
|
10
|
+
const ContentModelGroupFeature = createFeature({
|
|
11
|
+
name: "ContentModelGroup",
|
|
12
|
+
register (container) {
|
|
13
|
+
container.registerInstance(GroupCache, createMemoryCache());
|
|
14
|
+
container.register(PluginGroupsProvider).inSingletonScope();
|
|
15
|
+
GetGroupFeature.register(container);
|
|
16
|
+
ListGroupsFeature.register(container);
|
|
17
|
+
CreateGroupFeature.register(container);
|
|
18
|
+
UpdateGroupFeature.register(container);
|
|
19
|
+
DeleteGroupFeature.register(container);
|
|
20
|
+
}
|
|
26
21
|
});
|
|
22
|
+
export { ContentModelGroupFeature };
|
|
27
23
|
|
|
28
24
|
//# sourceMappingURL=ContentModelGroupFeature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/contentModelGroup/ContentModelGroupFeature.js","sources":["../../../src/features/contentModelGroup/ContentModelGroupFeature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetGroupFeature } from \"~/features/contentModelGroup/GetGroup/feature.js\";\nimport { ListGroupsFeature } from \"~/features/contentModelGroup/ListGroups/feature.js\";\nimport { CreateGroupFeature } from \"~/features/contentModelGroup/CreateGroup/feature.js\";\nimport { UpdateGroupFeature } from \"~/features/contentModelGroup/UpdateGroup/feature.js\";\nimport { DeleteGroupFeature } from \"~/features/contentModelGroup/DeleteGroup/feature.js\";\nimport { GroupCache } from \"~/features/contentModelGroup/shared/abstractions.js\";\nimport { PluginGroupsProvider } from \"~/features/contentModelGroup/shared/PluginGroupsProvider.js\";\nimport { createMemoryCache } from \"~/utils/index.js\";\n\nexport const ContentModelGroupFeature = createFeature({\n name: \"ContentModelGroup\",\n register(container) {\n // Shared infrastructure (singletons)\n container.registerInstance(GroupCache, createMemoryCache());\n container.register(PluginGroupsProvider).inSingletonScope();\n\n // Query features\n GetGroupFeature.register(container);\n ListGroupsFeature.register(container);\n\n // Command features\n CreateGroupFeature.register(container);\n UpdateGroupFeature.register(container);\n DeleteGroupFeature.register(container);\n }\n});\n"],"names":["ContentModelGroupFeature","createFeature","container","GroupCache","createMemoryCache","PluginGroupsProvider","GetGroupFeature","ListGroupsFeature","CreateGroupFeature","UpdateGroupFeature","DeleteGroupFeature"],"mappings":";;;;;;;;;AAUO,MAAMA,2BAA2BC,cAAc;IAClD,MAAM;IACN,UAASC,SAAS;QAEdA,UAAU,gBAAgB,CAACC,YAAYC;QACvCF,UAAU,QAAQ,CAACG,sBAAsB,gBAAgB;QAGzDC,gBAAgB,QAAQ,CAACJ;QACzBK,kBAAkB,QAAQ,CAACL;QAG3BM,mBAAmB,QAAQ,CAACN;QAC5BO,mBAAmB,QAAQ,CAACP;QAC5BQ,mBAAmB,QAAQ,CAACR;IAChC;AACJ"}
|
|
@@ -1,107 +1,76 @@
|
|
|
1
|
-
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { PluginGroupsProvider } from "../shared/abstractions.js";
|
|
6
|
-
import { GroupSlugTakenError } from "../../../domain/contentModelGroup/errors.js";
|
|
7
|
-
import { GroupPersistenceError } from "../../../domain/contentModelGroup/errors.js";
|
|
1
|
+
import { Result, createImplementation } from "@webiny/feature/api";
|
|
2
|
+
import { CreateGroupRepository } from "./abstractions.js";
|
|
3
|
+
import { GroupCache, PluginGroupsProvider } from "../shared/abstractions.js";
|
|
4
|
+
import { GroupPersistenceError, GroupSlugTakenError } from "../../../domain/contentModelGroup/errors.js";
|
|
8
5
|
import { StorageOperations } from "../../shared/abstractions.js";
|
|
9
6
|
import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
|
|
10
7
|
import { toSlug } from "../../../utils/toSlug.js";
|
|
11
8
|
import { generateAlphaNumericId } from "@webiny/utils";
|
|
12
|
-
/**
|
|
13
|
-
* CreateGroupRepository - Validates and persists a new group.
|
|
14
|
-
*
|
|
15
|
-
* Responsibilities:
|
|
16
|
-
* - Validate ID uniqueness (if provided)
|
|
17
|
-
* - Validate slug uniqueness (or generate unique slug)
|
|
18
|
-
* - Check for plugin group conflicts
|
|
19
|
-
* - Persist to storage
|
|
20
|
-
* - Clear GroupCache after successful create
|
|
21
|
-
*/
|
|
22
9
|
class CreateGroupRepositoryImpl {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
}
|
|
29
|
-
async execute(group) {
|
|
30
|
-
try {
|
|
31
|
-
const tenant = this.tenantContext.getTenant();
|
|
32
|
-
|
|
33
|
-
// 1. Validate ID uniqueness (if provided)
|
|
34
|
-
if (group.id) {
|
|
35
|
-
const existingById = await this.storageOperations.groups.list({
|
|
36
|
-
where: {
|
|
37
|
-
tenant: tenant.id,
|
|
38
|
-
id: group.id
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
if (existingById.length > 0) {
|
|
42
|
-
return Result.fail(new GroupSlugTakenError(group.slug));
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// 2. Generate or validate slug
|
|
47
|
-
const slugTaken = await this.isSlugTaken(group, tenant.id);
|
|
48
|
-
if (slugTaken) {
|
|
49
|
-
return Result.fail(new GroupSlugTakenError(group.slug));
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// 3. Check for plugin group conflicts
|
|
53
|
-
const pluginGroups = await this.pluginGroupsProvider.getGroups();
|
|
54
|
-
const pluginGroupConflict = pluginGroups.find(pg => pg.slug === group.slug);
|
|
55
|
-
if (pluginGroupConflict) {
|
|
56
|
-
return Result.fail(new GroupSlugTakenError(group.slug));
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
// 4. Persist to storage
|
|
60
|
-
await this.storageOperations.groups.create({
|
|
61
|
-
group
|
|
62
|
-
});
|
|
63
|
-
|
|
64
|
-
// 5. Clear cache
|
|
65
|
-
this.groupCache.clear();
|
|
66
|
-
return Result.ok();
|
|
67
|
-
} catch (error) {
|
|
68
|
-
return Result.fail(new GroupPersistenceError(error));
|
|
10
|
+
constructor(groupCache, pluginGroupsProvider, storageOperations, tenantContext){
|
|
11
|
+
this.groupCache = groupCache;
|
|
12
|
+
this.pluginGroupsProvider = pluginGroupsProvider;
|
|
13
|
+
this.storageOperations = storageOperations;
|
|
14
|
+
this.tenantContext = tenantContext;
|
|
69
15
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
16
|
+
async execute(group) {
|
|
17
|
+
try {
|
|
18
|
+
const tenant = this.tenantContext.getTenant();
|
|
19
|
+
if (group.id) {
|
|
20
|
+
const existingById = await this.storageOperations.groups.list({
|
|
21
|
+
where: {
|
|
22
|
+
tenant: tenant.id,
|
|
23
|
+
id: group.id
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
if (existingById.length > 0) return Result.fail(new GroupSlugTakenError(group.slug));
|
|
27
|
+
}
|
|
28
|
+
const slugTaken = await this.isSlugTaken(group, tenant.id);
|
|
29
|
+
if (slugTaken) return Result.fail(new GroupSlugTakenError(group.slug));
|
|
30
|
+
const pluginGroups = await this.pluginGroupsProvider.getGroups();
|
|
31
|
+
const pluginGroupConflict = pluginGroups.find((pg)=>pg.slug === group.slug);
|
|
32
|
+
if (pluginGroupConflict) return Result.fail(new GroupSlugTakenError(group.slug));
|
|
33
|
+
await this.storageOperations.groups.create({
|
|
34
|
+
group
|
|
35
|
+
});
|
|
36
|
+
this.groupCache.clear();
|
|
37
|
+
return Result.ok();
|
|
38
|
+
} catch (error) {
|
|
39
|
+
return Result.fail(new GroupPersistenceError(error));
|
|
78
40
|
}
|
|
79
|
-
});
|
|
80
|
-
return existingBySlug.length > 0;
|
|
81
41
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
42
|
+
async isSlugTaken(group, tenant) {
|
|
43
|
+
if (group.slug && group.slug.trim()) {
|
|
44
|
+
const existingBySlug = await this.storageOperations.groups.list({
|
|
45
|
+
where: {
|
|
46
|
+
tenant,
|
|
47
|
+
slug: group.slug
|
|
48
|
+
}
|
|
49
|
+
});
|
|
50
|
+
return existingBySlug.length > 0;
|
|
51
|
+
}
|
|
52
|
+
const baseSlug = toSlug(group.name);
|
|
53
|
+
const existingBySlug = await this.storageOperations.groups.list({
|
|
54
|
+
where: {
|
|
55
|
+
tenant,
|
|
56
|
+
slug: baseSlug
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
if (0 === existingBySlug.length) group.slug = baseSlug;
|
|
60
|
+
else group.slug = `${baseSlug}-${generateAlphaNumericId(8)}`;
|
|
61
|
+
return false;
|
|
97
62
|
}
|
|
98
|
-
return false;
|
|
99
|
-
}
|
|
100
63
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
64
|
+
const CreateGroupRepository_CreateGroupRepository = createImplementation({
|
|
65
|
+
abstraction: CreateGroupRepository,
|
|
66
|
+
implementation: CreateGroupRepositoryImpl,
|
|
67
|
+
dependencies: [
|
|
68
|
+
GroupCache,
|
|
69
|
+
PluginGroupsProvider,
|
|
70
|
+
StorageOperations,
|
|
71
|
+
TenantContext
|
|
72
|
+
]
|
|
105
73
|
});
|
|
74
|
+
export { CreateGroupRepository_CreateGroupRepository as CreateGroupRepository };
|
|
106
75
|
|
|
107
76
|
//# sourceMappingURL=CreateGroupRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/contentModelGroup/CreateGroup/CreateGroupRepository.js","sources":["../../../../src/features/contentModelGroup/CreateGroup/CreateGroupRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { createImplementation } from \"@webiny/feature/api\";\nimport { CreateGroupRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { GroupCache } from \"~/features/contentModelGroup/shared/abstractions.js\";\nimport { PluginGroupsProvider } from \"~/features/contentModelGroup/shared/abstractions.js\";\nimport { GroupSlugTakenError } from \"~/domain/contentModelGroup/errors.js\";\nimport { GroupPersistenceError } from \"~/domain/contentModelGroup/errors.js\";\nimport { StorageOperations } from \"~/features/shared/abstractions.js\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport { toSlug } from \"~/utils/toSlug.js\";\nimport { generateAlphaNumericId } from \"@webiny/utils\";\nimport type { CmsGroup } from \"~/types/index.js\";\n\n/**\n * CreateGroupRepository - Validates and persists a new group.\n *\n * Responsibilities:\n * - Validate ID uniqueness (if provided)\n * - Validate slug uniqueness (or generate unique slug)\n * - Check for plugin group conflicts\n * - Persist to storage\n * - Clear GroupCache after successful create\n */\nclass CreateGroupRepositoryImpl implements RepositoryAbstraction.Interface {\n public constructor(\n private groupCache: GroupCache.Interface,\n private pluginGroupsProvider: PluginGroupsProvider.Interface,\n private storageOperations: StorageOperations.Interface,\n private tenantContext: TenantContext.Interface\n ) {}\n\n async execute(group: CmsGroup): Promise<Result<void, RepositoryAbstraction.Error>> {\n try {\n const tenant = this.tenantContext.getTenant();\n\n // 1. Validate ID uniqueness (if provided)\n if (group.id) {\n const existingById = await this.storageOperations.groups.list({\n where: {\n tenant: tenant.id,\n id: group.id\n }\n });\n\n if (existingById.length > 0) {\n return Result.fail(new GroupSlugTakenError(group.slug));\n }\n }\n\n // 2. Generate or validate slug\n const slugTaken = await this.isSlugTaken(group, tenant.id);\n if (slugTaken) {\n return Result.fail(new GroupSlugTakenError(group.slug));\n }\n\n // 3. Check for plugin group conflicts\n const pluginGroups = await this.pluginGroupsProvider.getGroups();\n const pluginGroupConflict = pluginGroups.find(pg => pg.slug === group.slug);\n if (pluginGroupConflict) {\n return Result.fail(new GroupSlugTakenError(group.slug));\n }\n\n // 4. Persist to storage\n await this.storageOperations.groups.create({ group });\n\n // 5. Clear cache\n this.groupCache.clear();\n\n return Result.ok();\n } catch (error) {\n return Result.fail(new GroupPersistenceError(error as Error));\n }\n }\n\n private async isSlugTaken(group: CmsGroup, tenant: string): Promise<boolean> {\n // If slug is provided and not empty, validate it\n if (group.slug && group.slug.trim()) {\n const existingBySlug = await this.storageOperations.groups.list({\n where: {\n tenant,\n slug: group.slug\n }\n });\n\n return existingBySlug.length > 0;\n }\n\n // Generate slug from name\n const baseSlug = toSlug(group.name);\n const existingBySlug = await this.storageOperations.groups.list({\n where: {\n tenant,\n slug: baseSlug\n }\n });\n\n if (existingBySlug.length === 0) {\n // No conflict, use base slug\n group.slug = baseSlug;\n } else {\n // Conflict, append random suffix\n group.slug = `${baseSlug}-${generateAlphaNumericId(8)}`;\n }\n\n return false;\n }\n}\n\nexport const CreateGroupRepository = createImplementation({\n abstraction: RepositoryAbstraction,\n implementation: CreateGroupRepositoryImpl,\n dependencies: [GroupCache, PluginGroupsProvider, StorageOperations, TenantContext]\n});\n"],"names":["CreateGroupRepositoryImpl","groupCache","pluginGroupsProvider","storageOperations","tenantContext","group","tenant","existingById","Result","GroupSlugTakenError","slugTaken","pluginGroups","pluginGroupConflict","pg","error","GroupPersistenceError","existingBySlug","baseSlug","toSlug","generateAlphaNumericId","CreateGroupRepository","createImplementation","RepositoryAbstraction","GroupCache","PluginGroupsProvider","StorageOperations","TenantContext"],"mappings":";;;;;;;;AAuBA,MAAMA;IACF,YACYC,UAAgC,EAChCC,oBAAoD,EACpDC,iBAA8C,EAC9CC,aAAsC,CAChD;aAJUH,UAAU,GAAVA;aACAC,oBAAoB,GAApBA;aACAC,iBAAiB,GAAjBA;aACAC,aAAa,GAAbA;IACT;IAEH,MAAM,QAAQC,KAAe,EAAsD;QAC/E,IAAI;YACA,MAAMC,SAAS,IAAI,CAAC,aAAa,CAAC,SAAS;YAG3C,IAAID,MAAM,EAAE,EAAE;gBACV,MAAME,eAAe,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC1D,OAAO;wBACH,QAAQD,OAAO,EAAE;wBACjB,IAAID,MAAM,EAAE;oBAChB;gBACJ;gBAEA,IAAIE,aAAa,MAAM,GAAG,GACtB,OAAOC,OAAO,IAAI,CAAC,IAAIC,oBAAoBJ,MAAM,IAAI;YAE7D;YAGA,MAAMK,YAAY,MAAM,IAAI,CAAC,WAAW,CAACL,OAAOC,OAAO,EAAE;YACzD,IAAII,WACA,OAAOF,OAAO,IAAI,CAAC,IAAIC,oBAAoBJ,MAAM,IAAI;YAIzD,MAAMM,eAAe,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS;YAC9D,MAAMC,sBAAsBD,aAAa,IAAI,CAACE,CAAAA,KAAMA,GAAG,IAAI,KAAKR,MAAM,IAAI;YAC1E,IAAIO,qBACA,OAAOJ,OAAO,IAAI,CAAC,IAAIC,oBAAoBJ,MAAM,IAAI;YAIzD,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;gBAAEA;YAAM;YAGnD,IAAI,CAAC,UAAU,CAAC,KAAK;YAErB,OAAOG,OAAO,EAAE;QACpB,EAAE,OAAOM,OAAO;YACZ,OAAON,OAAO,IAAI,CAAC,IAAIO,sBAAsBD;QACjD;IACJ;IAEA,MAAc,YAAYT,KAAe,EAAEC,MAAc,EAAoB;QAEzE,IAAID,MAAM,IAAI,IAAIA,MAAM,IAAI,CAAC,IAAI,IAAI;YACjC,MAAMW,iBAAiB,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;gBAC5D,OAAO;oBACHV;oBACA,MAAMD,MAAM,IAAI;gBACpB;YACJ;YAEA,OAAOW,eAAe,MAAM,GAAG;QACnC;QAGA,MAAMC,WAAWC,OAAOb,MAAM,IAAI;QAClC,MAAMW,iBAAiB,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;YAC5D,OAAO;gBACHV;gBACA,MAAMW;YACV;QACJ;QAEA,IAAID,AAA0B,MAA1BA,eAAe,MAAM,EAErBX,MAAM,IAAI,GAAGY;aAGbZ,MAAM,IAAI,GAAG,GAAGY,SAAS,CAAC,EAAEE,uBAAuB,IAAI;QAG3D,OAAO;IACX;AACJ;AAEO,MAAMC,8CAAwBC,qBAAqB;IACtD,aAAaC;IACb,gBAAgBtB;IAChB,cAAc;QAACuB;QAAYC;QAAsBC;QAAmBC;KAAc;AACtF"}
|