@webiny/api-headless-cms 0.0.0-unstable.e622468070 → 0.0.0-unstable.e6f0dc8ca7
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/constants.d.ts +2 -1
- package/constants.js +4 -0
- package/constants.js.map +1 -1
- package/context.d.ts +2 -5
- package/context.js +16 -7
- package/context.js.map +1 -1
- package/crud/AccessControl/AccessControl.d.ts +18 -28
- package/crud/AccessControl/AccessControl.js.map +1 -1
- package/crud/AccessControl/README.md +1 -1
- package/crud/contentEntry/entryDataFactories/createEntryData.js +27 -12
- package/crud/contentEntry/entryDataFactories/createEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +13 -6
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +4 -1
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +4 -1
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +2 -1
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +4 -3
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/system.d.ts +10 -0
- package/crud/contentEntry/entryDataFactories/system.js +14 -0
- package/crud/contentEntry/entryDataFactories/system.js.map +1 -0
- package/crud/contentEntry/entryDataValidation.d.ts +1 -1
- package/crud/contentEntry/entryDataValidation.js +19 -16
- package/crud/contentEntry/entryDataValidation.js.map +1 -1
- package/crud/contentEntry/references/buildPaths.d.ts +1 -1
- package/crud/contentEntry/references/buildPaths.js +3 -3
- package/crud/contentEntry/references/buildPaths.js.map +1 -1
- package/crud/contentEntry/searchableFields.d.ts +2 -3
- package/crud/contentEntry/searchableFields.js +15 -19
- package/crud/contentEntry/searchableFields.js.map +1 -1
- package/crud/contentEntry.crud.js +16 -11
- package/crud/contentEntry.crud.js.map +1 -1
- package/crud/contentModel/fields/descriptionField.js +1 -1
- package/crud/contentModel/fields/descriptionField.js.map +1 -1
- package/crud/contentModel/fields/imageField.js +1 -1
- package/crud/contentModel/fields/imageField.js.map +1 -1
- package/crud/contentModel/fields/titleField.js +1 -1
- package/crud/contentModel/fields/titleField.js.map +1 -1
- package/crud/contentModel/validation.d.ts +224 -902
- package/crud/contentModel/validation.js +64 -36
- package/crud/contentModel/validation.js.map +1 -1
- package/crud/contentModel.crud.js +2 -1
- package/crud/contentModel.crud.js.map +1 -1
- package/domain/contentEntry/EntryId.d.ts +1 -0
- package/domain/contentEntry/EntryId.js +2 -0
- package/domain/contentEntry/EntryId.js.map +1 -1
- package/domain/contentEntry/errors.d.ts +2 -2
- package/domain/contentEntry/errors.js.map +1 -1
- package/domain/contentModel/errors.d.ts +1 -1
- package/domain/contentModel/errors.js.map +1 -1
- package/domain/contentModel/schemas.d.ts +198 -616
- package/domain/contentModel/schemas.js +55 -37
- package/domain/contentModel/schemas.js.map +1 -1
- package/domain/contentModel/validation/fields/descriptionField.js +1 -1
- package/domain/contentModel/validation/fields/descriptionField.js.map +1 -1
- package/domain/contentModel/validation/fields/imageField.js +1 -1
- package/domain/contentModel/validation/fields/imageField.js.map +1 -1
- package/domain/contentModel/validation/fields/titleField.js +1 -1
- package/domain/contentModel/validation/fields/titleField.js.map +1 -1
- package/domain/contentModel/validation/modelFields.js +15 -20
- package/domain/contentModel/validation/modelFields.js.map +1 -1
- package/domain/contentModelGroup/validation.d.ts +34 -82
- package/domain/contentModelGroup/validation.js +2 -2
- package/domain/contentModelGroup/validation.js.map +1 -1
- package/export/graphql/index.js +1 -1
- package/export/graphql/index.js.map +1 -1
- package/export/types.js.map +1 -1
- package/exports/api/cms/entry.d.ts +3 -0
- package/exports/api/cms/entry.js +6 -0
- package/exports/api/cms/entry.js.map +1 -1
- package/exports/api/cms/graphql.d.ts +1 -0
- package/exports/api/cms/graphql.js +3 -0
- package/exports/api/cms/graphql.js.map +1 -0
- package/exports/api/cms/model.d.ts +5 -1
- package/exports/api/cms/model.js +3 -1
- package/exports/api/cms/model.js.map +1 -1
- package/exports/api/cms/storage.d.ts +3 -0
- package/exports/api/cms/storage.js +5 -0
- package/exports/api/cms/storage.js.map +1 -0
- package/exports/api/cms/validation.d.ts +4 -0
- package/exports/api/cms/validation.js +6 -0
- package/exports/api/cms/validation.js.map +1 -0
- package/extensions/entryHooks/OnEntryBeforeCreate.d.ts +3 -7
- package/extensions/index.d.ts +2 -6
- package/features/contentEntry/ContentEntriesFeature.d.ts +4 -1
- package/features/contentEntry/ContentEntriesFeature.js +6 -0
- package/features/contentEntry/ContentEntriesFeature.js.map +1 -1
- package/{utils/contentEntryTraverser → features/contentEntry/ContentEntryTraverser}/ContentEntryTraverser.d.ts +1 -1
- package/{utils/contentEntryTraverser → features/contentEntry/ContentEntryTraverser}/ContentEntryTraverser.js +2 -2
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js.map +1 -0
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.d.ts +14 -0
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js +25 -0
- package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js.map +1 -0
- package/features/contentEntry/ContentEntryTraverser/abstractions.d.ts +12 -0
- package/features/contentEntry/ContentEntryTraverser/abstractions.js +7 -0
- package/features/contentEntry/ContentEntryTraverser/abstractions.js.map +1 -0
- package/features/contentEntry/ContentEntryTraverser/feature.d.ts +4 -0
- package/features/contentEntry/ContentEntryTraverser/feature.js +10 -0
- package/features/contentEntry/ContentEntryTraverser/feature.js.map +1 -0
- package/features/contentEntry/ContentEntryTraverser/index.d.ts +2 -0
- package/features/contentEntry/ContentEntryTraverser/index.js +4 -0
- package/features/contentEntry/ContentEntryTraverser/index.js.map +1 -0
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +3 -3
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +3 -3
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
- package/features/contentEntry/CreateEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/CreateEntry/abstractions.js +1 -0
- package/features/contentEntry/CreateEntry/abstractions.js.map +1 -1
- package/features/contentEntry/CreateEntry/events.d.ts +4 -2
- package/features/contentEntry/CreateEntry/events.js +5 -1
- package/features/contentEntry/CreateEntry/events.js.map +1 -1
- package/features/contentEntry/CreateEntry/feature.d.ts +4 -1
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +3 -3
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +3 -3
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/abstractions.d.ts +1 -0
- package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js +1 -0
- package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/events.d.ts +4 -2
- package/features/contentEntry/CreateEntryRevisionFrom/events.js +5 -1
- package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/feature.d.ts +4 -1
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.d.ts +1 -1
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +1 -1
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.d.ts +2 -2
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +2 -2
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntry/abstractions.d.ts +2 -0
- package/features/contentEntry/DeleteEntry/abstractions.js +2 -0
- package/features/contentEntry/DeleteEntry/abstractions.js.map +1 -1
- package/features/contentEntry/DeleteEntry/events.d.ts +4 -2
- package/features/contentEntry/DeleteEntry/events.js +5 -1
- package/features/contentEntry/DeleteEntry/events.js.map +1 -1
- package/features/contentEntry/DeleteEntry/feature.d.ts +4 -1
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.d.ts +1 -1
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +1 -1
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/abstractions.d.ts +1 -0
- package/features/contentEntry/DeleteEntryRevision/abstractions.js +1 -0
- package/features/contentEntry/DeleteEntryRevision/abstractions.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/events.d.ts +4 -2
- package/features/contentEntry/DeleteEntryRevision/events.js +5 -1
- package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/feature.d.ts +4 -1
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.d.ts +1 -1
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +1 -1
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/abstractions.d.ts +1 -0
- package/features/contentEntry/DeleteMultipleEntries/abstractions.js +1 -0
- package/features/contentEntry/DeleteMultipleEntries/abstractions.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/events.d.ts +4 -2
- package/features/contentEntry/DeleteMultipleEntries/events.js +5 -1
- package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/feature.d.ts +4 -1
- package/features/contentEntry/GetEntriesByIds/abstractions.d.ts +1 -0
- package/features/contentEntry/GetEntriesByIds/abstractions.js +1 -0
- package/features/contentEntry/GetEntriesByIds/abstractions.js.map +1 -1
- package/features/contentEntry/GetEntriesByIds/feature.d.ts +4 -1
- package/features/contentEntry/GetEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/GetEntry/abstractions.js +1 -0
- package/features/contentEntry/GetEntry/abstractions.js.map +1 -1
- package/features/contentEntry/GetEntry/feature.d.ts +4 -1
- package/features/contentEntry/GetEntryById/abstractions.d.ts +1 -0
- package/features/contentEntry/GetEntryById/abstractions.js +1 -0
- package/features/contentEntry/GetEntryById/abstractions.js.map +1 -1
- package/features/contentEntry/GetEntryById/feature.d.ts +4 -1
- package/features/contentEntry/GetLatestEntriesByIds/abstractions.d.ts +1 -0
- package/features/contentEntry/GetLatestEntriesByIds/abstractions.js +1 -0
- package/features/contentEntry/GetLatestEntriesByIds/abstractions.js.map +1 -1
- package/features/contentEntry/GetLatestEntriesByIds/feature.d.ts +4 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.d.ts +4 -9
- package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js +4 -9
- package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetLatestRevisionByEntryId/feature.d.ts +4 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.d.ts +2 -3
- package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js +2 -3
- package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetPreviousRevisionByEntryId/feature.d.ts +4 -1
- package/features/contentEntry/GetPublishedEntriesByIds/abstractions.d.ts +1 -0
- package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js +1 -0
- package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js.map +1 -1
- package/features/contentEntry/GetPublishedEntriesByIds/feature.d.ts +4 -1
- package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.d.ts +1 -0
- package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js +1 -0
- package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetPublishedRevisionByEntryId/feature.d.ts +4 -1
- package/features/contentEntry/GetRevisionById/abstractions.d.ts +1 -0
- package/features/contentEntry/GetRevisionById/abstractions.js +1 -0
- package/features/contentEntry/GetRevisionById/abstractions.js.map +1 -1
- package/features/contentEntry/GetRevisionById/feature.d.ts +4 -1
- package/features/contentEntry/GetRevisionsByEntryId/abstractions.d.ts +1 -0
- package/features/contentEntry/GetRevisionsByEntryId/abstractions.js +1 -0
- package/features/contentEntry/GetRevisionsByEntryId/abstractions.js.map +1 -1
- package/features/contentEntry/GetRevisionsByEntryId/feature.d.ts +4 -1
- package/features/contentEntry/GetSingletonEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/GetSingletonEntry/abstractions.js +1 -0
- package/features/contentEntry/GetSingletonEntry/abstractions.js.map +1 -1
- package/features/contentEntry/GetSingletonEntry/feature.d.ts +4 -1
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.d.ts +2 -2
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +9 -15
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
- package/features/contentEntry/GetUniqueFieldValues/feature.d.ts +4 -1
- package/features/contentEntry/ListEntries/ListEntriesRepository.js +6 -1
- package/features/contentEntry/ListEntries/ListEntriesRepository.js.map +1 -1
- package/features/contentEntry/ListEntries/ListEntriesUseCase.d.ts +1 -1
- package/features/contentEntry/ListEntries/ListEntriesUseCase.js +1 -1
- package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
- package/features/contentEntry/ListEntries/abstractions.d.ts +4 -0
- package/features/contentEntry/ListEntries/abstractions.js +4 -0
- package/features/contentEntry/ListEntries/abstractions.js.map +1 -1
- package/features/contentEntry/ListEntries/feature.d.ts +4 -1
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.d.ts +1 -1
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +1 -1
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
- package/features/contentEntry/MoveEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/MoveEntry/abstractions.js +1 -0
- package/features/contentEntry/MoveEntry/abstractions.js.map +1 -1
- package/features/contentEntry/MoveEntry/events.d.ts +4 -2
- package/features/contentEntry/MoveEntry/events.js +5 -1
- package/features/contentEntry/MoveEntry/events.js.map +1 -1
- package/features/contentEntry/MoveEntry/feature.d.ts +4 -1
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +2 -2
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +2 -2
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/PublishEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/PublishEntry/abstractions.js +1 -0
- package/features/contentEntry/PublishEntry/abstractions.js.map +1 -1
- package/features/contentEntry/PublishEntry/events.d.ts +4 -2
- package/features/contentEntry/PublishEntry/events.js +5 -1
- package/features/contentEntry/PublishEntry/events.js.map +1 -1
- package/features/contentEntry/PublishEntry/feature.d.ts +4 -1
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +2 -2
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +2 -2
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/RepublishEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/RepublishEntry/abstractions.js +1 -0
- package/features/contentEntry/RepublishEntry/abstractions.js.map +1 -1
- package/features/contentEntry/RepublishEntry/events.d.ts +4 -2
- package/features/contentEntry/RepublishEntry/events.js +5 -1
- package/features/contentEntry/RepublishEntry/events.js.map +1 -1
- package/features/contentEntry/RepublishEntry/feature.d.ts +4 -1
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.d.ts +2 -2
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +2 -2
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/abstractions.d.ts +1 -0
- package/features/contentEntry/RestoreEntryFromBin/abstractions.js +1 -0
- package/features/contentEntry/RestoreEntryFromBin/abstractions.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/events.d.ts +4 -2
- package/features/contentEntry/RestoreEntryFromBin/events.js +5 -1
- package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/feature.d.ts +4 -1
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +2 -2
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +2 -2
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/UnpublishEntry/abstractions.js +1 -0
- package/features/contentEntry/UnpublishEntry/abstractions.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/events.d.ts +4 -2
- package/features/contentEntry/UnpublishEntry/events.js +5 -1
- package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/feature.d.ts +4 -1
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +3 -3
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +3 -3
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
- package/features/contentEntry/UpdateEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/UpdateEntry/abstractions.js +1 -0
- package/features/contentEntry/UpdateEntry/abstractions.js.map +1 -1
- package/features/contentEntry/UpdateEntry/events.d.ts +4 -2
- package/features/contentEntry/UpdateEntry/events.js +5 -1
- package/features/contentEntry/UpdateEntry/events.js.map +1 -1
- package/features/contentEntry/UpdateEntry/feature.d.ts +4 -1
- package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.d.ts +22 -0
- package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js +90 -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 +10 -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 +33 -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 +20 -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 +4 -0
- package/features/contentEntry/UpdateRevisionDescription/index.js.map +1 -0
- package/features/contentEntry/UpdateSingletonEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/UpdateSingletonEntry/abstractions.js +1 -0
- package/features/contentEntry/UpdateSingletonEntry/abstractions.js.map +1 -1
- package/features/contentEntry/UpdateSingletonEntry/feature.d.ts +4 -1
- package/features/contentEntry/ValidateEntry/abstractions.d.ts +1 -0
- package/features/contentEntry/ValidateEntry/abstractions.js +1 -0
- package/features/contentEntry/ValidateEntry/abstractions.js.map +1 -1
- package/features/contentEntry/ValidateEntry/feature.d.ts +4 -1
- package/features/contentModel/ContentModelFeature.d.ts +4 -1
- package/features/contentModel/ContentModelFeature.js +2 -0
- package/features/contentModel/ContentModelFeature.js.map +1 -1
- package/features/contentModel/CreateModel/CreateModelRepository.d.ts +12 -12
- package/features/contentModel/CreateModel/CreateModelRepository.js +17 -12
- package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
- package/features/contentModel/CreateModel/CreateModelUseCase.d.ts +3 -3
- package/features/contentModel/CreateModel/CreateModelUseCase.js +3 -3
- package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
- package/features/contentModel/CreateModel/abstractions.d.ts +1 -0
- package/features/contentModel/CreateModel/abstractions.js +1 -0
- package/features/contentModel/CreateModel/abstractions.js.map +1 -1
- package/features/contentModel/CreateModel/events.d.ts +4 -2
- package/features/contentModel/CreateModel/events.js +5 -1
- package/features/contentModel/CreateModel/events.js.map +1 -1
- package/features/contentModel/CreateModel/feature.d.ts +4 -1
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.d.ts +12 -13
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +25 -15
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.d.ts +3 -3
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +4 -3
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
- package/features/contentModel/CreateModelFrom/abstractions.d.ts +1 -0
- package/features/contentModel/CreateModelFrom/abstractions.js +1 -0
- package/features/contentModel/CreateModelFrom/abstractions.js.map +1 -1
- package/features/contentModel/CreateModelFrom/events.d.ts +4 -2
- package/features/contentModel/CreateModelFrom/events.js +5 -1
- package/features/contentModel/CreateModelFrom/events.js.map +1 -1
- package/features/contentModel/CreateModelFrom/feature.d.ts +4 -1
- package/features/contentModel/DeleteModel/DeleteModelUseCase.d.ts +1 -1
- package/features/contentModel/DeleteModel/DeleteModelUseCase.js +1 -1
- package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
- package/features/contentModel/DeleteModel/abstractions.d.ts +1 -0
- package/features/contentModel/DeleteModel/abstractions.js +1 -0
- package/features/contentModel/DeleteModel/abstractions.js.map +1 -1
- package/features/contentModel/DeleteModel/events.d.ts +4 -2
- package/features/contentModel/DeleteModel/events.js +5 -1
- package/features/contentModel/DeleteModel/events.js.map +1 -1
- package/features/contentModel/DeleteModel/feature.d.ts +4 -1
- package/features/contentModel/GetModel/abstractions.d.ts +1 -0
- package/features/contentModel/GetModel/abstractions.js +1 -0
- package/features/contentModel/GetModel/abstractions.js.map +1 -1
- package/features/contentModel/GetModel/feature.d.ts +4 -1
- package/features/contentModel/ListModels/abstractions.d.ts +1 -0
- package/features/contentModel/ListModels/abstractions.js +1 -0
- package/features/contentModel/ListModels/abstractions.js.map +1 -1
- package/features/contentModel/ListModels/feature.d.ts +4 -1
- package/features/contentModel/ModelFieldCompression/ModelFieldCompression.d.ts +15 -0
- package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js +27 -0
- package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js.map +1 -0
- package/features/contentModel/ModelFieldCompression/abstractions.d.ts +17 -0
- package/features/contentModel/ModelFieldCompression/abstractions.js +4 -0
- package/features/contentModel/ModelFieldCompression/abstractions.js.map +1 -0
- package/features/contentModel/ModelFieldCompression/feature.d.ts +4 -0
- package/features/contentModel/ModelFieldCompression/feature.js +10 -0
- package/features/contentModel/ModelFieldCompression/feature.js.map +1 -0
- package/features/contentModel/ModelFieldCompression/index.d.ts +1 -0
- package/features/contentModel/ModelFieldCompression/index.js +3 -0
- package/features/contentModel/ModelFieldCompression/index.js.map +1 -0
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.d.ts +3 -3
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +6 -6
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
- package/features/contentModel/ModelToAstConverter/feature.d.ts +4 -1
- package/features/contentModel/UpdateModel/UpdateModelRepository.d.ts +9 -9
- package/features/contentModel/UpdateModel/UpdateModelRepository.js +21 -12
- package/features/contentModel/UpdateModel/UpdateModelRepository.js.map +1 -1
- package/features/contentModel/UpdateModel/UpdateModelUseCase.d.ts +2 -2
- package/features/contentModel/UpdateModel/UpdateModelUseCase.js +6 -3
- package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
- package/features/contentModel/UpdateModel/abstractions.d.ts +1 -0
- package/features/contentModel/UpdateModel/abstractions.js +1 -0
- package/features/contentModel/UpdateModel/abstractions.js.map +1 -1
- package/features/contentModel/UpdateModel/events.d.ts +4 -2
- package/features/contentModel/UpdateModel/events.js +5 -1
- package/features/contentModel/UpdateModel/events.js.map +1 -1
- package/features/contentModel/UpdateModel/feature.d.ts +4 -1
- package/features/contentModel/shared/ModelsFetcher.d.ts +8 -6
- package/features/contentModel/shared/ModelsFetcher.js +14 -4
- package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
- package/features/contentModelGroup/ContentModelGroupFeature.d.ts +4 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.d.ts +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.d.ts +3 -3
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +3 -3
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/abstractions.d.ts +1 -0
- package/features/contentModelGroup/CreateGroup/abstractions.js +1 -0
- package/features/contentModelGroup/CreateGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/events.d.ts +4 -2
- package/features/contentModelGroup/CreateGroup/events.js +5 -1
- package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/feature.d.ts +4 -1
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.d.ts +1 -1
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +1 -1
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/abstractions.d.ts +1 -0
- package/features/contentModelGroup/DeleteGroup/abstractions.js +1 -0
- package/features/contentModelGroup/DeleteGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/events.d.ts +4 -2
- package/features/contentModelGroup/DeleteGroup/events.js +5 -1
- package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/feature.d.ts +4 -1
- package/features/contentModelGroup/GetGroup/GetGroupRepository.d.ts +2 -2
- package/features/contentModelGroup/GetGroup/GetGroupRepository.js +2 -2
- package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
- package/features/contentModelGroup/GetGroup/abstractions.d.ts +1 -0
- package/features/contentModelGroup/GetGroup/abstractions.js +1 -0
- package/features/contentModelGroup/GetGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/GetGroup/feature.d.ts +4 -1
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.d.ts +2 -2
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +2 -2
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
- package/features/contentModelGroup/ListGroups/abstractions.d.ts +1 -0
- package/features/contentModelGroup/ListGroups/abstractions.js +1 -0
- package/features/contentModelGroup/ListGroups/abstractions.js.map +1 -1
- package/features/contentModelGroup/ListGroups/feature.d.ts +4 -1
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.d.ts +2 -2
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +2 -2
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/abstractions.d.ts +1 -0
- package/features/contentModelGroup/UpdateGroup/abstractions.js +1 -0
- package/features/contentModelGroup/UpdateGroup/abstractions.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/events.d.ts +4 -2
- package/features/contentModelGroup/UpdateGroup/events.js +5 -1
- package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/feature.d.ts +4 -1
- package/features/contentModelGroup/shared/PluginGroupsProvider.d.ts +2 -2
- package/features/contentModelGroup/shared/PluginGroupsProvider.js +2 -2
- package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
- package/features/contentModelGroup/shared/abstractions.d.ts +1 -0
- package/features/contentModelGroup/shared/abstractions.js +1 -0
- package/features/contentModelGroup/shared/abstractions.js.map +1 -1
- package/features/graphql/feature.d.ts +4 -0
- package/features/graphql/feature.js +34 -0
- package/features/graphql/feature.js.map +1 -0
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.d.ts +13 -0
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +27 -0
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.d.ts +97 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +4 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.d.ts +10 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +4 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -0
- package/features/graphql/fields/base/BooleanToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/BooleanToGraphQL.js +68 -0
- package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/DateTimeToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/DateTimeToGraphQL.js +97 -0
- package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/DynamicZoneToGraphQL.d.ts +30 -0
- package/features/graphql/fields/base/DynamicZoneToGraphQL.js +280 -0
- package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/FileToGraphQL.d.ts +22 -0
- package/features/graphql/fields/base/FileToGraphQL.js +39 -0
- package/features/graphql/fields/base/FileToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/JsonToGraphQL.d.ts +24 -0
- package/features/graphql/fields/base/JsonToGraphQL.js +52 -0
- package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/LongTextToGraphQL.d.ts +24 -0
- package/features/graphql/fields/base/LongTextToGraphQL.js +57 -0
- package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/NumberToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/NumberToGraphQL.js +78 -0
- package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/ObjectToGraphQL.d.ts +31 -0
- package/features/graphql/fields/base/ObjectToGraphQL.js +264 -0
- package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/RefToGraphQL.d.ts +29 -0
- package/features/graphql/fields/base/RefToGraphQL.js +261 -0
- package/features/graphql/fields/base/RefToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/RichTextToGraphQL.d.ts +25 -0
- package/features/graphql/fields/base/RichTextToGraphQL.js +58 -0
- package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/SearchableJsonToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/SearchableJsonToGraphQL.js +62 -0
- package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/TextToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/TextToGraphQL.js +74 -0
- package/features/graphql/fields/base/TextToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.d.ts +16 -0
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +37 -0
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -0
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.d.ts +3 -0
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +14 -0
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -0
- package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.d.ts +1 -1
- package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.js +4 -4
- package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -0
- package/{graphqlFields/helpers.d.ts → features/graphql/fields/base/utils/createGraphQLInputField.d.ts} +1 -1
- package/features/graphql/fields/base/utils/createGraphQLInputField.js +17 -0
- package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -0
- package/features/graphql/index.d.ts +4 -0
- package/features/graphql/index.js +6 -0
- package/features/graphql/index.js.map +1 -0
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.d.ts +13 -0
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +4 -0
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -0
- package/features/installer/CmsInstaller.d.ts +1 -1
- package/features/installer/CmsInstaller.js +1 -1
- package/features/installer/CmsInstaller.js.map +1 -1
- package/features/installer/feature.d.ts +4 -1
- package/features/modelBuilder/abstractions.d.ts +8 -4
- package/features/modelBuilder/abstractions.js +5 -2
- package/features/modelBuilder/abstractions.js.map +1 -1
- package/features/modelBuilder/feature.d.ts +4 -1
- package/features/modelBuilder/feature.js +6 -0
- package/features/modelBuilder/feature.js.map +1 -1
- package/features/modelBuilder/fields/BaseFieldBuilder.d.ts +36 -0
- package/features/modelBuilder/fields/BaseFieldBuilder.js +41 -0
- package/features/modelBuilder/fields/BaseFieldBuilder.js.map +1 -0
- package/features/modelBuilder/fields/BooleanFieldType.d.ts +2 -2
- package/features/modelBuilder/fields/BooleanFieldType.js +2 -2
- package/features/modelBuilder/fields/BooleanFieldType.js.map +1 -1
- package/features/modelBuilder/fields/DataFieldBuilder.d.ts +220 -0
- package/features/modelBuilder/fields/DataFieldBuilder.js +211 -0
- package/features/modelBuilder/fields/DataFieldBuilder.js.map +1 -0
- package/features/modelBuilder/fields/DateTimeFieldType.d.ts +3 -3
- package/features/modelBuilder/fields/DateTimeFieldType.js +22 -2
- package/features/modelBuilder/fields/DateTimeFieldType.js.map +1 -1
- package/features/modelBuilder/fields/DynamicZoneFieldType.d.ts +3 -3
- package/features/modelBuilder/fields/DynamicZoneFieldType.js +12 -5
- package/features/modelBuilder/fields/DynamicZoneFieldType.js.map +1 -1
- package/features/modelBuilder/fields/FieldBuilder.d.ts +5 -46
- package/features/modelBuilder/fields/FieldBuilder.js +3 -152
- package/features/modelBuilder/fields/FieldBuilder.js.map +1 -1
- package/features/modelBuilder/fields/FieldBuilderRegistry.d.ts +3 -3
- package/features/modelBuilder/fields/FieldBuilderRegistry.js +11 -1
- package/features/modelBuilder/fields/FieldBuilderRegistry.js.map +1 -1
- package/features/modelBuilder/fields/FileFieldType.d.ts +3 -3
- package/features/modelBuilder/fields/FileFieldType.js +2 -2
- package/features/modelBuilder/fields/FileFieldType.js.map +1 -1
- package/features/modelBuilder/fields/JsonFieldType.d.ts +2 -2
- package/features/modelBuilder/fields/JsonFieldType.js +2 -2
- package/features/modelBuilder/fields/JsonFieldType.js.map +1 -1
- package/features/modelBuilder/fields/LayoutFieldBuilder.d.ts +7 -0
- package/features/modelBuilder/fields/LayoutFieldBuilder.js +9 -0
- package/features/modelBuilder/fields/LayoutFieldBuilder.js.map +1 -0
- package/features/modelBuilder/fields/LongTextFieldType.d.ts +3 -4
- package/features/modelBuilder/fields/LongTextFieldType.js +2 -2
- package/features/modelBuilder/fields/LongTextFieldType.js.map +1 -1
- package/features/modelBuilder/fields/NumberFieldType.d.ts +3 -3
- package/features/modelBuilder/fields/NumberFieldType.js +2 -2
- package/features/modelBuilder/fields/NumberFieldType.js.map +1 -1
- package/features/modelBuilder/fields/ObjectFieldType.d.ts +7 -6
- package/features/modelBuilder/fields/ObjectFieldType.js +21 -6
- package/features/modelBuilder/fields/ObjectFieldType.js.map +1 -1
- package/features/modelBuilder/fields/RefFieldType.d.ts +3 -3
- package/features/modelBuilder/fields/RefFieldType.js +2 -2
- package/features/modelBuilder/fields/RefFieldType.js.map +1 -1
- package/features/modelBuilder/fields/RichTextFieldType.d.ts +2 -2
- package/features/modelBuilder/fields/RichTextFieldType.js +2 -2
- package/features/modelBuilder/fields/RichTextFieldType.js.map +1 -1
- package/features/modelBuilder/fields/SearchableJsonFieldType.d.ts +2 -2
- package/features/modelBuilder/fields/SearchableJsonFieldType.js +2 -2
- package/features/modelBuilder/fields/SearchableJsonFieldType.js.map +1 -1
- package/features/modelBuilder/fields/TextFieldType.d.ts +3 -3
- package/features/modelBuilder/fields/TextFieldType.js +2 -2
- package/features/modelBuilder/fields/TextFieldType.js.map +1 -1
- package/features/modelBuilder/fields/UiAlertFieldType.d.ts +19 -0
- package/features/modelBuilder/fields/UiAlertFieldType.js +36 -0
- package/features/modelBuilder/fields/UiAlertFieldType.js.map +1 -0
- package/features/modelBuilder/fields/UiSeparatorFieldType.d.ts +17 -0
- package/features/modelBuilder/fields/UiSeparatorFieldType.js +31 -0
- package/features/modelBuilder/fields/UiSeparatorFieldType.js.map +1 -0
- package/features/modelBuilder/fields/UiTabsFieldType.d.ts +28 -0
- package/features/modelBuilder/fields/UiTabsFieldType.js +75 -0
- package/features/modelBuilder/fields/UiTabsFieldType.js.map +1 -0
- package/features/modelBuilder/fields/abstractions.d.ts +6 -3
- package/features/modelBuilder/fields/abstractions.js +1 -1
- package/features/modelBuilder/fields/abstractions.js.map +1 -1
- package/features/modelBuilder/fields/{validators.d.ts → fieldTypeValidator.d.ts} +23 -1
- package/features/modelBuilder/fields/fieldTypeValidator.js +31 -0
- package/features/modelBuilder/fields/fieldTypeValidator.js.map +1 -0
- package/features/modelBuilder/index.d.ts +3 -0
- package/features/modelBuilder/index.js +3 -0
- package/features/modelBuilder/index.js.map +1 -1
- package/features/modelBuilder/models/BaseModelBuilder.d.ts +9 -4
- package/features/modelBuilder/models/BaseModelBuilder.js +19 -0
- package/features/modelBuilder/models/BaseModelBuilder.js.map +1 -1
- package/features/modelBuilder/models/PrivateModelBuilder.js +4 -2
- package/features/modelBuilder/models/PrivateModelBuilder.js.map +1 -1
- package/features/modelBuilder/models/PublicModelBuilder.js +16 -4
- package/features/modelBuilder/models/PublicModelBuilder.js.map +1 -1
- package/features/shared/abstractions.d.ts +9 -2
- package/features/shared/abstractions.js +1 -0
- package/features/shared/abstractions.js.map +1 -1
- package/features/sortMapper/abstractions.d.ts +1 -0
- package/features/sortMapper/abstractions.js +1 -0
- package/features/sortMapper/abstractions.js.map +1 -1
- package/features/sortMapper/feature.d.ts +4 -1
- package/features/storage/StorageTransformRegistry.d.ts +13 -0
- package/features/storage/StorageTransformRegistry.js +27 -0
- package/features/storage/StorageTransformRegistry.js.map +1 -0
- package/features/storage/abstractions/StorageTransform.d.ts +26 -0
- package/features/storage/abstractions/StorageTransform.js +4 -0
- package/features/storage/abstractions/StorageTransform.js.map +1 -0
- package/features/storage/abstractions/StorageTransformRegistry.d.ts +10 -0
- package/features/storage/abstractions/StorageTransformRegistry.js +4 -0
- package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -0
- package/features/storage/feature.d.ts +4 -0
- package/features/storage/feature.js +24 -0
- package/features/storage/feature.js.map +1 -0
- package/features/storage/fields/DateStorageTransform.d.ts +10 -0
- package/features/storage/fields/DateStorageTransform.js +110 -0
- package/features/storage/fields/DateStorageTransform.js.map +1 -0
- package/features/storage/fields/DefaultStorageTransform.d.ts +10 -0
- package/features/storage/fields/DefaultStorageTransform.js +20 -0
- package/features/storage/fields/DefaultStorageTransform.js.map +1 -0
- package/features/storage/fields/DynamicZoneStorageTransform.d.ts +10 -0
- package/features/storage/fields/DynamicZoneStorageTransform.js +142 -0
- package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -0
- package/features/storage/fields/JsonStorageTransform.d.ts +13 -0
- package/features/storage/fields/JsonStorageTransform.js +31 -0
- package/features/storage/fields/JsonStorageTransform.js.map +1 -0
- package/features/storage/fields/LongTextStorageTransform.d.ts +18 -0
- package/features/storage/fields/LongTextStorageTransform.js +55 -0
- package/features/storage/fields/LongTextStorageTransform.js.map +1 -0
- package/features/storage/fields/ObjectStorageTransform.d.ts +10 -0
- package/features/storage/fields/ObjectStorageTransform.js +99 -0
- package/features/storage/fields/ObjectStorageTransform.js.map +1 -0
- package/features/storage/fields/RichTextStorageTransform.d.ts +13 -0
- package/features/storage/fields/RichTextStorageTransform.js +39 -0
- package/features/storage/fields/RichTextStorageTransform.js.map +1 -0
- package/features/storage/index.d.ts +3 -0
- package/features/storage/index.js +5 -0
- package/features/storage/index.js.map +1 -0
- package/features/validation/CmsModelFieldPatternValidatorRegistry.d.ts +12 -0
- package/features/validation/CmsModelFieldPatternValidatorRegistry.js +21 -0
- package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
- package/features/validation/CmsModelFieldValidatorRegistry.d.ts +12 -0
- package/features/validation/CmsModelFieldValidatorRegistry.js +23 -0
- package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidator.d.ts +13 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidator.js +4 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.d.ts +9 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +4 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldValidator.d.ts +11 -0
- package/features/validation/abstractions/CmsModelFieldValidator.js +4 -0
- package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.d.ts +9 -0
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +4 -0
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -0
- package/features/validation/feature.d.ts +4 -0
- package/features/validation/feature.js +48 -0
- package/features/validation/feature.js.map +1 -0
- package/features/validation/index.d.ts +5 -0
- package/features/validation/index.js +7 -0
- package/features/validation/index.js.map +1 -0
- package/features/validation/validators/DateGteValidator.d.ts +10 -0
- package/features/validation/validators/DateGteValidator.js +26 -0
- package/features/validation/validators/DateGteValidator.js.map +1 -0
- package/features/validation/validators/DateLteValidator.d.ts +10 -0
- package/features/validation/validators/DateLteValidator.js +26 -0
- package/features/validation/validators/DateLteValidator.js.map +1 -0
- package/features/validation/validators/GteValidator.d.ts +10 -0
- package/features/validation/validators/GteValidator.js +21 -0
- package/features/validation/validators/GteValidator.js.map +1 -0
- package/features/validation/validators/InValidator.d.ts +10 -0
- package/features/validation/validators/InValidator.js +21 -0
- package/features/validation/validators/InValidator.js.map +1 -0
- package/features/validation/validators/LteValidator.d.ts +10 -0
- package/features/validation/validators/LteValidator.js +21 -0
- package/features/validation/validators/LteValidator.js.map +1 -0
- package/features/validation/validators/MaxLengthValidator.d.ts +10 -0
- package/features/validation/validators/MaxLengthValidator.js +21 -0
- package/features/validation/validators/MaxLengthValidator.js.map +1 -0
- package/features/validation/validators/MinLengthValidator.d.ts +10 -0
- package/features/validation/validators/MinLengthValidator.js +21 -0
- package/features/validation/validators/MinLengthValidator.js.map +1 -0
- package/features/validation/validators/PatternValidator.d.ts +13 -0
- package/features/validation/validators/PatternValidator.js +38 -0
- package/features/validation/validators/PatternValidator.js.map +1 -0
- package/features/validation/validators/RequiredValidator.d.ts +10 -0
- package/features/validation/validators/RequiredValidator.js +16 -0
- package/features/validation/validators/RequiredValidator.js.map +1 -0
- package/features/validation/validators/TimeGteValidator.d.ts +10 -0
- package/features/validation/validators/TimeGteValidator.js +21 -0
- package/features/validation/validators/TimeGteValidator.js.map +1 -0
- package/features/validation/validators/TimeLteValidator.d.ts +10 -0
- package/features/validation/validators/TimeLteValidator.js +21 -0
- package/features/validation/validators/TimeLteValidator.js.map +1 -0
- package/features/validation/validators/UniqueValidator.d.ts +10 -0
- package/features/validation/validators/UniqueValidator.js +47 -0
- package/features/validation/validators/UniqueValidator.js.map +1 -0
- package/features/validation/validators/patterns/EmailPattern.d.ts +12 -0
- package/features/validation/validators/patterns/EmailPattern.js +14 -0
- package/features/validation/validators/patterns/EmailPattern.js.map +1 -0
- package/features/validation/validators/patterns/LowerCasePattern.d.ts +12 -0
- package/features/validation/validators/patterns/LowerCasePattern.js +14 -0
- package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -0
- package/features/validation/validators/patterns/LowerCaseSpacePattern.d.ts +12 -0
- package/features/validation/validators/patterns/LowerCaseSpacePattern.js +14 -0
- package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -0
- package/features/validation/validators/patterns/UpperCasePattern.d.ts +12 -0
- package/features/validation/validators/patterns/UpperCasePattern.js +14 -0
- package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -0
- package/features/validation/validators/patterns/UpperCaseSpacePattern.d.ts +12 -0
- package/features/validation/validators/patterns/UpperCaseSpacePattern.js +14 -0
- package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -0
- package/features/validation/validators/patterns/UrlPattern.d.ts +12 -0
- package/features/validation/validators/patterns/UrlPattern.js +14 -0
- package/features/validation/validators/patterns/UrlPattern.js.map +1 -0
- package/features/whereMapper/abstractions.d.ts +1 -0
- package/features/whereMapper/abstractions.js +1 -0
- package/features/whereMapper/abstractions.js.map +1 -1
- package/features/whereMapper/feature.d.ts +4 -1
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +2 -2
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +2 -2
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
- package/graphql/getSchema/generateCacheKey.js +15 -7
- package/graphql/getSchema/generateCacheKey.js.map +1 -1
- package/graphql/index.js +2 -1
- package/graphql/index.js.map +1 -1
- package/graphql/schema/baseSchema.d.ts +2 -1
- package/graphql/schema/baseSchema.js +28 -24
- package/graphql/schema/baseSchema.js.map +1 -1
- package/graphql/schema/cms/createEntryResolver.d.ts +10 -0
- package/graphql/schema/cms/createEntryResolver.js +65 -0
- package/graphql/schema/cms/createEntryResolver.js.map +1 -0
- package/graphql/schema/cms/deleteEntryResolver.d.ts +10 -0
- package/graphql/schema/cms/deleteEntryResolver.js +65 -0
- package/graphql/schema/cms/deleteEntryResolver.js.map +1 -0
- package/graphql/schema/cms/getEntryResolver.d.ts +11 -0
- package/graphql/schema/cms/getEntryResolver.js +67 -0
- package/graphql/schema/cms/getEntryResolver.js.map +1 -0
- package/graphql/schema/cms/helpers/buildFieldsSelection.d.ts +23 -0
- package/graphql/schema/cms/helpers/buildFieldsSelection.js +79 -0
- package/graphql/schema/cms/helpers/buildFieldsSelection.js.map +1 -0
- package/graphql/schema/cms/helpers/getErrorMessage.d.ts +4 -0
- package/graphql/schema/cms/helpers/getErrorMessage.js +14 -0
- package/graphql/schema/cms/helpers/getErrorMessage.js.map +1 -0
- package/graphql/schema/cms/helpers/getModel.d.ts +6 -0
- package/graphql/schema/cms/helpers/getModel.js +12 -0
- package/graphql/schema/cms/helpers/getModel.js.map +1 -0
- package/graphql/schema/cms/helpers/index.d.ts +5 -0
- package/graphql/schema/cms/helpers/index.js +7 -0
- package/graphql/schema/cms/helpers/index.js.map +1 -0
- package/graphql/schema/cms/helpers/transformSortToArray.d.ts +18 -0
- package/graphql/schema/cms/helpers/transformSortToArray.js +38 -0
- package/graphql/schema/cms/helpers/transformSortToArray.js.map +1 -0
- package/graphql/schema/cms/helpers/transformWhereToNested.d.ts +17 -0
- package/graphql/schema/cms/helpers/transformWhereToNested.js +54 -0
- package/graphql/schema/cms/helpers/transformWhereToNested.js.map +1 -0
- package/graphql/schema/cms/helpers.d.ts +5 -0
- package/graphql/schema/cms/helpers.js +7 -0
- package/graphql/schema/cms/helpers.js.map +1 -0
- package/graphql/schema/cms/index.d.ts +2 -0
- package/graphql/schema/cms/index.js +26 -0
- package/graphql/schema/cms/index.js.map +1 -0
- package/graphql/schema/cms/listEntriesResolver.d.ts +15 -0
- package/graphql/schema/cms/listEntriesResolver.js +115 -0
- package/graphql/schema/cms/listEntriesResolver.js.map +1 -0
- package/graphql/schema/cms/publishEntryResolver.d.ts +10 -0
- package/graphql/schema/cms/publishEntryResolver.js +65 -0
- package/graphql/schema/cms/publishEntryResolver.js.map +1 -0
- package/graphql/schema/cms/resolvers/createEntry.d.ts +8 -0
- package/graphql/schema/cms/resolvers/createEntry.js +17 -0
- package/graphql/schema/cms/resolvers/createEntry.js.map +1 -0
- package/graphql/schema/cms/resolvers/deleteEntryRevision.d.ts +8 -0
- package/graphql/schema/cms/resolvers/deleteEntryRevision.js +17 -0
- package/graphql/schema/cms/resolvers/deleteEntryRevision.js.map +1 -0
- package/graphql/schema/cms/resolvers/getEntry.d.ts +8 -0
- package/graphql/schema/cms/resolvers/getEntry.js +17 -0
- package/graphql/schema/cms/resolvers/getEntry.js.map +1 -0
- package/graphql/schema/cms/resolvers/index.d.ts +9 -0
- package/graphql/schema/cms/resolvers/index.js +11 -0
- package/graphql/schema/cms/resolvers/index.js.map +1 -0
- package/graphql/schema/cms/resolvers/listEntries.d.ts +8 -0
- package/graphql/schema/cms/resolvers/listEntries.js +17 -0
- package/graphql/schema/cms/resolvers/listEntries.js.map +1 -0
- package/graphql/schema/cms/resolvers/mutationCms.d.ts +8 -0
- package/graphql/schema/cms/resolvers/mutationCms.js +24 -0
- package/graphql/schema/cms/resolvers/mutationCms.js.map +1 -0
- package/graphql/schema/cms/resolvers/publishEntryRevision.d.ts +8 -0
- package/graphql/schema/cms/resolvers/publishEntryRevision.js +17 -0
- package/graphql/schema/cms/resolvers/publishEntryRevision.js.map +1 -0
- package/graphql/schema/cms/resolvers/queryCms.d.ts +8 -0
- package/graphql/schema/cms/resolvers/queryCms.js +23 -0
- package/graphql/schema/cms/resolvers/queryCms.js.map +1 -0
- package/graphql/schema/cms/resolvers/unpublishEntryRevision.d.ts +8 -0
- package/graphql/schema/cms/resolvers/unpublishEntryRevision.js +17 -0
- package/graphql/schema/cms/resolvers/unpublishEntryRevision.js.map +1 -0
- package/graphql/schema/cms/resolvers/updateEntryRevision.d.ts +8 -0
- package/graphql/schema/cms/resolvers/updateEntryRevision.js +17 -0
- package/graphql/schema/cms/resolvers/updateEntryRevision.js.map +1 -0
- package/graphql/schema/cms/typeDefs/index.d.ts +3 -0
- package/graphql/schema/cms/typeDefs/index.js +5 -0
- package/graphql/schema/cms/typeDefs/index.js.map +1 -0
- package/graphql/schema/cms/typeDefs/mutation.d.ts +8 -0
- package/graphql/schema/cms/typeDefs/mutation.js +42 -0
- package/graphql/schema/cms/typeDefs/mutation.js.map +1 -0
- package/graphql/schema/cms/typeDefs/query.d.ts +8 -0
- package/graphql/schema/cms/typeDefs/query.js +36 -0
- package/graphql/schema/cms/typeDefs/query.js.map +1 -0
- package/graphql/schema/cms/typeDefs/responses.d.ts +8 -0
- package/graphql/schema/cms/typeDefs/responses.js +35 -0
- package/graphql/schema/cms/typeDefs/responses.js.map +1 -0
- package/graphql/schema/cms/unpublishEntryResolver.d.ts +10 -0
- package/graphql/schema/cms/unpublishEntryResolver.js +65 -0
- package/graphql/schema/cms/unpublishEntryResolver.js.map +1 -0
- package/graphql/schema/cms/updateEntryResolver.d.ts +11 -0
- package/graphql/schema/cms/updateEntryResolver.js +67 -0
- package/graphql/schema/cms/updateEntryResolver.js.map +1 -0
- package/graphql/schema/contentEntries.js +1 -1
- package/graphql/schema/contentEntries.js.map +1 -1
- package/graphql/schema/contentModels.js +31 -9
- package/graphql/schema/contentModels.js.map +1 -1
- package/graphql/schema/createFieldResolvers.d.ts +3 -2
- package/graphql/schema/createFieldResolvers.js +5 -4
- package/graphql/schema/createFieldResolvers.js.map +1 -1
- package/graphql/schema/createManageResolvers.d.ts +3 -2
- package/graphql/schema/createManageResolvers.js +5 -3
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.d.ts +4 -4
- package/graphql/schema/createManageSDL.js +16 -11
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.d.ts +3 -2
- package/graphql/schema/createPreviewResolvers.js +4 -4
- package/graphql/schema/createPreviewResolvers.js.map +1 -1
- package/graphql/schema/createReadResolvers.d.ts +3 -2
- package/graphql/schema/createReadResolvers.js +4 -4
- package/graphql/schema/createReadResolvers.js.map +1 -1
- package/graphql/schema/createReadSDL.d.ts +4 -4
- package/graphql/schema/createReadSDL.js +7 -7
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/createSingularResolvers.d.ts +3 -2
- package/graphql/schema/createSingularResolvers.js +3 -3
- package/graphql/schema/createSingularResolvers.js.map +1 -1
- package/graphql/schema/createSingularSDL.d.ts +3 -2
- package/graphql/schema/createSingularSDL.js +5 -4
- package/graphql/schema/createSingularSDL.js.map +1 -1
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +9 -7
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.d.ts +8 -0
- package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js +13 -0
- package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js.map +1 -0
- package/graphql/schema/schemaPlugins.js +14 -17
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/index.d.ts +3 -5
- package/index.js +4 -7
- package/index.js.map +1 -1
- package/package.json +36 -32
- package/plugins/CmsModelPlugin.js +19 -4
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/plugins/index.d.ts +0 -2
- package/plugins/index.js +0 -2
- package/plugins/index.js.map +1 -1
- package/types/context.d.ts +5 -5
- package/types/context.js.map +1 -1
- package/types/fields/objectField.d.ts +2 -0
- package/types/fields/objectField.js.map +1 -1
- package/types/model.d.ts +39 -3
- package/types/model.js.map +1 -1
- package/types/modelField.d.ts +47 -15
- package/types/modelField.js.map +1 -1
- package/types/plugins.d.ts +1 -305
- package/types/plugins.js.map +1 -1
- package/types/types.d.ts +28 -61
- package/types/types.js +0 -4
- package/types/types.js.map +1 -1
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.d.ts +3 -2
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +3 -3
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.d.ts +4 -3
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +3 -3
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
- package/utils/converters/ConverterCollection.d.ts +2 -0
- package/utils/converters/ConverterCollection.js +3 -2
- package/utils/converters/ConverterCollection.js.map +1 -1
- package/utils/converters/types.js.map +1 -1
- package/utils/converters/valueKeyFromStorageConverter.d.ts +2 -0
- package/utils/converters/valueKeyFromStorageConverter.js +4 -2
- package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.d.ts +2 -3
- package/utils/converters/valueKeyStorageConverter.js +7 -3
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/converters/valueKeyToStorageConverter.d.ts +2 -0
- package/utils/converters/valueKeyToStorageConverter.js +4 -2
- package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
- package/utils/createModelField.js +10 -8
- package/utils/createModelField.js.map +1 -1
- package/utils/createTypeFromFields.d.ts +3 -2
- package/utils/createTypeFromFields.js +3 -3
- package/utils/createTypeFromFields.js.map +1 -1
- package/utils/entryStorage.d.ts +8 -15
- package/utils/entryStorage.js +31 -59
- package/utils/entryStorage.js.map +1 -1
- package/utils/getBaseFieldType.js +3 -0
- package/utils/getBaseFieldType.js.map +1 -1
- package/utils/getSchemaFromFieldPlugins.d.ts +3 -2
- package/utils/getSchemaFromFieldPlugins.js +5 -9
- package/utils/getSchemaFromFieldPlugins.js.map +1 -1
- package/utils/renderFields.d.ts +4 -3
- package/utils/renderFields.js +14 -9
- package/utils/renderFields.js.map +1 -1
- package/utils/renderGetFilterFields.d.ts +3 -2
- package/utils/renderGetFilterFields.js +2 -2
- package/utils/renderGetFilterFields.js.map +1 -1
- package/utils/renderInputFields.d.ts +4 -3
- package/utils/renderInputFields.js +5 -11
- package/utils/renderInputFields.js.map +1 -1
- package/utils/renderListFilterFields.d.ts +3 -2
- package/utils/renderListFilterFields.js +5 -3
- package/utils/renderListFilterFields.js.map +1 -1
- package/utils/renderSortEnum.d.ts +4 -4
- package/utils/renderSortEnum.js +11 -11
- package/utils/renderSortEnum.js.map +1 -1
- package/utils/toSlug.js +1 -1
- package/utils/toSlug.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/state.d.ts +0 -10
- package/crud/contentEntry/entryDataFactories/state.js +0 -16
- package/crud/contentEntry/entryDataFactories/state.js.map +0 -1
- package/crud/contentModel/validateModel.d.ts +0 -9
- package/crud/contentModel/validateModel.js +0 -21
- package/crud/contentModel/validateModel.js.map +0 -1
- package/crud/contentModel/validateModelFields.d.ts +0 -9
- package/crud/contentModel/validateModelFields.js +0 -267
- package/crud/contentModel/validateModelFields.js.map +0 -1
- package/features/modelBuilder/fields/validators.js +0 -3
- package/features/modelBuilder/fields/validators.js.map +0 -1
- package/graphql/schema/createFieldTypePluginRecords.d.ts +0 -3
- package/graphql/schema/createFieldTypePluginRecords.js +0 -8
- package/graphql/schema/createFieldTypePluginRecords.js.map +0 -1
- package/graphqlFields/boolean.d.ts +0 -2
- package/graphqlFields/boolean.js +0 -52
- package/graphqlFields/boolean.js.map +0 -1
- package/graphqlFields/datetime.d.ts +0 -2
- package/graphqlFields/datetime.js +0 -71
- package/graphqlFields/datetime.js.map +0 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +0 -2
- package/graphqlFields/dynamicZone/dynamicZoneField.js +0 -313
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +0 -1
- package/graphqlFields/dynamicZone/index.d.ts +0 -1
- package/graphqlFields/dynamicZone/index.js +0 -3
- package/graphqlFields/dynamicZone/index.js.map +0 -1
- package/graphqlFields/file.d.ts +0 -2
- package/graphqlFields/file.js +0 -37
- package/graphqlFields/file.js.map +0 -1
- package/graphqlFields/helpers.js +0 -20
- package/graphqlFields/helpers.js.map +0 -1
- package/graphqlFields/index.d.ts +0 -2
- package/graphqlFields/index.js +0 -15
- package/graphqlFields/index.js.map +0 -1
- package/graphqlFields/json.d.ts +0 -2
- package/graphqlFields/json.js +0 -42
- package/graphqlFields/json.js.map +0 -1
- package/graphqlFields/longText.d.ts +0 -2
- package/graphqlFields/longText.js +0 -57
- package/graphqlFields/longText.js.map +0 -1
- package/graphqlFields/number.d.ts +0 -2
- package/graphqlFields/number.js +0 -63
- package/graphqlFields/number.js.map +0 -1
- package/graphqlFields/object.d.ts +0 -2
- package/graphqlFields/object.js +0 -245
- package/graphqlFields/object.js.map +0 -1
- package/graphqlFields/ref.d.ts +0 -2
- package/graphqlFields/ref.js +0 -286
- package/graphqlFields/ref.js.map +0 -1
- package/graphqlFields/richText/richTextResolver.js.map +0 -1
- package/graphqlFields/richText.d.ts +0 -2
- package/graphqlFields/richText.js +0 -48
- package/graphqlFields/richText.js.map +0 -1
- package/graphqlFields/searchableJson.d.ts +0 -2
- package/graphqlFields/searchableJson.js +0 -53
- package/graphqlFields/searchableJson.js.map +0 -1
- package/graphqlFields/text.d.ts +0 -2
- package/graphqlFields/text.js +0 -59
- package/graphqlFields/text.js.map +0 -1
- package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +0 -20
- package/plugins/CmsGraphQLSchemaSorterPlugin.js +0 -19
- package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +0 -1
- package/plugins/StorageTransformPlugin.d.ts +0 -35
- package/plugins/StorageTransformPlugin.js +0 -26
- package/plugins/StorageTransformPlugin.js.map +0 -1
- package/storage/date.d.ts +0 -3
- package/storage/date.js +0 -110
- package/storage/date.js.map +0 -1
- package/storage/default.d.ts +0 -2
- package/storage/default.js +0 -19
- package/storage/default.js.map +0 -1
- package/storage/dynamicZone.d.ts +0 -2
- package/storage/dynamicZone.js +0 -149
- package/storage/dynamicZone.js.map +0 -1
- package/storage/index.d.ts +0 -1
- package/storage/index.js +0 -13
- package/storage/index.js.map +0 -1
- package/storage/json.d.ts +0 -2
- package/storage/json.js +0 -49
- package/storage/json.js.map +0 -1
- package/storage/object.d.ts +0 -2
- package/storage/object.js +0 -104
- package/storage/object.js.map +0 -1
- package/utils/contentEntryTraverser/ContentEntryTraverser.js.map +0 -1
- package/validators/dateGte.d.ts +0 -2
- package/validators/dateGte.js +0 -25
- package/validators/dateGte.js.map +0 -1
- package/validators/dateLte.d.ts +0 -2
- package/validators/dateLte.js +0 -25
- package/validators/dateLte.js.map +0 -1
- package/validators/gte.d.ts +0 -2
- package/validators/gte.js +0 -22
- package/validators/gte.js.map +0 -1
- package/validators/in.d.ts +0 -2
- package/validators/in.js +0 -22
- package/validators/in.js.map +0 -1
- package/validators/index.d.ts +0 -1
- package/validators/index.js +0 -16
- package/validators/index.js.map +0 -1
- package/validators/lte.d.ts +0 -2
- package/validators/lte.js +0 -22
- package/validators/lte.js.map +0 -1
- package/validators/maxLength.d.ts +0 -2
- package/validators/maxLength.js +0 -22
- package/validators/maxLength.js.map +0 -1
- package/validators/minLength.d.ts +0 -2
- package/validators/minLength.js +0 -22
- package/validators/minLength.js.map +0 -1
- package/validators/pattern.d.ts +0 -2
- package/validators/pattern.js +0 -36
- package/validators/pattern.js.map +0 -1
- package/validators/patternPlugins/email.d.ts +0 -2
- package/validators/patternPlugins/email.js +0 -13
- package/validators/patternPlugins/email.js.map +0 -1
- package/validators/patternPlugins/index.d.ts +0 -2
- package/validators/patternPlugins/index.js +0 -11
- package/validators/patternPlugins/index.js.map +0 -1
- package/validators/patternPlugins/lowerCase.d.ts +0 -2
- package/validators/patternPlugins/lowerCase.js +0 -13
- package/validators/patternPlugins/lowerCase.js.map +0 -1
- package/validators/patternPlugins/lowerCaseSpace.d.ts +0 -2
- package/validators/patternPlugins/lowerCaseSpace.js +0 -13
- package/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
- package/validators/patternPlugins/upperCase.d.ts +0 -2
- package/validators/patternPlugins/upperCase.js +0 -13
- package/validators/patternPlugins/upperCase.js.map +0 -1
- package/validators/patternPlugins/upperCaseSpace.d.ts +0 -2
- package/validators/patternPlugins/upperCaseSpace.js +0 -13
- package/validators/patternPlugins/upperCaseSpace.js.map +0 -1
- package/validators/patternPlugins/url.d.ts +0 -2
- package/validators/patternPlugins/url.js +0 -13
- package/validators/patternPlugins/url.js.map +0 -1
- package/validators/required.d.ts +0 -2
- package/validators/required.js +0 -17
- package/validators/required.js.map +0 -1
- package/validators/timeGte.d.ts +0 -2
- package/validators/timeGte.js +0 -20
- package/validators/timeGte.js.map +0 -1
- package/validators/timeLte.d.ts +0 -2
- package/validators/timeLte.js +0 -20
- package/validators/timeLte.js.map +0 -1
- package/validators/unique.d.ts +0 -6
- package/validators/unique.js +0 -57
- package/validators/unique.js.map +0 -1
|
@@ -98,6 +98,25 @@ export class BaseModelBuilder {
|
|
|
98
98
|
}
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
|
+
buildFields() {
|
|
102
|
+
const fields = [];
|
|
103
|
+
const layoutReplacements = new Map();
|
|
104
|
+
for (const [fieldId, builder] of this.fieldBuildersMap) {
|
|
105
|
+
const result = builder.build();
|
|
106
|
+
if (result.type === "layout") {
|
|
107
|
+
layoutReplacements.set(fieldId, result.layoutCell);
|
|
108
|
+
if (result.fields) {
|
|
109
|
+
fields.push(...result.fields);
|
|
110
|
+
}
|
|
111
|
+
} else {
|
|
112
|
+
fields.push(result.field);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return {
|
|
116
|
+
fields,
|
|
117
|
+
layoutReplacements
|
|
118
|
+
};
|
|
119
|
+
}
|
|
101
120
|
|
|
102
121
|
/**
|
|
103
122
|
* Get tags with common defaults applied.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BaseModelBuilder","config","isSingleEntry","fieldBuildersMap","Map","constructor","registry","modelId","id","name","singleEntry","tags","fields","builder","existingFields","fieldBuilders","key","fieldBuilder","Object","entries","fieldId","existingBuilder","get","isExtendMode","_extendMode","type","Error","mergeFieldOperations","set","existing","extension","existingFieldMap","extensionFieldMap","nestedKey","nestedBuilder","existingLayoutBuilder","layoutBuilder","extensionLayoutBuilder","snapshot","getSnapshot","layout","length","modifiers","setLayout","modifier","addModifier","getTags","tagsSet","Set","add","Array","from"],"sources":["BaseModelBuilder.ts"],"sourcesContent":["import { FieldBuilder } from \"~/features/modelBuilder/index.js\";\nimport { CmsModelPlugin } from \"~/plugins/index.js\";\nimport { FieldBuilderRegistry } from \"../abstractions.js\";\n\n/**\n * Base class for all model builders, containing shared logic.\n * Concrete builders (PrivateModelBuilder, PublicModelBuilder) extend this.\n */\nexport abstract class BaseModelBuilder<TBuild = CmsModelPlugin> {\n protected config: {\n modelId?: string;\n name?: string;\n tags?: string[];\n } = {};\n\n protected isSingleEntry = false;\n protected fieldBuildersMap = new Map<string, FieldBuilder<any>>();\n\n public constructor(protected registry: FieldBuilderRegistry.Interface) {}\n\n modelId(id: string): this {\n this.config.modelId = id;\n return this;\n }\n\n name(name: string): this {\n this.config.name = name;\n return this;\n }\n\n singleEntry(): this {\n this.isSingleEntry = true;\n return this;\n }\n\n tags(tags: string[]): this {\n this.config.tags = tags;\n return this;\n }\n\n fields(\n builder: (registry: FieldBuilderRegistry.Interface) => Record<string, FieldBuilder<any>>\n ): this {\n // Pass existing fields to registry so it can return them when extending\n (this.registry as any).existingFields = this.fieldBuildersMap;\n\n const fieldBuilders = builder(this.registry);\n\n for (const [key, fieldBuilder] of Object.entries(fieldBuilders)) {\n // Set the fieldId from the object key\n fieldBuilder.fieldId(key);\n\n const existingBuilder = this.fieldBuildersMap.get(key);\n const isExtendMode = (fieldBuilder as any)._extendMode;\n\n if (isExtendMode && existingBuilder) {\n // Extension mode - validate type and merge operations\n if (existingBuilder.type !== fieldBuilder.type) {\n throw new Error(\n `Cannot extend field \"${key}\": type mismatch. Expected \"${existingBuilder.type}\", got \"${fieldBuilder.type}\".`\n );\n }\n // Merge operations from temporary new builder into existing builder\n this.mergeFieldOperations(key, existingBuilder, fieldBuilder);\n } else if (existingBuilder && !isExtendMode) {\n // Replacement mode - validate type\n if (existingBuilder.type !== fieldBuilder.type) {\n throw new Error(\n `Cannot redefine field \"${key}\": type mismatch. Expected \"${existingBuilder.type}\", got \"${fieldBuilder.type}\".`\n );\n }\n // Replace with new builder\n this.fieldBuildersMap.set(key, fieldBuilder);\n } else if (!existingBuilder && !isExtendMode) {\n // New field - store builder\n this.fieldBuildersMap.set(key, fieldBuilder);\n } else {\n // isExtendMode but no existingBuilder - this is an error\n throw new Error(\n `Cannot extend field \"${key}\": field does not exist. Use .extend() only for existing fields.`\n );\n }\n }\n\n return this;\n }\n\n /**\n * Merge field operations from extension builder into existing builder.\n * This handles the case where multiple fields of the same type exist,\n * and we need to transfer operations from the temporary new builder\n * to the existing builder.\n * @internal\n */\n private mergeFieldOperations(\n fieldId: string,\n existing: FieldBuilder<any>,\n extension: FieldBuilder<any>\n ): void {\n // For object fields, merge nested fields and layout operations\n if (existing.type === \"object\" && extension.type === \"object\") {\n const existingFieldMap = (existing as any).fieldBuildersMap;\n const extensionFieldMap = (extension as any).fieldBuildersMap;\n\n // Merge nested field builders\n if (extensionFieldMap) {\n for (const [nestedKey, nestedBuilder] of extensionFieldMap.entries()) {\n existingFieldMap.set(nestedKey, nestedBuilder);\n }\n }\n\n // Merge layout operations\n const existingLayoutBuilder = (existing as any).layoutBuilder;\n const extensionLayoutBuilder = (extension as any).layoutBuilder;\n\n if (extensionLayoutBuilder) {\n const snapshot = extensionLayoutBuilder.getSnapshot();\n\n // If extension called setLayout() with an array, apply it to existing\n // We detect this by checking if there's a layout but no modifiers\n if (snapshot.layout.length > 0 && snapshot.modifiers.length === 0) {\n existingLayoutBuilder.setLayout(snapshot.layout);\n }\n\n // Apply all modifiers from extension to existing\n for (const modifier of snapshot.modifiers) {\n existingLayoutBuilder.addModifier(modifier);\n }\n }\n }\n }\n\n /**\n * Get tags with common defaults applied.\n * Always includes \"type:model\" and optionally \"singleEntry\".\n */\n protected getTags(): string[] {\n const tagsSet = new Set(this.config.tags || []);\n tagsSet.add(\"type:model\");\n if (this.isSingleEntry) {\n tagsSet.add(\"singleEntry\");\n }\n return Array.from(tagsSet);\n }\n\n /**\n * Build the final model configuration.\n * Must be implemented by concrete builders.\n */\n abstract build(): TBuild;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["BaseModelBuilder","config","isSingleEntry","fieldBuildersMap","Map","constructor","registry","modelId","id","name","singleEntry","tags","fields","builder","existingFields","fieldBuilders","key","fieldBuilder","Object","entries","fieldId","existingBuilder","get","isExtendMode","_extendMode","type","Error","mergeFieldOperations","set","existing","extension","existingFieldMap","extensionFieldMap","nestedKey","nestedBuilder","existingLayoutBuilder","layoutBuilder","extensionLayoutBuilder","snapshot","getSnapshot","layout","length","modifiers","setLayout","modifier","addModifier","buildFields","layoutReplacements","result","build","layoutCell","push","field","getTags","tagsSet","Set","add","Array","from"],"sources":["BaseModelBuilder.ts"],"sourcesContent":["import { BaseFieldBuilder } from \"~/features/modelBuilder/index.js\";\nimport { CmsModelPlugin } from \"~/plugins/CmsModelPlugin.js\";\nimport { FieldBuilderRegistry } from \"../abstractions.js\";\nimport type { CmsModelField, CmsModelLayoutCell } from \"~/types/index.js\";\n\n/**\n * Base class for all model builders, containing shared logic.\n * Concrete builders (PrivateModelBuilder, PublicModelBuilder) extend this.\n */\nexport abstract class BaseModelBuilder<TBuild = CmsModelPlugin> {\n protected config: {\n modelId?: string;\n name?: string;\n tags?: string[];\n } = {};\n\n protected isSingleEntry = false;\n protected fieldBuildersMap = new Map<string, BaseFieldBuilder<any>>();\n\n public constructor(protected registry: FieldBuilderRegistry.Interface) {}\n\n modelId(id: string): this {\n this.config.modelId = id;\n return this;\n }\n\n name(name: string): this {\n this.config.name = name;\n return this;\n }\n\n singleEntry(): this {\n this.isSingleEntry = true;\n return this;\n }\n\n tags(tags: string[]): this {\n this.config.tags = tags;\n return this;\n }\n\n fields(\n builder: (registry: FieldBuilderRegistry.Interface) => Record<string, BaseFieldBuilder<any>>\n ): this {\n // Pass existing fields to registry so it can return them when extending\n (this.registry as any).existingFields = this.fieldBuildersMap;\n\n const fieldBuilders = builder(this.registry);\n\n for (const [key, fieldBuilder] of Object.entries(fieldBuilders)) {\n // Set the fieldId from the object key\n fieldBuilder.fieldId(key);\n\n const existingBuilder = this.fieldBuildersMap.get(key);\n const isExtendMode = (fieldBuilder as any)._extendMode;\n\n if (isExtendMode && existingBuilder) {\n // Extension mode - validate type and merge operations\n if (existingBuilder.type !== fieldBuilder.type) {\n throw new Error(\n `Cannot extend field \"${key}\": type mismatch. Expected \"${existingBuilder.type}\", got \"${fieldBuilder.type}\".`\n );\n }\n // Merge operations from temporary new builder into existing builder\n this.mergeFieldOperations(key, existingBuilder, fieldBuilder);\n } else if (existingBuilder && !isExtendMode) {\n // Replacement mode - validate type\n if (existingBuilder.type !== fieldBuilder.type) {\n throw new Error(\n `Cannot redefine field \"${key}\": type mismatch. Expected \"${existingBuilder.type}\", got \"${fieldBuilder.type}\".`\n );\n }\n // Replace with new builder\n this.fieldBuildersMap.set(key, fieldBuilder);\n } else if (!existingBuilder && !isExtendMode) {\n // New field - store builder\n this.fieldBuildersMap.set(key, fieldBuilder);\n } else {\n // isExtendMode but no existingBuilder - this is an error\n throw new Error(\n `Cannot extend field \"${key}\": field does not exist. Use .extend() only for existing fields.`\n );\n }\n }\n\n return this;\n }\n\n /**\n * Merge field operations from extension builder into existing builder.\n * This handles the case where multiple fields of the same type exist,\n * and we need to transfer operations from the temporary new builder\n * to the existing builder.\n * @internal\n */\n private mergeFieldOperations(\n fieldId: string,\n existing: BaseFieldBuilder<any>,\n extension: BaseFieldBuilder<any>\n ): void {\n // For object fields, merge nested fields and layout operations\n if (existing.type === \"object\" && extension.type === \"object\") {\n const existingFieldMap = (existing as any).fieldBuildersMap;\n const extensionFieldMap = (extension as any).fieldBuildersMap;\n\n // Merge nested field builders\n if (extensionFieldMap) {\n for (const [nestedKey, nestedBuilder] of extensionFieldMap.entries()) {\n existingFieldMap.set(nestedKey, nestedBuilder);\n }\n }\n\n // Merge layout operations\n const existingLayoutBuilder = (existing as any).layoutBuilder;\n const extensionLayoutBuilder = (extension as any).layoutBuilder;\n\n if (extensionLayoutBuilder) {\n const snapshot = extensionLayoutBuilder.getSnapshot();\n\n // If extension called setLayout() with an array, apply it to existing\n // We detect this by checking if there's a layout but no modifiers\n if (snapshot.layout.length > 0 && snapshot.modifiers.length === 0) {\n existingLayoutBuilder.setLayout(snapshot.layout);\n }\n\n // Apply all modifiers from extension to existing\n for (const modifier of snapshot.modifiers) {\n existingLayoutBuilder.addModifier(modifier);\n }\n }\n }\n }\n\n protected buildFields(): {\n fields: CmsModelField[];\n layoutReplacements: Map<string, CmsModelLayoutCell>;\n } {\n const fields: CmsModelField[] = [];\n const layoutReplacements = new Map<string, CmsModelLayoutCell>();\n\n for (const [fieldId, builder] of this.fieldBuildersMap) {\n const result = builder.build();\n if (result.type === \"layout\") {\n layoutReplacements.set(fieldId, result.layoutCell);\n if (result.fields) {\n fields.push(...result.fields);\n }\n } else {\n fields.push(result.field);\n }\n }\n\n return { fields, layoutReplacements };\n }\n\n /**\n * Get tags with common defaults applied.\n * Always includes \"type:model\" and optionally \"singleEntry\".\n */\n protected getTags(): string[] {\n const tagsSet = new Set(this.config.tags || []);\n tagsSet.add(\"type:model\");\n if (this.isSingleEntry) {\n tagsSet.add(\"singleEntry\");\n }\n return Array.from(tagsSet);\n }\n\n /**\n * Build the final model configuration.\n * Must be implemented by concrete builders.\n */\n abstract build(): TBuild;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,8 +12,10 @@ export class PrivateModelBuilder extends BaseModelBuilder {
|
|
|
12
12
|
throw new Error("fields are required");
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
// Build all fields from field builders
|
|
16
|
-
const
|
|
15
|
+
// Build all fields from field builders (layout replacements ignored for private models)
|
|
16
|
+
const {
|
|
17
|
+
fields
|
|
18
|
+
} = this.buildFields();
|
|
17
19
|
return createPrivateModelPlugin({
|
|
18
20
|
modelId: this.config.modelId,
|
|
19
21
|
name: this.config.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createPrivateModelPlugin","BaseModelBuilder","PrivateModelBuilder","build","config","modelId","Error","name","fieldBuildersMap","size","fields","
|
|
1
|
+
{"version":3,"names":["createPrivateModelPlugin","BaseModelBuilder","PrivateModelBuilder","build","config","modelId","Error","name","fieldBuildersMap","size","fields","buildFields","authorization","noValidate","tags","getTags"],"sources":["PrivateModelBuilder.ts"],"sourcesContent":["import { createPrivateModelPlugin } from \"~/plugins/CmsModelPlugin.js\";\nimport { BaseModelBuilder } from \"./BaseModelBuilder.js\";\n\nexport class PrivateModelBuilder extends BaseModelBuilder {\n public build() {\n if (!this.config.modelId) {\n throw new Error(\"modelId is required\");\n }\n if (!this.config.name) {\n throw new Error(\"name is required\");\n }\n if (this.fieldBuildersMap.size === 0) {\n throw new Error(\"fields are required\");\n }\n\n // Build all fields from field builders (layout replacements ignored for private models)\n const { fields } = this.buildFields();\n\n return createPrivateModelPlugin({\n modelId: this.config.modelId,\n name: this.config.name,\n fields,\n authorization: false,\n noValidate: true,\n tags: this.getTags()\n });\n }\n}\n"],"mappings":"AAAA,SAASA,wBAAwB;AACjC,SAASC,gBAAgB;AAEzB,OAAO,MAAMC,mBAAmB,SAASD,gBAAgB,CAAC;EAC/CE,KAAKA,CAAA,EAAG;IACX,IAAI,CAAC,IAAI,CAACC,MAAM,CAACC,OAAO,EAAE;MACtB,MAAM,IAAIC,KAAK,CAAC,qBAAqB,CAAC;IAC1C;IACA,IAAI,CAAC,IAAI,CAACF,MAAM,CAACG,IAAI,EAAE;MACnB,MAAM,IAAID,KAAK,CAAC,kBAAkB,CAAC;IACvC;IACA,IAAI,IAAI,CAACE,gBAAgB,CAACC,IAAI,KAAK,CAAC,EAAE;MAClC,MAAM,IAAIH,KAAK,CAAC,qBAAqB,CAAC;IAC1C;;IAEA;IACA,MAAM;MAAEI;IAAO,CAAC,GAAG,IAAI,CAACC,WAAW,CAAC,CAAC;IAErC,OAAOX,wBAAwB,CAAC;MAC5BK,OAAO,EAAE,IAAI,CAACD,MAAM,CAACC,OAAO;MAC5BE,IAAI,EAAE,IAAI,CAACH,MAAM,CAACG,IAAI;MACtBG,MAAM;MACNE,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,IAAI;MAChBC,IAAI,EAAE,IAAI,CAACC,OAAO,CAAC;IACvB,CAAC,CAAC;EACN;AACJ","ignoreList":[]}
|
|
@@ -81,14 +81,26 @@ export class PublicModelBuilder extends BaseModelBuilder {
|
|
|
81
81
|
throw new Error("name is required");
|
|
82
82
|
}
|
|
83
83
|
if (this.fieldBuildersMap.size === 0) {
|
|
84
|
-
|
|
84
|
+
this.fields(builder => ({
|
|
85
|
+
alert: builder.uiAlert().label("No fields defined in the code content model. Please ensure you have the fields property correctly defined."),
|
|
86
|
+
emptyPlaceholder: builder.text().label("Empty").renderer("hidden")
|
|
87
|
+
}));
|
|
88
|
+
this.titleFieldId("emptyPlaceholder");
|
|
89
|
+
this.layoutBuilder.setLayout([["alert"], ["emptyPlaceholder"]]);
|
|
85
90
|
}
|
|
86
91
|
if (!this.publicConfig.group) {
|
|
87
92
|
throw new Error("group is required");
|
|
88
93
|
}
|
|
89
94
|
|
|
90
|
-
// Build all fields from field builders
|
|
91
|
-
const
|
|
95
|
+
// Build all fields from field builders, separating data and layout results
|
|
96
|
+
const {
|
|
97
|
+
fields,
|
|
98
|
+
layoutReplacements
|
|
99
|
+
} = this.buildFields();
|
|
100
|
+
|
|
101
|
+
// Build and apply layout replacements (tabs → rich descriptors)
|
|
102
|
+
const rawLayout = this.layoutBuilder.build();
|
|
103
|
+
const layout = rawLayout.map(row => row.map(cell => layoutReplacements.get(cell) ?? cell));
|
|
92
104
|
return createModelPlugin({
|
|
93
105
|
modelId: this.config.modelId,
|
|
94
106
|
name: this.config.name,
|
|
@@ -100,7 +112,7 @@ export class PublicModelBuilder extends BaseModelBuilder {
|
|
|
100
112
|
titleFieldId: this.publicConfig.titleFieldId ?? this.findFirstFieldId(fields, "text"),
|
|
101
113
|
descriptionFieldId: this.publicConfig.descriptionFieldId,
|
|
102
114
|
imageFieldId: this.publicConfig.imageFieldId,
|
|
103
|
-
layout
|
|
115
|
+
layout,
|
|
104
116
|
fields,
|
|
105
117
|
tags: this.getTags()
|
|
106
118
|
}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["upperFirst","camelCase","pluralize","createModelPlugin","BaseModelBuilder","LayoutBuilder","createApiName","name","createPluralApiName","Icon","from","icon","type","PublicModelBuilder","publicConfig","singularApiName","pluralApiName","group","slug","description","titleFieldId","fieldId","descriptionFieldId","imageFieldId","constructor","registry","layoutBuilder","layout","layoutOrBuilder","Array","isArray","setLayout","addModifier","build","config","modelId","Error","fieldBuildersMap","size","fields","values","map","builder","findFirstFieldId","tags","getTags","validateLayout","field","find"],"sources":["PublicModelBuilder.ts"],"sourcesContent":["import upperFirst from \"lodash/upperFirst.js\";\nimport camelCase from \"lodash/camelCase.js\";\nimport pluralize from \"pluralize\";\nimport { createModelPlugin } from \"~/plugins/CmsModelPlugin.js\";\nimport { BaseModelBuilder } from \"./BaseModelBuilder.js\";\nimport type { CmsIcon, CmsModelField } from \"~/types/index.js\";\nimport { LayoutBuilder } from \"../LayoutBuilder.js\";\n\nconst createApiName = (name: string) => {\n return upperFirst(camelCase(name));\n};\n\nconst createPluralApiName = (name: string) => {\n return pluralize(createApiName(name));\n};\n\nclass Icon {\n static from(icon: string | CmsIcon): CmsIcon {\n if (typeof icon === \"string\") {\n return {\n type: \"icon\",\n name: icon\n };\n }\n\n return icon;\n }\n}\n\nexport class PublicModelBuilder extends BaseModelBuilder {\n private publicConfig: {\n singularApiName?: string;\n pluralApiName?: string;\n group?: string;\n icon?: CmsIcon;\n description?: string;\n titleFieldId?: string;\n descriptionFieldId?: string;\n imageFieldId?: string;\n } = {};\n private layoutBuilder: LayoutBuilder;\n\n singularApiName(name: string): this {\n this.publicConfig.singularApiName = name;\n return this;\n }\n\n pluralApiName(name: string): this {\n this.publicConfig.pluralApiName = name;\n return this;\n }\n\n group(slug: string): this {\n this.publicConfig.group = slug;\n return this;\n }\n\n icon(icon: string | CmsIcon): this {\n this.publicConfig.icon = Icon.from(icon);\n return this;\n }\n\n description(description: string): this {\n this.publicConfig.description = description;\n return this;\n }\n\n titleFieldId(fieldId: string): this {\n this.publicConfig.titleFieldId = fieldId;\n return this;\n }\n\n descriptionFieldId(fieldId: string): this {\n this.publicConfig.descriptionFieldId = fieldId;\n return this;\n }\n\n imageFieldId(fieldId: string): this {\n this.publicConfig.imageFieldId = fieldId;\n return this;\n }\n /**\n * It just creates problems if we import the FieldBuilderRegistry.\n * TODO: figure out\n */\n constructor(registry: any) {\n super(registry);\n this.layoutBuilder = new LayoutBuilder();\n }\n\n layout(layoutOrBuilder: string[][] | ((builder: LayoutBuilder) => void)): this {\n if (Array.isArray(layoutOrBuilder)) {\n // Replace layout with array\n this.layoutBuilder.setLayout(layoutOrBuilder);\n } else {\n // Queue the modifier callback\n this.layoutBuilder.addModifier(layoutOrBuilder);\n }\n return this;\n }\n\n build() {\n if (!this.config.modelId) {\n throw new Error(\"modelId is required\");\n }\n if (!this.config.name) {\n throw new Error(\"name is required\");\n }\n if (this.fieldBuildersMap.size === 0) {\n throw new Error(\"fields are required\");\n }\n if (!this.publicConfig.group) {\n throw new Error(\"group is required\");\n }\n\n // Build all fields from field builders\n const fields = Array.from(this.fieldBuildersMap.values()).map(builder => builder.build());\n\n return createModelPlugin(\n {\n modelId: this.config.modelId,\n name: this.config.name,\n singularApiName:\n this.publicConfig.singularApiName || createApiName(this.config.name),\n pluralApiName:\n this.publicConfig.pluralApiName || createPluralApiName(this.config.name),\n group: this.publicConfig.group,\n icon: this.publicConfig.icon ?? null,\n description: this.publicConfig.description || null,\n titleFieldId:\n this.publicConfig.titleFieldId ?? this.findFirstFieldId(fields, \"text\"),\n descriptionFieldId: this.publicConfig.descriptionFieldId,\n imageFieldId: this.publicConfig.imageFieldId,\n layout: this.layoutBuilder.build(),\n fields,\n tags: this.getTags()\n },\n { validateLayout: false }\n );\n }\n\n private findFirstFieldId(fields: CmsModelField[], type: string): string {\n for (const field of fields) {\n if (field.type === type) {\n return field.fieldId;\n }\n }\n return fields.find(field => field.type === \"text\")?.fieldId || \"\";\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["upperFirst","camelCase","pluralize","createModelPlugin","BaseModelBuilder","LayoutBuilder","createApiName","name","createPluralApiName","Icon","from","icon","type","PublicModelBuilder","publicConfig","singularApiName","pluralApiName","group","slug","description","titleFieldId","fieldId","descriptionFieldId","imageFieldId","constructor","registry","layoutBuilder","layout","layoutOrBuilder","Array","isArray","setLayout","addModifier","build","config","modelId","Error","fieldBuildersMap","size","fields","builder","alert","uiAlert","label","emptyPlaceholder","text","renderer","layoutReplacements","buildFields","rawLayout","map","row","cell","get","findFirstFieldId","tags","getTags","validateLayout","field","find"],"sources":["PublicModelBuilder.ts"],"sourcesContent":["import upperFirst from \"lodash/upperFirst.js\";\nimport camelCase from \"lodash/camelCase.js\";\nimport pluralize from \"pluralize\";\nimport { createModelPlugin } from \"~/plugins/CmsModelPlugin.js\";\nimport { BaseModelBuilder } from \"./BaseModelBuilder.js\";\nimport type { CmsIcon, CmsModelField } from \"~/types/index.js\";\nimport { LayoutBuilder } from \"../LayoutBuilder.js\";\n\nconst createApiName = (name: string) => {\n return upperFirst(camelCase(name));\n};\n\nconst createPluralApiName = (name: string) => {\n return pluralize(createApiName(name));\n};\n\nclass Icon {\n static from(icon: string | CmsIcon): CmsIcon {\n if (typeof icon === \"string\") {\n return {\n type: \"icon\",\n name: icon\n };\n }\n\n return icon;\n }\n}\n\nexport class PublicModelBuilder extends BaseModelBuilder {\n private publicConfig: {\n singularApiName?: string;\n pluralApiName?: string;\n group?: string;\n icon?: CmsIcon;\n description?: string;\n titleFieldId?: string;\n descriptionFieldId?: string;\n imageFieldId?: string;\n } = {};\n private layoutBuilder: LayoutBuilder;\n\n singularApiName(name: string): this {\n this.publicConfig.singularApiName = name;\n return this;\n }\n\n pluralApiName(name: string): this {\n this.publicConfig.pluralApiName = name;\n return this;\n }\n\n group(slug: string): this {\n this.publicConfig.group = slug;\n return this;\n }\n\n icon(icon: string | CmsIcon): this {\n this.publicConfig.icon = Icon.from(icon);\n return this;\n }\n\n description(description: string): this {\n this.publicConfig.description = description;\n return this;\n }\n\n titleFieldId(fieldId: string): this {\n this.publicConfig.titleFieldId = fieldId;\n return this;\n }\n\n descriptionFieldId(fieldId: string): this {\n this.publicConfig.descriptionFieldId = fieldId;\n return this;\n }\n\n imageFieldId(fieldId: string): this {\n this.publicConfig.imageFieldId = fieldId;\n return this;\n }\n /**\n * It just creates problems if we import the FieldBuilderRegistry.\n * TODO: figure out\n */\n constructor(registry: any) {\n super(registry);\n this.layoutBuilder = new LayoutBuilder();\n }\n\n layout(layoutOrBuilder: string[][] | ((builder: LayoutBuilder) => void)): this {\n if (Array.isArray(layoutOrBuilder)) {\n // Replace layout with array\n this.layoutBuilder.setLayout(layoutOrBuilder);\n } else {\n // Queue the modifier callback\n this.layoutBuilder.addModifier(layoutOrBuilder);\n }\n return this;\n }\n\n build() {\n if (!this.config.modelId) {\n throw new Error(\"modelId is required\");\n }\n if (!this.config.name) {\n throw new Error(\"name is required\");\n }\n if (this.fieldBuildersMap.size === 0) {\n this.fields(builder => ({\n alert: builder\n .uiAlert()\n .label(\n \"No fields defined in the code content model. Please ensure you have the fields property correctly defined.\"\n ),\n emptyPlaceholder: builder.text().label(\"Empty\").renderer(\"hidden\")\n }));\n this.titleFieldId(\"emptyPlaceholder\");\n this.layoutBuilder.setLayout([[\"alert\"], [\"emptyPlaceholder\"]]);\n }\n if (!this.publicConfig.group) {\n throw new Error(\"group is required\");\n }\n\n // Build all fields from field builders, separating data and layout results\n const { fields, layoutReplacements } = this.buildFields();\n\n // Build and apply layout replacements (tabs → rich descriptors)\n const rawLayout = this.layoutBuilder.build();\n const layout = rawLayout.map(row => row.map(cell => layoutReplacements.get(cell) ?? cell));\n\n return createModelPlugin(\n {\n modelId: this.config.modelId,\n name: this.config.name,\n singularApiName:\n this.publicConfig.singularApiName || createApiName(this.config.name),\n pluralApiName:\n this.publicConfig.pluralApiName || createPluralApiName(this.config.name),\n group: this.publicConfig.group,\n icon: this.publicConfig.icon ?? null,\n description: this.publicConfig.description || null,\n titleFieldId:\n this.publicConfig.titleFieldId ?? this.findFirstFieldId(fields, \"text\"),\n descriptionFieldId: this.publicConfig.descriptionFieldId,\n imageFieldId: this.publicConfig.imageFieldId,\n layout,\n fields,\n tags: this.getTags()\n },\n { validateLayout: false }\n );\n }\n\n private findFirstFieldId(fields: CmsModelField[], type: string): string {\n for (const field of fields) {\n if (field.type === type) {\n return field.fieldId;\n }\n }\n return fields.find(field => field.type === \"text\")?.fieldId || \"\";\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import type { HeadlessCmsStorageOperations as StorageOps } from "../../types/types.js";
|
|
1
|
+
import type { CmsContext as CmsCtx, HeadlessCmsStorageOperations as StorageOps } from "../../types/types.js";
|
|
2
2
|
import type { AccessControl as AccessControlClass } from "../../crud/AccessControl/AccessControl.js";
|
|
3
|
-
import type { CmsContext as CmsCtx } from "../../types/types.js";
|
|
4
3
|
/**
|
|
5
4
|
* StorageOperations abstraction for legacy storage operations.
|
|
6
5
|
* The legacy implementation will be registered using container.registerInstance.
|
|
@@ -9,6 +8,14 @@ export declare const StorageOperations: import("@webiny/di").Abstraction<Storage
|
|
|
9
8
|
export declare namespace StorageOperations {
|
|
10
9
|
type Interface = StorageOps;
|
|
11
10
|
}
|
|
11
|
+
export interface IHeadlessCmsStorageOperationsFactory<T> {
|
|
12
|
+
create(context: T): Promise<StorageOps>;
|
|
13
|
+
}
|
|
14
|
+
export declare const StorageOperationsFactory: import("@webiny/di").Abstraction<IHeadlessCmsStorageOperationsFactory<any>>;
|
|
15
|
+
export declare namespace StorageOperationsFactory {
|
|
16
|
+
type Interface<T extends CmsCtx = CmsCtx> = IHeadlessCmsStorageOperationsFactory<T>;
|
|
17
|
+
type Result = StorageOps;
|
|
18
|
+
}
|
|
12
19
|
/**
|
|
13
20
|
* AccessControl abstraction for legacy access control.
|
|
14
21
|
* The legacy implementation will be registered using container.registerInstance.
|
|
@@ -4,6 +4,7 @@ import { createAbstraction } from "@webiny/feature/api";
|
|
|
4
4
|
* The legacy implementation will be registered using container.registerInstance.
|
|
5
5
|
*/
|
|
6
6
|
export const StorageOperations = createAbstraction("StorageOperations");
|
|
7
|
+
export const StorageOperationsFactory = createAbstraction("Cms/StorageOperationsFactory");
|
|
7
8
|
/**
|
|
8
9
|
* AccessControl abstraction for legacy access control.
|
|
9
10
|
* The legacy implementation will be registered using container.registerInstance.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","StorageOperations","AccessControl","CmsContext"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { HeadlessCmsStorageOperations as StorageOps
|
|
1
|
+
{"version":3,"names":["createAbstraction","StorageOperations","StorageOperationsFactory","AccessControl","CmsContext"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type {\n CmsContext as CmsCtx,\n HeadlessCmsStorageOperations as StorageOps\n} from \"~/types/types.js\";\nimport type { AccessControl as AccessControlClass } from \"~/crud/AccessControl/AccessControl.js\";\n\n/**\n * StorageOperations abstraction for legacy storage operations.\n * The legacy implementation will be registered using container.registerInstance.\n */\nexport const StorageOperations = createAbstraction<StorageOps>(\"StorageOperations\");\n\nexport namespace StorageOperations {\n export type Interface = StorageOps;\n}\n\nexport interface IHeadlessCmsStorageOperationsFactory<T> {\n create(context: T): Promise<StorageOps>;\n}\n\nexport const StorageOperationsFactory = createAbstraction<\n IHeadlessCmsStorageOperationsFactory<any>\n>(\"Cms/StorageOperationsFactory\");\n\nexport namespace StorageOperationsFactory {\n export type Interface<T extends CmsCtx = CmsCtx> = IHeadlessCmsStorageOperationsFactory<T>;\n export type Result = StorageOps;\n}\n\n/**\n * AccessControl abstraction for legacy access control.\n * The legacy implementation will be registered using container.registerInstance.\n */\nexport const AccessControl = createAbstraction<AccessControlClass>(\"AccessControl\");\n\nexport namespace AccessControl {\n export type Interface = AccessControlClass;\n}\n\n/**\n * CmsContext abstraction for legacy CMS context.\n * The legacy implementation will be registered using container.registerInstance.\n */\nexport const CmsContext = createAbstraction<CmsCtx>(\"CmsContext\");\n\nexport namespace CmsContext {\n export type Interface = CmsCtx;\n}\n\nexport interface IAccessControl {\n canAccessModel(params: { model: any }): Promise<boolean>;\n canAccessGroup(params: { group: any }): Promise<boolean>;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAOvD;AACA;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGD,iBAAiB,CAAa,mBAAmB,CAAC;AAUnF,OAAO,MAAME,wBAAwB,GAAGF,iBAAiB,CAEvD,8BAA8B,CAAC;AAOjC;AACA;AACA;AACA;AACA,OAAO,MAAMG,aAAa,GAAGH,iBAAiB,CAAqB,eAAe,CAAC;AAMnF;AACA;AACA;AACA;AACA,OAAO,MAAMI,UAAU,GAAGJ,iBAAiB,CAAS,YAAY,CAAC","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ export interface ICmsSortMapperParams {
|
|
|
6
6
|
export interface ICmsSortMapper {
|
|
7
7
|
map(params: ICmsSortMapperParams): CmsEntryListSort | undefined;
|
|
8
8
|
}
|
|
9
|
+
/** Map CMS sort parameters to storage queries. */
|
|
9
10
|
export declare const CmsSortMapper: import("@webiny/di").Abstraction<ICmsSortMapper>;
|
|
10
11
|
export declare namespace CmsSortMapper {
|
|
11
12
|
type Interface = ICmsSortMapper;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","CmsSortMapper"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsEntryListSort, CmsModelField } from \"~/types/index.js\";\n\nexport interface ICmsSortMapperParams {\n fields: Pick<CmsModelField, \"fieldId\">[];\n input: CmsEntryListSort | undefined;\n}\n\nexport interface ICmsSortMapper {\n map(params: ICmsSortMapperParams): CmsEntryListSort | undefined;\n}\n\nexport const CmsSortMapper = createAbstraction<ICmsSortMapper>(\"CmsSortMapper\");\n\nexport namespace CmsSortMapper {\n export type Interface = ICmsSortMapper;\n export type Params = ICmsSortMapperParams;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAYvD,OAAO,MAAMC,aAAa,GAAGD,iBAAiB,CAAiB,eAAe,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createAbstraction","CmsSortMapper"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsEntryListSort, CmsModelField } from \"~/types/index.js\";\n\nexport interface ICmsSortMapperParams {\n fields: Pick<CmsModelField, \"fieldId\">[];\n input: CmsEntryListSort | undefined;\n}\n\nexport interface ICmsSortMapper {\n map(params: ICmsSortMapperParams): CmsEntryListSort | undefined;\n}\n\n/** Map CMS sort parameters to storage queries. */\nexport const CmsSortMapper = createAbstraction<ICmsSortMapper>(\"CmsSortMapper\");\n\nexport namespace CmsSortMapper {\n export type Interface = ICmsSortMapper;\n export type Params = ICmsSortMapperParams;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAYvD;AACA,OAAO,MAAMC,aAAa,GAAGD,iBAAiB,CAAiB,eAAe,CAAC","ignoreList":[]}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
1
|
export type { ICmsSortMapperParams, ICmsSortMapper } from "./abstractions.js";
|
|
2
2
|
export { CmsSortMapper } from "./abstractions.js";
|
|
3
|
-
export declare const CmsSortMapperFeature:
|
|
3
|
+
export declare const CmsSortMapperFeature: {
|
|
4
|
+
name: string;
|
|
5
|
+
register(container: import("@webiny/di").Container): void;
|
|
6
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { StorageTransformRegistry as StorageTransformRegistryAbstraction } from "./abstractions/StorageTransformRegistry.js";
|
|
2
|
+
import { StorageTransform } from "../../features/storage/abstractions/StorageTransform.js";
|
|
3
|
+
import type { CmsModelField } from "../../types/index.js";
|
|
4
|
+
declare class StorageTransformRegistryImpl implements StorageTransformRegistryAbstraction.Interface {
|
|
5
|
+
private readonly transforms;
|
|
6
|
+
constructor(transforms: StorageTransform.Interface[]);
|
|
7
|
+
get<T = any, R = any, F extends CmsModelField = CmsModelField>(fieldType: string): StorageTransform.Interface<T, R, F> | undefined;
|
|
8
|
+
getAll(): StorageTransform.Interface[];
|
|
9
|
+
}
|
|
10
|
+
export declare const StorageTransformRegistry: typeof StorageTransformRegistryImpl & {
|
|
11
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions/StorageTransformRegistry.js").IStorageTransformRegistry>;
|
|
12
|
+
};
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { StorageTransformRegistry as StorageTransformRegistryAbstraction } from "./abstractions/StorageTransformRegistry.js";
|
|
2
|
+
import { StorageTransform } from "./abstractions/StorageTransform.js";
|
|
3
|
+
import { getBaseFieldType } from "../../utils/getBaseFieldType.js";
|
|
4
|
+
class StorageTransformRegistryImpl {
|
|
5
|
+
constructor(transforms) {
|
|
6
|
+
this.transforms = transforms;
|
|
7
|
+
}
|
|
8
|
+
get(fieldType) {
|
|
9
|
+
const baseType = getBaseFieldType({
|
|
10
|
+
type: fieldType
|
|
11
|
+
});
|
|
12
|
+
return this.transforms.find(item => {
|
|
13
|
+
return item.fieldType === baseType;
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
getAll() {
|
|
17
|
+
return this.transforms;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export const StorageTransformRegistry = StorageTransformRegistryAbstraction.createImplementation({
|
|
21
|
+
implementation: StorageTransformRegistryImpl,
|
|
22
|
+
dependencies: [[StorageTransform, {
|
|
23
|
+
multiple: true
|
|
24
|
+
}]]
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=StorageTransformRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StorageTransformRegistry","StorageTransformRegistryAbstraction","StorageTransform","getBaseFieldType","StorageTransformRegistryImpl","constructor","transforms","get","fieldType","baseType","type","find","item","getAll","createImplementation","implementation","dependencies","multiple"],"sources":["StorageTransformRegistry.ts"],"sourcesContent":["import { StorageTransformRegistry as StorageTransformRegistryAbstraction } from \"./abstractions/StorageTransformRegistry.js\";\nimport { StorageTransform } from \"~/features/storage/abstractions/StorageTransform.js\";\nimport type { CmsModelField } from \"~/types/index.js\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType.js\";\n\nclass StorageTransformRegistryImpl implements StorageTransformRegistryAbstraction.Interface {\n public constructor(private readonly transforms: StorageTransform.Interface[]) {}\n\n public get<T = any, R = any, F extends CmsModelField = CmsModelField>(\n fieldType: string\n ): StorageTransform.Interface<T, R, F> | undefined {\n const baseType = getBaseFieldType({\n type: fieldType\n });\n return this.transforms.find((item): item is StorageTransform.Interface<T, R, F> => {\n return item.fieldType === baseType;\n });\n }\n\n public getAll(): StorageTransform.Interface[] {\n return this.transforms;\n }\n}\n\nexport const StorageTransformRegistry = StorageTransformRegistryAbstraction.createImplementation({\n implementation: StorageTransformRegistryImpl,\n dependencies: [[StorageTransform, { multiple: true }]]\n});\n"],"mappings":"AAAA,SAASA,wBAAwB,IAAIC,mCAAmC;AACxE,SAASC,gBAAgB;AAEzB,SAASC,gBAAgB;AAEzB,MAAMC,4BAA4B,CAA0D;EACjFC,WAAWA,CAAkBC,UAAwC,EAAE;IAAA,KAA1CA,UAAwC,GAAxCA,UAAwC;EAAG;EAExEC,GAAGA,CACNC,SAAiB,EAC8B;IAC/C,MAAMC,QAAQ,GAAGN,gBAAgB,CAAC;MAC9BO,IAAI,EAAEF;IACV,CAAC,CAAC;IACF,OAAO,IAAI,CAACF,UAAU,CAACK,IAAI,CAAEC,IAAI,IAAkD;MAC/E,OAAOA,IAAI,CAACJ,SAAS,KAAKC,QAAQ;IACtC,CAAC,CAAC;EACN;EAEOI,MAAMA,CAAA,EAAiC;IAC1C,OAAO,IAAI,CAACP,UAAU;EAC1B;AACJ;AAEA,OAAO,MAAMN,wBAAwB,GAAGC,mCAAmC,CAACa,oBAAoB,CAAC;EAC7FC,cAAc,EAAEX,4BAA4B;EAC5CY,YAAY,EAAE,CAAC,CAACd,gBAAgB,EAAE;IAAEe,QAAQ,EAAE;EAAK,CAAC,CAAC;AACzD,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { CmsModel, CmsModelField } from "../../../types/index.js";
|
|
2
|
+
export interface IStorageTransformToStorageParams<T, R, F extends CmsModelField> {
|
|
3
|
+
model: CmsModel;
|
|
4
|
+
field: F;
|
|
5
|
+
value: T;
|
|
6
|
+
getStorageTransform(fieldType: string): IStorageTransform<T, R, F>;
|
|
7
|
+
}
|
|
8
|
+
export interface IStorageTransformFromStorageParams<T, R, F extends CmsModelField> {
|
|
9
|
+
model: CmsModel;
|
|
10
|
+
field: F;
|
|
11
|
+
value: T;
|
|
12
|
+
getStorageTransform(fieldType: string): IStorageTransform<T, R, F>;
|
|
13
|
+
}
|
|
14
|
+
export interface IStorageTransform<T, R, F extends CmsModelField> {
|
|
15
|
+
readonly fieldType: string;
|
|
16
|
+
toStorage(params: IStorageTransformToStorageParams<T, R, F>): Promise<R>;
|
|
17
|
+
fromStorage(params: IStorageTransformFromStorageParams<T, R, F>): Promise<T>;
|
|
18
|
+
}
|
|
19
|
+
export declare const StorageTransform: import("@webiny/di").Abstraction<IStorageTransform<any, any, any>>;
|
|
20
|
+
export declare namespace StorageTransform {
|
|
21
|
+
type Interface<T = any, R = any, F extends CmsModelField = CmsModelField> = IStorageTransform<T, R, F>;
|
|
22
|
+
type ToStorageParams<T = any, R = any, F extends CmsModelField = CmsModelField> = IStorageTransformToStorageParams<T, R, F>;
|
|
23
|
+
type ToStorageResponse<T = any> = Promise<T>;
|
|
24
|
+
type FromStorageParams<T = any, R = any, F extends CmsModelField = CmsModelField> = IStorageTransformFromStorageParams<T, R, F>;
|
|
25
|
+
type FromStorageResponse<T = any> = Promise<T>;
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createAbstraction","StorageTransform"],"sources":["StorageTransform.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsModel, CmsModelField } from \"~/types/index.js\";\n\nexport interface IStorageTransformToStorageParams<T, R, F extends CmsModelField> {\n model: CmsModel;\n field: F;\n value: T;\n getStorageTransform(fieldType: string): IStorageTransform<T, R, F>;\n}\n\nexport interface IStorageTransformFromStorageParams<T, R, F extends CmsModelField> {\n model: CmsModel;\n field: F;\n value: T;\n getStorageTransform(fieldType: string): IStorageTransform<T, R, F>;\n}\n\nexport interface IStorageTransform<T, R, F extends CmsModelField> {\n readonly fieldType: string;\n toStorage(params: IStorageTransformToStorageParams<T, R, F>): Promise<R>;\n fromStorage(params: IStorageTransformFromStorageParams<T, R, F>): Promise<T>;\n}\n\nexport const StorageTransform = createAbstraction<IStorageTransform<any, any, any>>(\n \"Cms/Storage/Transform/Field\"\n);\n\nexport namespace StorageTransform {\n export type Interface<\n T = any,\n R = any,\n F extends CmsModelField = CmsModelField\n > = IStorageTransform<T, R, F>;\n export type ToStorageParams<\n T = any,\n R = any,\n F extends CmsModelField = CmsModelField\n > = IStorageTransformToStorageParams<T, R, F>;\n export type ToStorageResponse<T = any> = Promise<T>;\n export type FromStorageParams<\n T = any,\n R = any,\n F extends CmsModelField = CmsModelField\n > = IStorageTransformFromStorageParams<T, R, F>;\n export type FromStorageResponse<T = any> = Promise<T>;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAuBvD,OAAO,MAAMC,gBAAgB,GAAGD,iBAAiB,CAC7C,6BACJ,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { StorageTransform } from "./StorageTransform.js";
|
|
2
|
+
import type { CmsModelField } from "../../../types/index.js";
|
|
3
|
+
export interface IStorageTransformRegistry {
|
|
4
|
+
get<T = any, R = any, F extends CmsModelField = CmsModelField>(fieldType: string): StorageTransform.Interface<T, R, F> | undefined;
|
|
5
|
+
getAll(): StorageTransform.Interface[];
|
|
6
|
+
}
|
|
7
|
+
export declare const StorageTransformRegistry: import("@webiny/di").Abstraction<IStorageTransformRegistry>;
|
|
8
|
+
export declare namespace StorageTransformRegistry {
|
|
9
|
+
type Interface = IStorageTransformRegistry;
|
|
10
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createAbstraction","StorageTransformRegistry"],"sources":["StorageTransformRegistry.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport { StorageTransform } from \"./StorageTransform.js\";\nimport type { CmsModelField } from \"~/types/index.js\";\n\nexport interface IStorageTransformRegistry {\n get<T = any, R = any, F extends CmsModelField = CmsModelField>(\n fieldType: string\n ): StorageTransform.Interface<T, R, F> | undefined;\n getAll(): StorageTransform.Interface[];\n}\n\nexport const StorageTransformRegistry = createAbstraction<IStorageTransformRegistry>(\n \"Cms/Storage/Transform/Registry\"\n);\n\nexport namespace StorageTransformRegistry {\n export type Interface = IStorageTransformRegistry;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAWvD,OAAO,MAAMC,wBAAwB,GAAGD,iBAAiB,CACrD,gCACJ,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
|
+
import { StorageTransformRegistry } from "./StorageTransformRegistry.js";
|
|
3
|
+
import { DateStorageTransform } from "./fields/DateStorageTransform.js";
|
|
4
|
+
import { DefaultStorageTransform } from "./fields/DefaultStorageTransform.js";
|
|
5
|
+
import { JsonStorageTransform } from "./fields/JsonStorageTransform.js";
|
|
6
|
+
import { DynamicZoneStorageTransform } from "./fields/DynamicZoneStorageTransform.js";
|
|
7
|
+
import { LongTextStorageTransform } from "./fields/LongTextStorageTransform.js";
|
|
8
|
+
import { ObjectStorageTransform } from "./fields/ObjectStorageTransform.js";
|
|
9
|
+
import { RichTextStorageTransform } from "./fields/RichTextStorageTransform.js";
|
|
10
|
+
export const StorageFeature = createFeature({
|
|
11
|
+
name: "Cms/StorageFeature",
|
|
12
|
+
register: container => {
|
|
13
|
+
container.register(DateStorageTransform);
|
|
14
|
+
container.register(DefaultStorageTransform);
|
|
15
|
+
container.register(DynamicZoneStorageTransform);
|
|
16
|
+
container.register(JsonStorageTransform);
|
|
17
|
+
container.register(LongTextStorageTransform);
|
|
18
|
+
container.register(ObjectStorageTransform);
|
|
19
|
+
container.register(RichTextStorageTransform);
|
|
20
|
+
container.register(StorageTransformRegistry);
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createFeature","StorageTransformRegistry","DateStorageTransform","DefaultStorageTransform","JsonStorageTransform","DynamicZoneStorageTransform","LongTextStorageTransform","ObjectStorageTransform","RichTextStorageTransform","StorageFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { StorageTransformRegistry } from \"./StorageTransformRegistry.js\";\nimport { DateStorageTransform } from \"./fields/DateStorageTransform.js\";\nimport { DefaultStorageTransform } from \"./fields/DefaultStorageTransform.js\";\nimport { JsonStorageTransform } from \"./fields/JsonStorageTransform.js\";\nimport { DynamicZoneStorageTransform } from \"./fields/DynamicZoneStorageTransform.js\";\nimport { LongTextStorageTransform } from \"./fields/LongTextStorageTransform.js\";\nimport { ObjectStorageTransform } from \"./fields/ObjectStorageTransform.js\";\nimport { RichTextStorageTransform } from \"./fields/RichTextStorageTransform.js\";\n\nexport const StorageFeature = createFeature({\n name: \"Cms/StorageFeature\",\n register: container => {\n container.register(DateStorageTransform);\n container.register(DefaultStorageTransform);\n container.register(DynamicZoneStorageTransform);\n container.register(JsonStorageTransform);\n container.register(LongTextStorageTransform);\n container.register(ObjectStorageTransform);\n container.register(RichTextStorageTransform);\n container.register(StorageTransformRegistry);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,wBAAwB;AACjC,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAC7B,SAASC,2BAA2B;AACpC,SAASC,wBAAwB;AACjC,SAASC,sBAAsB;AAC/B,SAASC,wBAAwB;AAEjC,OAAO,MAAMC,cAAc,GAAGT,aAAa,CAAC;EACxCU,IAAI,EAAE,oBAAoB;EAC1BC,QAAQ,EAAEC,SAAS,IAAI;IACnBA,SAAS,CAACD,QAAQ,CAACT,oBAAoB,CAAC;IACxCU,SAAS,CAACD,QAAQ,CAACR,uBAAuB,CAAC;IAC3CS,SAAS,CAACD,QAAQ,CAACN,2BAA2B,CAAC;IAC/CO,SAAS,CAACD,QAAQ,CAACP,oBAAoB,CAAC;IACxCQ,SAAS,CAACD,QAAQ,CAACL,wBAAwB,CAAC;IAC5CM,SAAS,CAACD,QAAQ,CAACJ,sBAAsB,CAAC;IAC1CK,SAAS,CAACD,QAAQ,CAACH,wBAAwB,CAAC;IAC5CI,SAAS,CAACD,QAAQ,CAACV,wBAAwB,CAAC;EAChD;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { StorageTransform } from "../abstractions/StorageTransform.js";
|
|
2
|
+
declare class DateStorageTransformImpl implements StorageTransform.Interface {
|
|
3
|
+
readonly fieldType = "datetime";
|
|
4
|
+
toStorage(params: StorageTransform.ToStorageParams): StorageTransform.ToStorageResponse;
|
|
5
|
+
fromStorage(params: StorageTransform.FromStorageParams): StorageTransform.FromStorageResponse;
|
|
6
|
+
}
|
|
7
|
+
export declare const DateStorageTransform: typeof DateStorageTransformImpl & {
|
|
8
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/StorageTransform.js").IStorageTransform<any, any, any>>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import WebinyError from "@webiny/error";
|
|
2
|
+
import { StorageTransform } from "../abstractions/StorageTransform.js";
|
|
3
|
+
const excludeTypes = ["time", "dateTimeWithTimezone"];
|
|
4
|
+
const convertFromStorage = value => {
|
|
5
|
+
if (!value) {
|
|
6
|
+
return value === null ? null : undefined;
|
|
7
|
+
}
|
|
8
|
+
try {
|
|
9
|
+
const output = new Date(value);
|
|
10
|
+
if (isNaN(output.getTime())) {
|
|
11
|
+
if (process.env.DEBUG !== "true") {
|
|
12
|
+
return null;
|
|
13
|
+
}
|
|
14
|
+
console.warn(`Could not transform "${value}" to date.`);
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
return output;
|
|
18
|
+
} catch {
|
|
19
|
+
if (process.env.DEBUG !== "true") {
|
|
20
|
+
return null;
|
|
21
|
+
}
|
|
22
|
+
console.warn(`Could not transform "${value}" from storage for date field type.`);
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
const convertValueToStorage = (field, value) => {
|
|
27
|
+
if (value instanceof Date || value?.toISOString) {
|
|
28
|
+
return value.toISOString();
|
|
29
|
+
} else if (typeof value === "string") {
|
|
30
|
+
return value;
|
|
31
|
+
}
|
|
32
|
+
throw new WebinyError("Error converting value to a storage type.", "TO_STORAGE_ERROR", {
|
|
33
|
+
value: value,
|
|
34
|
+
fieldId: field.fieldId,
|
|
35
|
+
storageId: field.storageId
|
|
36
|
+
});
|
|
37
|
+
};
|
|
38
|
+
class DateStorageTransformImpl {
|
|
39
|
+
fieldType = "datetime";
|
|
40
|
+
async toStorage(params) {
|
|
41
|
+
const {
|
|
42
|
+
value,
|
|
43
|
+
field
|
|
44
|
+
} = params;
|
|
45
|
+
const {
|
|
46
|
+
type
|
|
47
|
+
} = field.settings || {};
|
|
48
|
+
if (!value || !type || excludeTypes.includes(type)) {
|
|
49
|
+
return value;
|
|
50
|
+
}
|
|
51
|
+
if (field.list) {
|
|
52
|
+
const list = value;
|
|
53
|
+
const results = [];
|
|
54
|
+
for (const input of list) {
|
|
55
|
+
if (!input) {
|
|
56
|
+
continue;
|
|
57
|
+
}
|
|
58
|
+
const output = convertValueToStorage(field, input);
|
|
59
|
+
if (!output) {
|
|
60
|
+
continue;
|
|
61
|
+
}
|
|
62
|
+
results.push(output);
|
|
63
|
+
}
|
|
64
|
+
return results;
|
|
65
|
+
}
|
|
66
|
+
return convertValueToStorage(field, value);
|
|
67
|
+
}
|
|
68
|
+
async fromStorage(params) {
|
|
69
|
+
const {
|
|
70
|
+
value,
|
|
71
|
+
field
|
|
72
|
+
} = params;
|
|
73
|
+
const {
|
|
74
|
+
type
|
|
75
|
+
} = field.settings || {};
|
|
76
|
+
if (!value || !type || excludeTypes.includes(type)) {
|
|
77
|
+
return value;
|
|
78
|
+
} else if (field.list) {
|
|
79
|
+
if (!Array.isArray(value)) {
|
|
80
|
+
return [];
|
|
81
|
+
}
|
|
82
|
+
const list = value;
|
|
83
|
+
const results = [];
|
|
84
|
+
for (const input of list) {
|
|
85
|
+
if (input instanceof Date) {
|
|
86
|
+
if (isNaN(input.getTime())) {
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
results.push(input);
|
|
90
|
+
continue;
|
|
91
|
+
} else if (!input || typeof input === "object" && Object.keys(input).length === 0) {
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
const output = convertFromStorage(input);
|
|
95
|
+
if (!output) {
|
|
96
|
+
continue;
|
|
97
|
+
}
|
|
98
|
+
results.push(output);
|
|
99
|
+
}
|
|
100
|
+
return results;
|
|
101
|
+
}
|
|
102
|
+
return convertFromStorage(value);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
export const DateStorageTransform = StorageTransform.createImplementation({
|
|
106
|
+
implementation: DateStorageTransformImpl,
|
|
107
|
+
dependencies: []
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
//# sourceMappingURL=DateStorageTransform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["WebinyError","StorageTransform","excludeTypes","convertFromStorage","value","undefined","output","Date","isNaN","getTime","process","env","DEBUG","console","warn","convertValueToStorage","field","toISOString","fieldId","storageId","DateStorageTransformImpl","fieldType","toStorage","params","type","settings","includes","list","results","input","push","fromStorage","Array","isArray","Object","keys","length","DateStorageTransform","createImplementation","implementation","dependencies"],"sources":["DateStorageTransform.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type { CmsModelField } from \"~/types/index.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport { StorageTransform } from \"../abstractions/StorageTransform.js\";\n\nconst excludeTypes = [\"time\", \"dateTimeWithTimezone\"];\n\nconst convertFromStorage = (value: unknown): Date | unknown => {\n if (!value) {\n return value === null ? null : undefined;\n }\n try {\n const output = new Date(value as string);\n if (isNaN(output.getTime())) {\n if (process.env.DEBUG !== \"true\") {\n return null;\n }\n console.warn(`Could not transform \"${value}\" to date.`);\n return null;\n }\n return output;\n } catch {\n if (process.env.DEBUG !== \"true\") {\n return null;\n }\n console.warn(`Could not transform \"${value}\" from storage for date field type.`);\n return null;\n }\n};\n\nconst convertValueToStorage = (field: CmsModelField, value: Date | string | unknown): string => {\n if (value instanceof Date || (value as GenericRecord)?.toISOString) {\n return (value as Date).toISOString();\n } else if (typeof value === \"string\") {\n return value as string;\n }\n throw new WebinyError(\"Error converting value to a storage type.\", \"TO_STORAGE_ERROR\", {\n value: value,\n fieldId: field.fieldId,\n storageId: field.storageId\n });\n};\n\nclass DateStorageTransformImpl implements StorageTransform.Interface {\n public readonly fieldType = \"datetime\";\n\n public async toStorage(\n params: StorageTransform.ToStorageParams\n ): StorageTransform.ToStorageResponse {\n const { value, field } = params;\n const { type } = field.settings || {};\n if (!value || !type || excludeTypes.includes(type)) {\n return value;\n }\n if (field.list) {\n const list = value as (string | Date | null | undefined)[];\n const results: string[] = [];\n for (const input of list) {\n if (!input) {\n continue;\n }\n const output = convertValueToStorage(field, input);\n if (!output) {\n continue;\n }\n results.push(output);\n }\n return results;\n }\n return convertValueToStorage(field, value);\n }\n\n public async fromStorage(\n params: StorageTransform.FromStorageParams\n ): StorageTransform.FromStorageResponse {\n const { value, field } = params;\n const { type } = field.settings || {};\n if (!value || !type || excludeTypes.includes(type)) {\n return value;\n } else if (field.list) {\n if (!Array.isArray(value)) {\n return [];\n }\n const list = value as unknown[];\n const results: (Date | unknown)[] = [];\n for (const input of list) {\n if (input instanceof Date) {\n if (isNaN(input.getTime())) {\n continue;\n }\n results.push(input);\n continue;\n } else if (\n !input ||\n (typeof input === \"object\" && Object.keys(input).length === 0)\n ) {\n continue;\n }\n const output = convertFromStorage(input);\n if (!output) {\n continue;\n }\n results.push(output);\n }\n return results;\n }\n return convertFromStorage(value);\n }\n}\n\nexport const DateStorageTransform = StorageTransform.createImplementation({\n implementation: DateStorageTransformImpl,\n dependencies: []\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { StorageTransform } from "../abstractions/StorageTransform.js";
|
|
2
|
+
declare class DefaultStorageTransformImpl implements StorageTransform.Interface {
|
|
3
|
+
readonly fieldType = "*";
|
|
4
|
+
fromStorage({ value }: StorageTransform.FromStorageParams): Promise<any>;
|
|
5
|
+
toStorage({ value }: StorageTransform.ToStorageParams): Promise<any>;
|
|
6
|
+
}
|
|
7
|
+
export declare const DefaultStorageTransform: typeof DefaultStorageTransformImpl & {
|
|
8
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/StorageTransform.js").IStorageTransform<any, any, any>>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { StorageTransform } from "../abstractions/StorageTransform.js";
|
|
2
|
+
class DefaultStorageTransformImpl {
|
|
3
|
+
fieldType = "*";
|
|
4
|
+
async fromStorage({
|
|
5
|
+
value
|
|
6
|
+
}) {
|
|
7
|
+
return value;
|
|
8
|
+
}
|
|
9
|
+
async toStorage({
|
|
10
|
+
value
|
|
11
|
+
}) {
|
|
12
|
+
return value;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export const DefaultStorageTransform = StorageTransform.createImplementation({
|
|
16
|
+
implementation: DefaultStorageTransformImpl,
|
|
17
|
+
dependencies: []
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=DefaultStorageTransform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["StorageTransform","DefaultStorageTransformImpl","fieldType","fromStorage","value","toStorage","DefaultStorageTransform","createImplementation","implementation","dependencies"],"sources":["DefaultStorageTransform.ts"],"sourcesContent":["import { StorageTransform } from \"../abstractions/StorageTransform.js\";\n\nclass DefaultStorageTransformImpl implements StorageTransform.Interface {\n public readonly fieldType = \"*\";\n\n public async fromStorage({ value }: StorageTransform.FromStorageParams) {\n return value;\n }\n\n public async toStorage({ value }: StorageTransform.ToStorageParams) {\n return value;\n }\n}\n\nexport const DefaultStorageTransform = StorageTransform.createImplementation({\n implementation: DefaultStorageTransformImpl,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,gBAAgB;AAEzB,MAAMC,2BAA2B,CAAuC;EACpDC,SAAS,GAAG,GAAG;EAE/B,MAAaC,WAAWA,CAAC;IAAEC;EAA0C,CAAC,EAAE;IACpE,OAAOA,KAAK;EAChB;EAEA,MAAaC,SAASA,CAAC;IAAED;EAAwC,CAAC,EAAE;IAChE,OAAOA,KAAK;EAChB;AACJ;AAEA,OAAO,MAAME,uBAAuB,GAAGN,gBAAgB,CAACO,oBAAoB,CAAC;EACzEC,cAAc,EAAEP,2BAA2B;EAC3CQ,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
|