@webiny/api-headless-cms 0.0.0-unstable.2696f9d9e8 → 0.0.0-unstable.2aaa1916d9
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 +18 -6
- package/constants.js +29 -16
- package/constants.js.map +1 -1
- package/context.d.ts +1 -1
- package/context.js +61 -32
- package/context.js.map +1 -1
- package/crud/AccessControl/AccessControl.d.ts +98 -0
- package/crud/AccessControl/AccessControl.js +542 -0
- package/crud/AccessControl/AccessControl.js.map +1 -0
- package/crud/AccessControl/README.md +47 -0
- package/crud/AccessControl/groups-own.png +0 -0
- package/crud/AccessControl/models-own.png +0 -0
- package/crud/contentEntry/abstractions/IDeleteEntry.d.ts +4 -0
- package/crud/contentEntry/abstractions/IDeleteEntry.js +7 -0
- package/crud/contentEntry/abstractions/IDeleteEntry.js.map +1 -0
- package/crud/contentEntry/abstractions/IDeleteEntryOperation.d.ts +4 -0
- package/crud/contentEntry/abstractions/IDeleteEntryOperation.js +7 -0
- package/crud/contentEntry/abstractions/IDeleteEntryOperation.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetEntriesByIds.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetEntriesByIds.js +7 -0
- package/crud/contentEntry/abstractions/IGetEntriesByIds.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetEntry.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetEntry.js +7 -0
- package/crud/contentEntry/abstractions/IGetEntry.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetLatestEntriesByIds.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetLatestEntriesByIds.js +7 -0
- package/crud/contentEntry/abstractions/IGetLatestEntriesByIds.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetLatestRevisionByEntryId.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetLatestRevisionByEntryId.js +7 -0
- package/crud/contentEntry/abstractions/IGetLatestRevisionByEntryId.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetPreviousRevisionByEntryId.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetPreviousRevisionByEntryId.js +7 -0
- package/crud/contentEntry/abstractions/IGetPreviousRevisionByEntryId.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetPublishedEntriesByIds.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetPublishedEntriesByIds.js +7 -0
- package/crud/contentEntry/abstractions/IGetPublishedEntriesByIds.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetPublishedRevisionByEntryId.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetPublishedRevisionByEntryId.js +7 -0
- package/crud/contentEntry/abstractions/IGetPublishedRevisionByEntryId.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetRevisionById.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetRevisionById.js +7 -0
- package/crud/contentEntry/abstractions/IGetRevisionById.js.map +1 -0
- package/crud/contentEntry/abstractions/IGetRevisionsByEntryId.d.ts +4 -0
- package/crud/contentEntry/abstractions/IGetRevisionsByEntryId.js +7 -0
- package/crud/contentEntry/abstractions/IGetRevisionsByEntryId.js.map +1 -0
- package/crud/contentEntry/abstractions/IListEntries.d.ts +4 -0
- package/crud/contentEntry/abstractions/IListEntries.js +7 -0
- package/crud/contentEntry/abstractions/IListEntries.js.map +1 -0
- package/crud/contentEntry/abstractions/IListEntriesOperation.d.ts +4 -0
- package/crud/contentEntry/abstractions/IListEntriesOperation.js +7 -0
- package/crud/contentEntry/abstractions/IListEntriesOperation.js.map +1 -0
- package/crud/contentEntry/abstractions/IMoveEntryToBinOperation.d.ts +4 -0
- package/crud/contentEntry/abstractions/IMoveEntryToBinOperation.js +7 -0
- package/crud/contentEntry/abstractions/IMoveEntryToBinOperation.js.map +1 -0
- package/crud/contentEntry/abstractions/IRestoreEntryFromBin.d.ts +4 -0
- package/crud/contentEntry/abstractions/IRestoreEntryFromBin.js +7 -0
- package/crud/contentEntry/abstractions/IRestoreEntryFromBin.js.map +1 -0
- package/crud/contentEntry/abstractions/IRestoreEntryFromBinOperation.d.ts +4 -0
- package/crud/contentEntry/abstractions/IRestoreEntryFromBinOperation.js +7 -0
- package/crud/contentEntry/abstractions/IRestoreEntryFromBinOperation.js.map +1 -0
- package/crud/contentEntry/abstractions/index.d.ts +16 -0
- package/crud/contentEntry/abstractions/index.js +183 -0
- package/crud/contentEntry/abstractions/index.js.map +1 -0
- package/crud/contentEntry/afterDelete.d.ts +6 -2
- package/crud/contentEntry/afterDelete.js +15 -1
- package/crud/contentEntry/afterDelete.js.map +1 -1
- package/crud/contentEntry/beforeCreate.d.ts +2 -2
- package/crud/contentEntry/beforeCreate.js.map +1 -1
- package/crud/contentEntry/beforeUpdate.d.ts +2 -2
- package/crud/contentEntry/beforeUpdate.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createEntryData.d.ts +8 -8
- package/crud/contentEntry/entryDataFactories/createEntryData.js +30 -4
- package/crud/contentEntry/entryDataFactories/createEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.d.ts +8 -6
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +54 -11
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.d.ts +5 -5
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +22 -20
- package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.d.ts +3 -3
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +18 -16
- package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.d.ts +5 -5
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +10 -8
- package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.d.ts +5 -5
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +8 -0
- package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/index.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.d.ts +1 -1
- package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/statuses.js +3 -6
- package/crud/contentEntry/entryDataFactories/statuses.js.map +1 -1
- package/crud/contentEntry/entryDataValidation.d.ts +2 -2
- package/crud/contentEntry/entryDataValidation.js.map +1 -1
- package/crud/contentEntry/markLockedFields.d.ts +1 -1
- package/crud/contentEntry/markLockedFields.js.map +1 -1
- package/crud/contentEntry/referenceFieldsMapping.d.ts +1 -1
- package/crud/contentEntry/referenceFieldsMapping.js +10 -10
- package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
- package/crud/contentEntry/searchableFields.d.ts +2 -2
- package/crud/contentEntry/searchableFields.js.map +1 -1
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntry.d.ts +10 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntry.js +58 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntry.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperation.d.ts +7 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperation.js +17 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperation.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperationWithEvents.d.ts +9 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperationWithEvents.js +45 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperationWithEvents.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntrySecure.d.ts +9 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntrySecure.js +22 -0
- package/crud/contentEntry/useCases/DeleteEntry/DeleteEntrySecure.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBin.d.ts +10 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBin.js +33 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBin.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperation.d.ts +7 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperation.js +17 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperation.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperationWithEvents.d.ts +9 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperationWithEvents.js +45 -0
- package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperationWithEvents.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/TransformEntryDelete.d.ts +6 -0
- package/crud/contentEntry/useCases/DeleteEntry/TransformEntryDelete.js +21 -0
- package/crud/contentEntry/useCases/DeleteEntry/TransformEntryDelete.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.d.ts +9 -0
- package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.js +54 -0
- package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.js.map +1 -0
- package/crud/contentEntry/useCases/DeleteEntry/index.d.ts +28 -0
- package/crud/contentEntry/useCases/DeleteEntry/index.js +42 -0
- package/crud/contentEntry/useCases/DeleteEntry/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIds.d.ts +9 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIds.js +21 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIds.js.map +1 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsNotDeleted.js +18 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsSecure.d.ts +9 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsSecure.js +28 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsSecure.js.map +1 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/index.d.ts +13 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/index.js +20 -0
- package/crud/contentEntry/useCases/GetEntriesByIds/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIds.d.ts +9 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIds.js +21 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIds.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsNotDeleted.js +18 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsSecure.d.ts +9 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsSecure.js +28 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsSecure.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/index.d.ts +13 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/index.js +20 -0
- package/crud/contentEntry/useCases/GetLatestEntriesByIds/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryId.d.ts +9 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryId.js +22 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryId.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdDeleted.js +21 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdNotDeleted.js +21 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/index.d.ts +15 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/index.js +22 -0
- package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryId.d.ts +9 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryId.js +22 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryId.js.map +1 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdNotDeleted.js +21 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/index.d.ts +11 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/index.js +18 -0
- package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIds.d.ts +9 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIds.js +21 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIds.js.map +1 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsNotDeleted.js +18 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsSecure.d.ts +9 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsSecure.js +28 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsSecure.js.map +1 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/index.d.ts +13 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/index.js +20 -0
- package/crud/contentEntry/useCases/GetPublishedEntriesByIds/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryId.d.ts +9 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryId.js +22 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryId.js.map +1 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdNotDeleted.js +21 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/index.d.ts +11 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/index.js +18 -0
- package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetRevisionById/GetRevisionById.d.ts +9 -0
- package/crud/contentEntry/useCases/GetRevisionById/GetRevisionById.js +22 -0
- package/crud/contentEntry/useCases/GetRevisionById/GetRevisionById.js.map +1 -0
- package/crud/contentEntry/useCases/GetRevisionById/GetRevisionByIdNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetRevisionById/GetRevisionByIdNotDeleted.js +21 -0
- package/crud/contentEntry/useCases/GetRevisionById/GetRevisionByIdNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetRevisionById/index.d.ts +11 -0
- package/crud/contentEntry/useCases/GetRevisionById/index.js +18 -0
- package/crud/contentEntry/useCases/GetRevisionById/index.js.map +1 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryId.d.ts +9 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryId.js +21 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryId.js.map +1 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryIdNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryIdNotDeleted.js +18 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryIdNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/index.d.ts +13 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/index.js +18 -0
- package/crud/contentEntry/useCases/GetRevisionsByEntryId/index.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/GetEntry.d.ts +7 -0
- package/crud/contentEntry/useCases/ListEntries/GetEntry.js +29 -0
- package/crud/contentEntry/useCases/ListEntries/GetEntry.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/GetEntrySecure.d.ts +11 -0
- package/crud/contentEntry/useCases/ListEntries/GetEntrySecure.js +38 -0
- package/crud/contentEntry/useCases/ListEntries/GetEntrySecure.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntries.d.ts +7 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntries.js +62 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntries.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperation.d.ts +14 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperation.js +24 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperation.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationDeleted.js +24 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationLatest.d.ts +7 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationLatest.js +25 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationLatest.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationNotDeleted.d.ts +7 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationNotDeleted.js +24 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationNotDeleted.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationPublished.d.ts +7 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationPublished.js +24 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationPublished.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithEvents.d.ts +9 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithEvents.js +22 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithEvents.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSearchableFields.d.ts +8 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSearchableFields.js +27 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSearchableFields.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSort.d.ts +8 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSort.js +26 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSort.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithStatusCheck.d.ts +7 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithStatusCheck.js +36 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithStatusCheck.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesSecure.d.ts +11 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesSecure.js +41 -0
- package/crud/contentEntry/useCases/ListEntries/ListEntriesSecure.js.map +1 -0
- package/crud/contentEntry/useCases/ListEntries/index.d.ts +26 -0
- package/crud/contentEntry/useCases/ListEntries/index.js +61 -0
- package/crud/contentEntry/useCases/ListEntries/index.js.map +1 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBin.d.ts +10 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBin.js +37 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBin.js.map +1 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperation.d.ts +9 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperation.js +19 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperation.js.map +1 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperationWithEvents.d.ts +9 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperationWithEvents.js +42 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperationWithEvents.js.map +1 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinSecure.d.ts +9 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinSecure.js +22 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinSecure.js.map +1 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.d.ts +9 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.js +53 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.js.map +1 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/index.d.ts +25 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/index.js +24 -0
- package/crud/contentEntry/useCases/RestoreEntryFromBin/index.js.map +1 -0
- package/crud/contentEntry/useCases/index.d.ts +11 -0
- package/crud/contentEntry/useCases/index.js +128 -0
- package/crud/contentEntry/useCases/index.js.map +1 -0
- package/crud/contentEntry.crud.d.ts +6 -8
- package/crud/contentEntry.crud.js +304 -357
- package/crud/contentEntry.crud.js.map +1 -1
- package/crud/contentModel/beforeCreate.d.ts +2 -2
- package/crud/contentModel/beforeCreate.js.map +1 -1
- package/crud/contentModel/beforeDelete.d.ts +3 -5
- package/crud/contentModel/beforeDelete.js +49 -15
- package/crud/contentModel/beforeDelete.js.map +1 -1
- package/crud/contentModel/beforeUpdate.d.ts +2 -2
- package/crud/contentModel/beforeUpdate.js.map +1 -1
- package/crud/contentModel/compatibility/modelApiName.d.ts +1 -1
- package/crud/contentModel/compatibility/modelApiName.js.map +1 -1
- package/crud/contentModel/contentModelManagerFactory.d.ts +2 -2
- package/crud/contentModel/contentModelManagerFactory.js.map +1 -1
- package/crud/contentModel/createFieldStorageId.d.ts +1 -1
- package/crud/contentModel/createFieldStorageId.js.map +1 -1
- package/crud/contentModel/defaultFields.d.ts +1 -1
- package/crud/contentModel/defaultFields.js.map +1 -1
- package/crud/contentModel/ensureTypeTag.d.ts +1 -1
- package/crud/contentModel/ensureTypeTag.js.map +1 -1
- package/crud/contentModel/fields/descriptionField.d.ts +6 -2
- package/crud/contentModel/fields/descriptionField.js +14 -28
- package/crud/contentModel/fields/descriptionField.js.map +1 -1
- package/crud/contentModel/fields/getApplicableFieldById.d.ts +2 -0
- package/crud/contentModel/fields/getApplicableFieldById.js +15 -0
- package/crud/contentModel/fields/getApplicableFieldById.js.map +1 -0
- package/crud/contentModel/fields/imageField.d.ts +2 -2
- package/crud/contentModel/fields/imageField.js +9 -28
- package/crud/contentModel/fields/imageField.js.map +1 -1
- package/crud/contentModel/fields/titleField.d.ts +6 -2
- package/crud/contentModel/fields/titleField.js +14 -43
- package/crud/contentModel/fields/titleField.js.map +1 -1
- package/crud/contentModel/listModelsFromDatabase.d.ts +3 -3
- package/crud/contentModel/listModelsFromDatabase.js.map +1 -1
- package/crud/contentModel/validate/endingAllowed.d.ts +1 -1
- package/crud/contentModel/validate/endingAllowed.js.map +1 -1
- package/crud/contentModel/validate/isModelEndingAllowed.js +1 -2
- package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
- package/crud/contentModel/validate/modelId.d.ts +1 -1
- package/crud/contentModel/validate/modelId.js.map +1 -1
- package/crud/contentModel/validate/pluralApiName.d.ts +1 -1
- package/crud/contentModel/validate/pluralApiName.js.map +1 -1
- package/crud/contentModel/validate/singularApiName.d.ts +1 -1
- package/crud/contentModel/validate/singularApiName.js.map +1 -1
- package/crud/contentModel/validateModel.d.ts +1 -1
- package/crud/contentModel/validateModel.js.map +1 -1
- package/crud/contentModel/validateModelFields.d.ts +1 -1
- package/crud/contentModel/validateModelFields.js +1 -1
- package/crud/contentModel/validateModelFields.js.map +1 -1
- package/crud/contentModel/validateStorageId.d.ts +1 -0
- package/crud/contentModel/validateStorageId.js +19 -0
- package/crud/contentModel/validateStorageId.js.map +1 -0
- package/crud/contentModel/validation.d.ts +84 -63
- package/crud/contentModel/validation.js +5 -5
- package/crud/contentModel/validation.js.map +1 -1
- package/crud/contentModel.crud.d.ts +6 -6
- package/crud/contentModel.crud.js +76 -37
- package/crud/contentModel.crud.js.map +1 -1
- package/crud/contentModelGroup/beforeCreate.d.ts +3 -3
- package/crud/contentModelGroup/beforeCreate.js.map +1 -1
- package/crud/contentModelGroup/beforeDelete.d.ts +3 -3
- package/crud/contentModelGroup/beforeDelete.js.map +1 -1
- package/crud/contentModelGroup/beforeUpdate.d.ts +3 -3
- package/crud/contentModelGroup/beforeUpdate.js.map +1 -1
- package/crud/contentModelGroup/listGroupsFromDatabase.d.ts +1 -1
- package/crud/contentModelGroup/listGroupsFromDatabase.js.map +1 -1
- package/crud/contentModelGroup/validation.d.ts +2 -2
- package/crud/contentModelGroup/validation.js.map +1 -1
- package/crud/contentModelGroup.crud.d.ts +6 -6
- package/crud/contentModelGroup.crud.js +17 -28
- package/crud/contentModelGroup.crud.js.map +1 -1
- package/crud/system.crud.d.ts +4 -4
- package/crud/system.crud.js +10 -0
- package/crud/system.crud.js.map +1 -1
- package/export/crud/exporting.d.ts +2 -2
- package/export/crud/exporting.js.map +1 -1
- package/export/crud/importing.d.ts +2 -2
- package/export/crud/importing.js.map +1 -1
- package/export/crud/imports/importData.d.ts +2 -2
- package/export/crud/imports/importData.js.map +1 -1
- package/export/crud/imports/importGroups.d.ts +2 -2
- package/export/crud/imports/importGroups.js.map +1 -1
- package/export/crud/imports/importModels.d.ts +2 -2
- package/export/crud/imports/importModels.js.map +1 -1
- package/export/crud/imports/validateGroups.d.ts +2 -2
- package/export/crud/imports/validateGroups.js.map +1 -1
- package/export/crud/imports/validateInput.d.ts +2 -2
- package/export/crud/imports/validateInput.js.map +1 -1
- package/export/crud/imports/validateModels.d.ts +2 -2
- package/export/crud/imports/validateModels.js.map +1 -1
- package/export/crud/index.d.ts +1 -1
- package/export/crud/index.js.map +1 -1
- package/export/crud/sanitize.d.ts +3 -3
- package/export/crud/sanitize.js +2 -1
- package/export/crud/sanitize.js.map +1 -1
- package/export/graphql/index.d.ts +1 -1
- package/export/graphql/index.js +1 -1
- package/export/graphql/index.js.map +1 -1
- package/export/index.js.map +1 -1
- package/export/types.d.ts +5 -5
- package/export/types.js +1 -2
- package/export/types.js.map +1 -1
- package/fieldConverters/CmsModelDefaultFieldConverterPlugin.d.ts +5 -3
- package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +3 -2
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +23 -65
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.d.ts +3 -2
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +2 -2
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/index.d.ts +3 -0
- package/fieldConverters/index.js +4 -0
- package/fieldConverters/index.js.map +1 -1
- package/graphql/buildSchemaPlugins.d.ts +3 -3
- package/graphql/buildSchemaPlugins.js.map +1 -1
- package/graphql/checkEndpointAccess.d.ts +1 -1
- package/graphql/checkEndpointAccess.js.map +1 -1
- package/graphql/createExecutableSchema.d.ts +2 -2
- package/graphql/createExecutableSchema.js +14 -7
- package/graphql/createExecutableSchema.js.map +1 -1
- package/graphql/createRequestBody.d.ts +1 -1
- package/graphql/createRequestBody.js.map +1 -1
- package/graphql/formatErrorPayload.js.map +1 -1
- package/graphql/generateSchema.d.ts +2 -2
- package/graphql/generateSchema.js +6 -1
- package/graphql/generateSchema.js.map +1 -1
- package/graphql/getSchema/generateCacheId.d.ts +10 -0
- package/graphql/getSchema/generateCacheId.js +17 -0
- package/graphql/getSchema/generateCacheId.js.map +1 -0
- package/graphql/getSchema/generateCacheKey.d.ts +10 -0
- package/graphql/getSchema/generateCacheKey.js +34 -0
- package/graphql/getSchema/generateCacheKey.js.map +1 -0
- package/graphql/getSchema.d.ts +4 -4
- package/graphql/getSchema.js +13 -50
- package/graphql/getSchema.js.map +1 -1
- package/graphql/graphQLHandlerFactory.d.ts +2 -2
- package/graphql/graphQLHandlerFactory.js.map +1 -1
- package/graphql/handleRequest.d.ts +2 -2
- package/graphql/handleRequest.js +8 -1
- package/graphql/handleRequest.js.map +1 -1
- package/graphql/index.d.ts +4 -3
- package/graphql/index.js +1 -1
- package/graphql/index.js.map +1 -1
- package/graphql/scalars/RevisionId.d.ts +2 -0
- package/graphql/scalars/RevisionId.js +26 -0
- package/graphql/scalars/RevisionId.js.map +1 -0
- package/graphql/scalars/RevisionIdScalarPlugin.d.ts +2 -0
- package/graphql/scalars/RevisionIdScalarPlugin.js +18 -0
- package/graphql/scalars/RevisionIdScalarPlugin.js.map +1 -0
- package/graphql/schema/baseContentSchema.d.ts +3 -3
- package/graphql/schema/baseContentSchema.js +1 -7
- package/graphql/schema/baseContentSchema.js.map +1 -1
- package/graphql/schema/baseSchema.js +12 -5
- package/graphql/schema/baseSchema.js.map +1 -1
- package/graphql/schema/contentEntries.d.ts +3 -3
- package/graphql/schema/contentEntries.js +3 -4
- package/graphql/schema/contentEntries.js.map +1 -1
- package/graphql/schema/contentModelGroups.d.ts +3 -3
- package/graphql/schema/contentModelGroups.js +1 -1
- package/graphql/schema/contentModelGroups.js.map +1 -1
- package/graphql/schema/contentModels.d.ts +4 -5
- package/graphql/schema/contentModels.js +21 -5
- package/graphql/schema/contentModels.js.map +1 -1
- package/graphql/schema/createFieldResolvers.d.ts +2 -2
- package/graphql/schema/createFieldResolvers.js +1 -3
- package/graphql/schema/createFieldResolvers.js.map +1 -1
- package/graphql/schema/createFieldTypePluginRecords.d.ts +2 -2
- package/graphql/schema/createFieldTypePluginRecords.js.map +1 -1
- package/graphql/schema/createManageResolvers.d.ts +1 -2
- package/graphql/schema/createManageResolvers.js +24 -49
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.d.ts +2 -2
- package/graphql/schema/createManageSDL.js +14 -5
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.d.ts +1 -2
- package/graphql/schema/createPreviewResolvers.js +4 -7
- package/graphql/schema/createPreviewResolvers.js.map +1 -1
- package/graphql/schema/createReadResolvers.d.ts +1 -2
- package/graphql/schema/createReadResolvers.js +4 -7
- package/graphql/schema/createReadResolvers.js.map +1 -1
- package/graphql/schema/createReadSDL.d.ts +2 -2
- package/graphql/schema/createReadSDL.js +6 -7
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/createSingularResolvers.d.ts +12 -0
- package/graphql/schema/createSingularResolvers.js +56 -0
- package/graphql/schema/createSingularResolvers.js.map +1 -0
- package/graphql/schema/createSingularSDL.d.ts +12 -0
- package/graphql/schema/createSingularSDL.js +95 -0
- package/graphql/schema/createSingularSDL.js.map +1 -0
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.d.ts +7 -0
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +59 -0
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -0
- package/graphql/schema/resolvers/manage/resolveCreate.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveCreateFrom.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDelete.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveDelete.js +2 -1
- package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGet.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetByIds.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetRevisions.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveList.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveListDeleted.d.ts +4 -0
- package/graphql/schema/resolvers/manage/resolveListDeleted.js +20 -0
- package/graphql/schema/resolvers/manage/resolveListDeleted.js.map +1 -0
- package/graphql/schema/resolvers/manage/resolveMove.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolvePublish.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveRepublish.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveRestoreFromBin.d.ts +7 -0
- package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js +20 -0
- package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js.map +1 -0
- package/graphql/schema/resolvers/manage/resolveUnpublish.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveUpdate.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveValidate.d.ts +2 -2
- package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -1
- package/graphql/schema/resolvers/preview/resolveGet.d.ts +2 -2
- package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/preview/resolveList.d.ts +2 -2
- package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/read/resolveGet.d.ts +2 -2
- package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/read/resolveList.d.ts +2 -2
- package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/singular/resolveGet.d.ts +7 -0
- package/graphql/schema/resolvers/singular/resolveGet.js +21 -0
- package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -0
- package/graphql/schema/resolvers/singular/resolveUpdate.d.ts +8 -0
- package/graphql/schema/resolvers/singular/resolveUpdate.js +21 -0
- package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -0
- package/graphql/schema/schemaPlugins.d.ts +3 -3
- package/graphql/schema/schemaPlugins.js +32 -11
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/graphql/system.d.ts +1 -1
- package/graphql/system.js +2 -1
- package/graphql/system.js.map +1 -1
- package/graphqlFields/boolean.d.ts +1 -1
- package/graphqlFields/boolean.js.map +1 -1
- package/graphqlFields/datetime.d.ts +1 -1
- package/graphqlFields/datetime.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.js +62 -8
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
- package/graphqlFields/dynamicZone/index.d.ts +0 -1
- package/graphqlFields/dynamicZone/index.js +0 -7
- package/graphqlFields/dynamicZone/index.js.map +1 -1
- package/graphqlFields/file.d.ts +1 -1
- package/graphqlFields/file.js.map +1 -1
- package/graphqlFields/helpers.d.ts +1 -1
- package/graphqlFields/helpers.js.map +1 -1
- package/graphqlFields/index.d.ts +1 -1
- package/graphqlFields/index.js +2 -1
- package/graphqlFields/index.js.map +1 -1
- package/graphqlFields/json.d.ts +1 -1
- package/graphqlFields/json.js.map +1 -1
- package/graphqlFields/longText.d.ts +1 -1
- package/graphqlFields/longText.js.map +1 -1
- package/graphqlFields/number.d.ts +1 -1
- package/graphqlFields/number.js.map +1 -1
- package/graphqlFields/object.d.ts +2 -2
- package/graphqlFields/object.js +14 -0
- package/graphqlFields/object.js.map +1 -1
- package/graphqlFields/ref.d.ts +1 -1
- package/graphqlFields/ref.js +1 -1
- package/graphqlFields/ref.js.map +1 -1
- package/graphqlFields/richText/RichTextPluginsProcessor.d.ts +6 -0
- package/graphqlFields/richText/RichTextPluginsProcessor.js +34 -0
- package/graphqlFields/richText/RichTextPluginsProcessor.js.map +1 -0
- package/graphqlFields/richText/richTextResolver.d.ts +7 -0
- package/graphqlFields/richText/richTextResolver.js +24 -0
- package/graphqlFields/richText/richTextResolver.js.map +1 -0
- package/graphqlFields/richText.d.ts +1 -1
- package/graphqlFields/richText.js +8 -2
- package/graphqlFields/richText.js.map +1 -1
- package/graphqlFields/searchableJson.d.ts +2 -0
- package/graphqlFields/searchableJson.js +60 -0
- package/graphqlFields/searchableJson.js.map +1 -0
- package/graphqlFields/text.d.ts +1 -1
- package/graphqlFields/text.js.map +1 -1
- package/htmlRenderer/LexicalRenderer.d.ts +5 -0
- package/htmlRenderer/LexicalRenderer.js +28 -0
- package/htmlRenderer/LexicalRenderer.js.map +1 -0
- package/htmlRenderer/createLexicalHTMLRenderer.d.ts +2 -0
- package/htmlRenderer/createLexicalHTMLRenderer.js +31 -0
- package/htmlRenderer/createLexicalHTMLRenderer.js.map +1 -0
- package/index.d.ts +13 -7
- package/index.js +69 -8
- package/index.js.map +1 -1
- package/modelManager/DefaultCmsModelManager.d.ts +11 -10
- package/modelManager/DefaultCmsModelManager.js +16 -13
- package/modelManager/DefaultCmsModelManager.js.map +1 -1
- package/modelManager/SingletonModelManager.d.ts +12 -0
- package/modelManager/SingletonModelManager.js +48 -0
- package/modelManager/SingletonModelManager.js.map +1 -0
- package/modelManager/index.d.ts +2 -1
- package/modelManager/index.js +16 -1
- package/modelManager/index.js.map +1 -1
- package/package.json +37 -36
- package/parameters/context.js.map +1 -1
- package/parameters/header.js.map +1 -1
- package/parameters/index.js.map +1 -1
- package/parameters/manual.d.ts +2 -1
- package/parameters/manual.js.map +1 -1
- package/parameters/path.js.map +1 -1
- package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.d.ts +9 -0
- package/plugins/{CmsGraphQLSchemaPlugin.js → CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js} +5 -1
- package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js.map +1 -0
- package/plugins/CmsGraphQLSchemaPlugin/index.d.ts +1 -0
- package/plugins/CmsGraphQLSchemaPlugin/index.js +18 -0
- package/plugins/CmsGraphQLSchemaPlugin/index.js.map +1 -0
- package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +1 -1
- package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -1
- package/plugins/CmsGroupPlugin.d.ts +9 -1
- package/plugins/CmsGroupPlugin.js +17 -1
- package/plugins/CmsGroupPlugin.js.map +1 -1
- package/plugins/CmsModelFieldConverterPlugin.d.ts +5 -2
- package/plugins/CmsModelFieldConverterPlugin.js +4 -0
- package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
- package/plugins/CmsModelPlugin.d.ts +30 -10
- package/plugins/CmsModelPlugin.js +106 -20
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/plugins/CmsParametersPlugin.d.ts +3 -3
- package/plugins/CmsParametersPlugin.js.map +1 -1
- package/plugins/CmsRichTextRendererPlugin.d.ts +24 -0
- package/plugins/CmsRichTextRendererPlugin.js +28 -0
- package/plugins/CmsRichTextRendererPlugin.js.map +1 -0
- package/plugins/StorageOperationsCmsModelPlugin.d.ts +1 -1
- package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -1
- package/plugins/StorageTransformPlugin.d.ts +6 -2
- package/plugins/StorageTransformPlugin.js +9 -1
- package/plugins/StorageTransformPlugin.js.map +1 -1
- package/plugins/index.d.ts +1 -0
- package/plugins/index.js +11 -0
- package/plugins/index.js.map +1 -1
- package/storage/date.d.ts +3 -0
- package/storage/date.js +119 -0
- package/storage/date.js.map +1 -0
- package/storage/default.js.map +1 -1
- package/storage/dynamicZone.d.ts +2 -0
- package/storage/dynamicZone.js +157 -0
- package/storage/dynamicZone.js.map +1 -0
- package/storage/index.js +7 -1
- package/storage/index.js.map +1 -1
- package/storage/json.js +34 -5
- package/storage/json.js.map +1 -1
- package/storage/object.js +16 -12
- package/storage/object.js.map +1 -1
- package/types/context.d.ts +146 -0
- package/types/context.js +7 -0
- package/types/context.js.map +1 -0
- package/types/fields/dynamicZoneField.d.ts +23 -0
- package/types/fields/dynamicZoneField.js +7 -0
- package/types/fields/dynamicZoneField.js.map +1 -0
- package/types/fields/objectField.d.ts +13 -0
- package/types/fields/objectField.js +7 -0
- package/types/fields/objectField.js.map +1 -0
- package/types/identity.d.ts +19 -0
- package/types/identity.js +7 -0
- package/types/identity.js.map +1 -0
- package/types/index.d.ts +10 -0
- package/types/index.js +117 -0
- package/types/index.js.map +1 -0
- package/types/model.d.ts +199 -0
- package/types/model.js +7 -0
- package/types/model.js.map +1 -0
- package/types/modelAst.d.ts +39 -0
- package/types/modelAst.js +7 -0
- package/types/modelAst.js.map +1 -0
- package/types/modelField.d.ts +330 -0
- package/types/modelField.js +7 -0
- package/types/modelField.js.map +1 -0
- package/types/modelGroup.d.ts +77 -0
- package/types/modelGroup.js +7 -0
- package/types/modelGroup.js.map +1 -0
- package/types/plugins.d.ts +365 -0
- package/types/plugins.js +7 -0
- package/types/plugins.js.map +1 -0
- package/{types.d.ts → types/types.d.ts} +295 -1215
- package/{types.js → types/types.js} +18 -119
- package/types/types.js.map +1 -0
- package/utils/RichTextRenderer.d.ts +10 -0
- package/utils/RichTextRenderer.js +33 -0
- package/utils/RichTextRenderer.js.map +1 -0
- package/utils/caching/Cache.d.ts +5 -2
- package/utils/caching/Cache.js +4 -7
- package/utils/caching/Cache.js.map +1 -1
- package/utils/caching/CacheKey.d.ts +2 -1
- package/utils/caching/CacheKey.js +5 -17
- package/utils/caching/CacheKey.js.map +1 -1
- package/utils/caching/index.js.map +1 -1
- package/utils/caching/types.d.ts +3 -1
- package/utils/caching/types.js +7 -0
- package/utils/caching/types.js.map +1 -1
- package/utils/contentEntryTraverser/ContentEntryTraverser.d.ts +13 -0
- package/utils/contentEntryTraverser/ContentEntryTraverser.js +97 -0
- package/utils/contentEntryTraverser/ContentEntryTraverser.js.map +1 -0
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.d.ts +6 -0
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +23 -0
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -0
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.d.ts +7 -0
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +22 -0
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -0
- package/utils/contentModelAst/CmsModelToAstConverter.d.ts +11 -0
- package/utils/contentModelAst/CmsModelToAstConverter.js +28 -0
- package/utils/contentModelAst/CmsModelToAstConverter.js.map +1 -0
- package/utils/contentModelAst/index.d.ts +3 -0
- package/utils/contentModelAst/index.js +40 -0
- package/utils/contentModelAst/index.js.map +1 -0
- package/utils/converters/Converter.d.ts +3 -3
- package/utils/converters/Converter.js.map +1 -1
- package/utils/converters/ConverterCollection.d.ts +2 -2
- package/utils/converters/ConverterCollection.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.d.ts +3 -3
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/createModelField.d.ts +7 -0
- package/utils/createModelField.js +51 -0
- package/utils/createModelField.js.map +1 -0
- package/utils/createTypeFromFields.d.ts +1 -1
- package/utils/createTypeFromFields.js.map +1 -1
- package/utils/createTypeName.js.map +1 -1
- package/utils/date.js.map +1 -1
- package/utils/entryStorage.d.ts +13 -1
- package/utils/entryStorage.js +37 -3
- package/utils/entryStorage.js.map +1 -1
- package/utils/filterAsync.js.map +1 -1
- package/utils/getBaseFieldType.d.ts +1 -1
- package/utils/getBaseFieldType.js.map +1 -1
- package/utils/getEntryDescription.d.ts +1 -1
- package/utils/getEntryDescription.js.map +1 -1
- package/utils/getEntryImage.d.ts +1 -1
- package/utils/getEntryImage.js.map +1 -1
- package/utils/getEntryTitle.d.ts +1 -1
- package/utils/getEntryTitle.js.map +1 -1
- package/utils/getSchemaFromFieldPlugins.d.ts +6 -6
- package/utils/getSchemaFromFieldPlugins.js +5 -4
- package/utils/getSchemaFromFieldPlugins.js.map +1 -1
- package/utils/identity.d.ts +1 -1
- package/utils/identity.js.map +1 -1
- package/utils/incrementEntryIdVersion.js.map +1 -1
- package/utils/index.d.ts +1 -0
- package/utils/index.js +11 -0
- package/utils/index.js.map +1 -1
- package/utils/isHeadlessCmsReady.d.ts +2 -0
- package/utils/isHeadlessCmsReady.js +23 -0
- package/utils/isHeadlessCmsReady.js.map +1 -0
- package/utils/modelFieldTraverser/ModelFieldTraverser.d.ts +16 -0
- package/utils/modelFieldTraverser/ModelFieldTraverser.js +41 -0
- package/utils/modelFieldTraverser/ModelFieldTraverser.js.map +1 -0
- package/utils/modelFieldTraverser/index.d.ts +1 -0
- package/utils/modelFieldTraverser/index.js +18 -0
- package/utils/modelFieldTraverser/index.js.map +1 -0
- package/utils/renderFields.d.ts +1 -1
- package/utils/renderFields.js +2 -0
- package/utils/renderFields.js.map +1 -1
- package/utils/renderGetFilterFields.d.ts +1 -1
- package/utils/renderGetFilterFields.js.map +1 -1
- package/utils/renderInputFields.d.ts +1 -1
- package/utils/renderInputFields.js.map +1 -1
- package/utils/renderListFilterFields.d.ts +1 -1
- package/utils/renderListFilterFields.js.map +1 -1
- package/utils/renderSortEnum.d.ts +2 -2
- package/utils/renderSortEnum.js.map +1 -1
- package/utils/toSlug.js.map +1 -1
- package/validators/dateGte.d.ts +1 -1
- package/validators/dateGte.js.map +1 -1
- package/validators/dateLte.d.ts +1 -1
- package/validators/dateLte.js.map +1 -1
- package/validators/gte.d.ts +1 -1
- package/validators/gte.js.map +1 -1
- package/validators/in.d.ts +1 -1
- package/validators/in.js.map +1 -1
- package/validators/index.js.map +1 -1
- package/validators/lte.d.ts +1 -1
- package/validators/lte.js.map +1 -1
- package/validators/maxLength.d.ts +1 -1
- package/validators/maxLength.js.map +1 -1
- package/validators/minLength.d.ts +1 -1
- package/validators/minLength.js.map +1 -1
- package/validators/pattern.d.ts +1 -1
- package/validators/pattern.js.map +1 -1
- package/validators/patternPlugins/email.d.ts +1 -1
- package/validators/patternPlugins/email.js +1 -1
- package/validators/patternPlugins/email.js.map +1 -1
- package/validators/patternPlugins/index.d.ts +1 -1
- package/validators/patternPlugins/index.js.map +1 -1
- package/validators/patternPlugins/lowerCase.d.ts +1 -1
- package/validators/patternPlugins/lowerCase.js.map +1 -1
- package/validators/patternPlugins/lowerCaseSpace.d.ts +1 -1
- package/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
- package/validators/patternPlugins/upperCase.d.ts +1 -1
- package/validators/patternPlugins/upperCase.js.map +1 -1
- package/validators/patternPlugins/upperCaseSpace.d.ts +1 -1
- package/validators/patternPlugins/upperCaseSpace.js.map +1 -1
- package/validators/patternPlugins/url.d.ts +1 -1
- package/validators/patternPlugins/url.js.map +1 -1
- package/validators/required.d.ts +1 -1
- package/validators/required.js.map +1 -1
- package/validators/timeGte.d.ts +1 -1
- package/validators/timeGte.js.map +1 -1
- package/validators/timeLte.d.ts +1 -1
- package/validators/timeLte.js.map +1 -1
- package/validators/unique.d.ts +1 -1
- package/validators/unique.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneStorage.d.ts +0 -3
- package/graphqlFields/dynamicZone/dynamicZoneStorage.js +0 -111
- package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +0 -1
- package/plugins/CmsGraphQLSchemaPlugin.d.ts +0 -5
- package/plugins/CmsGraphQLSchemaPlugin.js.map +0 -1
- package/types.js.map +0 -1
- package/utils/access.d.ts +0 -9
- package/utils/access.js +0 -26
- package/utils/access.js.map +0 -1
- package/utils/permissions/EntriesPermissions.d.ts +0 -4
- package/utils/permissions/EntriesPermissions.js +0 -11
- package/utils/permissions/EntriesPermissions.js.map +0 -1
- package/utils/permissions/ModelGroupsPermissions.d.ts +0 -9
- package/utils/permissions/ModelGroupsPermissions.js +0 -50
- package/utils/permissions/ModelGroupsPermissions.js.map +0 -1
- package/utils/permissions/ModelsPermissions.d.ts +0 -22
- package/utils/permissions/ModelsPermissions.js +0 -90
- package/utils/permissions/ModelsPermissions.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_validateGroups","require","_validateModels","validateInput","params","groups","models","data","validatedGroups","validateGroups","input","inputGroups","reduce","collection","group","id","push","target","slug","map","g","validatedModels","validateModels","length","error","exports"],"sources":["validateInput.ts"],"sourcesContent":["import { CmsGroup, CmsModel } from \"~/types\";\nimport {\n CmsImportStructureParamsData,\n ValidatedCmsGroupResult,\n ValidatedCmsModelResult\n} from \"~/export/types\";\nimport { validateGroups } from \"~/export/crud/imports/validateGroups\";\nimport { validateModels } from \"~/export/crud/imports/validateModels\";\n\ninterface Params {\n groups: CmsGroup[];\n models: CmsModel[];\n data: CmsImportStructureParamsData;\n}\n\ninterface ValidResponse {\n groups: ValidatedCmsGroupResult[];\n models: ValidatedCmsModelResult[];\n error?: never;\n}\n\ninterface InvalidResponse {\n groups: ValidatedCmsGroupResult[];\n models: ValidatedCmsModelResult[];\n error?: string;\n}\n\ninterface InputGroup extends Pick<CmsGroup, \"id\" | \"slug\"> {\n target: string;\n}\n\nexport const validateInput = async (params: Params): Promise<ValidResponse | InvalidResponse> => {\n const { groups, models, data } = params;\n\n const validatedGroups = await validateGroups({\n groups,\n input: data.groups\n });\n\n const inputGroups = validatedGroups.reduce<InputGroup[]>(\n (collection, data) => {\n if (!data.group?.id) {\n return collection;\n }\n collection.push({\n id: data.group.id,\n target: data.target || data.group.id,\n slug: data.group.slug\n });\n return collection;\n },\n groups.map(g => {\n return {\n id: g.id,\n target: g.id,\n slug: g.slug\n };\n })\n );\n const validatedModels = await validateModels({\n groups: inputGroups,\n models,\n input: data.models\n });\n if (validatedModels.length === 0) {\n return {\n groups: validatedGroups,\n models: validatedModels,\n error: \"No models to import.\"\n };\n }\n return {\n groups: validatedGroups,\n models: validatedModels\n };\n};\n"],"mappings":";;;;;;AAMA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAwBO,MAAME,aAAa,GAAG,MAAOC,MAAc,IAA+C;EAC7F,MAAM;IAAEC,MAAM;IAAEC,MAAM;IAAEC;EAAK,CAAC,GAAGH,MAAM;EAEvC,MAAMI,eAAe,GAAG,MAAM,IAAAC,8BAAc,EAAC;IACzCJ,MAAM;IACNK,KAAK,EAAEH,IAAI,CAACF;EAChB,CAAC,CAAC;EAEF,MAAMM,WAAW,GAAGH,eAAe,CAACI,MAAM,CACtC,CAACC,UAAU,EAAEN,IAAI,KAAK;IAClB,IAAI,CAACA,IAAI,CAACO,KAAK,EAAEC,EAAE,EAAE;MACjB,OAAOF,UAAU;IACrB;IACAA,UAAU,CAACG,IAAI,CAAC;MACZD,EAAE,EAAER,IAAI,CAACO,KAAK,CAACC,EAAE;MACjBE,MAAM,EAAEV,IAAI,CAACU,MAAM,IAAIV,IAAI,CAACO,KAAK,CAACC,EAAE;MACpCG,IAAI,EAAEX,IAAI,CAACO,KAAK,CAACI;IACrB,CAAC,CAAC;IACF,OAAOL,UAAU;EACrB,CAAC,EACDR,MAAM,CAACc,GAAG,CAACC,CAAC,IAAI;IACZ,OAAO;MACHL,EAAE,EAAEK,CAAC,CAACL,EAAE;MACRE,MAAM,EAAEG,CAAC,CAACL,EAAE;MACZG,IAAI,EAAEE,CAAC,CAACF;IACZ,CAAC;EACL,CAAC,CACL,CAAC;EACD,MAAMG,eAAe,GAAG,MAAM,IAAAC,8BAAc,EAAC;IACzCjB,MAAM,EAAEM,WAAW;IACnBL,MAAM;IACNI,KAAK,EAAEH,IAAI,CAACD;EAChB,CAAC,CAAC;EACF,IAAIe,eAAe,CAACE,MAAM,KAAK,CAAC,EAAE;IAC9B,OAAO;MACHlB,MAAM,EAAEG,eAAe;MACvBF,MAAM,EAAEe,eAAe;MACvBG,KAAK,EAAE;IACX,CAAC;EACL;EACA,OAAO;IACHnB,MAAM,EAAEG,eAAe;IACvBF,MAAM,EAAEe;EACZ,CAAC;AACL,CAAC;AAACI,OAAA,CAAAtB,aAAA,GAAAA,aAAA"}
|
|
1
|
+
{"version":3,"names":["_validateGroups","require","_validateModels","validateInput","params","groups","models","data","validatedGroups","validateGroups","input","inputGroups","reduce","collection","group","id","push","target","slug","map","g","validatedModels","validateModels","length","error","exports"],"sources":["validateInput.ts"],"sourcesContent":["import type { CmsGroup, CmsModel } from \"~/types\";\nimport type {\n CmsImportStructureParamsData,\n ValidatedCmsGroupResult,\n ValidatedCmsModelResult\n} from \"~/export/types\";\nimport { validateGroups } from \"~/export/crud/imports/validateGroups\";\nimport { validateModels } from \"~/export/crud/imports/validateModels\";\n\ninterface Params {\n groups: CmsGroup[];\n models: CmsModel[];\n data: CmsImportStructureParamsData;\n}\n\ninterface ValidResponse {\n groups: ValidatedCmsGroupResult[];\n models: ValidatedCmsModelResult[];\n error?: never;\n}\n\ninterface InvalidResponse {\n groups: ValidatedCmsGroupResult[];\n models: ValidatedCmsModelResult[];\n error?: string;\n}\n\ninterface InputGroup extends Pick<CmsGroup, \"id\" | \"slug\"> {\n target: string;\n}\n\nexport const validateInput = async (params: Params): Promise<ValidResponse | InvalidResponse> => {\n const { groups, models, data } = params;\n\n const validatedGroups = await validateGroups({\n groups,\n input: data.groups\n });\n\n const inputGroups = validatedGroups.reduce<InputGroup[]>(\n (collection, data) => {\n if (!data.group?.id) {\n return collection;\n }\n collection.push({\n id: data.group.id,\n target: data.target || data.group.id,\n slug: data.group.slug\n });\n return collection;\n },\n groups.map(g => {\n return {\n id: g.id,\n target: g.id,\n slug: g.slug\n };\n })\n );\n const validatedModels = await validateModels({\n groups: inputGroups,\n models,\n input: data.models\n });\n if (validatedModels.length === 0) {\n return {\n groups: validatedGroups,\n models: validatedModels,\n error: \"No models to import.\"\n };\n }\n return {\n groups: validatedGroups,\n models: validatedModels\n };\n};\n"],"mappings":";;;;;;AAMA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAwBO,MAAME,aAAa,GAAG,MAAOC,MAAc,IAA+C;EAC7F,MAAM;IAAEC,MAAM;IAAEC,MAAM;IAAEC;EAAK,CAAC,GAAGH,MAAM;EAEvC,MAAMI,eAAe,GAAG,MAAM,IAAAC,8BAAc,EAAC;IACzCJ,MAAM;IACNK,KAAK,EAAEH,IAAI,CAACF;EAChB,CAAC,CAAC;EAEF,MAAMM,WAAW,GAAGH,eAAe,CAACI,MAAM,CACtC,CAACC,UAAU,EAAEN,IAAI,KAAK;IAClB,IAAI,CAACA,IAAI,CAACO,KAAK,EAAEC,EAAE,EAAE;MACjB,OAAOF,UAAU;IACrB;IACAA,UAAU,CAACG,IAAI,CAAC;MACZD,EAAE,EAAER,IAAI,CAACO,KAAK,CAACC,EAAE;MACjBE,MAAM,EAAEV,IAAI,CAACU,MAAM,IAAIV,IAAI,CAACO,KAAK,CAACC,EAAE;MACpCG,IAAI,EAAEX,IAAI,CAACO,KAAK,CAACI;IACrB,CAAC,CAAC;IACF,OAAOL,UAAU;EACrB,CAAC,EACDR,MAAM,CAACc,GAAG,CAACC,CAAC,IAAI;IACZ,OAAO;MACHL,EAAE,EAAEK,CAAC,CAACL,EAAE;MACRE,MAAM,EAAEG,CAAC,CAACL,EAAE;MACZG,IAAI,EAAEE,CAAC,CAACF;IACZ,CAAC;EACL,CAAC,CACL,CAAC;EACD,MAAMG,eAAe,GAAG,MAAM,IAAAC,8BAAc,EAAC;IACzCjB,MAAM,EAAEM,WAAW;IACnBL,MAAM;IACNI,KAAK,EAAEH,IAAI,CAACD;EAChB,CAAC,CAAC;EACF,IAAIe,eAAe,CAACE,MAAM,KAAK,CAAC,EAAE;IAC9B,OAAO;MACHlB,MAAM,EAAEG,eAAe;MACvBF,MAAM,EAAEe,eAAe;MACvBG,KAAK,EAAE;IACX,CAAC;EACL;EACA,OAAO;IACHnB,MAAM,EAAEG,eAAe;IACvBF,MAAM,EAAEe;EACZ,CAAC;AACL,CAAC;AAACI,OAAA,CAAAtB,aAAA,GAAAA,aAAA","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { HeadlessCmsImportStructureParamsDataModel, ValidatedCmsModelResult } from "../../types";
|
|
2
|
-
import { CmsGroup, CmsModel } from "../../../types";
|
|
1
|
+
import type { HeadlessCmsImportStructureParamsDataModel, ValidatedCmsModelResult } from "../../types";
|
|
2
|
+
import type { CmsGroup, CmsModel } from "../../../types";
|
|
3
3
|
interface InputGroup extends Pick<CmsGroup, "id" | "slug"> {
|
|
4
4
|
target: string;
|
|
5
5
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_validation","require","_types","_utils","addCodeMessage","params","action","CmsImportAction","CODE","errors","message","code","validateModel","model","models","existingModelId","find","m","modelId","toLowerCase","existingSingularApiName","singularApiName","pluralApiName","toString","existingPluralApiName","UPDATE_KEYWORD","isPlugin","UPDATE","CREATE","NONE","data","getRelatedModels","fields","result","field","type","settings","push","templates","tpl","Array","from","Set","validateModels","groups","input","validation","createModelImportValidation","Promise","all","map","safeParseAsync","success","error","createZodError","group","g","id","target","length","targetModel","modelValidationResult","related","exports"],"sources":["validateModels.ts"],"sourcesContent":["import { createModelImportValidation } from \"~/crud/contentModel/validation\";\nimport {\n CmsImportAction,\n CmsImportError,\n HeadlessCmsImportStructureParamsDataModel,\n ValidatedCmsModel,\n ValidatedCmsModelResult\n} from \"~/export/types\";\nimport { CmsDynamicZoneTemplate, CmsGroup, CmsModel, CmsModelField } from \"~/types\";\nimport { createZodError } from \"@webiny/utils\";\n\ninterface CreateModelValidationParams {\n model: ValidatedCmsModel;\n models: CmsModel[];\n}\n\ninterface AddCodeMessageParams {\n action: CmsImportAction;\n}\n\nconst addCodeMessage = (params: AddCodeMessageParams) => {\n if (params.action !== CmsImportAction.CODE) {\n return params;\n }\n return {\n ...params,\n errors: [\n {\n message: `The model is defined via plugin and it cannot be updated.`,\n code: \"MODEL_IS_A_PLUGIN\"\n }\n ]\n };\n};\n\ninterface ValidationResult {\n errors?: CmsImportError[];\n action: CmsImportAction;\n}\n\nconst validateModel = (params: CreateModelValidationParams): ValidationResult => {\n const { model, models } = params;\n /**\n * Let's check if model values that must be unique, already exist.\n */\n const existingModelId = models.find(\n m => m.modelId.toLowerCase() === model.modelId.toLowerCase()\n );\n const existingSingularApiName = models.find(\n m =>\n m.singularApiName.toLowerCase() === model.singularApiName.toLowerCase() ||\n m.singularApiName.toLowerCase() === model.pluralApiName.toString()\n );\n const existingPluralApiName = models.find(\n m =>\n m.pluralApiName.toLowerCase() === model.pluralApiName.toLowerCase() ||\n m.pluralApiName.toLowerCase() === model.singularApiName.toString()\n );\n\n const UPDATE_KEYWORD = existingModelId?.isPlugin\n ? CmsImportAction.CODE\n : CmsImportAction.UPDATE;\n /**\n * There are few cases that we must address:\n *\n * 1. modelId, singular and plural names do not exist in any of the models\n * - this is OK, we can create the model\n */\n if (!existingModelId && !existingSingularApiName && !existingPluralApiName) {\n return {\n action: CmsImportAction.CREATE\n };\n }\n /**\n * 2. modelId, singular and plural names are a part of a single model\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingSingularApiName &&\n existingPluralApiName &&\n existingModelId.modelId === existingSingularApiName.modelId &&\n existingModelId.modelId === existingPluralApiName.modelId\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 3. modelId already exists, but singular and plural names do not\n * - this is OK, we can update the model\n */\n if (existingModelId && !existingSingularApiName && !existingPluralApiName) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 4. modelId already exists, but only the singular name exists.\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingSingularApiName?.modelId === existingModelId.modelId &&\n !existingPluralApiName\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 5. modelId already exists, but only the plural name exists.\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingPluralApiName?.modelId === existingModelId.modelId &&\n !existingSingularApiName\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 6. modelId already exists, but singular and plural names are in different models.\n */\n if (\n existingModelId &&\n (existingSingularApiName?.modelId !== existingModelId.modelId ||\n existingPluralApiName?.modelId !== existingModelId.modelId)\n ) {\n return {\n action: CmsImportAction.NONE,\n errors: [\n {\n message: `The model has singular or plural API names same as some other model.`,\n code: \"MODEL_API_NAMES_ERROR\"\n }\n ]\n };\n }\n\n return {\n action: CmsImportAction.NONE,\n errors: [\n {\n message: `The model cannot be imported.`,\n code: \"MODEL_IMPORT_ERROR\",\n data: {\n modelId: existingModelId?.modelId,\n singularApiName: existingSingularApiName?.modelId,\n pluralApiName: existingPluralApiName?.modelId\n }\n }\n ]\n };\n};\n\ninterface InputGroup extends Pick<CmsGroup, \"id\" | \"slug\"> {\n target: string;\n}\n\ninterface Params {\n groups: InputGroup[];\n models: CmsModel[];\n input: HeadlessCmsImportStructureParamsDataModel[];\n}\n\ninterface GetRelatedModelsParams {\n fields: CmsModelField[];\n models: CmsModel[];\n}\n\nconst getRelatedModels = (params: GetRelatedModelsParams): string[] => {\n const { fields, models } = params;\n\n const result: string[] = [];\n for (const field of fields) {\n if (field.type === \"ref\") {\n for (const model of field.settings?.models || []) {\n result.push(model.modelId);\n }\n } else if (field.type === \"object\") {\n result.push(...getRelatedModels({ fields: field.settings?.fields || [], models }));\n } else if (field.type === \"dynamicZone\") {\n const templates = (field.settings?.templates || []) as CmsDynamicZoneTemplate[];\n for (const tpl of templates) {\n result.push(\n ...getRelatedModels({\n fields: tpl.fields || [],\n models\n })\n );\n }\n }\n }\n\n return Array.from(new Set(result));\n};\n\nexport const validateModels = async (params: Params): Promise<ValidatedCmsModelResult[]> => {\n const { groups, models, input } = params;\n\n const validation = createModelImportValidation();\n\n return await Promise.all(\n input.map(async (model): Promise<ValidatedCmsModelResult> => {\n const result = await validation.safeParseAsync(model);\n if (!result.success) {\n const error = createZodError(result.error);\n return {\n model: model as ValidatedCmsModel,\n action: CmsImportAction.NONE,\n error: {\n message: error.message,\n code: error.code,\n data: error.data\n }\n };\n }\n const data = result.data as unknown as ValidatedCmsModel;\n const group = groups.find(g => g.id === data.group || g.target === data.group);\n if (!group) {\n return {\n model: data,\n action: CmsImportAction.NONE,\n error: {\n message: `The model group \"${data.group}\" does not exist.`,\n code: \"MODEL_GROUP_NOT_FOUND\"\n }\n };\n } else if (!model.fields?.length) {\n return {\n model: data,\n action: CmsImportAction.NONE,\n error: {\n message: `Model is missing fields.`,\n code: \"MODEL_FIELDS_MISSING\"\n }\n };\n }\n\n const targetModel: ValidatedCmsModel = {\n ...data,\n group: group.id\n };\n\n const modelValidationResult = validateModel({\n model: targetModel,\n models\n });\n\n if (!modelValidationResult.errors?.length) {\n return {\n model: targetModel,\n related: getRelatedModels({\n fields: targetModel.fields,\n models\n }),\n action: modelValidationResult.action\n };\n }\n return {\n model: targetModel,\n action: modelValidationResult.action,\n error: modelValidationResult.errors[0]\n };\n })\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_validation","require","_types","_utils","addCodeMessage","params","action","CmsImportAction","CODE","errors","message","code","validateModel","model","models","existingModelId","find","m","modelId","toLowerCase","existingSingularApiName","singularApiName","pluralApiName","toString","existingPluralApiName","UPDATE_KEYWORD","isPlugin","UPDATE","CREATE","NONE","data","getRelatedModels","fields","result","field","type","settings","push","templates","tpl","Array","from","Set","validateModels","groups","input","validation","createModelImportValidation","Promise","all","map","safeParseAsync","success","error","createZodError","group","g","id","target","length","targetModel","modelValidationResult","related","exports"],"sources":["validateModels.ts"],"sourcesContent":["import { createModelImportValidation } from \"~/crud/contentModel/validation\";\nimport type {\n CmsImportError,\n HeadlessCmsImportStructureParamsDataModel,\n ValidatedCmsModel,\n ValidatedCmsModelResult\n} from \"~/export/types\";\nimport { CmsImportAction } from \"~/export/types\";\nimport type { CmsDynamicZoneTemplate, CmsGroup, CmsModel, CmsModelField } from \"~/types\";\nimport { createZodError } from \"@webiny/utils\";\n\ninterface CreateModelValidationParams {\n model: ValidatedCmsModel;\n models: CmsModel[];\n}\n\ninterface AddCodeMessageParams {\n action: CmsImportAction;\n}\n\nconst addCodeMessage = (params: AddCodeMessageParams) => {\n if (params.action !== CmsImportAction.CODE) {\n return params;\n }\n return {\n ...params,\n errors: [\n {\n message: `The model is defined via plugin and it cannot be updated.`,\n code: \"MODEL_IS_A_PLUGIN\"\n }\n ]\n };\n};\n\ninterface ValidationResult {\n errors?: CmsImportError[];\n action: CmsImportAction;\n}\n\nconst validateModel = (params: CreateModelValidationParams): ValidationResult => {\n const { model, models } = params;\n /**\n * Let's check if model values that must be unique, already exist.\n */\n const existingModelId = models.find(\n m => m.modelId.toLowerCase() === model.modelId.toLowerCase()\n );\n const existingSingularApiName = models.find(\n m =>\n m.singularApiName.toLowerCase() === model.singularApiName.toLowerCase() ||\n m.singularApiName.toLowerCase() === model.pluralApiName.toString()\n );\n const existingPluralApiName = models.find(\n m =>\n m.pluralApiName.toLowerCase() === model.pluralApiName.toLowerCase() ||\n m.pluralApiName.toLowerCase() === model.singularApiName.toString()\n );\n\n const UPDATE_KEYWORD = existingModelId?.isPlugin\n ? CmsImportAction.CODE\n : CmsImportAction.UPDATE;\n /**\n * There are few cases that we must address:\n *\n * 1. modelId, singular and plural names do not exist in any of the models\n * - this is OK, we can create the model\n */\n if (!existingModelId && !existingSingularApiName && !existingPluralApiName) {\n return {\n action: CmsImportAction.CREATE\n };\n }\n /**\n * 2. modelId, singular and plural names are a part of a single model\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingSingularApiName &&\n existingPluralApiName &&\n existingModelId.modelId === existingSingularApiName.modelId &&\n existingModelId.modelId === existingPluralApiName.modelId\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 3. modelId already exists, but singular and plural names do not\n * - this is OK, we can update the model\n */\n if (existingModelId && !existingSingularApiName && !existingPluralApiName) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 4. modelId already exists, but only the singular name exists.\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingSingularApiName?.modelId === existingModelId.modelId &&\n !existingPluralApiName\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 5. modelId already exists, but only the plural name exists.\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingPluralApiName?.modelId === existingModelId.modelId &&\n !existingSingularApiName\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 6. modelId already exists, but singular and plural names are in different models.\n */\n if (\n existingModelId &&\n (existingSingularApiName?.modelId !== existingModelId.modelId ||\n existingPluralApiName?.modelId !== existingModelId.modelId)\n ) {\n return {\n action: CmsImportAction.NONE,\n errors: [\n {\n message: `The model has singular or plural API names same as some other model.`,\n code: \"MODEL_API_NAMES_ERROR\"\n }\n ]\n };\n }\n\n return {\n action: CmsImportAction.NONE,\n errors: [\n {\n message: `The model cannot be imported.`,\n code: \"MODEL_IMPORT_ERROR\",\n data: {\n modelId: existingModelId?.modelId,\n singularApiName: existingSingularApiName?.modelId,\n pluralApiName: existingPluralApiName?.modelId\n }\n }\n ]\n };\n};\n\ninterface InputGroup extends Pick<CmsGroup, \"id\" | \"slug\"> {\n target: string;\n}\n\ninterface Params {\n groups: InputGroup[];\n models: CmsModel[];\n input: HeadlessCmsImportStructureParamsDataModel[];\n}\n\ninterface GetRelatedModelsParams {\n fields: CmsModelField[];\n models: CmsModel[];\n}\n\nconst getRelatedModels = (params: GetRelatedModelsParams): string[] => {\n const { fields, models } = params;\n\n const result: string[] = [];\n for (const field of fields) {\n if (field.type === \"ref\") {\n for (const model of field.settings?.models || []) {\n result.push(model.modelId);\n }\n } else if (field.type === \"object\") {\n result.push(...getRelatedModels({ fields: field.settings?.fields || [], models }));\n } else if (field.type === \"dynamicZone\") {\n const templates = (field.settings?.templates || []) as CmsDynamicZoneTemplate[];\n for (const tpl of templates) {\n result.push(\n ...getRelatedModels({\n fields: tpl.fields || [],\n models\n })\n );\n }\n }\n }\n\n return Array.from(new Set(result));\n};\n\nexport const validateModels = async (params: Params): Promise<ValidatedCmsModelResult[]> => {\n const { groups, models, input } = params;\n\n const validation = createModelImportValidation();\n\n return await Promise.all(\n input.map(async (model): Promise<ValidatedCmsModelResult> => {\n const result = await validation.safeParseAsync(model);\n if (!result.success) {\n const error = createZodError(result.error);\n return {\n model: model as ValidatedCmsModel,\n action: CmsImportAction.NONE,\n error: {\n message: error.message,\n code: error.code,\n data: error.data\n }\n };\n }\n const data = result.data as unknown as ValidatedCmsModel;\n const group = groups.find(g => g.id === data.group || g.target === data.group);\n if (!group) {\n return {\n model: data,\n action: CmsImportAction.NONE,\n error: {\n message: `The model group \"${data.group}\" does not exist.`,\n code: \"MODEL_GROUP_NOT_FOUND\"\n }\n };\n } else if (!model.fields?.length) {\n return {\n model: data,\n action: CmsImportAction.NONE,\n error: {\n message: `Model is missing fields.`,\n code: \"MODEL_FIELDS_MISSING\"\n }\n };\n }\n\n const targetModel: ValidatedCmsModel = {\n ...data,\n group: group.id\n };\n\n const modelValidationResult = validateModel({\n model: targetModel,\n models\n });\n\n if (!modelValidationResult.errors?.length) {\n return {\n model: targetModel,\n related: getRelatedModels({\n fields: targetModel.fields,\n models\n }),\n action: modelValidationResult.action\n };\n }\n return {\n model: targetModel,\n action: modelValidationResult.action,\n error: modelValidationResult.errors[0]\n };\n })\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
package/export/crud/index.d.ts
CHANGED
package/export/crud/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_exporting","require","createExportCrud","context","structure","createExportStructureContext","exports"],"sources":["index.ts"],"sourcesContent":["import { CmsContext } from \"~/types\";\nimport { createExportStructureContext } from \"./exporting\";\n\nexport const createExportCrud = (context: CmsContext) => {\n return {\n structure: createExportStructureContext(context)\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAEO,MAAMC,gBAAgB,GAAIC,OAAmB,IAAK;EACrD,OAAO;IACHC,SAAS,EAAE,IAAAC,uCAA4B,EAACF,OAAO;EACnD,CAAC;AACL,CAAC;AAACG,OAAA,CAAAJ,gBAAA,GAAAA,gBAAA"}
|
|
1
|
+
{"version":3,"names":["_exporting","require","createExportCrud","context","structure","createExportStructureContext","exports"],"sources":["index.ts"],"sourcesContent":["import type { CmsContext } from \"~/types\";\nimport { createExportStructureContext } from \"./exporting\";\n\nexport const createExportCrud = (context: CmsContext) => {\n return {\n structure: createExportStructureContext(context)\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAEO,MAAMC,gBAAgB,GAAIC,OAAmB,IAAK;EACrD,OAAO;IACHC,SAAS,EAAE,IAAAC,uCAA4B,EAACF,OAAO;EACnD,CAAC;AACL,CAAC;AAACG,OAAA,CAAAJ,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CmsGroup, CmsModel } from "../../types";
|
|
2
|
-
import { SanitizedCmsGroup, SanitizedCmsModel } from "../types";
|
|
1
|
+
import type { CmsGroup, CmsModel } from "../../types";
|
|
2
|
+
import type { SanitizedCmsGroup, SanitizedCmsModel } from "../types";
|
|
3
3
|
export declare const sanitizeGroup: (group: CmsGroup) => SanitizedCmsGroup;
|
|
4
|
-
export declare const sanitizeModel: (group: Pick<CmsGroup, "id"
|
|
4
|
+
export declare const sanitizeModel: (group: Pick<CmsGroup, "id">, model: CmsModel) => SanitizedCmsModel;
|
package/export/crud/sanitize.js
CHANGED
|
@@ -27,7 +27,8 @@ const sanitizeModel = (group, model) => {
|
|
|
27
27
|
layout: model.layout,
|
|
28
28
|
titleFieldId: model.titleFieldId,
|
|
29
29
|
descriptionFieldId: model.descriptionFieldId,
|
|
30
|
-
imageFieldId: model.imageFieldId
|
|
30
|
+
imageFieldId: model.imageFieldId,
|
|
31
|
+
tags: model.tags || []
|
|
31
32
|
};
|
|
32
33
|
};
|
|
33
34
|
exports.sanitizeModel = sanitizeModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sanitizeGroup","group","id","name","slug","description","icon","exports","sanitizeModel","model","modelId","singularApiName","pluralApiName","fields","layout","titleFieldId","descriptionFieldId","imageFieldId"],"sources":["sanitize.ts"],"sourcesContent":["import { CmsGroup, CmsModel } from \"~/types\";\nimport { SanitizedCmsGroup, SanitizedCmsModel } from \"~/export/types\";\n\nexport const sanitizeGroup = (group: CmsGroup): SanitizedCmsGroup => {\n return {\n id: group.id,\n name: group.name,\n slug: group.slug,\n description: group.description,\n icon: group.icon\n };\n};\n\nexport const sanitizeModel = (
|
|
1
|
+
{"version":3,"names":["sanitizeGroup","group","id","name","slug","description","icon","exports","sanitizeModel","model","modelId","singularApiName","pluralApiName","fields","layout","titleFieldId","descriptionFieldId","imageFieldId","tags"],"sources":["sanitize.ts"],"sourcesContent":["import type { CmsGroup, CmsModel } from \"~/types\";\nimport type { SanitizedCmsGroup, SanitizedCmsModel } from \"~/export/types\";\n\nexport const sanitizeGroup = (group: CmsGroup): SanitizedCmsGroup => {\n return {\n id: group.id,\n name: group.name,\n slug: group.slug,\n description: group.description,\n icon: group.icon\n };\n};\n\nexport const sanitizeModel = (group: Pick<CmsGroup, \"id\">, model: CmsModel): SanitizedCmsModel => {\n return {\n modelId: model.modelId,\n name: model.name,\n group: group.id,\n icon: model.icon,\n description: model.description,\n singularApiName: model.singularApiName,\n pluralApiName: model.pluralApiName,\n fields: model.fields,\n layout: model.layout,\n titleFieldId: model.titleFieldId,\n descriptionFieldId: model.descriptionFieldId,\n imageFieldId: model.imageFieldId,\n tags: model.tags || []\n };\n};\n"],"mappings":";;;;;;AAGO,MAAMA,aAAa,GAAIC,KAAe,IAAwB;EACjE,OAAO;IACHC,EAAE,EAAED,KAAK,CAACC,EAAE;IACZC,IAAI,EAAEF,KAAK,CAACE,IAAI;IAChBC,IAAI,EAAEH,KAAK,CAACG,IAAI;IAChBC,WAAW,EAAEJ,KAAK,CAACI,WAAW;IAC9BC,IAAI,EAAEL,KAAK,CAACK;EAChB,CAAC;AACL,CAAC;AAACC,OAAA,CAAAP,aAAA,GAAAA,aAAA;AAEK,MAAMQ,aAAa,GAAGA,CAACP,KAA2B,EAAEQ,KAAe,KAAwB;EAC9F,OAAO;IACHC,OAAO,EAAED,KAAK,CAACC,OAAO;IACtBP,IAAI,EAAEM,KAAK,CAACN,IAAI;IAChBF,KAAK,EAAEA,KAAK,CAACC,EAAE;IACfI,IAAI,EAAEG,KAAK,CAACH,IAAI;IAChBD,WAAW,EAAEI,KAAK,CAACJ,WAAW;IAC9BM,eAAe,EAAEF,KAAK,CAACE,eAAe;IACtCC,aAAa,EAAEH,KAAK,CAACG,aAAa;IAClCC,MAAM,EAAEJ,KAAK,CAACI,MAAM;IACpBC,MAAM,EAAEL,KAAK,CAACK,MAAM;IACpBC,YAAY,EAAEN,KAAK,CAACM,YAAY;IAChCC,kBAAkB,EAAEP,KAAK,CAACO,kBAAkB;IAC5CC,YAAY,EAAER,KAAK,CAACQ,YAAY;IAChCC,IAAI,EAAET,KAAK,CAACS,IAAI,IAAI;EACxB,CAAC;AACL,CAAC;AAACX,OAAA,CAAAC,aAAA,GAAAA,aAAA","ignoreList":[]}
|
package/export/graphql/index.js
CHANGED
|
@@ -7,7 +7,7 @@ exports.createExportGraphQL = void 0;
|
|
|
7
7
|
var _plugins = require("../../plugins");
|
|
8
8
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
9
9
|
var _handler = require("@webiny/handler");
|
|
10
|
-
const plugin =
|
|
10
|
+
const plugin = (0, _plugins.createCmsGraphQLSchemaPlugin)({
|
|
11
11
|
typeDefs: /* GraphQL */`
|
|
12
12
|
type CmsExportStructureResponse {
|
|
13
13
|
data: String
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_plugins","require","_handlerGraphql","_handler","plugin","
|
|
1
|
+
{"version":3,"names":["_plugins","require","_handlerGraphql","_handler","plugin","createCmsGraphQLSchemaPlugin","typeDefs","resolvers","Query","exportStructure","_","args","context","result","cms","export","structure","models","Response","JSON","stringify","ex","ErrorResponse","Mutation","validateImportStructure","importing","validate","data","importStructure","name","createExportGraphQL","ContextPlugin","MANAGE","plugins","register","exports"],"sources":["index.ts"],"sourcesContent":["import { createCmsGraphQLSchemaPlugin } from \"~/plugins\";\nimport { ErrorResponse, Response } from \"@webiny/handler-graphql\";\nimport { ContextPlugin } from \"@webiny/handler\";\nimport type { CmsContext } from \"~/types\";\n\nconst plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type CmsExportStructureResponse {\n data: String\n error: CmsError\n }\n\n input CmsImportStructureGroupInput {\n id: ID!\n name: String!\n slug: String\n description: String\n icon: String!\n }\n\n input CmsImportStructureModelInput {\n name: String!\n singularApiName: String!\n pluralApiName: String!\n modelId: String!\n group: String!\n icon: String\n description: String\n layout: [[ID!]!]!\n fields: [CmsContentModelFieldInput!]!\n titleFieldId: String!\n descriptionFieldId: String\n imageFieldId: String\n tags: [String!]\n }\n\n enum CmsImportGroupStructureAction {\n create\n update\n code\n none\n }\n\n enum CmsImportModelStructureAction {\n create\n update\n code\n none\n }\n\n input CmsImportStructureInput {\n groups: [CmsImportStructureGroupInput!]!\n models: [CmsImportStructureModelInput!]!\n }\n\n type CmsImportValidateResponseDataGroupResultItem {\n id: String\n name: String\n }\n\n type CmsImportValidateResponseDataGroupResult {\n group: CmsImportValidateResponseDataGroupResultItem!\n error: CmsError\n action: CmsImportGroupStructureAction\n }\n\n type CmsImportValidateResponseDataModelResultItem {\n modelId: String\n name: String\n group: String\n }\n\n type CmsImportValidateResponseDataModelResult {\n model: CmsImportValidateResponseDataModelResultItem!\n related: [String!]\n error: CmsError\n action: CmsImportModelStructureAction\n }\n\n type CmsImportValidateResponseData {\n groups: [CmsImportValidateResponseDataGroupResult!]!\n models: [CmsImportValidateResponseDataModelResult!]!\n message: String!\n }\n\n type CmsImportValidateResponse {\n data: CmsImportValidateResponseData\n error: CmsError\n }\n\n type CmsImportStructureResponseDataGroupResultItem {\n id: String!\n name: String!\n }\n type CmsImportStructureResponseDataGroupResult {\n group: CmsImportStructureResponseDataGroupResultItem!\n error: CmsError\n action: CmsImportGroupStructureAction\n imported: Boolean\n }\n\n type CmsImportStructureResponseDataResultItem {\n modelId: String!\n name: String!\n group: String!\n }\n\n type CmsImportStructureResponseDataModelResult {\n model: CmsImportStructureResponseDataResultItem!\n related: [String!]\n error: CmsError\n action: CmsImportModelStructureAction\n imported: Boolean\n }\n\n type CmsImportStructureResponseData {\n groups: [CmsImportStructureResponseDataGroupResult!]!\n models: [CmsImportStructureResponseDataModelResult!]!\n message: String\n }\n\n type CmsImportStructureResponse {\n data: CmsImportStructureResponseData\n error: CmsError\n }\n\n extend type Query {\n exportStructure(models: [String!]): CmsExportStructureResponse!\n }\n\n extend type Mutation {\n validateImportStructure(data: CmsImportStructureInput!): CmsImportValidateResponse!\n importStructure(data: CmsImportStructureInput!): CmsImportStructureResponse!\n }\n `,\n resolvers: {\n Query: {\n exportStructure: async (_, args, context) => {\n try {\n const result = await context.cms.export.structure({\n models: args.models\n });\n return new Response(JSON.stringify(result));\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n }\n },\n Mutation: {\n validateImportStructure: async (_, args, context) => {\n try {\n const result = await context.cms.importing.validate({\n data: args.data\n });\n return new Response(result);\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n },\n importStructure: async (_, args, context) => {\n try {\n const result = await context.cms.importing.structure({\n data: args.data\n });\n return new Response(result);\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n }\n }\n }\n});\nplugin.name = \"headless-cms.graphql.export\";\n\nexport const createExportGraphQL = () => {\n return new ContextPlugin<CmsContext>(async context => {\n if (!context.cms.MANAGE) {\n return;\n }\n context.plugins.register(plugin);\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAGA,MAAMG,MAAM,GAAG,IAAAC,qCAA4B,EAAC;EACxCC,QAAQ,EAAE,aAAc;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EACDC,SAAS,EAAE;IACPC,KAAK,EAAE;MACHC,eAAe,EAAE,MAAAA,CAAOC,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;QACzC,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,MAAM,CAACC,SAAS,CAAC;YAC9CC,MAAM,EAAEN,IAAI,CAACM;UACjB,CAAC,CAAC;UACF,OAAO,IAAIC,wBAAQ,CAACC,IAAI,CAACC,SAAS,CAACP,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,OAAOQ,EAAE,EAAE;UACT,OAAO,IAAIC,6BAAa,CAACD,EAAE,CAAC;QAChC;MACJ;IACJ,CAAC;IACDE,QAAQ,EAAE;MACNC,uBAAuB,EAAE,MAAAA,CAAOd,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;QACjD,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACW,SAAS,CAACC,QAAQ,CAAC;YAChDC,IAAI,EAAEhB,IAAI,CAACgB;UACf,CAAC,CAAC;UACF,OAAO,IAAIT,wBAAQ,CAACL,MAAM,CAAC;QAC/B,CAAC,CAAC,OAAOQ,EAAE,EAAE;UACT,OAAO,IAAIC,6BAAa,CAACD,EAAE,CAAC;QAChC;MACJ,CAAC;MACDO,eAAe,EAAE,MAAAA,CAAOlB,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;QACzC,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACW,SAAS,CAACT,SAAS,CAAC;YACjDW,IAAI,EAAEhB,IAAI,CAACgB;UACf,CAAC,CAAC;UACF,OAAO,IAAIT,wBAAQ,CAACL,MAAM,CAAC;QAC/B,CAAC,CAAC,OAAOQ,EAAE,EAAE;UACT,OAAO,IAAIC,6BAAa,CAACD,EAAE,CAAC;QAChC;MACJ;IACJ;EACJ;AACJ,CAAC,CAAC;AACFjB,MAAM,CAACyB,IAAI,GAAG,6BAA6B;AAEpC,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACrC,OAAO,IAAIC,sBAAa,CAAa,MAAMnB,OAAO,IAAI;IAClD,IAAI,CAACA,OAAO,CAACE,GAAG,CAACkB,MAAM,EAAE;MACrB;IACJ;IACApB,OAAO,CAACqB,OAAO,CAACC,QAAQ,CAAC9B,MAAM,CAAC;EACpC,CAAC,CAAC;AACN,CAAC;AAAC+B,OAAA,CAAAL,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
package/export/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_crud","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_graphql"],"sources":["index.ts"],"sourcesContent":["export * from \"./crud\";\nexport * from \"./graphql\";\n"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,KAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,KAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,KAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,QAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,QAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,QAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,QAAA,CAAAL,GAAA;IAAA;EAAA;AAAA"}
|
|
1
|
+
{"version":3,"names":["_crud","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_graphql"],"sources":["index.ts"],"sourcesContent":["export * from \"./crud\";\nexport * from \"./graphql\";\n"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,KAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,KAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,KAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,QAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,QAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,QAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,QAAA,CAAAL,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
|
package/export/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CmsGroup, CmsModel } from "../types";
|
|
1
|
+
import type { CmsGroup, CmsModel } from "../types";
|
|
2
2
|
export interface CmsImportError {
|
|
3
3
|
message: string;
|
|
4
4
|
code: string | null;
|
|
@@ -17,8 +17,8 @@ export declare enum CmsImportAction {
|
|
|
17
17
|
export interface HeadlessCmsExportStructureParams {
|
|
18
18
|
models?: string[];
|
|
19
19
|
}
|
|
20
|
-
export
|
|
21
|
-
export interface SanitizedCmsModel extends Pick<CmsModel, "modelId" | "fields" | "titleFieldId" | "descriptionFieldId" | "imageFieldId" | "layout" | "icon" | "singularApiName" | "pluralApiName" | "name" | "description"> {
|
|
20
|
+
export type SanitizedCmsGroup = Pick<CmsGroup, "id" | "name" | "slug" | "description" | "icon">;
|
|
21
|
+
export interface SanitizedCmsModel extends Pick<CmsModel, "modelId" | "fields" | "titleFieldId" | "descriptionFieldId" | "imageFieldId" | "layout" | "icon" | "singularApiName" | "pluralApiName" | "name" | "description" | "tags"> {
|
|
22
22
|
group: string;
|
|
23
23
|
}
|
|
24
24
|
export interface HeadlessCmsExportStructureResponse {
|
|
@@ -91,8 +91,8 @@ export interface InvalidCmsModelResult {
|
|
|
91
91
|
action: CmsImportAction;
|
|
92
92
|
error: CmsImportError;
|
|
93
93
|
}
|
|
94
|
-
export
|
|
95
|
-
export
|
|
94
|
+
export type ValidatedCmsGroupResult = ValidCmsGroupResult | InvalidCmsGroupResult;
|
|
95
|
+
export type ValidatedCmsModelResult = ValidCmsModelResult | InvalidCmsModelResult;
|
|
96
96
|
export interface HeadlessCmsImportValidateResponse {
|
|
97
97
|
groups: ValidatedCmsGroupResult[];
|
|
98
98
|
models: ValidatedCmsModelResult[];
|
package/export/types.js
CHANGED
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.CmsImportAction = void 0;
|
|
7
|
-
let CmsImportAction = /*#__PURE__*/function (CmsImportAction) {
|
|
7
|
+
let CmsImportAction = exports.CmsImportAction = /*#__PURE__*/function (CmsImportAction) {
|
|
8
8
|
CmsImportAction["CREATE"] = "create";
|
|
9
9
|
CmsImportAction["UPDATE"] = "update";
|
|
10
10
|
CmsImportAction["CODE"] = "code";
|
|
@@ -17,6 +17,5 @@ let CmsImportAction = /*#__PURE__*/function (CmsImportAction) {
|
|
|
17
17
|
/**
|
|
18
18
|
* Interface for the main context interface.
|
|
19
19
|
*/
|
|
20
|
-
exports.CmsImportAction = CmsImportAction;
|
|
21
20
|
|
|
22
21
|
//# sourceMappingURL=types.js.map
|
package/export/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CmsImportAction","exports"],"sources":["types.ts"],"sourcesContent":["import { CmsGroup, CmsModel } from \"~/types\";\n\nexport interface CmsImportError {\n message: string;\n code: string | null;\n data?: Record<string, any> | null;\n stack?: any;\n}\n\nexport enum CmsImportAction {\n CREATE = \"create\",\n UPDATE = \"update\",\n CODE = \"code\",\n NONE = \"none\"\n}\n/**\n * Structure export - groups and models.\n */\n\nexport interface HeadlessCmsExportStructureParams {\n models?: string[];\n}\n\nexport type SanitizedCmsGroup = Pick<CmsGroup, \"id\" | \"name\" | \"slug\" | \"description\" | \"icon\">;\n\nexport interface SanitizedCmsModel\n extends Pick<\n CmsModel,\n | \"modelId\"\n | \"fields\"\n | \"titleFieldId\"\n | \"descriptionFieldId\"\n | \"imageFieldId\"\n | \"layout\"\n | \"icon\"\n | \"singularApiName\"\n | \"pluralApiName\"\n | \"name\"\n | \"description\"\n > {\n group: string;\n}\n\nexport interface HeadlessCmsExportStructureResponse {\n groups: SanitizedCmsGroup[];\n models: SanitizedCmsModel[];\n}\n\nexport interface HeadlessCmsExportStructure {\n (params: HeadlessCmsExportStructureParams): Promise<HeadlessCmsExportStructureResponse>;\n}\n\nexport interface HeadlessCmsImportStructureParamsDataModel\n extends Omit<Partial<CmsModel>, \"group\"> {\n group?: string;\n}\n\nexport interface CmsImportStructureParamsData {\n groups: Partial<CmsGroup>[];\n models: HeadlessCmsImportStructureParamsDataModel[];\n}\n\nexport interface HeadlessCmsImportStructureParams {\n data: CmsImportStructureParamsData;\n}\n\nexport interface HeadlessCmsImportValidateParams {\n data: CmsImportStructureParamsData;\n}\n\nexport interface CmsGroupImportResult {\n action: CmsImportAction;\n group: Partial<Pick<CmsGroup, \"id\" | \"name\">>;\n error?: CmsImportError;\n imported: boolean;\n}\n\nexport interface CmsModelImportResult {\n action: CmsImportAction;\n model: Partial<Pick<CmsModel, \"modelId\" | \"name\">> & {\n group: string;\n };\n related?: string[] | null;\n error?: CmsImportError;\n imported: boolean;\n}\n\nexport interface HeadlessCmsImportStructureResponse {\n groups: CmsGroupImportResult[];\n models: CmsModelImportResult[];\n message?: string | null;\n error?: string;\n}\n\nexport interface HeadlessCmsImportStructure {\n (params: HeadlessCmsImportStructureParams): Promise<HeadlessCmsImportStructureResponse>;\n}\n\nexport interface ValidCmsGroupResult {\n group: CmsGroup;\n action: CmsImportAction;\n target?: string;\n error?: never;\n}\n\nexport interface InvalidCmsGroupResult {\n group: CmsGroup;\n action: CmsImportAction;\n target?: never;\n error: CmsImportError;\n}\n\nexport interface ValidatedCmsModel extends Omit<CmsModel, \"group\"> {\n group: string;\n}\nexport interface ValidCmsModelResult {\n model: ValidatedCmsModel;\n related: string[];\n action: CmsImportAction;\n error?: never;\n}\n\nexport interface InvalidCmsModelResult {\n model: ValidatedCmsModel;\n action: CmsImportAction;\n error: CmsImportError;\n}\n\nexport type ValidatedCmsGroupResult = ValidCmsGroupResult | InvalidCmsGroupResult;\nexport type ValidatedCmsModelResult = ValidCmsModelResult | InvalidCmsModelResult;\n\nexport interface HeadlessCmsImportValidateResponse {\n groups: ValidatedCmsGroupResult[];\n models: ValidatedCmsModelResult[];\n message: string;\n}\n\nexport interface HeadlessCmsImportValidate {\n (params: HeadlessCmsImportValidateParams): Promise<HeadlessCmsImportValidateResponse>;\n}\n\n/**\n * Interface for the main context interface.\n */\nexport interface HeadlessCmsExport {\n structure: HeadlessCmsExportStructure;\n}\n\nexport interface HeadlessCmsImport {\n validate: HeadlessCmsImportValidate;\n structure: HeadlessCmsImportStructure;\n}\n"],"mappings":";;;;;;IASYA,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAM3B;AACA;AACA;
|
|
1
|
+
{"version":3,"names":["CmsImportAction","exports"],"sources":["types.ts"],"sourcesContent":["import type { CmsGroup, CmsModel } from \"~/types\";\n\nexport interface CmsImportError {\n message: string;\n code: string | null;\n data?: Record<string, any> | null;\n stack?: any;\n}\n\nexport enum CmsImportAction {\n CREATE = \"create\",\n UPDATE = \"update\",\n CODE = \"code\",\n NONE = \"none\"\n}\n/**\n * Structure export - groups and models.\n */\n\nexport interface HeadlessCmsExportStructureParams {\n models?: string[];\n}\n\nexport type SanitizedCmsGroup = Pick<CmsGroup, \"id\" | \"name\" | \"slug\" | \"description\" | \"icon\">;\n\nexport interface SanitizedCmsModel\n extends Pick<\n CmsModel,\n | \"modelId\"\n | \"fields\"\n | \"titleFieldId\"\n | \"descriptionFieldId\"\n | \"imageFieldId\"\n | \"layout\"\n | \"icon\"\n | \"singularApiName\"\n | \"pluralApiName\"\n | \"name\"\n | \"description\"\n | \"tags\"\n > {\n group: string;\n}\n\nexport interface HeadlessCmsExportStructureResponse {\n groups: SanitizedCmsGroup[];\n models: SanitizedCmsModel[];\n}\n\nexport interface HeadlessCmsExportStructure {\n (params: HeadlessCmsExportStructureParams): Promise<HeadlessCmsExportStructureResponse>;\n}\n\nexport interface HeadlessCmsImportStructureParamsDataModel\n extends Omit<Partial<CmsModel>, \"group\"> {\n group?: string;\n}\n\nexport interface CmsImportStructureParamsData {\n groups: Partial<CmsGroup>[];\n models: HeadlessCmsImportStructureParamsDataModel[];\n}\n\nexport interface HeadlessCmsImportStructureParams {\n data: CmsImportStructureParamsData;\n}\n\nexport interface HeadlessCmsImportValidateParams {\n data: CmsImportStructureParamsData;\n}\n\nexport interface CmsGroupImportResult {\n action: CmsImportAction;\n group: Partial<Pick<CmsGroup, \"id\" | \"name\">>;\n error?: CmsImportError;\n imported: boolean;\n}\n\nexport interface CmsModelImportResult {\n action: CmsImportAction;\n model: Partial<Pick<CmsModel, \"modelId\" | \"name\">> & {\n group: string;\n };\n related?: string[] | null;\n error?: CmsImportError;\n imported: boolean;\n}\n\nexport interface HeadlessCmsImportStructureResponse {\n groups: CmsGroupImportResult[];\n models: CmsModelImportResult[];\n message?: string | null;\n error?: string;\n}\n\nexport interface HeadlessCmsImportStructure {\n (params: HeadlessCmsImportStructureParams): Promise<HeadlessCmsImportStructureResponse>;\n}\n\nexport interface ValidCmsGroupResult {\n group: CmsGroup;\n action: CmsImportAction;\n target?: string;\n error?: never;\n}\n\nexport interface InvalidCmsGroupResult {\n group: CmsGroup;\n action: CmsImportAction;\n target?: never;\n error: CmsImportError;\n}\n\nexport interface ValidatedCmsModel extends Omit<CmsModel, \"group\"> {\n group: string;\n}\nexport interface ValidCmsModelResult {\n model: ValidatedCmsModel;\n related: string[];\n action: CmsImportAction;\n error?: never;\n}\n\nexport interface InvalidCmsModelResult {\n model: ValidatedCmsModel;\n action: CmsImportAction;\n error: CmsImportError;\n}\n\nexport type ValidatedCmsGroupResult = ValidCmsGroupResult | InvalidCmsGroupResult;\nexport type ValidatedCmsModelResult = ValidCmsModelResult | InvalidCmsModelResult;\n\nexport interface HeadlessCmsImportValidateResponse {\n groups: ValidatedCmsGroupResult[];\n models: ValidatedCmsModelResult[];\n message: string;\n}\n\nexport interface HeadlessCmsImportValidate {\n (params: HeadlessCmsImportValidateParams): Promise<HeadlessCmsImportValidateResponse>;\n}\n\n/**\n * Interface for the main context interface.\n */\nexport interface HeadlessCmsExport {\n structure: HeadlessCmsExportStructure;\n}\n\nexport interface HeadlessCmsImport {\n validate: HeadlessCmsImportValidate;\n structure: HeadlessCmsImportStructure;\n}\n"],"mappings":";;;;;;IASYA,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAM3B;AACA;AACA;AA6HA;AACA;AACA","ignoreList":[]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ConvertParams } from "../plugins/CmsModelFieldConverterPlugin";
|
|
2
|
+
import { CmsModelFieldConverterPlugin } from "../plugins/CmsModelFieldConverterPlugin";
|
|
3
|
+
import type { GenericRecord } from "@webiny/api/types";
|
|
2
4
|
export declare class CmsModelDefaultFieldConverterPlugin extends CmsModelFieldConverterPlugin {
|
|
3
5
|
name: string;
|
|
4
6
|
getFieldType(): string;
|
|
5
|
-
convertToStorage({ field, value }: ConvertParams):
|
|
6
|
-
convertFromStorage({ field, value }: ConvertParams):
|
|
7
|
+
convertToStorage({ field, value }: ConvertParams): GenericRecord;
|
|
8
|
+
convertFromStorage({ field, value }: ConvertParams): GenericRecord;
|
|
7
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_CmsModelFieldConverterPlugin","require","CmsModelDefaultFieldConverterPlugin","CmsModelFieldConverterPlugin","name","getFieldType","convertToStorage","field","value","undefined","storageId","convertFromStorage","fieldId","exports"],"sources":["CmsModelDefaultFieldConverterPlugin.ts"],"sourcesContent":["import {\
|
|
1
|
+
{"version":3,"names":["_CmsModelFieldConverterPlugin","require","CmsModelDefaultFieldConverterPlugin","CmsModelFieldConverterPlugin","name","getFieldType","convertToStorage","field","value","undefined","storageId","convertFromStorage","fieldId","exports"],"sources":["CmsModelDefaultFieldConverterPlugin.ts"],"sourcesContent":["import type { ConvertParams } from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport { CmsModelFieldConverterPlugin } from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport type { GenericRecord } from \"@webiny/api/types\";\n\nexport class CmsModelDefaultFieldConverterPlugin extends CmsModelFieldConverterPlugin {\n public override name = \"cms.field.converter.default\";\n\n public override getFieldType(): string {\n return \"*\";\n }\n\n public override convertToStorage({ field, value }: ConvertParams): GenericRecord {\n /**\n * Do not convert if no value was passed.\n */\n if (value === undefined) {\n return {};\n }\n /**\n * A single and multiple values field conversion;\n */\n return {\n [field.storageId]: value\n };\n }\n\n public override convertFromStorage({ field, value }: ConvertParams): GenericRecord {\n /**\n * Do not convert if no value was passed.\n */\n if (value === undefined) {\n return {};\n }\n /**\n * A single and multiple values field conversion;\n */\n return {\n [field.fieldId]: value\n };\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,6BAAA,GAAAC,OAAA;AAGO,MAAMC,mCAAmC,SAASC,0DAA4B,CAAC;EAClEC,IAAI,GAAG,6BAA6B;EAEpCC,YAAYA,CAAA,EAAW;IACnC,OAAO,GAAG;EACd;EAEgBC,gBAAgBA,CAAC;IAAEC,KAAK;IAAEC;EAAqB,CAAC,EAAiB;IAC7E;AACR;AACA;IACQ,IAAIA,KAAK,KAAKC,SAAS,EAAE;MACrB,OAAO,CAAC,CAAC;IACb;IACA;AACR;AACA;IACQ,OAAO;MACH,CAACF,KAAK,CAACG,SAAS,GAAGF;IACvB,CAAC;EACL;EAEgBG,kBAAkBA,CAAC;IAAEJ,KAAK;IAAEC;EAAqB,CAAC,EAAiB;IAC/E;AACR;AACA;IACQ,IAAIA,KAAK,KAAKC,SAAS,EAAE;MACrB,OAAO,CAAC,CAAC;IACb;IACA;AACR;AACA;IACQ,OAAO;MACH,CAACF,KAAK,CAACK,OAAO,GAAGJ;IACrB,CAAC;EACL;AACJ;AAACK,OAAA,CAAAX,mCAAA,GAAAA,mCAAA","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { ConvertParams } from "../plugins/CmsModelFieldConverterPlugin";
|
|
2
|
+
import { CmsModelFieldConverterPlugin } from "../plugins/CmsModelFieldConverterPlugin";
|
|
3
|
+
import type { CmsEntryValues, CmsModelDynamicZoneField } from "../types";
|
|
3
4
|
export declare class CmsModelDynamicZoneFieldConverterPlugin extends CmsModelFieldConverterPlugin {
|
|
4
5
|
name: string;
|
|
5
6
|
getFieldType(): string;
|
|
@@ -26,27 +26,25 @@ class CmsModelDynamicZoneFieldConverterPlugin extends _CmsModelFieldConverterPlu
|
|
|
26
26
|
return {};
|
|
27
27
|
}
|
|
28
28
|
if (field.multipleValues) {
|
|
29
|
-
if (
|
|
30
|
-
|
|
31
|
-
field
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
if (Array.isArray(value)) {
|
|
30
|
+
return {
|
|
31
|
+
[field.storageId]: value.map(item => {
|
|
32
|
+
return this.processToStorage({
|
|
33
|
+
templates,
|
|
34
|
+
converterCollection,
|
|
35
|
+
value: item
|
|
36
|
+
});
|
|
37
|
+
})
|
|
38
|
+
};
|
|
34
39
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
templates,
|
|
39
|
-
converterCollection,
|
|
40
|
-
value: item
|
|
41
|
-
});
|
|
42
|
-
})
|
|
43
|
-
};
|
|
40
|
+
|
|
41
|
+
// If a multi-value dynamic zone receives anything other than an array, ignore the value.
|
|
42
|
+
return {};
|
|
44
43
|
}
|
|
44
|
+
|
|
45
|
+
// If a single-value dynamic zone receives an array, ignore the value.
|
|
45
46
|
if (Array.isArray(value)) {
|
|
46
|
-
|
|
47
|
-
field,
|
|
48
|
-
value
|
|
49
|
-
});
|
|
47
|
+
return {};
|
|
50
48
|
}
|
|
51
49
|
const processedValue = this.processToStorage({
|
|
52
50
|
templates,
|
|
@@ -62,53 +60,18 @@ class CmsModelDynamicZoneFieldConverterPlugin extends _CmsModelFieldConverterPlu
|
|
|
62
60
|
templates,
|
|
63
61
|
converterCollection
|
|
64
62
|
} = params;
|
|
65
|
-
|
|
63
|
+
const {
|
|
66
64
|
value
|
|
67
65
|
} = params;
|
|
68
66
|
if (value === null || value === undefined) {
|
|
69
67
|
return undefined;
|
|
70
68
|
}
|
|
71
|
-
/**
|
|
72
|
-
* There are two ways converter needs to work:
|
|
73
|
-
* 1. when there is a _templateId
|
|
74
|
-
* 2. when there is a key which identifies which template is the data for
|
|
75
|
-
*/
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* When we have a template key, everything is simple.
|
|
79
|
-
*/
|
|
80
69
|
const templateId = value._templateId;
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
template = templates.find(t => {
|
|
85
|
-
return templateId === t.id;
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* When we do not have a templateId, then the template identifier is the key of the value object.
|
|
90
|
-
* But at that point, values under that key become the value we are working with later on.
|
|
91
|
-
*/
|
|
92
|
-
//
|
|
93
|
-
else {
|
|
94
|
-
const keys = Object.keys(value);
|
|
95
|
-
if (keys.length === 0) {
|
|
96
|
-
return undefined;
|
|
97
|
-
} else if (keys.length > 1) {
|
|
98
|
-
throw new _error.default("There cannot be more than one dynamic zone template in a single dynamic zone field.", "DYNAMIC_ZONE_TOO_MANY_TEMPLATES", {
|
|
99
|
-
templates: keys
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
graphQlName = keys[0];
|
|
103
|
-
template = templates.find(t => t.gqlTypeName === graphQlName);
|
|
104
|
-
}
|
|
70
|
+
const template = templates.find(t => {
|
|
71
|
+
return templateId === t.id;
|
|
72
|
+
});
|
|
105
73
|
if (!template) {
|
|
106
|
-
|
|
107
|
-
templateId,
|
|
108
|
-
graphQlName
|
|
109
|
-
});
|
|
110
|
-
} else if (graphQlName) {
|
|
111
|
-
value = value[graphQlName];
|
|
74
|
+
return undefined;
|
|
112
75
|
}
|
|
113
76
|
return template.fields.reduce((values, field) => {
|
|
114
77
|
const converter = converterCollection.getConverter(field.type);
|
|
@@ -133,14 +96,9 @@ class CmsModelDynamicZoneFieldConverterPlugin extends _CmsModelFieldConverterPlu
|
|
|
133
96
|
return {};
|
|
134
97
|
}
|
|
135
98
|
if (field.multipleValues) {
|
|
136
|
-
|
|
137
|
-
throw new _error.default(`Dynamic zone field "${field.fieldId}" is expecting an array value.`, "DYNAMIC_ZONE_EXPECTING_ARRAY_VALUE", {
|
|
138
|
-
field,
|
|
139
|
-
value
|
|
140
|
-
});
|
|
141
|
-
}
|
|
99
|
+
const arrayValue = Array.isArray(value) ? value : [];
|
|
142
100
|
return {
|
|
143
|
-
[field.fieldId]:
|
|
101
|
+
[field.fieldId]: arrayValue.map(item => {
|
|
144
102
|
return this.processFromStorage({
|
|
145
103
|
templates,
|
|
146
104
|
converterCollection,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_error","_interopRequireDefault","require","_CmsModelFieldConverterPlugin","CmsModelDynamicZoneFieldConverterPlugin","CmsModelFieldConverterPlugin","name","getFieldType","getTemplates","field","settings","templates","convertToStorage","params","value","converterCollection","length","multipleValues","Array","isArray","WebinyError","fieldId","storageId","map","item","processToStorage","processedValue","undefined","templateId","_templateId","graphQlName","template","find","t","id","keys","Object","gqlTypeName","fields","reduce","values","converter","getConverter","type","converted","assign","convertFromStorage","processFromStorage","exports"],"sources":["CmsModelDynamicZoneFieldConverterPlugin.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n CmsModelFieldConverterPlugin,\n ConvertParams\n} from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport { CmsDynamicZoneTemplate, CmsEntryValues, CmsModelDynamicZoneField } from \"~/types\";\nimport { ConverterCollection } from \"~/utils/converters/ConverterCollection\";\n\ninterface DynamicZoneValue {\n [key: string]: any;\n}\n\ninterface ProcessValue {\n templates: CmsDynamicZoneTemplate[];\n value: DynamicZoneValue | null;\n converterCollection: ConverterCollection;\n}\n\nexport class CmsModelDynamicZoneFieldConverterPlugin extends CmsModelFieldConverterPlugin {\n public override name = \"cms.field.converter.dynamicZone\";\n\n public override getFieldType(): string {\n return \"dynamicZone\";\n }\n\n private getTemplates(field: CmsModelDynamicZoneField): CmsDynamicZoneTemplate[] {\n return field.settings?.templates || [];\n }\n\n public override convertToStorage(\n params: ConvertParams<CmsModelDynamicZoneField>\n ): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const templates = this.getTemplates(field);\n\n if (templates.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n if (!Array.isArray(value)) {\n throw new WebinyError(\n `Dynamic zone field \"${field.fieldId}\" is expecting an array value.`,\n \"DYNAMIC_ZONE_EXPECTING_ARRAY_VALUE\",\n {\n field,\n value\n }\n );\n }\n return {\n [field.storageId]: value.map(item => {\n return this.processToStorage({\n templates,\n converterCollection,\n value: item\n });\n })\n };\n }\n if (Array.isArray(value)) {\n throw new WebinyError(\n `Dynamic zone field \"${field.fieldId}\" is expecting a non-array value.`,\n \"DYNAMIC_ZONE_EXPECTING_NON_ARRAY_VALUE\",\n {\n field,\n value\n }\n );\n }\n\n const processedValue = this.processToStorage({\n templates,\n converterCollection,\n value\n });\n return {\n [field.storageId]: processedValue\n };\n }\n\n private processToStorage(params: ProcessValue) {\n const { templates, converterCollection } = params;\n let { value } = params;\n if (value === null || value === undefined) {\n return undefined;\n }\n /**\n * There are two ways converter needs to work:\n * 1. when there is a _templateId\n * 2. when there is a key which identifies which template is the data for\n */\n\n /**\n * When we have a template key, everything is simple.\n */\n const templateId = value._templateId;\n let graphQlName: string | undefined = undefined;\n let template: CmsDynamicZoneTemplate | undefined = undefined;\n if (templateId) {\n template = templates.find(t => {\n return templateId === t.id;\n });\n }\n /**\n * When we do not have a templateId, then the template identifier is the key of the value object.\n * But at that point, values under that key become the value we are working with later on.\n */\n //\n else {\n const keys = Object.keys(value);\n if (keys.length === 0) {\n return undefined;\n } else if (keys.length > 1) {\n throw new WebinyError(\n \"There cannot be more than one dynamic zone template in a single dynamic zone field.\",\n \"DYNAMIC_ZONE_TOO_MANY_TEMPLATES\",\n {\n templates: keys\n }\n );\n }\n graphQlName = keys[0] as string;\n template = templates.find(t => t.gqlTypeName === graphQlName);\n }\n\n if (!template) {\n throw new WebinyError(\"Unknown template - converting to storage.\", \"UNKNOWN_TEMPLATE\", {\n templateId,\n graphQlName\n });\n } else if (graphQlName) {\n value = value[graphQlName];\n }\n\n return template.fields.reduce<Record<string, any>>(\n (values, field) => {\n const converter = converterCollection.getConverter(field.type);\n const converted = converter.convertToStorage({\n field,\n value: value ? value[field.fieldId] : undefined\n });\n Object.assign(values, converted);\n return values;\n },\n {\n _templateId: template.id\n }\n );\n }\n\n public override convertFromStorage(\n params: ConvertParams<CmsModelDynamicZoneField>\n ): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const templates = this.getTemplates(field);\n\n if (templates.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n if (!Array.isArray(value)) {\n throw new WebinyError(\n `Dynamic zone field \"${field.fieldId}\" is expecting an array value.`,\n \"DYNAMIC_ZONE_EXPECTING_ARRAY_VALUE\",\n {\n field,\n value\n }\n );\n }\n return {\n [field.fieldId]: value.map(item => {\n return this.processFromStorage({\n templates,\n converterCollection,\n value: item\n });\n })\n };\n }\n if (Array.isArray(value)) {\n throw new WebinyError(\n `Dynamic zone field \"${field.fieldId}\" is expecting a non-array value.`,\n \"DYNAMIC_ZONE_EXPECTING_NON_ARRAY_VALUE\",\n {\n field,\n value\n }\n );\n }\n\n const processedValue = this.processFromStorage({\n templates,\n converterCollection,\n value\n });\n return {\n [field.fieldId]: processedValue\n };\n }\n\n private processFromStorage(params: ProcessValue) {\n const { templates, value, converterCollection } = params;\n if (value === null || value === undefined) {\n return undefined;\n }\n\n const { _templateId } = value;\n\n const template = templates.find(t => t.id === _templateId);\n if (!template) {\n throw new WebinyError(\n \"Unknown template - converting from storage.\",\n \"UNKNOWN_TEMPLATE\",\n {\n templateId: _templateId\n }\n );\n }\n\n return template.fields.reduce<Record<string, any>>(\n (values, field) => {\n const converter = converterCollection.getConverter(field.type);\n const converted = converter.convertFromStorage({\n field,\n value: value[field.storageId]\n });\n Object.assign(values, converted);\n return values;\n },\n {\n _templateId: template.id\n }\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","_CmsModelFieldConverterPlugin","CmsModelDynamicZoneFieldConverterPlugin","CmsModelFieldConverterPlugin","name","getFieldType","getTemplates","field","settings","templates","convertToStorage","params","value","converterCollection","length","multipleValues","Array","isArray","storageId","map","item","processToStorage","processedValue","undefined","templateId","_templateId","template","find","t","id","fields","reduce","values","converter","getConverter","type","converted","fieldId","Object","assign","convertFromStorage","arrayValue","processFromStorage","WebinyError","exports"],"sources":["CmsModelDynamicZoneFieldConverterPlugin.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type { ConvertParams } from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport { CmsModelFieldConverterPlugin } from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport type { CmsDynamicZoneTemplate, CmsEntryValues, CmsModelDynamicZoneField } from \"~/types\";\nimport type { ConverterCollection } from \"~/utils/converters/ConverterCollection\";\nimport type { GenericRecord } from \"@webiny/api/types\";\n\ntype DynamicZoneValue = GenericRecord<string>;\n\ninterface ProcessValue {\n templates: CmsDynamicZoneTemplate[];\n value: DynamicZoneValue | null;\n converterCollection: ConverterCollection;\n}\n\nexport class CmsModelDynamicZoneFieldConverterPlugin extends CmsModelFieldConverterPlugin {\n public override name = \"cms.field.converter.dynamicZone\";\n\n public override getFieldType(): string {\n return \"dynamicZone\";\n }\n\n private getTemplates(field: CmsModelDynamicZoneField): CmsDynamicZoneTemplate[] {\n return field.settings?.templates || [];\n }\n\n public override convertToStorage(\n params: ConvertParams<CmsModelDynamicZoneField>\n ): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const templates = this.getTemplates(field);\n\n if (templates.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n if (Array.isArray(value)) {\n return {\n [field.storageId]: value.map(item => {\n return this.processToStorage({\n templates,\n converterCollection,\n value: item\n });\n })\n };\n }\n\n // If a multi-value dynamic zone receives anything other than an array, ignore the value.\n return {};\n }\n\n // If a single-value dynamic zone receives an array, ignore the value.\n if (Array.isArray(value)) {\n return {};\n }\n\n const processedValue = this.processToStorage({\n templates,\n converterCollection,\n value\n });\n\n return {\n [field.storageId]: processedValue\n };\n }\n\n private processToStorage(params: ProcessValue) {\n const { templates, converterCollection } = params;\n const { value } = params;\n if (value === null || value === undefined) {\n return undefined;\n }\n\n const templateId = value._templateId;\n const template = templates.find(t => {\n return templateId === t.id;\n });\n\n if (!template) {\n return undefined;\n }\n\n return template.fields.reduce<GenericRecord<string>>(\n (values, field) => {\n const converter = converterCollection.getConverter(field.type);\n const converted = converter.convertToStorage({\n field,\n value: value ? value[field.fieldId] : undefined\n });\n Object.assign(values, converted);\n return values;\n },\n {\n _templateId: template.id\n }\n );\n }\n\n public override convertFromStorage(\n params: ConvertParams<CmsModelDynamicZoneField>\n ): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const templates = this.getTemplates(field);\n\n if (templates.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n const arrayValue = Array.isArray(value) ? value : [];\n\n return {\n [field.fieldId]: arrayValue.map(item => {\n return this.processFromStorage({\n templates,\n converterCollection,\n value: item\n });\n })\n };\n }\n\n if (Array.isArray(value)) {\n throw new WebinyError(\n `Dynamic zone field \"${field.fieldId}\" is expecting a non-array value.`,\n \"DYNAMIC_ZONE_EXPECTING_NON_ARRAY_VALUE\",\n {\n field,\n value\n }\n );\n }\n\n const processedValue = this.processFromStorage({\n templates,\n converterCollection,\n value\n });\n\n return {\n [field.fieldId]: processedValue\n };\n }\n\n private processFromStorage(params: ProcessValue) {\n const { templates, value, converterCollection } = params;\n if (value === null || value === undefined) {\n return undefined;\n }\n\n const { _templateId } = value;\n\n const template = templates.find(t => t.id === _templateId);\n if (!template) {\n throw new WebinyError(\n \"Unknown template - converting from storage.\",\n \"UNKNOWN_TEMPLATE\",\n {\n templateId: _templateId\n }\n );\n }\n\n return template.fields.reduce<GenericRecord<string>>(\n (values, field) => {\n const converter = converterCollection.getConverter(field.type);\n const converted = converter.convertFromStorage({\n field,\n value: value[field.storageId]\n });\n Object.assign(values, converted);\n return values;\n },\n {\n _templateId: template.id\n }\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import type { ConvertParams } from "../plugins/CmsModelFieldConverterPlugin";
|
|
2
|
+
import { CmsModelFieldConverterPlugin } from "../plugins/CmsModelFieldConverterPlugin";
|
|
3
|
+
import type { CmsEntryValues } from "../types";
|
|
3
4
|
export declare class CmsModelObjectFieldConverterPlugin extends CmsModelFieldConverterPlugin {
|
|
4
5
|
name: string;
|
|
5
6
|
getFieldType(): string;
|
|
@@ -30,7 +30,7 @@ class CmsModelObjectFieldConverterPlugin extends _CmsModelFieldConverterPlugin.C
|
|
|
30
30
|
if (field.multipleValues) {
|
|
31
31
|
if (Array.isArray(value) === false) {
|
|
32
32
|
return {
|
|
33
|
-
[field.storageId]:
|
|
33
|
+
[field.storageId]: null
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
36
|
return {
|
|
@@ -149,7 +149,7 @@ class CmsModelObjectFieldConverterPlugin extends _CmsModelFieldConverterPlugin.C
|
|
|
149
149
|
if (field.multipleValues) {
|
|
150
150
|
if (Array.isArray(value) === false) {
|
|
151
151
|
return {
|
|
152
|
-
[field.fieldId]:
|
|
152
|
+
[field.fieldId]: null
|
|
153
153
|
};
|
|
154
154
|
}
|
|
155
155
|
return {
|