@webiny/api-headless-cms 0.0.0-unstable.de38392959 → 0.0.0-unstable.e0bfc55d5a
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 +197 -176
- 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 +1 -1
- 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 +2 -2
- package/graphqlFields/richText/RichTextPluginsProcessor.js.map +1 -1
- package/graphqlFields/richText/richTextResolver.d.ts +2 -2
- package/graphqlFields/richText/richTextResolver.js +4 -19
- package/graphqlFields/richText/richTextResolver.js.map +1 -1
- package/graphqlFields/richText.d.ts +1 -1
- 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 +1 -1
- package/htmlRenderer/LexicalRenderer.js.map +1 -1
- package/htmlRenderer/createLexicalHTMLRenderer.js +1 -1
- package/htmlRenderer/createLexicalHTMLRenderer.js.map +1 -1
- package/index.d.ts +13 -7
- package/index.js +67 -7
- 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 -38
- 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 +101 -19
- 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 +6 -6
- package/plugins/CmsRichTextRendererPlugin.js.map +1 -1
- 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.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":["_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 {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_CmsModelFieldConverterPlugin","require","CmsModelObjectFieldConverterPlugin","CmsModelFieldConverterPlugin","name","getFieldType","getChildFields","field","settings","fields","convertToStorage","params","value","converterCollection","childFields","length","multipleValues","Array","isArray","storageId","map","itemValue","processChildFieldsToStorage","child","parent","values","undefined","reduce","output","fieldId","childValue","convertFromStorage","processChildFieldsFromStorage","inputValues","exports"],"sources":["CmsModelObjectFieldConverterPlugin.ts"],"sourcesContent":["import {\n CmsModelFieldConverterPlugin,\n ConvertParams\n} from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport { CmsEntryValues, CmsModelFieldWithParent } from \"~/types\";\nimport { ConverterCollection } from \"~/utils/converters/ConverterCollection\";\n\ninterface ProcessChildFieldsParams {\n fields: CmsModelFieldWithParent[];\n value?: Record<string, any> | null;\n converterCollection: ConverterCollection;\n}\n\ninterface GetChildFieldsParams {\n field?: CmsModelFieldWithParent | null;\n}\n\nexport class CmsModelObjectFieldConverterPlugin extends CmsModelFieldConverterPlugin {\n public override name = \"cms.field.converter.object\";\n\n public override getFieldType(): string {\n return \"object\";\n }\n\n private getChildFields({ field }: GetChildFieldsParams): CmsModelFieldWithParent[] {\n return field?.settings?.fields || [];\n }\n\n public override convertToStorage(params: ConvertParams): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const childFields = this.getChildFields({\n field\n });\n if (childFields.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n if (Array.isArray(value) === false) {\n return {\n [field.storageId]: []\n };\n }\n return {\n [field.storageId]: value.map((itemValue: any) => {\n return this.processChildFieldsToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value: itemValue,\n converterCollection\n });\n })\n };\n }\n\n const values = this.processChildFieldsToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value,\n converterCollection\n });\n if (values === undefined) {\n return {};\n }\n\n return {\n [field.storageId]: values\n };\n }\n\n private processChildFieldsToStorage(\n params: ProcessChildFieldsParams\n ): CmsEntryValues | undefined {\n const { fields, value, converterCollection } = params;\n\n if (value === undefined || value === null) {\n return undefined;\n }\n\n return fields.reduce<CmsEntryValues>((output, field) => {\n const childFields = this.getChildFields({\n field\n });\n\n if (childFields.length > 0) {\n if (field.multipleValues) {\n if (Array.isArray(value[field.fieldId]) === false) {\n return output;\n }\n const values = value[field.fieldId].map((childValue: any) => {\n return converterCollection.convertToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: childValue\n });\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.storageId]: values\n };\n }\n /**\n * No need to process child fields if no value is provided.\n */\n if (!value[field.fieldId]) {\n return output;\n }\n const values = converterCollection.convertToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: value[field.fieldId]\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.storageId]: values\n };\n }\n\n if (value[field.fieldId] === undefined) {\n return output;\n }\n\n return {\n ...output,\n [field.storageId]: value[field.fieldId]\n };\n }, {});\n }\n\n public override convertFromStorage(params: ConvertParams): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const childFields = this.getChildFields({\n field\n });\n if (childFields.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n if (Array.isArray(value) === false) {\n return {\n [field.fieldId]: []\n };\n }\n return {\n [field.fieldId]: value.map((itemValue: any) => {\n return this.processChildFieldsFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value: itemValue,\n converterCollection\n });\n })\n };\n }\n\n const values = this.processChildFieldsFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value,\n converterCollection\n });\n\n if (values === undefined) {\n return {};\n }\n\n return {\n [field.fieldId]: values\n };\n }\n\n private processChildFieldsFromStorage(\n params: ProcessChildFieldsParams\n ): CmsEntryValues | undefined {\n const { fields, value, converterCollection } = params;\n\n if (value === undefined || value === null) {\n return undefined;\n }\n\n return fields.reduce<CmsEntryValues>((output, field) => {\n const childFields = this.getChildFields({\n field\n });\n\n if (childFields.length > 0) {\n if (field.multipleValues) {\n const inputValues = value[field.storageId] as unknown as Record<string, any>[];\n if (!inputValues || Array.isArray(inputValues) === false) {\n return output;\n }\n const values = inputValues.map(childValue => {\n return converterCollection.convertFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: childValue\n });\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.fieldId]: values\n };\n }\n /**\n * No need to process child fields if no value is provided.\n */\n if (!value[field.storageId]) {\n return output;\n }\n const values = converterCollection.convertFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: value[field.storageId]\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.fieldId]: values\n };\n }\n\n if (value[field.storageId] === undefined) {\n return output;\n }\n return {\n ...output,\n [field.fieldId]: value[field.storageId]\n };\n }, {});\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_CmsModelFieldConverterPlugin","require","CmsModelObjectFieldConverterPlugin","CmsModelFieldConverterPlugin","name","getFieldType","getChildFields","field","settings","fields","convertToStorage","params","value","converterCollection","childFields","length","multipleValues","Array","isArray","storageId","map","itemValue","processChildFieldsToStorage","child","parent","values","undefined","reduce","output","fieldId","childValue","convertFromStorage","processChildFieldsFromStorage","inputValues","exports"],"sources":["CmsModelObjectFieldConverterPlugin.ts"],"sourcesContent":["import type { ConvertParams } from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport { CmsModelFieldConverterPlugin } from \"~/plugins/CmsModelFieldConverterPlugin\";\nimport type { CmsEntryValues, CmsModelFieldWithParent } from \"~/types\";\nimport type { ConverterCollection } from \"~/utils/converters/ConverterCollection\";\nimport type { GenericRecord } from \"@webiny/api/types\";\n\ninterface ProcessChildFieldsParams {\n fields: CmsModelFieldWithParent[];\n value?: GenericRecord<string> | null;\n converterCollection: ConverterCollection;\n}\n\ninterface GetChildFieldsParams {\n field?: CmsModelFieldWithParent | null;\n}\n\nexport class CmsModelObjectFieldConverterPlugin extends CmsModelFieldConverterPlugin {\n public override name = \"cms.field.converter.object\";\n\n public override getFieldType(): string {\n return \"object\";\n }\n\n private getChildFields({ field }: GetChildFieldsParams): CmsModelFieldWithParent[] {\n return field?.settings?.fields || [];\n }\n\n public override convertToStorage(params: ConvertParams): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const childFields = this.getChildFields({\n field\n });\n if (childFields.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n if (Array.isArray(value) === false) {\n return {\n [field.storageId]: null\n };\n }\n return {\n [field.storageId]: value.map((itemValue: GenericRecord) => {\n return this.processChildFieldsToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value: itemValue,\n converterCollection\n });\n })\n };\n }\n\n const values = this.processChildFieldsToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value,\n converterCollection\n });\n if (values === undefined) {\n return {};\n }\n\n return {\n [field.storageId]: values\n };\n }\n\n private processChildFieldsToStorage(\n params: ProcessChildFieldsParams\n ): CmsEntryValues | undefined {\n const { fields, value, converterCollection } = params;\n\n if (value === undefined || value === null) {\n return undefined;\n }\n\n return fields.reduce<CmsEntryValues>((output, field) => {\n const childFields = this.getChildFields({\n field\n });\n\n if (childFields.length > 0) {\n if (field.multipleValues) {\n if (Array.isArray(value[field.fieldId]) === false) {\n return output;\n }\n const values = value[field.fieldId].map((childValue: GenericRecord) => {\n return converterCollection.convertToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: childValue\n });\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.storageId]: values\n };\n }\n /**\n * No need to process child fields if no value is provided.\n */\n if (!value[field.fieldId]) {\n return output;\n }\n const values = converterCollection.convertToStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: value[field.fieldId]\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.storageId]: values\n };\n }\n\n if (value[field.fieldId] === undefined) {\n return output;\n }\n\n return {\n ...output,\n [field.storageId]: value[field.fieldId]\n };\n }, {});\n }\n\n public override convertFromStorage(params: ConvertParams): CmsEntryValues {\n const { field, value, converterCollection } = params;\n\n const childFields = this.getChildFields({\n field\n });\n if (childFields.length === 0) {\n return {};\n }\n\n if (field.multipleValues) {\n if (Array.isArray(value) === false) {\n return {\n [field.fieldId]: null\n };\n }\n return {\n [field.fieldId]: value.map((itemValue: GenericRecord) => {\n return this.processChildFieldsFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value: itemValue,\n converterCollection\n });\n })\n };\n }\n\n const values = this.processChildFieldsFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n value,\n converterCollection\n });\n\n if (values === undefined) {\n return {};\n }\n\n return {\n [field.fieldId]: values\n };\n }\n\n private processChildFieldsFromStorage(\n params: ProcessChildFieldsParams\n ): CmsEntryValues | undefined {\n const { fields, value, converterCollection } = params;\n\n if (value === undefined || value === null) {\n return undefined;\n }\n\n return fields.reduce<CmsEntryValues>((output, field) => {\n const childFields = this.getChildFields({\n field\n });\n\n if (childFields.length > 0) {\n if (field.multipleValues) {\n const inputValues = value[\n field.storageId\n ] as unknown as GenericRecord<string>[];\n if (!inputValues || Array.isArray(inputValues) === false) {\n return output;\n }\n const values = inputValues.map(childValue => {\n return converterCollection.convertFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: childValue\n });\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.fieldId]: values\n };\n }\n /**\n * No need to process child fields if no value is provided.\n */\n if (!value[field.storageId]) {\n return output;\n }\n const values = converterCollection.convertFromStorage({\n fields: childFields.map(child => {\n return {\n ...child,\n parent: field\n };\n }),\n values: value[field.storageId]\n });\n if (values === undefined) {\n return output;\n }\n return {\n ...output,\n [field.fieldId]: values\n };\n }\n\n if (value[field.storageId] === undefined) {\n return output;\n }\n return {\n ...output,\n [field.fieldId]: value[field.storageId]\n };\n }, {});\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Field converters are used to convert the fieldId to storageId and vice versa.
|
|
3
|
+
*/
|
|
1
4
|
import { CmsModelObjectFieldConverterPlugin } from "./CmsModelObjectFieldConverterPlugin";
|
|
2
5
|
import { CmsModelDefaultFieldConverterPlugin } from "./CmsModelDefaultFieldConverterPlugin";
|
|
3
6
|
import { CmsModelDynamicZoneFieldConverterPlugin } from "./CmsModelDynamicZoneFieldConverterPlugin";
|
package/fieldConverters/index.js
CHANGED
|
@@ -7,6 +7,10 @@ exports.createFieldConverters = void 0;
|
|
|
7
7
|
var _CmsModelObjectFieldConverterPlugin = require("./CmsModelObjectFieldConverterPlugin");
|
|
8
8
|
var _CmsModelDefaultFieldConverterPlugin = require("./CmsModelDefaultFieldConverterPlugin");
|
|
9
9
|
var _CmsModelDynamicZoneFieldConverterPlugin = require("./CmsModelDynamicZoneFieldConverterPlugin");
|
|
10
|
+
/**
|
|
11
|
+
* Field converters are used to convert the fieldId to storageId and vice versa.
|
|
12
|
+
*/
|
|
13
|
+
|
|
10
14
|
const createFieldConverters = () => {
|
|
11
15
|
return [new _CmsModelObjectFieldConverterPlugin.CmsModelObjectFieldConverterPlugin(), new _CmsModelDynamicZoneFieldConverterPlugin.CmsModelDynamicZoneFieldConverterPlugin(), new _CmsModelDefaultFieldConverterPlugin.CmsModelDefaultFieldConverterPlugin()];
|
|
12
16
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_CmsModelObjectFieldConverterPlugin","require","_CmsModelDefaultFieldConverterPlugin","_CmsModelDynamicZoneFieldConverterPlugin","createFieldConverters","CmsModelObjectFieldConverterPlugin","CmsModelDynamicZoneFieldConverterPlugin","CmsModelDefaultFieldConverterPlugin","exports"],"sources":["index.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"names":["_CmsModelObjectFieldConverterPlugin","require","_CmsModelDefaultFieldConverterPlugin","_CmsModelDynamicZoneFieldConverterPlugin","createFieldConverters","CmsModelObjectFieldConverterPlugin","CmsModelDynamicZoneFieldConverterPlugin","CmsModelDefaultFieldConverterPlugin","exports"],"sources":["index.ts"],"sourcesContent":["/**\n * Field converters are used to convert the fieldId to storageId and vice versa.\n */\nimport { CmsModelObjectFieldConverterPlugin } from \"~/fieldConverters/CmsModelObjectFieldConverterPlugin\";\nimport { CmsModelDefaultFieldConverterPlugin } from \"~/fieldConverters/CmsModelDefaultFieldConverterPlugin\";\nimport { CmsModelDynamicZoneFieldConverterPlugin } from \"~/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin\";\n\nexport const createFieldConverters = () => {\n return [\n new CmsModelObjectFieldConverterPlugin(),\n new CmsModelDynamicZoneFieldConverterPlugin(),\n new CmsModelDefaultFieldConverterPlugin()\n ];\n};\n"],"mappings":";;;;;;AAGA,IAAAA,mCAAA,GAAAC,OAAA;AACA,IAAAC,oCAAA,GAAAD,OAAA;AACA,IAAAE,wCAAA,GAAAF,OAAA;AALA;AACA;AACA;;AAKO,MAAMG,qBAAqB,GAAGA,CAAA,KAAM;EACvC,OAAO,CACH,IAAIC,sEAAkC,CAAC,CAAC,EACxC,IAAIC,gFAAuC,CAAC,CAAC,EAC7C,IAAIC,wEAAmC,CAAC,CAAC,CAC5C;AACL,CAAC;AAACC,OAAA,CAAAJ,qBAAA,GAAAA,qBAAA","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CmsContext, CmsModel } from "../types";
|
|
2
|
-
import {
|
|
1
|
+
import type { CmsContext, CmsModel } from "../types";
|
|
2
|
+
import type { ICmsGraphQLSchemaPlugin } from "../plugins";
|
|
3
3
|
/**
|
|
4
4
|
* This factory is called whenever we need to generate graphql-schema plugins using the current context.
|
|
5
5
|
*/
|
|
@@ -7,5 +7,5 @@ interface BuildSchemaPluginsParams {
|
|
|
7
7
|
context: CmsContext;
|
|
8
8
|
models: CmsModel[];
|
|
9
9
|
}
|
|
10
|
-
export declare const buildSchemaPlugins: (params: BuildSchemaPluginsParams) => Promise<
|
|
10
|
+
export declare const buildSchemaPlugins: (params: BuildSchemaPluginsParams) => Promise<ICmsGraphQLSchemaPlugin[]>;
|
|
11
11
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_contentModels","require","_contentEntries","_contentModelGroups","_baseContentSchema","_schemaPlugins","buildSchemaPlugins","params","createBaseContentSchema","createModelsSchema","createContentEntriesSchema","createGroupsSchema","generateSchemaPlugins","filter","Boolean","exports"],"sources":["buildSchemaPlugins.ts"],"sourcesContent":["import { CmsContext, CmsModel } from \"~/types\";\nimport { createModelsSchema } from \"./schema/contentModels\";\nimport { createContentEntriesSchema } from \"./schema/contentEntries\";\nimport { createGroupsSchema } from \"./schema/contentModelGroups\";\nimport { createBaseContentSchema } from \"./schema/baseContentSchema\";\nimport { generateSchemaPlugins } from \"./schema/schemaPlugins\";\nimport {
|
|
1
|
+
{"version":3,"names":["_contentModels","require","_contentEntries","_contentModelGroups","_baseContentSchema","_schemaPlugins","buildSchemaPlugins","params","createBaseContentSchema","createModelsSchema","createContentEntriesSchema","createGroupsSchema","generateSchemaPlugins","filter","Boolean","exports"],"sources":["buildSchemaPlugins.ts"],"sourcesContent":["import type { CmsContext, CmsModel } from \"~/types\";\nimport { createModelsSchema } from \"./schema/contentModels\";\nimport { createContentEntriesSchema } from \"./schema/contentEntries\";\nimport { createGroupsSchema } from \"./schema/contentModelGroups\";\nimport { createBaseContentSchema } from \"./schema/baseContentSchema\";\nimport { generateSchemaPlugins } from \"./schema/schemaPlugins\";\nimport type { ICmsGraphQLSchemaPlugin } from \"~/plugins\";\n\n/**\n * This factory is called whenever we need to generate graphql-schema plugins using the current context.\n */\ninterface BuildSchemaPluginsParams {\n context: CmsContext;\n models: CmsModel[];\n}\nexport const buildSchemaPlugins = async (\n params: BuildSchemaPluginsParams\n): Promise<ICmsGraphQLSchemaPlugin[]> => {\n return [\n // Base GQL types and scalars\n createBaseContentSchema(params),\n createModelsSchema(params),\n createContentEntriesSchema(params),\n createGroupsSchema(params),\n // Dynamic schema\n ...(await generateSchemaPlugins(params))\n ].filter(Boolean);\n};\n"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AAGA;AACA;AACA;;AAKO,MAAMK,kBAAkB,GAAG,MAC9BC,MAAgC,IACK;EACrC,OAAO;EACH;EACA,IAAAC,0CAAuB,EAACD,MAAM,CAAC,EAC/B,IAAAE,iCAAkB,EAACF,MAAM,CAAC,EAC1B,IAAAG,0CAA0B,EAACH,MAAM,CAAC,EAClC,IAAAI,sCAAkB,EAACJ,MAAM,CAAC;EAC1B;EACA,IAAI,MAAM,IAAAK,oCAAqB,EAACL,MAAM,CAAC,CAAC,CAC3C,CAACM,MAAM,CAACC,OAAO,CAAC;AACrB,CAAC;AAACC,OAAA,CAAAT,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { CmsContext } from "../types";
|
|
1
|
+
import type { CmsContext } from "../types";
|
|
2
2
|
export declare const checkEndpointAccess: (context: CmsContext) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_apiSecurity","require","checkEndpointAccess","context","permission","security","getPermission","cms","type","NotAuthorizedError","data","reason","exports"],"sources":["checkEndpointAccess.ts"],"sourcesContent":["import { CmsContext } from \"~/types\";\nimport { NotAuthorizedError } from \"@webiny/api-security\";\n\nexport const checkEndpointAccess = async (context: CmsContext): Promise<void> => {\n const permission = await context.security.getPermission(`cms.endpoint.${context.cms.type}`);\n if (!permission) {\n throw new NotAuthorizedError({\n data: {\n reason: `Not allowed to access \"${context.cms.type}\" endpoint.`\n }\n });\n }\n};\n"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,mBAAmB,GAAG,MAAOC,OAAmB,IAAoB;EAC7E,MAAMC,UAAU,GAAG,MAAMD,OAAO,CAACE,QAAQ,CAACC,aAAa,
|
|
1
|
+
{"version":3,"names":["_apiSecurity","require","checkEndpointAccess","context","permission","security","getPermission","cms","type","NotAuthorizedError","data","reason","exports"],"sources":["checkEndpointAccess.ts"],"sourcesContent":["import type { CmsContext } from \"~/types\";\nimport { NotAuthorizedError } from \"@webiny/api-security\";\n\nexport const checkEndpointAccess = async (context: CmsContext): Promise<void> => {\n const permission = await context.security.getPermission(`cms.endpoint.${context.cms.type}`);\n if (!permission) {\n throw new NotAuthorizedError({\n data: {\n reason: `Not allowed to access \"${context.cms.type}\" endpoint.`\n }\n });\n }\n};\n"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEO,MAAMC,mBAAmB,GAAG,MAAOC,OAAmB,IAAoB;EAC7E,MAAMC,UAAU,GAAG,MAAMD,OAAO,CAACE,QAAQ,CAACC,aAAa,CAAC,gBAAgBH,OAAO,CAACI,GAAG,CAACC,IAAI,EAAE,CAAC;EAC3F,IAAI,CAACJ,UAAU,EAAE;IACb,MAAM,IAAIK,+BAAkB,CAAC;MACzBC,IAAI,EAAE;QACFC,MAAM,EAAE,0BAA0BR,OAAO,CAACI,GAAG,CAACC,IAAI;MACtD;IACJ,CAAC,CAAC;EACN;AACJ,CAAC;AAACI,OAAA,CAAAV,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ICmsGraphQLSchemaPlugin } from "../plugins";
|
|
2
2
|
interface Params {
|
|
3
|
-
plugins:
|
|
3
|
+
plugins: ICmsGraphQLSchemaPlugin[];
|
|
4
4
|
}
|
|
5
5
|
export declare const createExecutableSchema: (params: Params) => import("graphql").GraphQLSchema;
|
|
6
6
|
export {};
|
|
@@ -5,25 +5,32 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.createExecutableSchema = void 0;
|
|
7
7
|
var _schema = require("@graphql-tools/schema");
|
|
8
|
+
var _merge = require("@graphql-tools/merge");
|
|
9
|
+
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
8
10
|
const createExecutableSchema = params => {
|
|
9
11
|
const {
|
|
10
12
|
plugins
|
|
11
13
|
} = params;
|
|
12
|
-
/**
|
|
13
|
-
* Really hard to type this to satisfy the makeExecutableSchema
|
|
14
|
-
*/
|
|
15
|
-
// TODO @ts-refactor
|
|
16
14
|
const typeDefs = [];
|
|
17
15
|
const resolvers = [];
|
|
16
|
+
const resolverDecoration = new _handlerGraphql.ResolverDecoration();
|
|
18
17
|
|
|
19
18
|
// Get schema definitions from plugins
|
|
20
19
|
for (const plugin of plugins) {
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
const schema = plugin.schema;
|
|
21
|
+
if (schema.typeDefs) {
|
|
22
|
+
typeDefs.push(schema.typeDefs);
|
|
23
|
+
}
|
|
24
|
+
if (schema.resolvers) {
|
|
25
|
+
resolvers.push(schema.resolvers);
|
|
26
|
+
}
|
|
27
|
+
if (schema.resolverDecorators) {
|
|
28
|
+
resolverDecoration.addDecorators(schema.resolverDecorators);
|
|
29
|
+
}
|
|
23
30
|
}
|
|
24
31
|
return (0, _schema.makeExecutableSchema)({
|
|
25
32
|
typeDefs,
|
|
26
|
-
resolvers
|
|
33
|
+
resolvers: resolverDecoration.decorateResolvers((0, _merge.mergeResolvers)(resolvers))
|
|
27
34
|
});
|
|
28
35
|
};
|
|
29
36
|
exports.createExecutableSchema = createExecutableSchema;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_schema","require","createExecutableSchema","params","plugins","typeDefs","resolvers","plugin","push","
|
|
1
|
+
{"version":3,"names":["_schema","require","_merge","_handlerGraphql","createExecutableSchema","params","plugins","typeDefs","resolvers","resolverDecoration","ResolverDecoration","plugin","schema","push","resolverDecorators","addDecorators","makeExecutableSchema","decorateResolvers","mergeResolvers","exports"],"sources":["createExecutableSchema.ts"],"sourcesContent":["import { makeExecutableSchema } from \"@graphql-tools/schema\";\nimport { mergeResolvers } from \"@graphql-tools/merge\";\nimport { ResolverDecoration } from \"@webiny/handler-graphql\";\nimport type { Resolvers, TypeDefs } from \"@webiny/handler-graphql/types\";\nimport type { ICmsGraphQLSchemaPlugin } from \"~/plugins\";\n\ninterface Params {\n plugins: ICmsGraphQLSchemaPlugin[];\n}\n\nexport const createExecutableSchema = (params: Params) => {\n const { plugins } = params;\n\n const typeDefs: TypeDefs[] = [];\n const resolvers: Resolvers<any>[] = [];\n\n const resolverDecoration = new ResolverDecoration();\n\n // Get schema definitions from plugins\n for (const plugin of plugins) {\n const schema = plugin.schema;\n if (schema.typeDefs) {\n typeDefs.push(schema.typeDefs);\n }\n if (schema.resolvers) {\n resolvers.push(schema.resolvers);\n }\n if (schema.resolverDecorators) {\n resolverDecoration.addDecorators(schema.resolverDecorators);\n }\n }\n\n return makeExecutableSchema({\n typeDefs,\n resolvers: resolverDecoration.decorateResolvers(mergeResolvers(resolvers))\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAQO,MAAMG,sBAAsB,GAAIC,MAAc,IAAK;EACtD,MAAM;IAAEC;EAAQ,CAAC,GAAGD,MAAM;EAE1B,MAAME,QAAoB,GAAG,EAAE;EAC/B,MAAMC,SAA2B,GAAG,EAAE;EAEtC,MAAMC,kBAAkB,GAAG,IAAIC,kCAAkB,CAAC,CAAC;;EAEnD;EACA,KAAK,MAAMC,MAAM,IAAIL,OAAO,EAAE;IAC1B,MAAMM,MAAM,GAAGD,MAAM,CAACC,MAAM;IAC5B,IAAIA,MAAM,CAACL,QAAQ,EAAE;MACjBA,QAAQ,CAACM,IAAI,CAACD,MAAM,CAACL,QAAQ,CAAC;IAClC;IACA,IAAIK,MAAM,CAACJ,SAAS,EAAE;MAClBA,SAAS,CAACK,IAAI,CAACD,MAAM,CAACJ,SAAS,CAAC;IACpC;IACA,IAAII,MAAM,CAACE,kBAAkB,EAAE;MAC3BL,kBAAkB,CAACM,aAAa,CAACH,MAAM,CAACE,kBAAkB,CAAC;IAC/D;EACJ;EAEA,OAAO,IAAAE,4BAAoB,EAAC;IACxBT,QAAQ;IACRC,SAAS,EAAEC,kBAAkB,CAACQ,iBAAiB,CAAC,IAAAC,qBAAc,EAACV,SAAS,CAAC;EAC7E,CAAC,CAAC;AACN,CAAC;AAACW,OAAA,CAAAf,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { GraphQLRequestBody } from "@webiny/handler-graphql/types";
|
|
1
|
+
import type { GraphQLRequestBody } from "@webiny/handler-graphql/types";
|
|
2
2
|
export declare const createRequestBody: (body: unknown) => GraphQLRequestBody | GraphQLRequestBody[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createRequestBody","body","JSON","parse","exports"],"sources":["createRequestBody.ts"],"sourcesContent":["import { GraphQLRequestBody } from \"@webiny/handler-graphql/types\";\n\nexport const createRequestBody = (body: unknown): GraphQLRequestBody | GraphQLRequestBody[] => {\n /**\n * We are trusting that the body payload is correct.\n * The `processRequestBody` will fail if it is not.\n */\n return typeof body === \"string\" ? JSON.parse(body) : body;\n};\n"],"mappings":";;;;;;AAEO,MAAMA,iBAAiB,GAAIC,IAAa,IAAgD;EAC3F;AACJ;AACA;AACA;EACI,OAAO,OAAOA,IAAI,KAAK,QAAQ,GAAGC,IAAI,CAACC,KAAK,CAACF,IAAI,CAAC,GAAGA,IAAI;AAC7D,CAAC;AAACG,OAAA,CAAAJ,iBAAA,GAAAA,iBAAA"}
|
|
1
|
+
{"version":3,"names":["createRequestBody","body","JSON","parse","exports"],"sources":["createRequestBody.ts"],"sourcesContent":["import type { GraphQLRequestBody } from \"@webiny/handler-graphql/types\";\n\nexport const createRequestBody = (body: unknown): GraphQLRequestBody | GraphQLRequestBody[] => {\n /**\n * We are trusting that the body payload is correct.\n * The `processRequestBody` will fail if it is not.\n */\n return typeof body === \"string\" ? JSON.parse(body) : body;\n};\n"],"mappings":";;;;;;AAEO,MAAMA,iBAAiB,GAAIC,IAAa,IAAgD;EAC3F;AACJ;AACA;AACA;EACI,OAAO,OAAOA,IAAI,KAAK,QAAQ,GAAGC,IAAI,CAACC,KAAK,CAACF,IAAI,CAAC,GAAGA,IAAI;AAC7D,CAAC;AAACG,OAAA,CAAAJ,iBAAA,GAAAA,iBAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_error","_interopRequireDefault","require","formatErrorPayload","error","WebinyError","JSON","stringify","type","message","code","data","name","stack","exports"],"sources":["formatErrorPayload.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\n\nexport const formatErrorPayload = (error: Error): string => {\n if (error instanceof WebinyError) {\n return JSON.stringify({\n type: \"CmsGraphQLWebinyError\",\n message: error.message,\n code: error.code,\n data: error.data\n });\n }\n\n return JSON.stringify({\n type: \"Error\",\n name: error.name,\n message: error.message,\n stack: error.stack\n });\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEO,MAAMC,kBAAkB,GAAIC,KAAY,IAAa;EACxD,IAAIA,KAAK,YAAYC,cAAW,EAAE;IAC9B,OAAOC,IAAI,CAACC,SAAS,CAAC;MAClBC,IAAI,EAAE,uBAAuB;MAC7BC,OAAO,EAAEL,KAAK,CAACK,OAAO;MACtBC,IAAI,EAAEN,KAAK,CAACM,IAAI;MAChBC,IAAI,EAAEP,KAAK,CAACO;IAChB,CAAC,CAAC;EACN;EAEA,OAAOL,IAAI,CAACC,SAAS,CAAC;IAClBC,IAAI,EAAE,OAAO;IACbI,IAAI,EAAER,KAAK,CAACQ,IAAI;IAChBH,OAAO,EAAEL,KAAK,CAACK,OAAO;IACtBI,KAAK,EAAET,KAAK,CAACS;EACjB,CAAC,CAAC;AACN,CAAC;AAACC,OAAA,CAAAX,kBAAA,GAAAA,kBAAA"}
|
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","formatErrorPayload","error","WebinyError","JSON","stringify","type","message","code","data","name","stack","exports"],"sources":["formatErrorPayload.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\n\nexport const formatErrorPayload = (error: Error): string => {\n if (error instanceof WebinyError) {\n return JSON.stringify({\n type: \"CmsGraphQLWebinyError\",\n message: error.message,\n code: error.code,\n data: error.data\n });\n }\n\n return JSON.stringify({\n type: \"Error\",\n name: error.name,\n message: error.message,\n stack: error.stack\n });\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEO,MAAMC,kBAAkB,GAAIC,KAAY,IAAa;EACxD,IAAIA,KAAK,YAAYC,cAAW,EAAE;IAC9B,OAAOC,IAAI,CAACC,SAAS,CAAC;MAClBC,IAAI,EAAE,uBAAuB;MAC7BC,OAAO,EAAEL,KAAK,CAACK,OAAO;MACtBC,IAAI,EAAEN,KAAK,CAACM,IAAI;MAChBC,IAAI,EAAEP,KAAK,CAACO;IAChB,CAAC,CAAC;EACN;EAEA,OAAOL,IAAI,CAACC,SAAS,CAAC;IAClBC,IAAI,EAAE,OAAO;IACbI,IAAI,EAAER,KAAK,CAACQ,IAAI;IAChBH,OAAO,EAAEL,KAAK,CAACK,OAAO;IACtBI,KAAK,EAAET,KAAK,CAACS;EACjB,CAAC,CAAC;AACN,CAAC;AAACC,OAAA,CAAAX,kBAAA,GAAAA,kBAAA","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CmsContext, CmsModel } from "../types";
|
|
2
|
-
import { GraphQLSchema } from "graphql/type";
|
|
1
|
+
import type { CmsContext, CmsModel } from "../types";
|
|
2
|
+
import type { GraphQLSchema } from "graphql/type";
|
|
3
3
|
interface GenerateSchemaParams {
|
|
4
4
|
context: CmsContext;
|
|
5
5
|
models: CmsModel[];
|
|
@@ -23,7 +23,12 @@ const generateSchema = async params => {
|
|
|
23
23
|
throw ex;
|
|
24
24
|
}
|
|
25
25
|
context.plugins.register(generatedSchemaPlugins);
|
|
26
|
-
const schemaPlugins = context.plugins.byType(_plugins.CmsGraphQLSchemaPlugin.type)
|
|
26
|
+
const schemaPlugins = context.plugins.byType(_plugins.CmsGraphQLSchemaPlugin.type).filter(pl => {
|
|
27
|
+
if (typeof pl.isApplicable === "function") {
|
|
28
|
+
return pl.isApplicable(context);
|
|
29
|
+
}
|
|
30
|
+
return true;
|
|
31
|
+
});
|
|
27
32
|
return (0, _createExecutableSchema.createExecutableSchema)({
|
|
28
33
|
plugins: schemaPlugins
|
|
29
34
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_buildSchemaPlugins","require","_createExecutableSchema","_plugins","generateSchema","params","context","models","generatedSchemaPlugins","buildSchemaPlugins","ex","console","log","plugins","register","schemaPlugins","byType","CmsGraphQLSchemaPlugin","type","createExecutableSchema","exports"],"sources":["generateSchema.ts"],"sourcesContent":["import { CmsContext, CmsModel } from \"~/types\";\nimport { buildSchemaPlugins } from \"./buildSchemaPlugins\";\nimport { createExecutableSchema } from \"./createExecutableSchema\";\nimport { GraphQLSchema } from \"graphql/type\";\nimport { CmsGraphQLSchemaPlugin } from \"~/plugins\";\n\ninterface GenerateSchemaParams {\n context: CmsContext;\n models: CmsModel[];\n}\nexport const generateSchema = async (params: GenerateSchemaParams): Promise<GraphQLSchema> => {\n const { context, models } = params;\n\n let generatedSchemaPlugins:
|
|
1
|
+
{"version":3,"names":["_buildSchemaPlugins","require","_createExecutableSchema","_plugins","generateSchema","params","context","models","generatedSchemaPlugins","buildSchemaPlugins","ex","console","log","plugins","register","schemaPlugins","byType","CmsGraphQLSchemaPlugin","type","filter","pl","isApplicable","createExecutableSchema","exports"],"sources":["generateSchema.ts"],"sourcesContent":["import type { CmsContext, CmsModel } from \"~/types\";\nimport { buildSchemaPlugins } from \"./buildSchemaPlugins\";\nimport { createExecutableSchema } from \"./createExecutableSchema\";\nimport type { GraphQLSchema } from \"graphql/type\";\nimport type { ICmsGraphQLSchemaPlugin } from \"~/plugins\";\nimport { CmsGraphQLSchemaPlugin } from \"~/plugins\";\n\ninterface GenerateSchemaParams {\n context: CmsContext;\n models: CmsModel[];\n}\nexport const generateSchema = async (params: GenerateSchemaParams): Promise<GraphQLSchema> => {\n const { context, models } = params;\n\n let generatedSchemaPlugins: ICmsGraphQLSchemaPlugin[] = [];\n try {\n generatedSchemaPlugins = await buildSchemaPlugins({ context, models });\n } catch (ex) {\n console.log(`Error while building schema plugins.`);\n throw ex;\n }\n\n context.plugins.register(generatedSchemaPlugins);\n\n const schemaPlugins = context.plugins\n .byType<ICmsGraphQLSchemaPlugin>(CmsGraphQLSchemaPlugin.type)\n .filter(pl => {\n if (typeof pl.isApplicable === \"function\") {\n return pl.isApplicable(context);\n }\n return true;\n });\n\n return createExecutableSchema({\n plugins: schemaPlugins\n });\n};\n"],"mappings":";;;;;;AACA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAD,OAAA;AAGA,IAAAE,QAAA,GAAAF,OAAA;AAMO,MAAMG,cAAc,GAAG,MAAOC,MAA4B,IAA6B;EAC1F,MAAM;IAAEC,OAAO;IAAEC;EAAO,CAAC,GAAGF,MAAM;EAElC,IAAIG,sBAAiD,GAAG,EAAE;EAC1D,IAAI;IACAA,sBAAsB,GAAG,MAAM,IAAAC,sCAAkB,EAAC;MAAEH,OAAO;MAAEC;IAAO,CAAC,CAAC;EAC1E,CAAC,CAAC,OAAOG,EAAE,EAAE;IACTC,OAAO,CAACC,GAAG,CAAC,sCAAsC,CAAC;IACnD,MAAMF,EAAE;EACZ;EAEAJ,OAAO,CAACO,OAAO,CAACC,QAAQ,CAACN,sBAAsB,CAAC;EAEhD,MAAMO,aAAa,GAAGT,OAAO,CAACO,OAAO,CAChCG,MAAM,CAA0BC,+BAAsB,CAACC,IAAI,CAAC,CAC5DC,MAAM,CAACC,EAAE,IAAI;IACV,IAAI,OAAOA,EAAE,CAACC,YAAY,KAAK,UAAU,EAAE;MACvC,OAAOD,EAAE,CAACC,YAAY,CAACf,OAAO,CAAC;IACnC;IACA,OAAO,IAAI;EACf,CAAC,CAAC;EAEN,OAAO,IAAAgB,8CAAsB,EAAC;IAC1BT,OAAO,EAAEE;EACb,CAAC,CAAC;AACN,CAAC;AAACQ,OAAA,CAAAnB,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ApiEndpoint } from "../../types";
|
|
2
|
+
import type { Tenant } from "@webiny/api-tenancy/types";
|
|
3
|
+
import type { I18NLocale } from "@webiny/api-i18n/types";
|
|
4
|
+
interface GenerateCacheIdParams {
|
|
5
|
+
type: ApiEndpoint;
|
|
6
|
+
getTenant: () => Tenant;
|
|
7
|
+
getLocale: () => I18NLocale;
|
|
8
|
+
}
|
|
9
|
+
export declare const generateCacheId: (params: GenerateCacheIdParams) => string;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.generateCacheId = void 0;
|
|
7
|
+
const generateCacheId = params => {
|
|
8
|
+
const {
|
|
9
|
+
getTenant,
|
|
10
|
+
type,
|
|
11
|
+
getLocale
|
|
12
|
+
} = params;
|
|
13
|
+
return [`tenant:${getTenant().id}`, `endpoint:${type}`, `locale:${getLocale().code}`].join("#");
|
|
14
|
+
};
|
|
15
|
+
exports.generateCacheId = generateCacheId;
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=generateCacheId.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["generateCacheId","params","getTenant","type","getLocale","id","code","join","exports"],"sources":["generateCacheId.ts"],"sourcesContent":["import type { ApiEndpoint } from \"~/types\";\nimport type { Tenant } from \"@webiny/api-tenancy/types\";\nimport type { I18NLocale } from \"@webiny/api-i18n/types\";\n\ninterface GenerateCacheIdParams {\n type: ApiEndpoint;\n getTenant: () => Tenant;\n getLocale: () => I18NLocale;\n}\n\nexport const generateCacheId = (params: GenerateCacheIdParams): string => {\n const { getTenant, type, getLocale } = params;\n return [`tenant:${getTenant().id}`, `endpoint:${type}`, `locale:${getLocale().code}`].join(\"#\");\n};\n"],"mappings":";;;;;;AAUO,MAAMA,eAAe,GAAIC,MAA6B,IAAa;EACtE,MAAM;IAAEC,SAAS;IAAEC,IAAI;IAAEC;EAAU,CAAC,GAAGH,MAAM;EAC7C,OAAO,CAAC,UAAUC,SAAS,CAAC,CAAC,CAACG,EAAE,EAAE,EAAE,YAAYF,IAAI,EAAE,EAAE,UAAUC,SAAS,CAAC,CAAC,CAACE,IAAI,EAAE,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;AACnG,CAAC;AAACC,OAAA,CAAAR,eAAA,GAAAA,eAAA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CmsModel } from "../../types";
|
|
2
|
+
interface GenerateCacheKeyParams {
|
|
3
|
+
models: Pick<CmsModel, "modelId" | "singularApiName" | "pluralApiName" | "savedOn">[];
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Method generates cache key based on last model change time.
|
|
7
|
+
* Or sets "unknown" - possible when no models in database.
|
|
8
|
+
*/
|
|
9
|
+
export declare const generateCacheKey: (params: GenerateCacheKeyParams) => Promise<string>;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.generateCacheKey = void 0;
|
|
8
|
+
var _crypto = _interopRequireDefault(require("crypto"));
|
|
9
|
+
/**
|
|
10
|
+
* Method generates cache key based on last model change time.
|
|
11
|
+
* Or sets "unknown" - possible when no models in database.
|
|
12
|
+
*/
|
|
13
|
+
const generateCacheKey = async params => {
|
|
14
|
+
const {
|
|
15
|
+
models
|
|
16
|
+
} = params;
|
|
17
|
+
const keys = [];
|
|
18
|
+
for (const model of models) {
|
|
19
|
+
const savedOn = model.savedOn;
|
|
20
|
+
const value =
|
|
21
|
+
// @ts-expect-error
|
|
22
|
+
savedOn instanceof Date || savedOn?.toISOString ?
|
|
23
|
+
// @ts-expect-error
|
|
24
|
+
savedOn.toISOString() : savedOn || "unknown";
|
|
25
|
+
keys.push(model.modelId, model.singularApiName, model.pluralApiName, value);
|
|
26
|
+
}
|
|
27
|
+
const key = keys.join("#");
|
|
28
|
+
const hash = _crypto.default.createHash("sha1");
|
|
29
|
+
hash.update(key);
|
|
30
|
+
return hash.digest("hex");
|
|
31
|
+
};
|
|
32
|
+
exports.generateCacheKey = generateCacheKey;
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=generateCacheKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_crypto","_interopRequireDefault","require","generateCacheKey","params","models","keys","model","savedOn","value","Date","toISOString","push","modelId","singularApiName","pluralApiName","key","join","hash","crypto","createHash","update","digest","exports"],"sources":["generateCacheKey.ts"],"sourcesContent":["import type { CmsModel } from \"~/types\";\nimport crypto from \"crypto\";\n\ninterface GenerateCacheKeyParams {\n models: Pick<CmsModel, \"modelId\" | \"singularApiName\" | \"pluralApiName\" | \"savedOn\">[];\n}\n\n/**\n * Method generates cache key based on last model change time.\n * Or sets \"unknown\" - possible when no models in database.\n */\nexport const generateCacheKey = async (params: GenerateCacheKeyParams): Promise<string> => {\n const { models } = params;\n\n const keys: string[] = [];\n for (const model of models) {\n const savedOn = model.savedOn;\n const value =\n // @ts-expect-error\n savedOn instanceof Date || savedOn?.toISOString\n ? // @ts-expect-error\n savedOn.toISOString()\n : savedOn || \"unknown\";\n keys.push(model.modelId, model.singularApiName, model.pluralApiName, value);\n }\n const key = keys.join(\"#\");\n\n const hash = crypto.createHash(\"sha1\");\n hash.update(key);\n return hash.digest(\"hex\");\n};\n"],"mappings":";;;;;;;AACA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AAMA;AACA;AACA;AACA;AACO,MAAMC,gBAAgB,GAAG,MAAOC,MAA8B,IAAsB;EACvF,MAAM;IAAEC;EAAO,CAAC,GAAGD,MAAM;EAEzB,MAAME,IAAc,GAAG,EAAE;EACzB,KAAK,MAAMC,KAAK,IAAIF,MAAM,EAAE;IACxB,MAAMG,OAAO,GAAGD,KAAK,CAACC,OAAO;IAC7B,MAAMC,KAAK;IACP;IACAD,OAAO,YAAYE,IAAI,IAAIF,OAAO,EAAEG,WAAW;IACzC;IACAH,OAAO,CAACG,WAAW,CAAC,CAAC,GACrBH,OAAO,IAAI,SAAS;IAC9BF,IAAI,CAACM,IAAI,CAACL,KAAK,CAACM,OAAO,EAAEN,KAAK,CAACO,eAAe,EAAEP,KAAK,CAACQ,aAAa,EAAEN,KAAK,CAAC;EAC/E;EACA,MAAMO,GAAG,GAAGV,IAAI,CAACW,IAAI,CAAC,GAAG,CAAC;EAE1B,MAAMC,IAAI,GAAGC,eAAM,CAACC,UAAU,CAAC,MAAM,CAAC;EACtCF,IAAI,CAACG,MAAM,CAACL,GAAG,CAAC;EAChB,OAAOE,IAAI,CAACI,MAAM,CAAC,KAAK,CAAC;AAC7B,CAAC;AAACC,OAAA,CAAApB,gBAAA,GAAAA,gBAAA","ignoreList":[]}
|
package/graphql/getSchema.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ApiEndpoint, CmsContext } from "../types";
|
|
2
|
-
import { Tenant } from "@webiny/api-tenancy/types";
|
|
3
|
-
import { I18NLocale } from "@webiny/api-i18n/types";
|
|
4
|
-
import { GraphQLSchema } from "graphql";
|
|
1
|
+
import type { ApiEndpoint, CmsContext } from "../types";
|
|
2
|
+
import type { Tenant } from "@webiny/api-tenancy/types";
|
|
3
|
+
import type { I18NLocale } from "@webiny/api-i18n/types";
|
|
4
|
+
import type { GraphQLSchema } from "graphql";
|
|
5
5
|
interface GetSchemaParams {
|
|
6
6
|
context: CmsContext;
|
|
7
7
|
type: ApiEndpoint;
|
package/graphql/getSchema.js
CHANGED
|
@@ -5,54 +5,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.getSchema = void 0;
|
|
8
|
-
var _codeFrame =
|
|
8
|
+
var _codeFrame = require("@babel/code-frame");
|
|
9
9
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
|
10
10
|
var _generateSchema = require("./generateSchema");
|
|
11
|
-
var
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
var _generateCacheId = require("./getSchema/generateCacheId");
|
|
12
|
+
var _generateCacheKey = require("./getSchema/generateCacheKey");
|
|
14
13
|
const schemaList = new Map();
|
|
15
14
|
|
|
16
|
-
/**
|
|
17
|
-
* Method generates cache ID based on:
|
|
18
|
-
* - tenant
|
|
19
|
-
* - endpoint type
|
|
20
|
-
* - locale
|
|
21
|
-
*/
|
|
22
|
-
|
|
23
|
-
const generateCacheId = params => {
|
|
24
|
-
const {
|
|
25
|
-
getTenant,
|
|
26
|
-
type,
|
|
27
|
-
getLocale
|
|
28
|
-
} = params;
|
|
29
|
-
return [`tenant:${getTenant().id}`, `endpoint:${type}`, `locale:${getLocale().code}`].join("#");
|
|
30
|
-
};
|
|
31
|
-
/**
|
|
32
|
-
* Method generates cache key based on last model change time.
|
|
33
|
-
* Or sets "unknown" - possible when no models in database.
|
|
34
|
-
*/
|
|
35
|
-
|
|
36
|
-
const generateCacheKey = async params => {
|
|
37
|
-
const {
|
|
38
|
-
models
|
|
39
|
-
} = params;
|
|
40
|
-
const keys = [];
|
|
41
|
-
for (const model of models) {
|
|
42
|
-
const savedOn = model.savedOn;
|
|
43
|
-
const value =
|
|
44
|
-
// @ts-expect-error
|
|
45
|
-
savedOn instanceof Date || savedOn?.toISOString ?
|
|
46
|
-
// @ts-expect-error
|
|
47
|
-
savedOn.toISOString() : savedOn || "unknown";
|
|
48
|
-
keys.push(model.modelId, model.singularApiName, model.pluralApiName, value);
|
|
49
|
-
}
|
|
50
|
-
const key = keys.join("#");
|
|
51
|
-
const hash = _crypto.default.createHash("sha1");
|
|
52
|
-
hash.update(key);
|
|
53
|
-
return hash.digest("hex");
|
|
54
|
-
};
|
|
55
|
-
|
|
56
15
|
/**
|
|
57
16
|
* Gets an existing schema or rewrites existing one or creates a completely new one
|
|
58
17
|
* depending on the schemaId created from type and locale parameters
|
|
@@ -67,12 +26,13 @@ const getSchema = async params => {
|
|
|
67
26
|
* Private models are hidden in the GraphQL, so filter them out.
|
|
68
27
|
*/
|
|
69
28
|
const models = await context.security.withoutAuthorization(async () => {
|
|
70
|
-
return
|
|
71
|
-
|
|
29
|
+
return await context.cms.listModels({
|
|
30
|
+
includePrivate: false,
|
|
31
|
+
includePlugins: true
|
|
72
32
|
});
|
|
73
33
|
});
|
|
74
|
-
const cacheId = generateCacheId(params);
|
|
75
|
-
const cacheKey = await generateCacheKey({
|
|
34
|
+
const cacheId = (0, _generateCacheId.generateCacheId)(params);
|
|
35
|
+
const cacheKey = await (0, _generateCacheKey.generateCacheKey)({
|
|
76
36
|
...params,
|
|
77
37
|
models
|
|
78
38
|
});
|
|
@@ -106,8 +66,11 @@ const getSchema = async params => {
|
|
|
106
66
|
code: "INVALID_GRAPHQL_SCHEMA",
|
|
107
67
|
message: err.message,
|
|
108
68
|
data: {
|
|
109
|
-
invalidSegment: (0, _codeFrame.
|
|
110
|
-
|
|
69
|
+
invalidSegment: (0, _codeFrame.codeFrameColumns)(err.source.body, {
|
|
70
|
+
start: {
|
|
71
|
+
line: location.line,
|
|
72
|
+
column: location.column
|
|
73
|
+
}
|
|
111
74
|
})
|
|
112
75
|
}
|
|
113
76
|
});
|
package/graphql/getSchema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_codeFrame","
|
|
1
|
+
{"version":3,"names":["_codeFrame","require","_error","_interopRequireDefault","_generateSchema","_generateCacheId","_generateCacheKey","schemaList","Map","getSchema","params","context","models","security","withoutAuthorization","cms","listModels","includePrivate","includePlugins","cacheId","generateCacheId","cacheKey","generateCacheKey","cachedSchema","get","key","schema","generateSchema","set","err","Array","isArray","locations","WebinyError","message","code","data","endpoint","type","location","invalidSegment","codeFrameColumns","source","body","start","line","column","exports"],"sources":["getSchema.ts"],"sourcesContent":["import { codeFrameColumns } from \"@babel/code-frame\";\nimport WebinyError from \"@webiny/error\";\nimport { generateSchema } from \"./generateSchema\";\nimport type { ApiEndpoint, CmsContext } from \"~/types\";\nimport type { Tenant } from \"@webiny/api-tenancy/types\";\nimport type { I18NLocale } from \"@webiny/api-i18n/types\";\nimport type { GraphQLSchema } from \"graphql\";\nimport { generateCacheId } from \"./getSchema/generateCacheId\";\nimport { generateCacheKey } from \"./getSchema/generateCacheKey\";\n\ninterface SchemaCache {\n key: string;\n schema: GraphQLSchema;\n}\n\ninterface GetSchemaParams {\n context: CmsContext;\n type: ApiEndpoint;\n getTenant: () => Tenant;\n getLocale: () => I18NLocale;\n}\n\nconst schemaList = new Map<string, SchemaCache>();\n\n/**\n * Gets an existing schema or rewrites existing one or creates a completely new one\n * depending on the schemaId created from type and locale parameters\n */\nexport const getSchema = async (params: GetSchemaParams): Promise<GraphQLSchema> => {\n const { context } = params;\n\n /**\n * We need all the API models.\n * Private models are hidden in the GraphQL, so filter them out.\n */\n const models = await context.security.withoutAuthorization(async () => {\n return await context.cms.listModels({\n includePrivate: false,\n includePlugins: true\n });\n });\n\n const cacheId = generateCacheId(params);\n\n const cacheKey = await generateCacheKey({ ...params, models });\n const cachedSchema = schemaList.get(cacheId);\n if (cachedSchema?.key === cacheKey) {\n return cachedSchema.schema;\n }\n\n try {\n const schema = await generateSchema({\n ...params,\n models\n });\n schemaList.set(cacheId, {\n key: cacheKey,\n schema\n });\n return schema;\n } catch (err) {\n if (!Array.isArray(err.locations)) {\n throw new WebinyError({\n message: err.message,\n code: err.code || \"INVALID_GRAPHQL_SCHEMA_LOCATIONS\",\n data: {\n ...(err.data || {}),\n endpoint: context.cms.type\n }\n });\n }\n const [location] = err.locations;\n\n throw new WebinyError({\n code: \"INVALID_GRAPHQL_SCHEMA\",\n message: err.message,\n data: {\n invalidSegment: codeFrameColumns(err.source.body, {\n start: {\n line: location.line,\n column: location.column\n }\n })\n }\n });\n }\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,eAAA,GAAAH,OAAA;AAKA,IAAAI,gBAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AAcA,MAAMM,UAAU,GAAG,IAAIC,GAAG,CAAsB,CAAC;;AAEjD;AACA;AACA;AACA;AACO,MAAMC,SAAS,GAAG,MAAOC,MAAuB,IAA6B;EAChF,MAAM;IAAEC;EAAQ,CAAC,GAAGD,MAAM;;EAE1B;AACJ;AACA;AACA;EACI,MAAME,MAAM,GAAG,MAAMD,OAAO,CAACE,QAAQ,CAACC,oBAAoB,CAAC,YAAY;IACnE,OAAO,MAAMH,OAAO,CAACI,GAAG,CAACC,UAAU,CAAC;MAChCC,cAAc,EAAE,KAAK;MACrBC,cAAc,EAAE;IACpB,CAAC,CAAC;EACN,CAAC,CAAC;EAEF,MAAMC,OAAO,GAAG,IAAAC,gCAAe,EAACV,MAAM,CAAC;EAEvC,MAAMW,QAAQ,GAAG,MAAM,IAAAC,kCAAgB,EAAC;IAAE,GAAGZ,MAAM;IAAEE;EAAO,CAAC,CAAC;EAC9D,MAAMW,YAAY,GAAGhB,UAAU,CAACiB,GAAG,CAACL,OAAO,CAAC;EAC5C,IAAII,YAAY,EAAEE,GAAG,KAAKJ,QAAQ,EAAE;IAChC,OAAOE,YAAY,CAACG,MAAM;EAC9B;EAEA,IAAI;IACA,MAAMA,MAAM,GAAG,MAAM,IAAAC,8BAAc,EAAC;MAChC,GAAGjB,MAAM;MACTE;IACJ,CAAC,CAAC;IACFL,UAAU,CAACqB,GAAG,CAACT,OAAO,EAAE;MACpBM,GAAG,EAAEJ,QAAQ;MACbK;IACJ,CAAC,CAAC;IACF,OAAOA,MAAM;EACjB,CAAC,CAAC,OAAOG,GAAG,EAAE;IACV,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,GAAG,CAACG,SAAS,CAAC,EAAE;MAC/B,MAAM,IAAIC,cAAW,CAAC;QAClBC,OAAO,EAAEL,GAAG,CAACK,OAAO;QACpBC,IAAI,EAAEN,GAAG,CAACM,IAAI,IAAI,kCAAkC;QACpDC,IAAI,EAAE;UACF,IAAIP,GAAG,CAACO,IAAI,IAAI,CAAC,CAAC,CAAC;UACnBC,QAAQ,EAAE1B,OAAO,CAACI,GAAG,CAACuB;QAC1B;MACJ,CAAC,CAAC;IACN;IACA,MAAM,CAACC,QAAQ,CAAC,GAAGV,GAAG,CAACG,SAAS;IAEhC,MAAM,IAAIC,cAAW,CAAC;MAClBE,IAAI,EAAE,wBAAwB;MAC9BD,OAAO,EAAEL,GAAG,CAACK,OAAO;MACpBE,IAAI,EAAE;QACFI,cAAc,EAAE,IAAAC,2BAAgB,EAACZ,GAAG,CAACa,MAAM,CAACC,IAAI,EAAE;UAC9CC,KAAK,EAAE;YACHC,IAAI,EAAEN,QAAQ,CAACM,IAAI;YACnBC,MAAM,EAAEP,QAAQ,CAACO;UACrB;QACJ,CAAC;MACL;IACJ,CAAC,CAAC;EACN;AACJ,CAAC;AAACC,OAAA,CAAAtC,SAAA,GAAAA,SAAA","ignoreList":[]}
|