@webiny/api-headless-cms 6.1.0 → 6.2.0-beta.0
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/context.d.ts +2 -5
- package/context.js +16 -7
- package/context.js.map +1 -1
- package/crud/AccessControl/AccessControl.d.ts +18 -28
- package/crud/AccessControl/AccessControl.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createEntryData.js +17 -6
- package/crud/contentEntry/entryDataFactories/createEntryData.js.map +1 -1
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +9 -3
- package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +1 -1
- package/crud/contentEntry/entryDataValidation.d.ts +1 -1
- package/crud/contentEntry/entryDataValidation.js +16 -13
- package/crud/contentEntry/entryDataValidation.js.map +1 -1
- package/crud/contentEntry/searchableFields.d.ts +2 -3
- package/crud/contentEntry/searchableFields.js +10 -18
- package/crud/contentEntry/searchableFields.js.map +1 -1
- package/crud/contentModel.crud.js +2 -1
- package/crud/contentModel.crud.js.map +1 -1
- package/domain/contentModel/validation/modelFields.js +15 -20
- package/domain/contentModel/validation/modelFields.js.map +1 -1
- package/exports/api/cms/graphql.d.ts +1 -0
- package/exports/api/cms/graphql.js +3 -0
- package/exports/api/cms/graphql.js.map +1 -0
- package/exports/api/cms/storage.d.ts +3 -0
- package/exports/api/cms/storage.js +5 -0
- package/exports/api/cms/storage.js.map +1 -0
- package/exports/api/cms/validation.d.ts +4 -0
- package/exports/api/cms/validation.js +6 -0
- package/exports/api/cms/validation.js.map +1 -0
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +3 -3
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +3 -3
- package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
- package/features/contentEntry/CreateEntry/events.d.ts +2 -2
- package/features/contentEntry/CreateEntry/events.js +1 -1
- package/features/contentEntry/CreateEntry/events.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +3 -3
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +3 -3
- package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/events.d.ts +2 -2
- package/features/contentEntry/CreateEntryRevisionFrom/events.js +1 -1
- package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.d.ts +1 -1
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +1 -1
- package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.d.ts +2 -2
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +2 -2
- package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntry/events.d.ts +2 -2
- package/features/contentEntry/DeleteEntry/events.js +1 -1
- package/features/contentEntry/DeleteEntry/events.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.d.ts +1 -1
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +1 -1
- package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
- package/features/contentEntry/DeleteEntryRevision/events.d.ts +2 -2
- package/features/contentEntry/DeleteEntryRevision/events.js +1 -1
- package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.d.ts +1 -1
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +1 -1
- package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
- package/features/contentEntry/DeleteMultipleEntries/events.d.ts +2 -2
- package/features/contentEntry/DeleteMultipleEntries/events.js +1 -1
- package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +6 -11
- package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
- package/features/contentEntry/ListEntries/ListEntriesUseCase.d.ts +1 -1
- package/features/contentEntry/ListEntries/ListEntriesUseCase.js +1 -1
- package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.d.ts +1 -1
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +1 -1
- package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
- package/features/contentEntry/MoveEntry/events.d.ts +2 -2
- package/features/contentEntry/MoveEntry/events.js +1 -1
- package/features/contentEntry/MoveEntry/events.js.map +1 -1
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +2 -2
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +2 -2
- package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/PublishEntry/events.d.ts +2 -2
- package/features/contentEntry/PublishEntry/events.js +1 -1
- package/features/contentEntry/PublishEntry/events.js.map +1 -1
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +2 -2
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +2 -2
- package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/RepublishEntry/events.d.ts +2 -2
- package/features/contentEntry/RepublishEntry/events.js +1 -1
- package/features/contentEntry/RepublishEntry/events.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.d.ts +2 -2
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +2 -2
- package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
- package/features/contentEntry/RestoreEntryFromBin/events.d.ts +2 -2
- package/features/contentEntry/RestoreEntryFromBin/events.js +1 -1
- package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +2 -2
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +2 -2
- package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
- package/features/contentEntry/UnpublishEntry/events.d.ts +2 -2
- package/features/contentEntry/UnpublishEntry/events.js +1 -1
- package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +3 -3
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +3 -3
- package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
- package/features/contentEntry/UpdateEntry/events.d.ts +2 -2
- package/features/contentEntry/UpdateEntry/events.js +1 -1
- package/features/contentEntry/UpdateEntry/events.js.map +1 -1
- package/features/contentModel/CreateModel/CreateModelRepository.d.ts +1 -1
- package/features/contentModel/CreateModel/CreateModelRepository.js +1 -1
- package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
- package/features/contentModel/CreateModel/CreateModelUseCase.d.ts +3 -3
- package/features/contentModel/CreateModel/CreateModelUseCase.js +3 -3
- package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
- package/features/contentModel/CreateModel/events.d.ts +2 -2
- package/features/contentModel/CreateModel/events.js +1 -1
- package/features/contentModel/CreateModel/events.js.map +1 -1
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.d.ts +1 -1
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +1 -1
- package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.d.ts +3 -3
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +4 -3
- package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
- package/features/contentModel/CreateModelFrom/events.d.ts +2 -2
- package/features/contentModel/CreateModelFrom/events.js +1 -1
- package/features/contentModel/CreateModelFrom/events.js.map +1 -1
- package/features/contentModel/DeleteModel/DeleteModelUseCase.d.ts +1 -1
- package/features/contentModel/DeleteModel/DeleteModelUseCase.js +1 -1
- package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
- package/features/contentModel/DeleteModel/events.d.ts +2 -2
- package/features/contentModel/DeleteModel/events.js +1 -1
- package/features/contentModel/DeleteModel/events.js.map +1 -1
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.d.ts +3 -3
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +6 -6
- package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
- package/features/contentModel/UpdateModel/UpdateModelUseCase.d.ts +2 -2
- package/features/contentModel/UpdateModel/UpdateModelUseCase.js +2 -2
- package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
- package/features/contentModel/UpdateModel/events.d.ts +2 -2
- package/features/contentModel/UpdateModel/events.js +1 -1
- package/features/contentModel/UpdateModel/events.js.map +1 -1
- package/features/contentModel/shared/ModelsFetcher.d.ts +1 -1
- package/features/contentModel/shared/ModelsFetcher.js +1 -1
- package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.d.ts +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.d.ts +3 -3
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +3 -3
- package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/CreateGroup/events.d.ts +2 -2
- package/features/contentModelGroup/CreateGroup/events.js +1 -1
- package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.d.ts +1 -1
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +1 -1
- package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/DeleteGroup/events.d.ts +2 -2
- package/features/contentModelGroup/DeleteGroup/events.js +1 -1
- package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
- package/features/contentModelGroup/GetGroup/GetGroupRepository.d.ts +2 -2
- package/features/contentModelGroup/GetGroup/GetGroupRepository.js +2 -2
- package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.d.ts +2 -2
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +2 -2
- package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.d.ts +2 -2
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +2 -2
- package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
- package/features/contentModelGroup/UpdateGroup/events.d.ts +2 -2
- package/features/contentModelGroup/UpdateGroup/events.js +1 -1
- package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
- package/features/contentModelGroup/shared/PluginGroupsProvider.d.ts +2 -2
- package/features/contentModelGroup/shared/PluginGroupsProvider.js +2 -2
- package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
- package/features/graphql/feature.d.ts +1 -0
- package/features/graphql/feature.js +34 -0
- package/features/graphql/feature.js.map +1 -0
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.d.ts +13 -0
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +27 -0
- package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.d.ts +97 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +4 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.d.ts +10 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +4 -0
- package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -0
- package/features/graphql/fields/base/BooleanToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/BooleanToGraphQL.js +68 -0
- package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/DateTimeToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/DateTimeToGraphQL.js +97 -0
- package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/DynamicZoneToGraphQL.d.ts +30 -0
- package/features/graphql/fields/base/DynamicZoneToGraphQL.js +280 -0
- package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/FileToGraphQL.d.ts +22 -0
- package/features/graphql/fields/base/FileToGraphQL.js +39 -0
- package/features/graphql/fields/base/FileToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/JsonToGraphQL.d.ts +24 -0
- package/features/graphql/fields/base/JsonToGraphQL.js +52 -0
- package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/LongTextToGraphQL.d.ts +24 -0
- package/features/graphql/fields/base/LongTextToGraphQL.js +57 -0
- package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/NumberToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/NumberToGraphQL.js +78 -0
- package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/ObjectToGraphQL.d.ts +31 -0
- package/features/graphql/fields/base/ObjectToGraphQL.js +264 -0
- package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/RefToGraphQL.d.ts +29 -0
- package/features/graphql/fields/base/RefToGraphQL.js +261 -0
- package/features/graphql/fields/base/RefToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/RichTextToGraphQL.d.ts +25 -0
- package/features/graphql/fields/base/RichTextToGraphQL.js +58 -0
- package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/SearchableJsonToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/SearchableJsonToGraphQL.js +62 -0
- package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/TextToGraphQL.d.ts +26 -0
- package/features/graphql/fields/base/TextToGraphQL.js +74 -0
- package/features/graphql/fields/base/TextToGraphQL.js.map +1 -0
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.d.ts +16 -0
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +37 -0
- package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -0
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.d.ts +3 -0
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +14 -0
- package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -0
- package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.d.ts +1 -1
- package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.js +2 -2
- package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -0
- package/{graphqlFields/helpers.d.ts → features/graphql/fields/base/utils/createGraphQLInputField.d.ts} +1 -1
- package/features/graphql/fields/base/utils/createGraphQLInputField.js +17 -0
- package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -0
- package/features/graphql/index.d.ts +4 -0
- package/features/graphql/index.js +6 -0
- package/features/graphql/index.js.map +1 -0
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.d.ts +13 -0
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +4 -0
- package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -0
- package/features/installer/CmsInstaller.d.ts +1 -1
- package/features/installer/CmsInstaller.js +1 -1
- package/features/installer/CmsInstaller.js.map +1 -1
- package/features/shared/abstractions.d.ts +9 -2
- package/features/shared/abstractions.js +1 -0
- package/features/shared/abstractions.js.map +1 -1
- package/features/storage/StorageTransformRegistry.d.ts +13 -0
- package/features/storage/StorageTransformRegistry.js +27 -0
- package/features/storage/StorageTransformRegistry.js.map +1 -0
- package/features/storage/abstractions/StorageTransform.d.ts +26 -0
- package/features/storage/abstractions/StorageTransform.js +4 -0
- package/features/storage/abstractions/StorageTransform.js.map +1 -0
- package/features/storage/abstractions/StorageTransformRegistry.d.ts +10 -0
- package/features/storage/abstractions/StorageTransformRegistry.js +4 -0
- package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -0
- package/features/storage/feature.d.ts +1 -0
- package/features/storage/feature.js +24 -0
- package/features/storage/feature.js.map +1 -0
- package/features/storage/fields/DateStorageTransform.d.ts +10 -0
- package/features/storage/fields/DateStorageTransform.js +110 -0
- package/features/storage/fields/DateStorageTransform.js.map +1 -0
- package/features/storage/fields/DefaultStorageTransform.d.ts +10 -0
- package/features/storage/fields/DefaultStorageTransform.js +20 -0
- package/features/storage/fields/DefaultStorageTransform.js.map +1 -0
- package/features/storage/fields/DynamicZoneStorageTransform.d.ts +10 -0
- package/features/storage/fields/DynamicZoneStorageTransform.js +142 -0
- package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -0
- package/features/storage/fields/JsonStorageTransform.d.ts +13 -0
- package/features/storage/fields/JsonStorageTransform.js +31 -0
- package/features/storage/fields/JsonStorageTransform.js.map +1 -0
- package/features/storage/fields/LongTextStorageTransform.d.ts +18 -0
- package/features/storage/fields/LongTextStorageTransform.js +55 -0
- package/features/storage/fields/LongTextStorageTransform.js.map +1 -0
- package/features/storage/fields/ObjectStorageTransform.d.ts +10 -0
- package/features/storage/fields/ObjectStorageTransform.js +99 -0
- package/features/storage/fields/ObjectStorageTransform.js.map +1 -0
- package/features/storage/fields/RichTextStorageTransform.d.ts +13 -0
- package/features/storage/fields/RichTextStorageTransform.js +39 -0
- package/features/storage/fields/RichTextStorageTransform.js.map +1 -0
- package/features/storage/index.d.ts +3 -0
- package/features/storage/index.js +5 -0
- package/features/storage/index.js.map +1 -0
- package/features/validation/CmsModelFieldPatternValidatorRegistry.d.ts +12 -0
- package/features/validation/CmsModelFieldPatternValidatorRegistry.js +21 -0
- package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
- package/features/validation/CmsModelFieldValidatorRegistry.d.ts +12 -0
- package/features/validation/CmsModelFieldValidatorRegistry.js +23 -0
- package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidator.d.ts +13 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidator.js +4 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.d.ts +9 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +4 -0
- package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldValidator.d.ts +11 -0
- package/features/validation/abstractions/CmsModelFieldValidator.js +4 -0
- package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -0
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.d.ts +9 -0
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +4 -0
- package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -0
- package/features/validation/feature.d.ts +1 -0
- package/features/validation/feature.js +48 -0
- package/features/validation/feature.js.map +1 -0
- package/features/validation/index.d.ts +5 -0
- package/features/validation/index.js +7 -0
- package/features/validation/index.js.map +1 -0
- package/features/validation/validators/DateGteValidator.d.ts +10 -0
- package/features/validation/validators/DateGteValidator.js +26 -0
- package/features/validation/validators/DateGteValidator.js.map +1 -0
- package/features/validation/validators/DateLteValidator.d.ts +10 -0
- package/features/validation/validators/DateLteValidator.js +26 -0
- package/features/validation/validators/DateLteValidator.js.map +1 -0
- package/features/validation/validators/GteValidator.d.ts +10 -0
- package/features/validation/validators/GteValidator.js +21 -0
- package/features/validation/validators/GteValidator.js.map +1 -0
- package/features/validation/validators/InValidator.d.ts +10 -0
- package/features/validation/validators/InValidator.js +21 -0
- package/features/validation/validators/InValidator.js.map +1 -0
- package/features/validation/validators/LteValidator.d.ts +10 -0
- package/features/validation/validators/LteValidator.js +21 -0
- package/features/validation/validators/LteValidator.js.map +1 -0
- package/features/validation/validators/MaxLengthValidator.d.ts +10 -0
- package/features/validation/validators/MaxLengthValidator.js +21 -0
- package/features/validation/validators/MaxLengthValidator.js.map +1 -0
- package/features/validation/validators/MinLengthValidator.d.ts +10 -0
- package/features/validation/validators/MinLengthValidator.js +21 -0
- package/features/validation/validators/MinLengthValidator.js.map +1 -0
- package/features/validation/validators/PatternValidator.d.ts +13 -0
- package/features/validation/validators/PatternValidator.js +38 -0
- package/features/validation/validators/PatternValidator.js.map +1 -0
- package/features/validation/validators/RequiredValidator.d.ts +10 -0
- package/features/validation/validators/RequiredValidator.js +16 -0
- package/features/validation/validators/RequiredValidator.js.map +1 -0
- package/features/validation/validators/TimeGteValidator.d.ts +10 -0
- package/features/validation/validators/TimeGteValidator.js +21 -0
- package/features/validation/validators/TimeGteValidator.js.map +1 -0
- package/features/validation/validators/TimeLteValidator.d.ts +10 -0
- package/features/validation/validators/TimeLteValidator.js +21 -0
- package/features/validation/validators/TimeLteValidator.js.map +1 -0
- package/features/validation/validators/UniqueValidator.d.ts +10 -0
- package/features/validation/validators/UniqueValidator.js +47 -0
- package/features/validation/validators/UniqueValidator.js.map +1 -0
- package/features/validation/validators/patterns/EmailPattern.d.ts +12 -0
- package/features/validation/validators/patterns/EmailPattern.js +14 -0
- package/features/validation/validators/patterns/EmailPattern.js.map +1 -0
- package/features/validation/validators/patterns/LowerCasePattern.d.ts +12 -0
- package/features/validation/validators/patterns/LowerCasePattern.js +14 -0
- package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -0
- package/features/validation/validators/patterns/LowerCaseSpacePattern.d.ts +12 -0
- package/features/validation/validators/patterns/LowerCaseSpacePattern.js +14 -0
- package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -0
- package/features/validation/validators/patterns/UpperCasePattern.d.ts +12 -0
- package/features/validation/validators/patterns/UpperCasePattern.js +14 -0
- package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -0
- package/features/validation/validators/patterns/UpperCaseSpacePattern.d.ts +12 -0
- package/features/validation/validators/patterns/UpperCaseSpacePattern.js +14 -0
- package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -0
- package/features/validation/validators/patterns/UrlPattern.d.ts +12 -0
- package/features/validation/validators/patterns/UrlPattern.js +14 -0
- package/features/validation/validators/patterns/UrlPattern.js.map +1 -0
- package/graphql/getSchema/generateCacheKey.js +1 -1
- package/graphql/getSchema/generateCacheKey.js.map +1 -1
- package/graphql/schema/baseSchema.d.ts +2 -1
- package/graphql/schema/baseSchema.js +11 -9
- package/graphql/schema/baseSchema.js.map +1 -1
- package/graphql/schema/createFieldResolvers.d.ts +3 -2
- package/graphql/schema/createFieldResolvers.js +5 -4
- package/graphql/schema/createFieldResolvers.js.map +1 -1
- package/graphql/schema/createManageResolvers.d.ts +3 -2
- package/graphql/schema/createManageResolvers.js +3 -3
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.d.ts +4 -4
- package/graphql/schema/createManageSDL.js +8 -8
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.d.ts +3 -2
- package/graphql/schema/createPreviewResolvers.js +4 -4
- package/graphql/schema/createPreviewResolvers.js.map +1 -1
- package/graphql/schema/createReadResolvers.d.ts +3 -2
- package/graphql/schema/createReadResolvers.js +4 -4
- package/graphql/schema/createReadResolvers.js.map +1 -1
- package/graphql/schema/createReadSDL.d.ts +4 -4
- package/graphql/schema/createReadSDL.js +7 -7
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/createSingularResolvers.d.ts +3 -2
- package/graphql/schema/createSingularResolvers.js +3 -3
- package/graphql/schema/createSingularResolvers.js.map +1 -1
- package/graphql/schema/createSingularSDL.d.ts +3 -2
- package/graphql/schema/createSingularSDL.js +3 -3
- package/graphql/schema/createSingularSDL.js.map +1 -1
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +6 -7
- package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
- package/graphql/schema/schemaPlugins.js +14 -17
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/index.d.ts +1 -4
- package/index.js +2 -6
- package/index.js.map +1 -1
- package/package.json +25 -25
- package/plugins/index.d.ts +0 -2
- package/plugins/index.js +0 -2
- package/plugins/index.js.map +1 -1
- package/types/modelField.d.ts +1 -1
- package/types/modelField.js.map +1 -1
- package/types/plugins.d.ts +1 -305
- package/types/plugins.js.map +1 -1
- package/types/types.d.ts +4 -44
- package/types/types.js +0 -4
- package/types/types.js.map +1 -1
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.d.ts +3 -2
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +3 -3
- package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.d.ts +4 -3
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +3 -3
- package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
- package/utils/converters/ConverterCollection.d.ts +2 -0
- package/utils/converters/ConverterCollection.js +3 -2
- package/utils/converters/ConverterCollection.js.map +1 -1
- package/utils/converters/valueKeyFromStorageConverter.d.ts +2 -0
- package/utils/converters/valueKeyFromStorageConverter.js +4 -2
- package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.d.ts +2 -3
- package/utils/converters/valueKeyStorageConverter.js +7 -3
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/converters/valueKeyToStorageConverter.d.ts +2 -0
- package/utils/converters/valueKeyToStorageConverter.js +4 -2
- package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
- package/utils/createTypeFromFields.d.ts +3 -2
- package/utils/createTypeFromFields.js +3 -3
- package/utils/createTypeFromFields.js.map +1 -1
- package/utils/entryStorage.d.ts +8 -15
- package/utils/entryStorage.js +31 -59
- package/utils/entryStorage.js.map +1 -1
- package/utils/getBaseFieldType.js +3 -0
- package/utils/getBaseFieldType.js.map +1 -1
- package/utils/getSchemaFromFieldPlugins.d.ts +3 -2
- package/utils/getSchemaFromFieldPlugins.js +5 -9
- package/utils/getSchemaFromFieldPlugins.js.map +1 -1
- package/utils/renderFields.d.ts +4 -3
- package/utils/renderFields.js +14 -9
- package/utils/renderFields.js.map +1 -1
- package/utils/renderGetFilterFields.d.ts +3 -2
- package/utils/renderGetFilterFields.js +2 -2
- package/utils/renderGetFilterFields.js.map +1 -1
- package/utils/renderInputFields.d.ts +4 -3
- package/utils/renderInputFields.js +5 -11
- package/utils/renderInputFields.js.map +1 -1
- package/utils/renderListFilterFields.d.ts +3 -2
- package/utils/renderListFilterFields.js +5 -3
- package/utils/renderListFilterFields.js.map +1 -1
- package/utils/renderSortEnum.d.ts +4 -4
- package/utils/renderSortEnum.js +11 -11
- package/utils/renderSortEnum.js.map +1 -1
- package/graphql/schema/createFieldTypePluginRecords.d.ts +0 -3
- package/graphql/schema/createFieldTypePluginRecords.js +0 -8
- package/graphql/schema/createFieldTypePluginRecords.js.map +0 -1
- package/graphqlFields/boolean.d.ts +0 -2
- package/graphqlFields/boolean.js +0 -52
- package/graphqlFields/boolean.js.map +0 -1
- package/graphqlFields/datetime.d.ts +0 -2
- package/graphqlFields/datetime.js +0 -71
- package/graphqlFields/datetime.js.map +0 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +0 -2
- package/graphqlFields/dynamicZone/dynamicZoneField.js +0 -313
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +0 -1
- package/graphqlFields/dynamicZone/index.d.ts +0 -1
- package/graphqlFields/dynamicZone/index.js +0 -3
- package/graphqlFields/dynamicZone/index.js.map +0 -1
- package/graphqlFields/file.d.ts +0 -2
- package/graphqlFields/file.js +0 -37
- package/graphqlFields/file.js.map +0 -1
- package/graphqlFields/helpers.js +0 -20
- package/graphqlFields/helpers.js.map +0 -1
- package/graphqlFields/index.d.ts +0 -2
- package/graphqlFields/index.js +0 -15
- package/graphqlFields/index.js.map +0 -1
- package/graphqlFields/json.d.ts +0 -2
- package/graphqlFields/json.js +0 -42
- package/graphqlFields/json.js.map +0 -1
- package/graphqlFields/longText.d.ts +0 -2
- package/graphqlFields/longText.js +0 -57
- package/graphqlFields/longText.js.map +0 -1
- package/graphqlFields/number.d.ts +0 -2
- package/graphqlFields/number.js +0 -63
- package/graphqlFields/number.js.map +0 -1
- package/graphqlFields/object.d.ts +0 -2
- package/graphqlFields/object.js +0 -245
- package/graphqlFields/object.js.map +0 -1
- package/graphqlFields/ref.d.ts +0 -2
- package/graphqlFields/ref.js +0 -286
- package/graphqlFields/ref.js.map +0 -1
- package/graphqlFields/richText/richTextResolver.js.map +0 -1
- package/graphqlFields/richText.d.ts +0 -2
- package/graphqlFields/richText.js +0 -48
- package/graphqlFields/richText.js.map +0 -1
- package/graphqlFields/searchableJson.d.ts +0 -2
- package/graphqlFields/searchableJson.js +0 -53
- package/graphqlFields/searchableJson.js.map +0 -1
- package/graphqlFields/text.d.ts +0 -2
- package/graphqlFields/text.js +0 -59
- package/graphqlFields/text.js.map +0 -1
- package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +0 -20
- package/plugins/CmsGraphQLSchemaSorterPlugin.js +0 -19
- package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +0 -1
- package/plugins/StorageTransformPlugin.d.ts +0 -35
- package/plugins/StorageTransformPlugin.js +0 -26
- package/plugins/StorageTransformPlugin.js.map +0 -1
- package/storage/date.d.ts +0 -3
- package/storage/date.js +0 -110
- package/storage/date.js.map +0 -1
- package/storage/default.d.ts +0 -2
- package/storage/default.js +0 -19
- package/storage/default.js.map +0 -1
- package/storage/dynamicZone.d.ts +0 -2
- package/storage/dynamicZone.js +0 -149
- package/storage/dynamicZone.js.map +0 -1
- package/storage/index.d.ts +0 -1
- package/storage/index.js +0 -13
- package/storage/index.js.map +0 -1
- package/storage/json.d.ts +0 -2
- package/storage/json.js +0 -49
- package/storage/json.js.map +0 -1
- package/storage/object.d.ts +0 -2
- package/storage/object.js +0 -104
- package/storage/object.js.map +0 -1
- package/validators/dateGte.d.ts +0 -2
- package/validators/dateGte.js +0 -25
- package/validators/dateGte.js.map +0 -1
- package/validators/dateLte.d.ts +0 -2
- package/validators/dateLte.js +0 -25
- package/validators/dateLte.js.map +0 -1
- package/validators/gte.d.ts +0 -2
- package/validators/gte.js +0 -22
- package/validators/gte.js.map +0 -1
- package/validators/in.d.ts +0 -2
- package/validators/in.js +0 -22
- package/validators/in.js.map +0 -1
- package/validators/index.d.ts +0 -1
- package/validators/index.js +0 -16
- package/validators/index.js.map +0 -1
- package/validators/lte.d.ts +0 -2
- package/validators/lte.js +0 -22
- package/validators/lte.js.map +0 -1
- package/validators/maxLength.d.ts +0 -2
- package/validators/maxLength.js +0 -22
- package/validators/maxLength.js.map +0 -1
- package/validators/minLength.d.ts +0 -2
- package/validators/minLength.js +0 -22
- package/validators/minLength.js.map +0 -1
- package/validators/pattern.d.ts +0 -2
- package/validators/pattern.js +0 -36
- package/validators/pattern.js.map +0 -1
- package/validators/patternPlugins/email.d.ts +0 -2
- package/validators/patternPlugins/email.js +0 -13
- package/validators/patternPlugins/email.js.map +0 -1
- package/validators/patternPlugins/index.d.ts +0 -2
- package/validators/patternPlugins/index.js +0 -11
- package/validators/patternPlugins/index.js.map +0 -1
- package/validators/patternPlugins/lowerCase.d.ts +0 -2
- package/validators/patternPlugins/lowerCase.js +0 -13
- package/validators/patternPlugins/lowerCase.js.map +0 -1
- package/validators/patternPlugins/lowerCaseSpace.d.ts +0 -2
- package/validators/patternPlugins/lowerCaseSpace.js +0 -13
- package/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
- package/validators/patternPlugins/upperCase.d.ts +0 -2
- package/validators/patternPlugins/upperCase.js +0 -13
- package/validators/patternPlugins/upperCase.js.map +0 -1
- package/validators/patternPlugins/upperCaseSpace.d.ts +0 -2
- package/validators/patternPlugins/upperCaseSpace.js +0 -13
- package/validators/patternPlugins/upperCaseSpace.js.map +0 -1
- package/validators/patternPlugins/url.d.ts +0 -2
- package/validators/patternPlugins/url.js +0 -13
- package/validators/patternPlugins/url.js.map +0 -1
- package/validators/required.d.ts +0 -2
- package/validators/required.js +0 -17
- package/validators/required.js.map +0 -1
- package/validators/timeGte.d.ts +0 -2
- package/validators/timeGte.js +0 -20
- package/validators/timeGte.js.map +0 -1
- package/validators/timeLte.d.ts +0 -2
- package/validators/timeLte.js +0 -20
- package/validators/timeLte.js.map +0 -1
- package/validators/unique.d.ts +0 -6
- package/validators/unique.js +0 -57
- package/validators/unique.js.map +0 -1
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import { createTypeName } from "../../../../utils/createTypeName.js";
|
|
3
|
+
import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
|
|
4
|
+
import { createTypeDefsForTemplates } from "./dynamicZone/createTypeDefsForTemplates.js";
|
|
5
|
+
import { normalizeDynamicZoneInput } from "./dynamicZone/normalizeDynamicZoneInput.js";
|
|
6
|
+
const createUnionTypeName = (model, field) => {
|
|
7
|
+
return `${model.singularApiName}_${createTypeName(field.fieldId)}`;
|
|
8
|
+
};
|
|
9
|
+
const getFieldTemplates = field => {
|
|
10
|
+
if (!Array.isArray(field.settings?.templates)) {
|
|
11
|
+
return [];
|
|
12
|
+
}
|
|
13
|
+
return field.settings.templates;
|
|
14
|
+
};
|
|
15
|
+
const remapTemplateValue = (value, typeName) => {
|
|
16
|
+
return {
|
|
17
|
+
...value,
|
|
18
|
+
__typename: typeName
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
const createDynamicZoneResolver = endpointType => {
|
|
22
|
+
return ({
|
|
23
|
+
model,
|
|
24
|
+
models,
|
|
25
|
+
field,
|
|
26
|
+
fieldRegistry,
|
|
27
|
+
createFieldResolvers,
|
|
28
|
+
graphQLType
|
|
29
|
+
}) => {
|
|
30
|
+
const dzField = field;
|
|
31
|
+
const templates = getFieldTemplates(dzField);
|
|
32
|
+
if (!templates.length) {
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
const resolver = parent => {
|
|
36
|
+
const value = parent[field.fieldId];
|
|
37
|
+
if (!value) {
|
|
38
|
+
return value;
|
|
39
|
+
}
|
|
40
|
+
const typeName = `${graphQLType}_${createTypeName(field.fieldId)}`;
|
|
41
|
+
if (field.list && Array.isArray(value)) {
|
|
42
|
+
return value.map(v => {
|
|
43
|
+
const template = templates.find(tpl => tpl.id === v._templateId);
|
|
44
|
+
if (!template) {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
return remapTemplateValue(v, `${typeName}_${template.gqlTypeName}`);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
const template = templates.find(tpl => tpl.id === value._templateId);
|
|
51
|
+
if (!template) {
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
return remapTemplateValue(value, `${typeName}_${template.gqlTypeName}`);
|
|
55
|
+
};
|
|
56
|
+
const {
|
|
57
|
+
templateTypes
|
|
58
|
+
} = createTypeDefsForTemplates({
|
|
59
|
+
models,
|
|
60
|
+
field,
|
|
61
|
+
type: endpointType,
|
|
62
|
+
typeOfType: "type",
|
|
63
|
+
model,
|
|
64
|
+
fieldRegistry,
|
|
65
|
+
templates
|
|
66
|
+
});
|
|
67
|
+
const replace = new RegExp(`${model.singularApiName}_`, "g");
|
|
68
|
+
const typeResolvers = templateTypes.map(templateType => {
|
|
69
|
+
return templateType.replace(replace, `${graphQLType}_`);
|
|
70
|
+
}).reduce((typeResolvers, templateType, index) => {
|
|
71
|
+
return {
|
|
72
|
+
...typeResolvers,
|
|
73
|
+
...createFieldResolvers({
|
|
74
|
+
graphQLType: templateType,
|
|
75
|
+
fields: dzField.settings.templates[index].fields
|
|
76
|
+
})
|
|
77
|
+
};
|
|
78
|
+
}, {});
|
|
79
|
+
return {
|
|
80
|
+
resolver,
|
|
81
|
+
typeResolvers
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
class ReadApi {
|
|
86
|
+
createTypeField({
|
|
87
|
+
models,
|
|
88
|
+
model,
|
|
89
|
+
field,
|
|
90
|
+
fieldRegistry
|
|
91
|
+
}) {
|
|
92
|
+
const dzField = field;
|
|
93
|
+
const templates = getFieldTemplates(dzField);
|
|
94
|
+
if (!templates.length) {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
const unionTypeName = createUnionTypeName(model, field);
|
|
98
|
+
const {
|
|
99
|
+
typeDefs,
|
|
100
|
+
templateTypes
|
|
101
|
+
} = createTypeDefsForTemplates({
|
|
102
|
+
models,
|
|
103
|
+
field,
|
|
104
|
+
type: "read",
|
|
105
|
+
typeOfType: "type",
|
|
106
|
+
model,
|
|
107
|
+
fieldRegistry,
|
|
108
|
+
templates
|
|
109
|
+
});
|
|
110
|
+
typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(" | ")}`);
|
|
111
|
+
return {
|
|
112
|
+
fields: `${field.fieldId}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,
|
|
113
|
+
typeDefs: typeDefs.join("\n")
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
createResolver(params) {
|
|
117
|
+
return createDynamicZoneResolver("read")(params);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
class ManageApi {
|
|
121
|
+
createTypeField({
|
|
122
|
+
models,
|
|
123
|
+
model,
|
|
124
|
+
field,
|
|
125
|
+
fieldRegistry
|
|
126
|
+
}) {
|
|
127
|
+
const dzField = field;
|
|
128
|
+
const templates = getFieldTemplates(dzField);
|
|
129
|
+
if (!templates.length) {
|
|
130
|
+
return null;
|
|
131
|
+
}
|
|
132
|
+
const unionTypeName = createUnionTypeName(model, field);
|
|
133
|
+
const {
|
|
134
|
+
typeDefs,
|
|
135
|
+
templateTypes
|
|
136
|
+
} = createTypeDefsForTemplates({
|
|
137
|
+
models,
|
|
138
|
+
field,
|
|
139
|
+
type: "manage",
|
|
140
|
+
typeOfType: "type",
|
|
141
|
+
model,
|
|
142
|
+
fieldRegistry,
|
|
143
|
+
templates
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
/* Add _templateId. */
|
|
147
|
+
const templateIds = templateTypes.map(type => {
|
|
148
|
+
return `extend type ${type} {
|
|
149
|
+
_templateId: ID!
|
|
150
|
+
}
|
|
151
|
+
`;
|
|
152
|
+
});
|
|
153
|
+
typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(" | ")}`);
|
|
154
|
+
return {
|
|
155
|
+
fields: `${field.fieldId}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,
|
|
156
|
+
typeDefs: typeDefs.concat(templateIds).join("\n")
|
|
157
|
+
};
|
|
158
|
+
}
|
|
159
|
+
createInputField({
|
|
160
|
+
models,
|
|
161
|
+
model,
|
|
162
|
+
field,
|
|
163
|
+
fieldRegistry
|
|
164
|
+
}) {
|
|
165
|
+
const dzField = field;
|
|
166
|
+
const templates = getFieldTemplates(dzField);
|
|
167
|
+
if (!templates.length) {
|
|
168
|
+
return null;
|
|
169
|
+
}
|
|
170
|
+
const {
|
|
171
|
+
typeDefs,
|
|
172
|
+
templateTypes
|
|
173
|
+
} = createTypeDefsForTemplates({
|
|
174
|
+
models,
|
|
175
|
+
field,
|
|
176
|
+
type: "manage",
|
|
177
|
+
typeOfType: "input",
|
|
178
|
+
model,
|
|
179
|
+
fieldRegistry,
|
|
180
|
+
templates
|
|
181
|
+
});
|
|
182
|
+
const typeName = `${model.singularApiName}_${createTypeName(field.fieldId)}`;
|
|
183
|
+
const inputProperties = templateTypes.map(inputTypeName => {
|
|
184
|
+
const key = inputTypeName.replace(`${typeName}_`, "").replace("Input", "");
|
|
185
|
+
return [key, inputTypeName];
|
|
186
|
+
});
|
|
187
|
+
|
|
188
|
+
/**
|
|
189
|
+
* Generate a field input type, similar to this example:
|
|
190
|
+
*
|
|
191
|
+
* input Article_ContentInput {
|
|
192
|
+
* Hero: Article_Content_HeroInput
|
|
193
|
+
* SimpleText: Article_Content_SimpleTextInput
|
|
194
|
+
* }
|
|
195
|
+
*/
|
|
196
|
+
typeDefs.push(`input ${typeName}Input {
|
|
197
|
+
${inputProperties.map(([key, value]) => `
|
|
198
|
+
${key}: ${value}
|
|
199
|
+
`)}
|
|
200
|
+
}`);
|
|
201
|
+
return {
|
|
202
|
+
fields: createGraphQLInputField(field, `${typeName}Input`),
|
|
203
|
+
typeDefs: typeDefs.join("\n")
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
createResolver(params) {
|
|
207
|
+
return createDynamicZoneResolver("manage")(params);
|
|
208
|
+
}
|
|
209
|
+
async normalizeInput({
|
|
210
|
+
field,
|
|
211
|
+
input
|
|
212
|
+
}) {
|
|
213
|
+
const dzField = field;
|
|
214
|
+
const templates = dzField.settings?.templates || [];
|
|
215
|
+
if (Array.isArray(input) && field.list) {
|
|
216
|
+
return input.map(value => normalizeDynamicZoneInput(value, templates)).filter(Boolean);
|
|
217
|
+
}
|
|
218
|
+
return normalizeDynamicZoneInput(input, templates);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
class DynamicZoneToGraphQL {
|
|
222
|
+
read = new ReadApi();
|
|
223
|
+
manage = new ManageApi();
|
|
224
|
+
fieldType = "dynamicZone";
|
|
225
|
+
isSearchable = false;
|
|
226
|
+
isSortable = false;
|
|
227
|
+
isFullTextSearchable = false;
|
|
228
|
+
getReadApi() {
|
|
229
|
+
return this.read;
|
|
230
|
+
}
|
|
231
|
+
getManageApi() {
|
|
232
|
+
return this.manage;
|
|
233
|
+
}
|
|
234
|
+
validateChildFields(params) {
|
|
235
|
+
const field = params.field;
|
|
236
|
+
const originalField = params.originalField;
|
|
237
|
+
const getOriginalTemplateFields = templateId => {
|
|
238
|
+
if (!originalField?.settings?.templates) {
|
|
239
|
+
return [];
|
|
240
|
+
}
|
|
241
|
+
const template = originalField.settings.templates.find(t => t.id === templateId);
|
|
242
|
+
return template?.fields || [];
|
|
243
|
+
};
|
|
244
|
+
for (const template of field.settings.templates) {
|
|
245
|
+
params.validate({
|
|
246
|
+
fields: template.fields,
|
|
247
|
+
originalFields: getOriginalTemplateFields(template.id)
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
getFieldAst(field, converter) {
|
|
252
|
+
const dzField = field;
|
|
253
|
+
const {
|
|
254
|
+
templates = []
|
|
255
|
+
} = dzField.settings;
|
|
256
|
+
return {
|
|
257
|
+
type: "field",
|
|
258
|
+
field,
|
|
259
|
+
children: templates.map(({
|
|
260
|
+
fields,
|
|
261
|
+
...template
|
|
262
|
+
}) => {
|
|
263
|
+
return {
|
|
264
|
+
type: "collection",
|
|
265
|
+
collection: {
|
|
266
|
+
...template,
|
|
267
|
+
discriminator: "_templateId"
|
|
268
|
+
},
|
|
269
|
+
children: fields.map(f => converter.toAst(f))
|
|
270
|
+
};
|
|
271
|
+
})
|
|
272
|
+
};
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
export const DynamicZoneFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
|
|
276
|
+
implementation: DynamicZoneToGraphQL,
|
|
277
|
+
dependencies: []
|
|
278
|
+
});
|
|
279
|
+
|
|
280
|
+
//# sourceMappingURL=DynamicZoneToGraphQL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CmsModelFieldToGraphQL","createTypeName","createGraphQLInputField","createTypeDefsForTemplates","normalizeDynamicZoneInput","createUnionTypeName","model","field","singularApiName","fieldId","getFieldTemplates","Array","isArray","settings","templates","remapTemplateValue","value","typeName","__typename","createDynamicZoneResolver","endpointType","models","fieldRegistry","createFieldResolvers","graphQLType","dzField","length","resolver","parent","list","map","v","template","find","tpl","id","_templateId","undefined","gqlTypeName","templateTypes","type","typeOfType","replace","RegExp","typeResolvers","templateType","reduce","index","fields","ReadApi","createTypeField","unionTypeName","typeDefs","unshift","join","createResolver","params","ManageApi","templateIds","concat","createInputField","inputProperties","inputTypeName","key","push","normalizeInput","input","filter","Boolean","DynamicZoneToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","validateChildFields","originalField","getOriginalTemplateFields","templateId","t","validate","originalFields","getFieldAst","converter","children","collection","discriminator","f","toAst","DynamicZoneFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["DynamicZoneToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type {\n ApiEndpoint,\n CmsDynamicZoneTemplate,\n CmsModel,\n CmsModelDynamicZoneField,\n CmsModelField,\n CmsModelFieldType,\n CmsModelFieldDefinition\n} from \"~/types/index.js\";\nimport type { ValidateChildFieldsParams } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldAstNode, ICmsModelFieldToAst } from \"~/types/modelAst.js\";\nimport type { GraphQLFieldResolver } from \"@webiny/handler-graphql/types.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport { createTypeName } from \"~/utils/createTypeName.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\nimport { createTypeDefsForTemplates } from \"./dynamicZone/createTypeDefsForTemplates.js\";\nimport { normalizeDynamicZoneInput } from \"./dynamicZone/normalizeDynamicZoneInput.js\";\n\nconst createUnionTypeName = (model: CmsModel, field: CmsModelField) => {\n return `${model.singularApiName}_${createTypeName(field.fieldId)}`;\n};\n\nconst getFieldTemplates = (field: CmsModelDynamicZoneField): CmsDynamicZoneTemplate[] => {\n if (!Array.isArray(field.settings?.templates)) {\n return [];\n }\n return field.settings.templates;\n};\n\nconst remapTemplateValue = (value: any, typeName: string) => {\n return { ...value, __typename: typeName };\n};\n\nconst createDynamicZoneResolver = (\n endpointType: ApiEndpoint\n): ((params: CmsModelFieldToGraphQL.ResolverParams) => CmsModelFieldToGraphQL.Resolver) => {\n return ({ model, models, field, fieldRegistry, createFieldResolvers, graphQLType }) => {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n\n if (!templates.length) {\n return false;\n }\n\n const resolver = (parent: any) => {\n const value = parent[field.fieldId];\n if (!value) {\n return value;\n }\n\n const typeName = `${graphQLType}_${createTypeName(field.fieldId)}`;\n\n if (field.list && Array.isArray(value)) {\n return value.map(v => {\n const template = templates.find(tpl => tpl.id === v._templateId);\n if (!template) {\n return undefined;\n }\n return remapTemplateValue(v, `${typeName}_${template.gqlTypeName}`);\n });\n }\n\n const template = templates.find(tpl => tpl.id === value._templateId);\n if (!template) {\n return undefined;\n }\n return remapTemplateValue(value, `${typeName}_${template.gqlTypeName}`);\n };\n\n const { templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: endpointType,\n typeOfType: \"type\",\n model,\n fieldRegistry,\n templates\n });\n\n const replace = new RegExp(`${model.singularApiName}_`, \"g\");\n\n const typeResolvers = templateTypes\n .map(templateType => {\n return templateType.replace(replace, `${graphQLType}_`);\n })\n .reduce<Record<string, Record<string, GraphQLFieldResolver>>>(\n (typeResolvers, templateType, index) => {\n return {\n ...typeResolvers,\n ...createFieldResolvers({\n graphQLType: templateType,\n fields: dzField.settings.templates[index].fields\n })\n };\n },\n {}\n );\n\n return {\n resolver,\n typeResolvers\n };\n };\n};\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({\n models,\n model,\n field,\n fieldRegistry\n }: CmsModelFieldToGraphQL.TypeFieldParams): CmsModelFieldDefinition | null {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n if (!templates.length) {\n return null;\n }\n\n const unionTypeName = createUnionTypeName(model, field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: \"read\",\n typeOfType: \"type\",\n model,\n fieldRegistry,\n templates\n });\n\n typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(\" | \")}`);\n\n return {\n fields: `${field.fieldId}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,\n typeDefs: typeDefs.join(\"\\n\")\n };\n }\n\n public createResolver(\n params: CmsModelFieldToGraphQL.ResolverParams\n ): CmsModelFieldToGraphQL.Resolver {\n return createDynamicZoneResolver(\"read\")(params);\n }\n}\n\nclass ManageApi implements CmsModelFieldToGraphQL.ManageApi {\n public createTypeField({\n models,\n model,\n field,\n fieldRegistry\n }: CmsModelFieldToGraphQL.TypeFieldParams): CmsModelFieldDefinition | null {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n\n if (!templates.length) {\n return null;\n }\n\n const unionTypeName = createUnionTypeName(model, field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: \"manage\",\n typeOfType: \"type\",\n model,\n fieldRegistry,\n templates\n });\n\n /* Add _templateId. */\n const templateIds = templateTypes.map(type => {\n return `extend type ${type} {\n _templateId: ID!\n }\n `;\n });\n\n typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(\" | \")}`);\n\n return {\n fields: `${field.fieldId}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,\n typeDefs: typeDefs.concat(templateIds).join(\"\\n\")\n };\n }\n\n public createInputField({\n models,\n model,\n field,\n fieldRegistry\n }: CmsModelFieldToGraphQL.TypeFieldParams): CmsModelFieldDefinition | null {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n\n if (!templates.length) {\n return null;\n }\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: \"manage\",\n typeOfType: \"input\",\n model,\n fieldRegistry,\n templates\n });\n\n const typeName = `${model.singularApiName}_${createTypeName(field.fieldId)}`;\n\n const inputProperties = templateTypes.map(inputTypeName => {\n const key = inputTypeName.replace(`${typeName}_`, \"\").replace(\"Input\", \"\");\n return [key, inputTypeName];\n });\n\n /**\n * Generate a field input type, similar to this example:\n *\n * input Article_ContentInput {\n * Hero: Article_Content_HeroInput\n * SimpleText: Article_Content_SimpleTextInput\n * }\n */\n typeDefs.push(`input ${typeName}Input {\n ${inputProperties.map(\n ([key, value]) => `\n ${key}: ${value}\n `\n )}\n }`);\n\n return {\n fields: createGraphQLInputField(field, `${typeName}Input`),\n typeDefs: typeDefs.join(\"\\n\")\n };\n }\n\n public createResolver(\n params: CmsModelFieldToGraphQL.ResolverParams\n ): CmsModelFieldToGraphQL.Resolver {\n return createDynamicZoneResolver(\"manage\")(params);\n }\n\n public async normalizeInput<T>({\n field,\n input\n }: CmsModelFieldToGraphQL.InputNormalizeParams): Promise<T> {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = dzField.settings?.templates || [];\n\n if (Array.isArray(input) && field.list) {\n return input\n .map(value => normalizeDynamicZoneInput(value, templates))\n .filter(Boolean) as T;\n }\n\n return normalizeDynamicZoneInput(input as GenericRecord<string>, templates) as T;\n }\n}\n\nclass DynamicZoneToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"dynamicZone\";\n public readonly isSearchable: boolean = false;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = false;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n\n public validateChildFields(params: ValidateChildFieldsParams<CmsModelField>): void {\n const field = params.field as CmsModelDynamicZoneField;\n const originalField = params.originalField as CmsModelDynamicZoneField | undefined;\n\n const getOriginalTemplateFields = (templateId: string) => {\n if (!originalField?.settings?.templates) {\n return [];\n }\n const template = originalField.settings.templates.find(t => t.id === templateId);\n return template?.fields || [];\n };\n\n for (const template of field.settings.templates) {\n params.validate({\n fields: template.fields,\n originalFields: getOriginalTemplateFields(template.id)\n });\n }\n }\n\n public getFieldAst(field: CmsModelField, converter: ICmsModelFieldToAst): CmsModelFieldAstNode {\n const dzField = field as CmsModelDynamicZoneField;\n const { templates = [] } = dzField.settings;\n\n return {\n type: \"field\",\n field,\n children: templates.map(({ fields, ...template }) => {\n return {\n type: \"collection\" as const,\n collection: {\n ...template,\n discriminator: \"_templateId\"\n },\n children: fields.map(f => converter.toAst(f))\n };\n })\n };\n }\n}\n\nexport const DynamicZoneFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: DynamicZoneToGraphQL,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,sBAAsB;AAc/B,SAASC,cAAc;AACvB,SAASC,uBAAuB;AAChC,SAASC,0BAA0B;AACnC,SAASC,yBAAyB;AAElC,MAAMC,mBAAmB,GAAGA,CAACC,KAAe,EAAEC,KAAoB,KAAK;EACnE,OAAO,GAAGD,KAAK,CAACE,eAAe,IAAIP,cAAc,CAACM,KAAK,CAACE,OAAO,CAAC,EAAE;AACtE,CAAC;AAED,MAAMC,iBAAiB,GAAIH,KAA+B,IAA+B;EACrF,IAAI,CAACI,KAAK,CAACC,OAAO,CAACL,KAAK,CAACM,QAAQ,EAAEC,SAAS,CAAC,EAAE;IAC3C,OAAO,EAAE;EACb;EACA,OAAOP,KAAK,CAACM,QAAQ,CAACC,SAAS;AACnC,CAAC;AAED,MAAMC,kBAAkB,GAAGA,CAACC,KAAU,EAAEC,QAAgB,KAAK;EACzD,OAAO;IAAE,GAAGD,KAAK;IAAEE,UAAU,EAAED;EAAS,CAAC;AAC7C,CAAC;AAED,MAAME,yBAAyB,GAC3BC,YAAyB,IAC8D;EACvF,OAAO,CAAC;IAAEd,KAAK;IAAEe,MAAM;IAAEd,KAAK;IAAEe,aAAa;IAAEC,oBAAoB;IAAEC;EAAY,CAAC,KAAK;IACnF,MAAMC,OAAO,GAAGlB,KAAiC;IACjD,MAAMO,SAAS,GAAGJ,iBAAiB,CAACe,OAAO,CAAC;IAE5C,IAAI,CAACX,SAAS,CAACY,MAAM,EAAE;MACnB,OAAO,KAAK;IAChB;IAEA,MAAMC,QAAQ,GAAIC,MAAW,IAAK;MAC9B,MAAMZ,KAAK,GAAGY,MAAM,CAACrB,KAAK,CAACE,OAAO,CAAC;MACnC,IAAI,CAACO,KAAK,EAAE;QACR,OAAOA,KAAK;MAChB;MAEA,MAAMC,QAAQ,GAAG,GAAGO,WAAW,IAAIvB,cAAc,CAACM,KAAK,CAACE,OAAO,CAAC,EAAE;MAElE,IAAIF,KAAK,CAACsB,IAAI,IAAIlB,KAAK,CAACC,OAAO,CAACI,KAAK,CAAC,EAAE;QACpC,OAAOA,KAAK,CAACc,GAAG,CAACC,CAAC,IAAI;UAClB,MAAMC,QAAQ,GAAGlB,SAAS,CAACmB,IAAI,CAACC,GAAG,IAAIA,GAAG,CAACC,EAAE,KAAKJ,CAAC,CAACK,WAAW,CAAC;UAChE,IAAI,CAACJ,QAAQ,EAAE;YACX,OAAOK,SAAS;UACpB;UACA,OAAOtB,kBAAkB,CAACgB,CAAC,EAAE,GAAGd,QAAQ,IAAIe,QAAQ,CAACM,WAAW,EAAE,CAAC;QACvE,CAAC,CAAC;MACN;MAEA,MAAMN,QAAQ,GAAGlB,SAAS,CAACmB,IAAI,CAACC,GAAG,IAAIA,GAAG,CAACC,EAAE,KAAKnB,KAAK,CAACoB,WAAW,CAAC;MACpE,IAAI,CAACJ,QAAQ,EAAE;QACX,OAAOK,SAAS;MACpB;MACA,OAAOtB,kBAAkB,CAACC,KAAK,EAAE,GAAGC,QAAQ,IAAIe,QAAQ,CAACM,WAAW,EAAE,CAAC;IAC3E,CAAC;IAED,MAAM;MAAEC;IAAc,CAAC,GAAGpC,0BAA0B,CAAC;MACjDkB,MAAM;MACNd,KAAK;MACLiC,IAAI,EAAEpB,YAAY;MAClBqB,UAAU,EAAE,MAAM;MAClBnC,KAAK;MACLgB,aAAa;MACbR;IACJ,CAAC,CAAC;IAEF,MAAM4B,OAAO,GAAG,IAAIC,MAAM,CAAC,GAAGrC,KAAK,CAACE,eAAe,GAAG,EAAE,GAAG,CAAC;IAE5D,MAAMoC,aAAa,GAAGL,aAAa,CAC9BT,GAAG,CAACe,YAAY,IAAI;MACjB,OAAOA,YAAY,CAACH,OAAO,CAACA,OAAO,EAAE,GAAGlB,WAAW,GAAG,CAAC;IAC3D,CAAC,CAAC,CACDsB,MAAM,CACH,CAACF,aAAa,EAAEC,YAAY,EAAEE,KAAK,KAAK;MACpC,OAAO;QACH,GAAGH,aAAa;QAChB,GAAGrB,oBAAoB,CAAC;UACpBC,WAAW,EAAEqB,YAAY;UACzBG,MAAM,EAAEvB,OAAO,CAACZ,QAAQ,CAACC,SAAS,CAACiC,KAAK,CAAC,CAACC;QAC9C,CAAC;MACL,CAAC;IACL,CAAC,EACD,CAAC,CACL,CAAC;IAEL,OAAO;MACHrB,QAAQ;MACRiB;IACJ,CAAC;EACL,CAAC;AACL,CAAC;AAED,MAAMK,OAAO,CAA2C;EAC7CC,eAAeA,CAAC;IACnB7B,MAAM;IACNf,KAAK;IACLC,KAAK;IACLe;EACoC,CAAC,EAAkC;IACvE,MAAMG,OAAO,GAAGlB,KAAiC;IACjD,MAAMO,SAAS,GAAGJ,iBAAiB,CAACe,OAAO,CAAC;IAC5C,IAAI,CAACX,SAAS,CAACY,MAAM,EAAE;MACnB,OAAO,IAAI;IACf;IAEA,MAAMyB,aAAa,GAAG9C,mBAAmB,CAACC,KAAK,EAAEC,KAAK,CAAC;IAEvD,MAAM;MAAE6C,QAAQ;MAAEb;IAAc,CAAC,GAAGpC,0BAA0B,CAAC;MAC3DkB,MAAM;MACNd,KAAK;MACLiC,IAAI,EAAE,MAAM;MACZC,UAAU,EAAE,MAAM;MAClBnC,KAAK;MACLgB,aAAa;MACbR;IACJ,CAAC,CAAC;IAEFsC,QAAQ,CAACC,OAAO,CAAC,SAASF,aAAa,MAAMZ,aAAa,CAACe,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IAEzE,OAAO;MACHN,MAAM,EAAE,GAAGzC,KAAK,CAACE,OAAO,KAAKF,KAAK,CAACsB,IAAI,GAAG,IAAIsB,aAAa,IAAI,GAAGA,aAAa,EAAE;MACjFC,QAAQ,EAAEA,QAAQ,CAACE,IAAI,CAAC,IAAI;IAChC,CAAC;EACL;EAEOC,cAAcA,CACjBC,MAA6C,EACd;IAC/B,OAAOrC,yBAAyB,CAAC,MAAM,CAAC,CAACqC,MAAM,CAAC;EACpD;AACJ;AAEA,MAAMC,SAAS,CAA6C;EACjDP,eAAeA,CAAC;IACnB7B,MAAM;IACNf,KAAK;IACLC,KAAK;IACLe;EACoC,CAAC,EAAkC;IACvE,MAAMG,OAAO,GAAGlB,KAAiC;IACjD,MAAMO,SAAS,GAAGJ,iBAAiB,CAACe,OAAO,CAAC;IAE5C,IAAI,CAACX,SAAS,CAACY,MAAM,EAAE;MACnB,OAAO,IAAI;IACf;IAEA,MAAMyB,aAAa,GAAG9C,mBAAmB,CAACC,KAAK,EAAEC,KAAK,CAAC;IAEvD,MAAM;MAAE6C,QAAQ;MAAEb;IAAc,CAAC,GAAGpC,0BAA0B,CAAC;MAC3DkB,MAAM;MACNd,KAAK;MACLiC,IAAI,EAAE,QAAQ;MACdC,UAAU,EAAE,MAAM;MAClBnC,KAAK;MACLgB,aAAa;MACbR;IACJ,CAAC,CAAC;;IAEF;IACA,MAAM4C,WAAW,GAAGnB,aAAa,CAACT,GAAG,CAACU,IAAI,IAAI;MAC1C,OAAO,eAAeA,IAAI;AACtC;AACA;AACA,aAAa;IACL,CAAC,CAAC;IAEFY,QAAQ,CAACC,OAAO,CAAC,SAASF,aAAa,MAAMZ,aAAa,CAACe,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IAEzE,OAAO;MACHN,MAAM,EAAE,GAAGzC,KAAK,CAACE,OAAO,KAAKF,KAAK,CAACsB,IAAI,GAAG,IAAIsB,aAAa,IAAI,GAAGA,aAAa,EAAE;MACjFC,QAAQ,EAAEA,QAAQ,CAACO,MAAM,CAACD,WAAW,CAAC,CAACJ,IAAI,CAAC,IAAI;IACpD,CAAC;EACL;EAEOM,gBAAgBA,CAAC;IACpBvC,MAAM;IACNf,KAAK;IACLC,KAAK;IACLe;EACoC,CAAC,EAAkC;IACvE,MAAMG,OAAO,GAAGlB,KAAiC;IACjD,MAAMO,SAAS,GAAGJ,iBAAiB,CAACe,OAAO,CAAC;IAE5C,IAAI,CAACX,SAAS,CAACY,MAAM,EAAE;MACnB,OAAO,IAAI;IACf;IAEA,MAAM;MAAE0B,QAAQ;MAAEb;IAAc,CAAC,GAAGpC,0BAA0B,CAAC;MAC3DkB,MAAM;MACNd,KAAK;MACLiC,IAAI,EAAE,QAAQ;MACdC,UAAU,EAAE,OAAO;MACnBnC,KAAK;MACLgB,aAAa;MACbR;IACJ,CAAC,CAAC;IAEF,MAAMG,QAAQ,GAAG,GAAGX,KAAK,CAACE,eAAe,IAAIP,cAAc,CAACM,KAAK,CAACE,OAAO,CAAC,EAAE;IAE5E,MAAMoD,eAAe,GAAGtB,aAAa,CAACT,GAAG,CAACgC,aAAa,IAAI;MACvD,MAAMC,GAAG,GAAGD,aAAa,CAACpB,OAAO,CAAC,GAAGzB,QAAQ,GAAG,EAAE,EAAE,CAAC,CAACyB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;MAC1E,OAAO,CAACqB,GAAG,EAAED,aAAa,CAAC;IAC/B,CAAC,CAAC;;IAEF;AACR;AACA;AACA;AACA;AACA;AACA;AACA;IACQV,QAAQ,CAACY,IAAI,CAAC,SAAS/C,QAAQ;AACvC,cAAc4C,eAAe,CAAC/B,GAAG,CACjB,CAAC,CAACiC,GAAG,EAAE/C,KAAK,CAAC,KAAK;AAClC,kBAAkB+C,GAAG,KAAK/C,KAAK;AAC/B,aACY,CAAC;AACb,UAAU,CAAC;IAEH,OAAO;MACHgC,MAAM,EAAE9C,uBAAuB,CAACK,KAAK,EAAE,GAAGU,QAAQ,OAAO,CAAC;MAC1DmC,QAAQ,EAAEA,QAAQ,CAACE,IAAI,CAAC,IAAI;IAChC,CAAC;EACL;EAEOC,cAAcA,CACjBC,MAA6C,EACd;IAC/B,OAAOrC,yBAAyB,CAAC,QAAQ,CAAC,CAACqC,MAAM,CAAC;EACtD;EAEA,MAAaS,cAAcA,CAAI;IAC3B1D,KAAK;IACL2D;EACyC,CAAC,EAAc;IACxD,MAAMzC,OAAO,GAAGlB,KAAiC;IACjD,MAAMO,SAAS,GAAGW,OAAO,CAACZ,QAAQ,EAAEC,SAAS,IAAI,EAAE;IAEnD,IAAIH,KAAK,CAACC,OAAO,CAACsD,KAAK,CAAC,IAAI3D,KAAK,CAACsB,IAAI,EAAE;MACpC,OAAOqC,KAAK,CACPpC,GAAG,CAACd,KAAK,IAAIZ,yBAAyB,CAACY,KAAK,EAAEF,SAAS,CAAC,CAAC,CACzDqD,MAAM,CAACC,OAAO,CAAC;IACxB;IAEA,OAAOhE,yBAAyB,CAAC8D,KAAK,EAA2BpD,SAAS,CAAC;EAC/E;AACJ;AAEA,MAAMuD,oBAAoB,CAA6C;EACnDC,IAAI,GAAG,IAAIrB,OAAO,CAAC,CAAC;EACpBsB,MAAM,GAAG,IAAId,SAAS,CAAC,CAAC;EAExBe,SAAS,GAAsB,aAAa;EAC5CC,YAAY,GAAY,KAAK;EAC7BC,UAAU,GAAY,KAAK;EAC3BC,oBAAoB,GAAY,KAAK;EAE9CC,UAAUA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAACN,IAAI;EACpB;EAEOO,YAAYA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACN,MAAM;EACtB;EAEOO,mBAAmBA,CAACtB,MAAgD,EAAQ;IAC/E,MAAMjD,KAAK,GAAGiD,MAAM,CAACjD,KAAiC;IACtD,MAAMwE,aAAa,GAAGvB,MAAM,CAACuB,aAAqD;IAElF,MAAMC,yBAAyB,GAAIC,UAAkB,IAAK;MACtD,IAAI,CAACF,aAAa,EAAElE,QAAQ,EAAEC,SAAS,EAAE;QACrC,OAAO,EAAE;MACb;MACA,MAAMkB,QAAQ,GAAG+C,aAAa,CAAClE,QAAQ,CAACC,SAAS,CAACmB,IAAI,CAACiD,CAAC,IAAIA,CAAC,CAAC/C,EAAE,KAAK8C,UAAU,CAAC;MAChF,OAAOjD,QAAQ,EAAEgB,MAAM,IAAI,EAAE;IACjC,CAAC;IAED,KAAK,MAAMhB,QAAQ,IAAIzB,KAAK,CAACM,QAAQ,CAACC,SAAS,EAAE;MAC7C0C,MAAM,CAAC2B,QAAQ,CAAC;QACZnC,MAAM,EAAEhB,QAAQ,CAACgB,MAAM;QACvBoC,cAAc,EAAEJ,yBAAyB,CAAChD,QAAQ,CAACG,EAAE;MACzD,CAAC,CAAC;IACN;EACJ;EAEOkD,WAAWA,CAAC9E,KAAoB,EAAE+E,SAA8B,EAAwB;IAC3F,MAAM7D,OAAO,GAAGlB,KAAiC;IACjD,MAAM;MAAEO,SAAS,GAAG;IAAG,CAAC,GAAGW,OAAO,CAACZ,QAAQ;IAE3C,OAAO;MACH2B,IAAI,EAAE,OAAO;MACbjC,KAAK;MACLgF,QAAQ,EAAEzE,SAAS,CAACgB,GAAG,CAAC,CAAC;QAAEkB,MAAM;QAAE,GAAGhB;MAAS,CAAC,KAAK;QACjD,OAAO;UACHQ,IAAI,EAAE,YAAqB;UAC3BgD,UAAU,EAAE;YACR,GAAGxD,QAAQ;YACXyD,aAAa,EAAE;UACnB,CAAC;UACDF,QAAQ,EAAEvC,MAAM,CAAClB,GAAG,CAAC4D,CAAC,IAAIJ,SAAS,CAACK,KAAK,CAACD,CAAC,CAAC;QAChD,CAAC;MACL,CAAC;IACL,CAAC;EACL;AACJ;AAEA,OAAO,MAAME,yBAAyB,GAAG5F,sBAAsB,CAAC6F,oBAAoB,CAAC;EACjFC,cAAc,EAAEzB,oBAAoB;EACpC0B,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import type { CmsModelFieldType } from "../../../../types/modelField.js";
|
|
3
|
+
declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
|
|
4
|
+
createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
5
|
+
}
|
|
6
|
+
declare class ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {
|
|
7
|
+
createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
8
|
+
}
|
|
9
|
+
declare class FileToGraphQL implements CmsModelFieldToGraphQL.Interface {
|
|
10
|
+
readonly read: ReadApi;
|
|
11
|
+
readonly manage: ManageApi;
|
|
12
|
+
readonly fieldType: CmsModelFieldType;
|
|
13
|
+
readonly isSearchable: boolean;
|
|
14
|
+
readonly isSortable: boolean;
|
|
15
|
+
readonly isFullTextSearchable: boolean;
|
|
16
|
+
getReadApi(): CmsModelFieldToGraphQL.ReadApi;
|
|
17
|
+
getManageApi(): CmsModelFieldToGraphQL.ManageApi;
|
|
18
|
+
}
|
|
19
|
+
export declare const FileFieldToGraphQL: typeof FileToGraphQL & {
|
|
20
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
|
|
21
|
+
};
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
|
|
3
|
+
class ReadApi {
|
|
4
|
+
createTypeField({
|
|
5
|
+
field
|
|
6
|
+
}) {
|
|
7
|
+
if (field.list) {
|
|
8
|
+
return `${field.fieldId}: [String]`;
|
|
9
|
+
}
|
|
10
|
+
return `${field.fieldId}: String`;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
class ManageApi extends ReadApi {
|
|
14
|
+
createInputField({
|
|
15
|
+
field
|
|
16
|
+
}) {
|
|
17
|
+
return createGraphQLInputField(field, "String");
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
class FileToGraphQL {
|
|
21
|
+
read = new ReadApi();
|
|
22
|
+
manage = new ManageApi();
|
|
23
|
+
fieldType = "file";
|
|
24
|
+
isSearchable = false;
|
|
25
|
+
isSortable = false;
|
|
26
|
+
isFullTextSearchable = false;
|
|
27
|
+
getReadApi() {
|
|
28
|
+
return this.read;
|
|
29
|
+
}
|
|
30
|
+
getManageApi() {
|
|
31
|
+
return this.manage;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export const FileFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
|
|
35
|
+
implementation: FileToGraphQL,
|
|
36
|
+
dependencies: []
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
//# sourceMappingURL=FileToGraphQL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CmsModelFieldToGraphQL","createGraphQLInputField","ReadApi","createTypeField","field","list","fieldId","ManageApi","createInputField","FileToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","FileFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["FileToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldType } from \"~/types/modelField.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n }\n}\n\nclass ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {\n public createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n return createGraphQLInputField(field, \"String\");\n }\n}\n\nclass FileToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"file\";\n public readonly isSearchable: boolean = false;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = false;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n}\n\nexport const FileFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: FileToGraphQL,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,sBAAsB;AAE/B,SAASC,uBAAuB;AAEhC,MAAMC,OAAO,CAA2C;EAC7CC,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACE,OAAO,YAAY;IACvC;IACA,OAAO,GAAGF,KAAK,CAACE,OAAO,UAAU;EACrC;AACJ;AAEA,MAAMC,SAAS,SAASL,OAAO,CAA6C;EACjEM,gBAAgBA,CAAC;IAAEJ;EAA8C,CAAC,EAAU;IAC/E,OAAOH,uBAAuB,CAACG,KAAK,EAAE,QAAQ,CAAC;EACnD;AACJ;AAEA,MAAMK,aAAa,CAA6C;EAC5CC,IAAI,GAAG,IAAIR,OAAO,CAAC,CAAC;EACpBS,MAAM,GAAG,IAAIJ,SAAS,CAAC,CAAC;EAExBK,SAAS,GAAsB,MAAM;EACrCC,YAAY,GAAY,KAAK;EAC7BC,UAAU,GAAY,KAAK;EAC3BC,oBAAoB,GAAY,KAAK;EAE9CC,UAAUA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAACN,IAAI;EACpB;EAEOO,YAAYA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACN,MAAM;EACtB;AACJ;AAEA,OAAO,MAAMO,kBAAkB,GAAGlB,sBAAsB,CAACmB,oBAAoB,CAAC;EAC1EC,cAAc,EAAEX,aAAa;EAC7BY,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import type { CmsModelFieldType } from "../../../../types/modelField.js";
|
|
3
|
+
declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
|
|
4
|
+
createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
5
|
+
createGetFilters({ field }: CmsModelFieldToGraphQL.GetFiltersParams): string;
|
|
6
|
+
}
|
|
7
|
+
declare class ManageApi implements CmsModelFieldToGraphQL.ManageApi {
|
|
8
|
+
createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
9
|
+
createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
10
|
+
}
|
|
11
|
+
declare class JsonToGraphQL implements CmsModelFieldToGraphQL.Interface {
|
|
12
|
+
readonly read: ReadApi;
|
|
13
|
+
readonly manage: ManageApi;
|
|
14
|
+
readonly fieldType: CmsModelFieldType;
|
|
15
|
+
readonly isSearchable: boolean;
|
|
16
|
+
readonly isSortable: boolean;
|
|
17
|
+
readonly isFullTextSearchable: boolean;
|
|
18
|
+
getReadApi(): CmsModelFieldToGraphQL.ReadApi;
|
|
19
|
+
getManageApi(): CmsModelFieldToGraphQL.ManageApi;
|
|
20
|
+
}
|
|
21
|
+
export declare const JsonFieldToGraphQL: typeof JsonToGraphQL & {
|
|
22
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
|
|
3
|
+
class ReadApi {
|
|
4
|
+
createTypeField({
|
|
5
|
+
field
|
|
6
|
+
}) {
|
|
7
|
+
if (field.list) {
|
|
8
|
+
return `${field.fieldId}: [JSON]`;
|
|
9
|
+
}
|
|
10
|
+
return `${field.fieldId}: JSON`;
|
|
11
|
+
}
|
|
12
|
+
createGetFilters({
|
|
13
|
+
field
|
|
14
|
+
}) {
|
|
15
|
+
return `${field.fieldId}: JSON`;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
class ManageApi {
|
|
19
|
+
createTypeField({
|
|
20
|
+
field
|
|
21
|
+
}) {
|
|
22
|
+
if (field.list) {
|
|
23
|
+
return `${field.fieldId}: [JSON]`;
|
|
24
|
+
}
|
|
25
|
+
return `${field.fieldId}: JSON`;
|
|
26
|
+
}
|
|
27
|
+
createInputField({
|
|
28
|
+
field
|
|
29
|
+
}) {
|
|
30
|
+
return createGraphQLInputField(field, "JSON");
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
class JsonToGraphQL {
|
|
34
|
+
read = new ReadApi();
|
|
35
|
+
manage = new ManageApi();
|
|
36
|
+
fieldType = "json";
|
|
37
|
+
isSearchable = false;
|
|
38
|
+
isSortable = false;
|
|
39
|
+
isFullTextSearchable = false;
|
|
40
|
+
getReadApi() {
|
|
41
|
+
return this.read;
|
|
42
|
+
}
|
|
43
|
+
getManageApi() {
|
|
44
|
+
return this.manage;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export const JsonFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
|
|
48
|
+
implementation: JsonToGraphQL,
|
|
49
|
+
dependencies: []
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
//# sourceMappingURL=JsonToGraphQL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CmsModelFieldToGraphQL","createGraphQLInputField","ReadApi","createTypeField","field","list","fieldId","createGetFilters","ManageApi","createInputField","JsonToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","JsonFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["JsonToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldType } from \"~/types/modelField.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [JSON]`;\n }\n return `${field.fieldId}: JSON`;\n }\n\n public createGetFilters({ field }: CmsModelFieldToGraphQL.GetFiltersParams): string {\n return `${field.fieldId}: JSON`;\n }\n}\n\nclass ManageApi implements CmsModelFieldToGraphQL.ManageApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [JSON]`;\n }\n return `${field.fieldId}: JSON`;\n }\n\n public createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n return createGraphQLInputField(field, \"JSON\");\n }\n}\n\nclass JsonToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"json\";\n public readonly isSearchable: boolean = false;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = false;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n}\n\nexport const JsonFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: JsonToGraphQL,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,sBAAsB;AAE/B,SAASC,uBAAuB;AAEhC,MAAMC,OAAO,CAA2C;EAC7CC,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACE,OAAO,UAAU;IACrC;IACA,OAAO,GAAGF,KAAK,CAACE,OAAO,QAAQ;EACnC;EAEOC,gBAAgBA,CAAC;IAAEH;EAA+C,CAAC,EAAU;IAChF,OAAO,GAAGA,KAAK,CAACE,OAAO,QAAQ;EACnC;AACJ;AAEA,MAAME,SAAS,CAA6C;EACjDL,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACE,OAAO,UAAU;IACrC;IACA,OAAO,GAAGF,KAAK,CAACE,OAAO,QAAQ;EACnC;EAEOG,gBAAgBA,CAAC;IAAEL;EAA8C,CAAC,EAAU;IAC/E,OAAOH,uBAAuB,CAACG,KAAK,EAAE,MAAM,CAAC;EACjD;AACJ;AAEA,MAAMM,aAAa,CAA6C;EAC5CC,IAAI,GAAG,IAAIT,OAAO,CAAC,CAAC;EACpBU,MAAM,GAAG,IAAIJ,SAAS,CAAC,CAAC;EAExBK,SAAS,GAAsB,MAAM;EACrCC,YAAY,GAAY,KAAK;EAC7BC,UAAU,GAAY,KAAK;EAC3BC,oBAAoB,GAAY,KAAK;EAE9CC,UAAUA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAACN,IAAI;EACpB;EAEOO,YAAYA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACN,MAAM;EACtB;AACJ;AAEA,OAAO,MAAMO,kBAAkB,GAAGnB,sBAAsB,CAACoB,oBAAoB,CAAC;EAC1EC,cAAc,EAAEX,aAAa;EAC7BY,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import type { CmsModelFieldType } from "../../../../types/modelField.js";
|
|
3
|
+
declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
|
|
4
|
+
createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
5
|
+
createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string;
|
|
6
|
+
createResolver({ field }: CmsModelFieldToGraphQL.ResolverParams): CmsModelFieldToGraphQL.Resolver;
|
|
7
|
+
}
|
|
8
|
+
declare class ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {
|
|
9
|
+
createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
10
|
+
}
|
|
11
|
+
declare class LongTextToGraphQL implements CmsModelFieldToGraphQL.Interface {
|
|
12
|
+
readonly read: ReadApi;
|
|
13
|
+
readonly manage: ManageApi;
|
|
14
|
+
readonly fieldType: CmsModelFieldType;
|
|
15
|
+
readonly isSearchable: boolean;
|
|
16
|
+
readonly isSortable: boolean;
|
|
17
|
+
readonly isFullTextSearchable: boolean;
|
|
18
|
+
getReadApi(): CmsModelFieldToGraphQL.ReadApi;
|
|
19
|
+
getManageApi(): CmsModelFieldToGraphQL.ManageApi;
|
|
20
|
+
}
|
|
21
|
+
export declare const LongTextFieldToGraphQL: typeof LongTextToGraphQL & {
|
|
22
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
|
|
23
|
+
};
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
|
|
3
|
+
const createListFilters = fieldId => {
|
|
4
|
+
return `
|
|
5
|
+
${fieldId}_contains: String
|
|
6
|
+
${fieldId}_not_contains: String
|
|
7
|
+
`;
|
|
8
|
+
};
|
|
9
|
+
class ReadApi {
|
|
10
|
+
createTypeField({
|
|
11
|
+
field
|
|
12
|
+
}) {
|
|
13
|
+
if (field.list) {
|
|
14
|
+
return `${field.fieldId}: [String]`;
|
|
15
|
+
}
|
|
16
|
+
return `${field.fieldId}: String`;
|
|
17
|
+
}
|
|
18
|
+
createListFilters({
|
|
19
|
+
field
|
|
20
|
+
}) {
|
|
21
|
+
return createListFilters(field.fieldId);
|
|
22
|
+
}
|
|
23
|
+
createResolver({
|
|
24
|
+
field
|
|
25
|
+
}) {
|
|
26
|
+
return async parent => {
|
|
27
|
+
return parent[field.fieldId] || null;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
class ManageApi extends ReadApi {
|
|
32
|
+
createInputField({
|
|
33
|
+
field
|
|
34
|
+
}) {
|
|
35
|
+
return createGraphQLInputField(field, "String");
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
class LongTextToGraphQL {
|
|
39
|
+
read = new ReadApi();
|
|
40
|
+
manage = new ManageApi();
|
|
41
|
+
fieldType = "long-text";
|
|
42
|
+
isSearchable = true;
|
|
43
|
+
isSortable = false;
|
|
44
|
+
isFullTextSearchable = true;
|
|
45
|
+
getReadApi() {
|
|
46
|
+
return this.read;
|
|
47
|
+
}
|
|
48
|
+
getManageApi() {
|
|
49
|
+
return this.manage;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
export const LongTextFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
|
|
53
|
+
implementation: LongTextToGraphQL,
|
|
54
|
+
dependencies: []
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
//# sourceMappingURL=LongTextToGraphQL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CmsModelFieldToGraphQL","createGraphQLInputField","createListFilters","fieldId","ReadApi","createTypeField","field","list","createResolver","parent","ManageApi","createInputField","LongTextToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","LongTextFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["LongTextToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldType } from \"~/types/modelField.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\n\nconst createListFilters = (fieldId: string): string => {\n return `\n ${fieldId}_contains: String\n ${fieldId}_not_contains: String\n `;\n};\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n }\n\n public createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string {\n return createListFilters(field.fieldId);\n }\n\n public createResolver({\n field\n }: CmsModelFieldToGraphQL.ResolverParams): CmsModelFieldToGraphQL.Resolver {\n return async (parent: any) => {\n return parent[field.fieldId] || null;\n };\n }\n}\n\nclass ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {\n public createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n return createGraphQLInputField(field, \"String\");\n }\n}\n\nclass LongTextToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"long-text\";\n public readonly isSearchable: boolean = true;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = true;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n}\n\nexport const LongTextFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: LongTextToGraphQL,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,sBAAsB;AAE/B,SAASC,uBAAuB;AAEhC,MAAMC,iBAAiB,GAAIC,OAAe,IAAa;EACnD,OAAO;AACX,UAAUA,OAAO;AACjB,UAAUA,OAAO;AACjB,KAAK;AACL,CAAC;AAED,MAAMC,OAAO,CAA2C;EAC7CC,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACH,OAAO,YAAY;IACvC;IACA,OAAO,GAAGG,KAAK,CAACH,OAAO,UAAU;EACrC;EAEOD,iBAAiBA,CAAC;IAAEI;EAAgD,CAAC,EAAU;IAClF,OAAOJ,iBAAiB,CAACI,KAAK,CAACH,OAAO,CAAC;EAC3C;EAEOK,cAAcA,CAAC;IAClBF;EACmC,CAAC,EAAmC;IACvE,OAAO,MAAOG,MAAW,IAAK;MAC1B,OAAOA,MAAM,CAACH,KAAK,CAACH,OAAO,CAAC,IAAI,IAAI;IACxC,CAAC;EACL;AACJ;AAEA,MAAMO,SAAS,SAASN,OAAO,CAA6C;EACjEO,gBAAgBA,CAAC;IAAEL;EAA8C,CAAC,EAAU;IAC/E,OAAOL,uBAAuB,CAACK,KAAK,EAAE,QAAQ,CAAC;EACnD;AACJ;AAEA,MAAMM,iBAAiB,CAA6C;EAChDC,IAAI,GAAG,IAAIT,OAAO,CAAC,CAAC;EACpBU,MAAM,GAAG,IAAIJ,SAAS,CAAC,CAAC;EAExBK,SAAS,GAAsB,WAAW;EAC1CC,YAAY,GAAY,IAAI;EAC5BC,UAAU,GAAY,KAAK;EAC3BC,oBAAoB,GAAY,IAAI;EAE7CC,UAAUA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAACN,IAAI;EACpB;EAEOO,YAAYA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACN,MAAM;EACtB;AACJ;AAEA,OAAO,MAAMO,sBAAsB,GAAGrB,sBAAsB,CAACsB,oBAAoB,CAAC;EAC9EC,cAAc,EAAEX,iBAAiB;EACjCY,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
|
|
2
|
+
import type { CmsModelFieldType } from "../../../../types/modelField.js";
|
|
3
|
+
declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
|
|
4
|
+
createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
5
|
+
createGetFilters({ field }: CmsModelFieldToGraphQL.GetFiltersParams): string;
|
|
6
|
+
createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string;
|
|
7
|
+
}
|
|
8
|
+
declare class ManageApi implements CmsModelFieldToGraphQL.ManageApi {
|
|
9
|
+
createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
10
|
+
createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string;
|
|
11
|
+
createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
|
|
12
|
+
}
|
|
13
|
+
declare class NumberToGraphQL implements CmsModelFieldToGraphQL.Interface {
|
|
14
|
+
readonly read: ReadApi;
|
|
15
|
+
readonly manage: ManageApi;
|
|
16
|
+
readonly fieldType: CmsModelFieldType;
|
|
17
|
+
readonly isSearchable: boolean;
|
|
18
|
+
readonly isSortable: boolean;
|
|
19
|
+
readonly isFullTextSearchable: boolean;
|
|
20
|
+
getReadApi(): CmsModelFieldToGraphQL.ReadApi;
|
|
21
|
+
getManageApi(): CmsModelFieldToGraphQL.ManageApi;
|
|
22
|
+
}
|
|
23
|
+
export declare const NumberFieldToGraphQL: typeof NumberToGraphQL & {
|
|
24
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
|
|
25
|
+
};
|
|
26
|
+
export {};
|