@webiny/api-headless-cms-ddb-es 0.0.0-unstable.78f581c1d2 → 0.0.0-unstable.7be00a75a9
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/README.md +6 -30
- package/configurations.d.ts +13 -6
- package/configurations.js +28 -40
- package/configurations.js.map +1 -1
- package/definitions/entry.d.ts +4 -5
- package/definitions/entry.js +9 -88
- package/definitions/entry.js.map +1 -1
- package/definitions/group.d.ts +6 -6
- package/definitions/group.js +9 -68
- package/definitions/group.js.map +1 -1
- package/definitions/model.d.ts +6 -6
- package/definitions/model.js +9 -90
- package/definitions/model.js.map +1 -1
- package/definitions/types.d.ts +65 -0
- package/definitions/types.js +0 -0
- package/elasticsearch/createElasticsearchIndex.d.ts +5 -5
- package/elasticsearch/createElasticsearchIndex.js +53 -56
- package/elasticsearch/createElasticsearchIndex.js.map +1 -1
- package/elasticsearch/deleteElasticsearchIndex.d.ts +3 -3
- package/elasticsearch/deleteElasticsearchIndex.js +20 -40
- package/elasticsearch/deleteElasticsearchIndex.js.map +1 -1
- package/exports/api/cms/opensearch.d.ts +9 -0
- package/exports/api/cms/opensearch.js +9 -0
- package/feature.d.ts +1 -0
- package/feature.js +179 -0
- package/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchBodyModifier/abstractions.d.ts +16 -0
- package/features/CmsEntryOpenSearchBodyModifier/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchBodyModifier/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchBodyModifier/index.d.ts +1 -0
- package/features/CmsEntryOpenSearchBodyModifier/index.js +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.d.ts +14 -0
- package/features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.js +42 -0
- package/features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.d.ts +32 -0
- package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.js +5 -0
- package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.d.ts +11 -0
- package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.js +5 -0
- package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/constants.d.ts +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/constants.js +4 -0
- package/features/CmsEntryOpenSearchFieldIndex/constants.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchFieldIndex/feature.js +29 -0
- package/features/CmsEntryOpenSearchFieldIndex/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.d.ts +11 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.js +60 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.d.ts +13 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.js +33 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.d.ts +10 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.js +21 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.d.ts +10 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.js +22 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.d.ts +11 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.js +32 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.d.ts +12 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.js +107 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.d.ts +10 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.js +21 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.d.ts +15 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.js +40 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/TextEncryptedFieldIndex.d.ts +15 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/TextEncryptedFieldIndex.js +40 -0
- package/features/CmsEntryOpenSearchFieldIndex/fields/TextEncryptedFieldIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldIndex/index.d.ts +3 -0
- package/features/CmsEntryOpenSearchFieldIndex/index.js +3 -0
- package/features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.d.ts +11 -0
- package/features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.js +36 -0
- package/features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.d.ts +37 -0
- package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.js +5 -0
- package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.d.ts +9 -0
- package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.js +5 -0
- package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/constants.d.ts +1 -0
- package/features/CmsEntryOpenSearchFilter/constants.js +4 -0
- package/features/CmsEntryOpenSearchFilter/constants.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchFilter/feature.js +17 -0
- package/features/CmsEntryOpenSearchFilter/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/fields/DefaultFilter.d.ts +9 -0
- package/features/CmsEntryOpenSearchFilter/fields/DefaultFilter.js +26 -0
- package/features/CmsEntryOpenSearchFilter/fields/DefaultFilter.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/fields/ObjectFilter.d.ts +9 -0
- package/features/CmsEntryOpenSearchFilter/fields/ObjectFilter.js +43 -0
- package/features/CmsEntryOpenSearchFilter/fields/ObjectFilter.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/fields/RefFilter.d.ts +9 -0
- package/features/CmsEntryOpenSearchFilter/fields/RefFilter.js +36 -0
- package/features/CmsEntryOpenSearchFilter/fields/RefFilter.js.map +1 -0
- package/features/CmsEntryOpenSearchFilter/index.d.ts +3 -0
- package/features/CmsEntryOpenSearchFilter/index.js +3 -0
- package/features/CmsEntryOpenSearchFullTextSearch/abstractions.d.ts +20 -0
- package/features/CmsEntryOpenSearchFullTextSearch/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchFullTextSearch/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchFullTextSearch/index.d.ts +1 -0
- package/features/CmsEntryOpenSearchFullTextSearch/index.js +1 -0
- package/features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.d.ts +11 -0
- package/features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.js +17 -0
- package/features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.js.map +1 -0
- package/features/CmsEntryOpenSearchIndex/abstractions.d.ts +14 -0
- package/features/CmsEntryOpenSearchIndex/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchIndex/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchIndex/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchIndex/feature.js +11 -0
- package/features/CmsEntryOpenSearchIndex/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchIndex/index.d.ts +3 -0
- package/features/CmsEntryOpenSearchIndex/index.js +3 -0
- package/features/CmsEntryOpenSearchQueryModifier/abstractions.d.ts +16 -0
- package/features/CmsEntryOpenSearchQueryModifier/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchQueryModifier/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchQueryModifier/index.d.ts +1 -0
- package/features/CmsEntryOpenSearchQueryModifier/index.js +1 -0
- package/features/CmsEntryOpenSearchSortModifier/abstractions.d.ts +15 -0
- package/features/CmsEntryOpenSearchSortModifier/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchSortModifier/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchSortModifier/index.d.ts +1 -0
- package/features/CmsEntryOpenSearchSortModifier/index.js +1 -0
- package/features/CmsEntryOpenSearchValueSearch/CmsEntryOpenSearchValueSearchRegistry.d.ts +12 -0
- package/features/CmsEntryOpenSearchValueSearch/CmsEntryOpenSearchValueSearchRegistry.js +31 -0
- package/features/CmsEntryOpenSearchValueSearch/CmsEntryOpenSearchValueSearchRegistry.js.map +1 -0
- package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearch.d.ts +22 -0
- package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearch.js +5 -0
- package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearch.js.map +1 -0
- package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearchRegistry.d.ts +10 -0
- package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearchRegistry.js +5 -0
- package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearchRegistry.js.map +1 -0
- package/features/CmsEntryOpenSearchValueSearch/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchValueSearch/feature.js +17 -0
- package/features/CmsEntryOpenSearchValueSearch/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/RefSearch.d.ts +10 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/RefSearch.js +21 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/RefSearch.js.map +1 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/SearchableJsonSearch.d.ts +10 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/SearchableJsonSearch.js +44 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/SearchableJsonSearch.js.map +1 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/TimeSearch.d.ts +10 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/TimeSearch.js +22 -0
- package/features/CmsEntryOpenSearchValueSearch/fields/TimeSearch.js.map +1 -0
- package/features/CmsEntryOpenSearchValueSearch/index.d.ts +3 -0
- package/features/CmsEntryOpenSearchValueSearch/index.js +3 -0
- package/features/CmsEntryOpenSearchValuesModifier/abstractions.d.ts +23 -0
- package/features/CmsEntryOpenSearchValuesModifier/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchValuesModifier/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchValuesModifier/index.d.ts +1 -0
- package/features/CmsEntryOpenSearchValuesModifier/index.js +1 -0
- package/helpers/entryIndexHelpers.d.ts +13 -11
- package/helpers/entryIndexHelpers.js +72 -196
- package/helpers/entryIndexHelpers.js.map +1 -1
- package/helpers/fieldIdentifier.d.ts +6 -0
- package/helpers/fieldIdentifier.js +23 -0
- package/helpers/fieldIdentifier.js.map +1 -0
- package/helpers/index.d.ts +2 -2
- package/helpers/index.js +2 -31
- package/index.d.ts +1 -3
- package/index.js +1 -268
- package/operations/entry/dataLoader/DataLoaderCache.d.ts +16 -0
- package/operations/entry/dataLoader/DataLoaderCache.js +27 -0
- package/operations/entry/dataLoader/DataLoaderCache.js.map +1 -0
- package/operations/entry/dataLoader/constants.d.ts +1 -0
- package/operations/entry/dataLoader/constants.js +5 -0
- package/operations/entry/dataLoader/constants.js.map +1 -0
- package/operations/entry/dataLoader/createBatchScheduleFn.d.ts +8 -0
- package/operations/entry/dataLoader/createBatchScheduleFn.js +10 -0
- package/operations/entry/dataLoader/createBatchScheduleFn.js.map +1 -0
- package/operations/entry/dataLoader/getAllEntryRevisions.d.ts +4 -0
- package/operations/entry/dataLoader/getAllEntryRevisions.js +24 -0
- package/operations/entry/dataLoader/getAllEntryRevisions.js.map +1 -0
- package/operations/entry/dataLoader/getLatestRevisionByEntryId.d.ts +4 -0
- package/operations/entry/dataLoader/getLatestRevisionByEntryId.js +34 -0
- package/operations/entry/dataLoader/getLatestRevisionByEntryId.js.map +1 -0
- package/operations/entry/dataLoader/getPublishedRevisionByEntryId.d.ts +4 -0
- package/operations/entry/dataLoader/getPublishedRevisionByEntryId.js +34 -0
- package/operations/entry/dataLoader/getPublishedRevisionByEntryId.js.map +1 -0
- package/operations/entry/dataLoader/getRevisionById.d.ts +4 -0
- package/operations/entry/dataLoader/getRevisionById.js +40 -0
- package/operations/entry/dataLoader/getRevisionById.js.map +1 -0
- package/operations/entry/dataLoader/index.d.ts +8 -0
- package/operations/entry/dataLoader/index.js +18 -0
- package/operations/entry/dataLoader/index.js.map +1 -0
- package/operations/entry/dataLoader/types.d.ts +6 -0
- package/operations/entry/dataLoader/types.js +0 -0
- package/operations/entry/dataLoaders.d.ts +17 -38
- package/operations/entry/dataLoaders.js +82 -357
- package/operations/entry/dataLoaders.js.map +1 -1
- package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.d.ts +18 -0
- package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js +9 -0
- package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js.map +1 -0
- package/operations/entry/elasticsearch/body.d.ts +29 -0
- package/operations/entry/elasticsearch/body.js +87 -0
- package/operations/entry/elasticsearch/body.js.map +1 -0
- package/operations/entry/elasticsearch/fields/createSystemField.d.ts +4 -0
- package/operations/entry/elasticsearch/fields/createSystemField.js +9 -0
- package/operations/entry/elasticsearch/fields/createSystemField.js.map +1 -0
- package/operations/entry/elasticsearch/fields/live.d.ts +2 -0
- package/operations/entry/elasticsearch/fields/live.js +50 -0
- package/operations/entry/elasticsearch/fields/live.js.map +1 -0
- package/operations/entry/elasticsearch/fields/location.d.ts +2 -0
- package/operations/entry/elasticsearch/fields/location.js +50 -0
- package/operations/entry/elasticsearch/fields/location.js.map +1 -0
- package/operations/entry/elasticsearch/fields/state.d.ts +2 -0
- package/operations/entry/elasticsearch/fields/state.js +104 -0
- package/operations/entry/elasticsearch/fields/state.js.map +1 -0
- package/operations/entry/elasticsearch/fields.d.ts +12 -0
- package/operations/entry/elasticsearch/fields.js +207 -0
- package/operations/entry/elasticsearch/fields.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/applyFiltering.d.ts +9 -0
- package/operations/entry/elasticsearch/filtering/applyFiltering.js +39 -0
- package/operations/entry/elasticsearch/filtering/applyFiltering.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/exec.d.ts +22 -0
- package/operations/entry/elasticsearch/filtering/exec.js +96 -0
- package/operations/entry/elasticsearch/filtering/exec.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/index.d.ts +1 -0
- package/operations/entry/elasticsearch/filtering/index.js +1 -0
- package/operations/entry/elasticsearch/filtering/path.d.ts +17 -0
- package/operations/entry/elasticsearch/filtering/path.js +27 -0
- package/operations/entry/elasticsearch/filtering/path.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/populated.d.ts +2 -0
- package/operations/entry/elasticsearch/filtering/populated.js +12 -0
- package/operations/entry/elasticsearch/filtering/populated.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/values.d.ts +2 -0
- package/operations/entry/elasticsearch/filtering/values.js +15 -0
- package/operations/entry/elasticsearch/filtering/values.js.map +1 -0
- package/operations/entry/elasticsearch/fullTextSearch.d.ts +13 -0
- package/operations/entry/elasticsearch/fullTextSearch.js +51 -0
- package/operations/entry/elasticsearch/fullTextSearch.js.map +1 -0
- package/operations/entry/elasticsearch/fullTextSearchFields.d.ts +8 -0
- package/operations/entry/elasticsearch/fullTextSearchFields.js +10 -0
- package/operations/entry/elasticsearch/fullTextSearchFields.js.map +1 -0
- package/operations/entry/elasticsearch/initialQuery.d.ts +17 -0
- package/operations/entry/elasticsearch/initialQuery.js +45 -0
- package/operations/entry/elasticsearch/initialQuery.js.map +1 -0
- package/operations/entry/elasticsearch/keyword.d.ts +2 -0
- package/operations/entry/elasticsearch/keyword.js +17 -0
- package/operations/entry/elasticsearch/keyword.js.map +1 -0
- package/operations/entry/elasticsearch/plugins/operator.d.ts +7 -0
- package/operations/entry/elasticsearch/plugins/operator.js +13 -0
- package/operations/entry/elasticsearch/plugins/operator.js.map +1 -0
- package/operations/entry/elasticsearch/shouldIgnoreEsResponseError.d.ts +2 -0
- package/operations/entry/elasticsearch/shouldIgnoreEsResponseError.js +8 -0
- package/operations/entry/elasticsearch/shouldIgnoreEsResponseError.js.map +1 -0
- package/operations/entry/elasticsearch/sort.d.ts +12 -0
- package/operations/entry/elasticsearch/sort.js +80 -0
- package/operations/entry/elasticsearch/sort.js.map +1 -0
- package/operations/entry/elasticsearch/transformValueForSearch.d.ts +9 -0
- package/operations/entry/elasticsearch/transformValueForSearch.js +12 -0
- package/operations/entry/elasticsearch/transformValueForSearch.js.map +1 -0
- package/operations/entry/elasticsearch/types.d.ts +34 -0
- package/operations/entry/elasticsearch/types.js +0 -0
- package/operations/entry/index.d.ts +27 -8
- package/operations/entry/index.js +1344 -1245
- package/operations/entry/index.js.map +1 -1
- package/operations/entry/keys.d.ts +31 -1
- package/operations/entry/keys.js +45 -35
- package/operations/entry/keys.js.map +1 -1
- package/operations/entry/recordType.d.ts +3 -0
- package/operations/entry/recordType.js +6 -0
- package/operations/entry/recordType.js.map +1 -0
- package/operations/entry/transformations/convertEntryKeys.d.ts +8 -0
- package/operations/entry/transformations/convertEntryKeys.js +25 -0
- package/operations/entry/transformations/convertEntryKeys.js.map +1 -0
- package/operations/entry/transformations/index.d.ts +33 -0
- package/operations/entry/transformations/index.js +91 -0
- package/operations/entry/transformations/index.js.map +1 -0
- package/operations/entry/transformations/modifyEntryValues.d.ts +53 -0
- package/operations/entry/transformations/modifyEntryValues.js +16 -0
- package/operations/entry/transformations/modifyEntryValues.js.map +1 -0
- package/operations/entry/transformations/transformEntryKeys.d.ts +11 -0
- package/operations/entry/transformations/transformEntryKeys.js +17 -0
- package/operations/entry/transformations/transformEntryKeys.js.map +1 -0
- package/operations/entry/transformations/transformEntryToIndex.d.ts +10 -0
- package/operations/entry/transformations/transformEntryToIndex.js +20 -0
- package/operations/entry/transformations/transformEntryToIndex.js.map +1 -0
- package/operations/group/index.d.ts +7 -6
- package/operations/group/index.js +116 -190
- package/operations/group/index.js.map +1 -1
- package/operations/model/index.d.ts +4 -4
- package/operations/model/index.js +130 -199
- package/operations/model/index.js.map +1 -1
- package/package.json +44 -41
- package/tasks/createIndexTaskPlugin.d.ts +2 -0
- package/tasks/createIndexTaskPlugin.js +45 -0
- package/tasks/createIndexTaskPlugin.js.map +1 -0
- package/types.d.ts +34 -137
- package/types.js +10 -47
- package/types.js.map +1 -1
- package/values/NoValueContainer.d.ts +5 -0
- package/values/NoValueContainer.js +11 -0
- package/values/NoValueContainer.js.map +1 -0
- package/definitions/entryElasticsearch.d.ts +0 -8
- package/definitions/entryElasticsearch.js +0 -42
- package/definitions/entryElasticsearch.js.map +0 -1
- package/definitions/settings.d.ts +0 -8
- package/definitions/settings.js +0 -58
- package/definitions/settings.js.map +0 -1
- package/definitions/system.d.ts +0 -8
- package/definitions/system.js +0 -46
- package/definitions/system.js.map +0 -1
- package/definitions/table.d.ts +0 -8
- package/definitions/table.js +0 -24
- package/definitions/table.js.map +0 -1
- package/definitions/tableElasticsearch.d.ts +0 -8
- package/definitions/tableElasticsearch.js +0 -24
- package/definitions/tableElasticsearch.js.map +0 -1
- package/dynamoDb/index.d.ts +0 -2
- package/dynamoDb/index.js +0 -16
- package/dynamoDb/index.js.map +0 -1
- package/dynamoDb/storage/date.d.ts +0 -2
- package/dynamoDb/storage/date.js +0 -99
- package/dynamoDb/storage/date.js.map +0 -1
- package/dynamoDb/storage/longText.d.ts +0 -10
- package/dynamoDb/storage/longText.js +0 -101
- package/dynamoDb/storage/longText.js.map +0 -1
- package/dynamoDb/storage/richText.d.ts +0 -7
- package/dynamoDb/storage/richText.js +0 -128
- package/dynamoDb/storage/richText.js.map +0 -1
- package/elasticsearch/index.d.ts +0 -2
- package/elasticsearch/index.js +0 -16
- package/elasticsearch/index.js.map +0 -1
- package/elasticsearch/indexing/dateTimeIndexing.d.ts +0 -3
- package/elasticsearch/indexing/dateTimeIndexing.js +0 -103
- package/elasticsearch/indexing/dateTimeIndexing.js.map +0 -1
- package/elasticsearch/indexing/defaultFieldIndexing.d.ts +0 -3
- package/elasticsearch/indexing/defaultFieldIndexing.js +0 -47
- package/elasticsearch/indexing/defaultFieldIndexing.js.map +0 -1
- package/elasticsearch/indexing/index.d.ts +0 -2
- package/elasticsearch/indexing/index.js +0 -24
- package/elasticsearch/indexing/index.js.map +0 -1
- package/elasticsearch/indexing/longTextIndexing.d.ts +0 -3
- package/elasticsearch/indexing/longTextIndexing.js +0 -36
- package/elasticsearch/indexing/longTextIndexing.js.map +0 -1
- package/elasticsearch/indexing/numberIndexing.d.ts +0 -3
- package/elasticsearch/indexing/numberIndexing.js +0 -48
- package/elasticsearch/indexing/numberIndexing.js.map +0 -1
- package/elasticsearch/indexing/objectIndexing.d.ts +0 -12
- package/elasticsearch/indexing/objectIndexing.js +0 -223
- package/elasticsearch/indexing/objectIndexing.js.map +0 -1
- package/elasticsearch/indexing/richTextIndexing.d.ts +0 -3
- package/elasticsearch/indexing/richTextIndexing.js +0 -34
- package/elasticsearch/indexing/richTextIndexing.js.map +0 -1
- package/elasticsearch/indices/base.d.ts +0 -2
- package/elasticsearch/indices/base.js +0 -15
- package/elasticsearch/indices/base.js.map +0 -1
- package/elasticsearch/indices/index.d.ts +0 -1
- package/elasticsearch/indices/index.js +0 -16
- package/elasticsearch/indices/index.js.map +0 -1
- package/elasticsearch/indices/japanese.d.ts +0 -2
- package/elasticsearch/indices/japanese.js +0 -16
- package/elasticsearch/indices/japanese.js.map +0 -1
- package/elasticsearch/search/index.d.ts +0 -3
- package/elasticsearch/search/index.js +0 -14
- package/elasticsearch/search/index.js.map +0 -1
- package/elasticsearch/search/refSearch.d.ts +0 -2
- package/elasticsearch/search/refSearch.js +0 -33
- package/elasticsearch/search/refSearch.js.map +0 -1
- package/elasticsearch/search/timeSearch.d.ts +0 -2
- package/elasticsearch/search/timeSearch.js +0 -33
- package/elasticsearch/search/timeSearch.js.map +0 -1
- package/helpers/createElasticsearchQueryBody.d.ts +0 -11
- package/helpers/createElasticsearchQueryBody.js +0 -611
- package/helpers/createElasticsearchQueryBody.js.map +0 -1
- package/helpers/fields.d.ts +0 -19
- package/helpers/fields.js +0 -205
- package/helpers/fields.js.map +0 -1
- package/helpers/index.js.map +0 -1
- package/helpers/searchPluginsList.d.ts +0 -6
- package/helpers/searchPluginsList.js +0 -26
- package/helpers/searchPluginsList.js.map +0 -1
- package/helpers/transformValueForSearch.d.ts +0 -12
- package/helpers/transformValueForSearch.js +0 -29
- package/helpers/transformValueForSearch.js.map +0 -1
- package/index.js.map +0 -1
- package/operations/entry/elasticsearchFields.d.ts +0 -2
- package/operations/entry/elasticsearchFields.js +0 -38
- package/operations/entry/elasticsearchFields.js.map +0 -1
- package/operations/settings/index.d.ts +0 -6
- package/operations/settings/index.js +0 -135
- package/operations/settings/index.js.map +0 -1
- package/operations/system/index.d.ts +0 -6
- package/operations/system/index.js +0 -99
- package/operations/system/index.js.map +0 -1
- package/plugins/CmsEntryElasticsearchBodyModifierPlugin.d.ts +0 -20
- package/plugins/CmsEntryElasticsearchBodyModifierPlugin.js +0 -24
- package/plugins/CmsEntryElasticsearchBodyModifierPlugin.js.map +0 -1
- package/plugins/CmsEntryElasticsearchFieldPlugin.d.ts +0 -12
- package/plugins/CmsEntryElasticsearchFieldPlugin.js +0 -24
- package/plugins/CmsEntryElasticsearchFieldPlugin.js.map +0 -1
- package/plugins/CmsEntryElasticsearchIndexPlugin.d.ts +0 -4
- package/plugins/CmsEntryElasticsearchIndexPlugin.js +0 -17
- package/plugins/CmsEntryElasticsearchIndexPlugin.js.map +0 -1
- package/plugins/CmsEntryElasticsearchQueryBuilderValueSearchPlugin.d.ts +0 -30
- package/plugins/CmsEntryElasticsearchQueryBuilderValueSearchPlugin.js +0 -43
- package/plugins/CmsEntryElasticsearchQueryBuilderValueSearchPlugin.js.map +0 -1
- package/plugins/CmsEntryElasticsearchQueryModifierPlugin.d.ts +0 -17
- package/plugins/CmsEntryElasticsearchQueryModifierPlugin.js +0 -24
- package/plugins/CmsEntryElasticsearchQueryModifierPlugin.js.map +0 -1
- package/plugins/CmsEntryElasticsearchSortModifierPlugin.d.ts +0 -17
- package/plugins/CmsEntryElasticsearchSortModifierPlugin.js +0 -24
- package/plugins/CmsEntryElasticsearchSortModifierPlugin.js.map +0 -1
- package/plugins/index.d.ts +0 -6
- package/plugins/index.js +0 -83
- package/plugins/index.js.map +0 -1
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
const convertEntryKeysToStorage = (params)=>{
|
|
2
|
+
const { model, entry } = params;
|
|
3
|
+
const values = model.convertValueKeyToStorage({
|
|
4
|
+
fields: model.fields,
|
|
5
|
+
values: entry.values
|
|
6
|
+
});
|
|
7
|
+
return {
|
|
8
|
+
...entry,
|
|
9
|
+
values
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
const convertEntryKeysFromStorage = (params)=>{
|
|
13
|
+
const { model, entry } = params;
|
|
14
|
+
const values = model.convertValueKeyFromStorage({
|
|
15
|
+
fields: model.fields,
|
|
16
|
+
values: entry.values
|
|
17
|
+
});
|
|
18
|
+
return {
|
|
19
|
+
...entry,
|
|
20
|
+
values
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export { convertEntryKeysFromStorage, convertEntryKeysToStorage };
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=convertEntryKeys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operations/entry/transformations/convertEntryKeys.js","sources":["../../../../src/operations/entry/transformations/convertEntryKeys.ts"],"sourcesContent":["import type {\n CmsEntryValues,\n CmsStorageEntry,\n StorageOperationsCmsModel\n} from \"@webiny/api-headless-cms/types/index.js\";\n\ninterface ConvertStorageEntryParams<T extends CmsEntryValues = CmsEntryValues> {\n entry: CmsStorageEntry<T>;\n model: StorageOperationsCmsModel<T>;\n}\nexport const convertEntryKeysToStorage = <T extends CmsEntryValues = CmsEntryValues>(\n params: ConvertStorageEntryParams<T>\n): CmsStorageEntry<T> => {\n const { model, entry } = params;\n\n const values = model.convertValueKeyToStorage({\n fields: model.fields,\n values: entry.values\n });\n return {\n ...entry,\n values\n };\n};\n\nexport const convertEntryKeysFromStorage = <T extends CmsEntryValues = CmsEntryValues>(\n params: ConvertStorageEntryParams<T>\n): CmsStorageEntry<T> => {\n const { model, entry } = params;\n\n const values = model.convertValueKeyFromStorage({\n fields: model.fields,\n values: entry.values\n });\n return {\n ...entry,\n values\n };\n};\n"],"names":["convertEntryKeysToStorage","params","model","entry","values","convertEntryKeysFromStorage"],"mappings":"AAUO,MAAMA,4BAA4B,CACrCC;IAEA,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGF;IAEzB,MAAMG,SAASF,MAAM,wBAAwB,CAAC;QAC1C,QAAQA,MAAM,MAAM;QACpB,QAAQC,MAAM,MAAM;IACxB;IACA,OAAO;QACH,GAAGA,KAAK;QACRC;IACJ;AACJ;AAEO,MAAMC,8BAA8B,CACvCJ;IAEA,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGF;IAEzB,MAAMG,SAASF,MAAM,0BAA0B,CAAC;QAC5C,QAAQA,MAAM,MAAM;QACpB,QAAQC,MAAM,MAAM;IACxB;IACA,OAAO;QACH,GAAGA,KAAK;QACRC;IACJ;AACJ"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { CmsEntry, CmsEntryValues, StorageOperationsCmsModel } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
import type { CmsIndexEntry } from "../../../types.js";
|
|
3
|
+
import type { CmsEntryOpenSearchValuesModifier } from "../../../features/CmsEntryOpenSearchValuesModifier/index.js";
|
|
4
|
+
import { CompressionHandler } from "@webiny/utils/features/compression/abstractions/CompressionHandler.js";
|
|
5
|
+
import { CmsEntryOpenSearchFieldIndexRegistry } from "../../../features/CmsEntryOpenSearchFieldIndex/index.js";
|
|
6
|
+
interface BaseTransformerParams<T extends CmsEntryValues = CmsEntryValues> {
|
|
7
|
+
model: StorageOperationsCmsModel<T>;
|
|
8
|
+
fieldIndexRegistry: CmsEntryOpenSearchFieldIndexRegistry.Interface;
|
|
9
|
+
compressionHandler: Pick<CompressionHandler.Interface, "compress">;
|
|
10
|
+
valuesModifiers: CmsEntryOpenSearchValuesModifier.Interface[];
|
|
11
|
+
}
|
|
12
|
+
interface EntryTransformerParams<T extends CmsEntryValues = CmsEntryValues> extends BaseTransformerParams<T> {
|
|
13
|
+
entry: CmsEntry<T>;
|
|
14
|
+
storageEntry: CmsEntry<T>;
|
|
15
|
+
transformedToIndex?: never;
|
|
16
|
+
}
|
|
17
|
+
interface TransformedEntryTransformerParams<T extends CmsEntryValues = CmsEntryValues> extends BaseTransformerParams<T> {
|
|
18
|
+
entry?: never;
|
|
19
|
+
storageEntry?: never;
|
|
20
|
+
transformedToIndex: CmsIndexEntry<T>;
|
|
21
|
+
}
|
|
22
|
+
interface TransformedKeysEntry<T extends CmsEntryValues = CmsEntryValues> {
|
|
23
|
+
entry: CmsEntry<T>;
|
|
24
|
+
storageEntry: CmsEntry<T>;
|
|
25
|
+
}
|
|
26
|
+
interface TransformerResult<T extends CmsEntryValues = CmsEntryValues> {
|
|
27
|
+
transformEntryKeys: () => TransformedKeysEntry<T>;
|
|
28
|
+
transformToIndex: () => CmsIndexEntry<T>;
|
|
29
|
+
getElasticsearchLatestEntryData: () => Promise<Record<string, any>>;
|
|
30
|
+
getElasticsearchPublishedEntryData: () => Promise<Record<string, any>>;
|
|
31
|
+
}
|
|
32
|
+
export declare const createTransformer: <T extends CmsEntryValues = CmsEntryValues>(params: EntryTransformerParams<T> | TransformedEntryTransformerParams<T>) => TransformerResult<T>;
|
|
33
|
+
export {};
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { transformEntryKeys } from "./transformEntryKeys.js";
|
|
2
|
+
import { transformEntryToIndex } from "./transformEntryToIndex.js";
|
|
3
|
+
import { modifyEntryValues as external_modifyEntryValues_js_modifyEntryValues } from "./modifyEntryValues.js";
|
|
4
|
+
import { createLatestRecordType, createPublishedRecordType } from "../recordType.js";
|
|
5
|
+
import error from "@webiny/error";
|
|
6
|
+
const createTransformer = (params)=>{
|
|
7
|
+
const { model, fieldIndexRegistry, entry: baseEntry, storageEntry: baseStorageEntry, transformedToIndex: initialTransformedEntryToIndex, compressionHandler, valuesModifiers } = params;
|
|
8
|
+
let transformedEntryKeys;
|
|
9
|
+
let transformedEntryToIndex = initialTransformedEntryToIndex;
|
|
10
|
+
let modifiedEntryValues;
|
|
11
|
+
let elasticsearchLatestEntry;
|
|
12
|
+
let elasticsearchPublishedEntry;
|
|
13
|
+
const applicableModifiers = valuesModifiers.filter((m)=>m.canModify(model.modelId));
|
|
14
|
+
const modifyEntryValues = ()=>{
|
|
15
|
+
if (initialTransformedEntryToIndex || !baseEntry) throw new error('Should not call the "modifyEntryValues" when "transformedToIndex" is provided.', "METHOD_NOT_ALLOWED", {
|
|
16
|
+
entry: initialTransformedEntryToIndex
|
|
17
|
+
});
|
|
18
|
+
if (modifiedEntryValues) return modifiedEntryValues;
|
|
19
|
+
const modifiedEntry = external_modifyEntryValues_js_modifyEntryValues({
|
|
20
|
+
modifiers: applicableModifiers,
|
|
21
|
+
model,
|
|
22
|
+
entry: baseEntry
|
|
23
|
+
});
|
|
24
|
+
const modifiedStorageEntry = external_modifyEntryValues_js_modifyEntryValues({
|
|
25
|
+
modifiers: applicableModifiers,
|
|
26
|
+
model,
|
|
27
|
+
entry: baseStorageEntry
|
|
28
|
+
});
|
|
29
|
+
return modifiedEntryValues = transformEntryKeys({
|
|
30
|
+
model,
|
|
31
|
+
entry: modifiedEntry,
|
|
32
|
+
storageEntry: modifiedStorageEntry
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
return {
|
|
36
|
+
transformEntryKeys: function() {
|
|
37
|
+
if (initialTransformedEntryToIndex || !baseEntry) throw new error('Should not call the "modifyEntryValues" when "transformedToIndex" is provided.', "METHOD_NOT_ALLOWED", {
|
|
38
|
+
entry: initialTransformedEntryToIndex
|
|
39
|
+
});
|
|
40
|
+
if (transformedEntryKeys) return transformedEntryKeys;
|
|
41
|
+
return transformedEntryKeys = transformEntryKeys({
|
|
42
|
+
model,
|
|
43
|
+
entry: baseEntry,
|
|
44
|
+
storageEntry: baseStorageEntry
|
|
45
|
+
});
|
|
46
|
+
},
|
|
47
|
+
transformToIndex: function() {
|
|
48
|
+
if (transformedEntryToIndex) return transformedEntryToIndex;
|
|
49
|
+
let entry;
|
|
50
|
+
let storageEntry;
|
|
51
|
+
if (applicableModifiers.length > 0) {
|
|
52
|
+
const result = modifyEntryValues();
|
|
53
|
+
entry = result.entry;
|
|
54
|
+
storageEntry = result.storageEntry;
|
|
55
|
+
} else {
|
|
56
|
+
const result = this.transformEntryKeys();
|
|
57
|
+
entry = result.entry;
|
|
58
|
+
storageEntry = result.storageEntry;
|
|
59
|
+
}
|
|
60
|
+
return transformedEntryToIndex = transformEntryToIndex({
|
|
61
|
+
model,
|
|
62
|
+
entry,
|
|
63
|
+
storageEntry,
|
|
64
|
+
fieldIndexRegistry
|
|
65
|
+
});
|
|
66
|
+
},
|
|
67
|
+
getElasticsearchLatestEntryData: async function() {
|
|
68
|
+
if (elasticsearchLatestEntry) return elasticsearchLatestEntry;
|
|
69
|
+
const entry = this.transformToIndex();
|
|
70
|
+
return elasticsearchLatestEntry = await compressionHandler.compress({
|
|
71
|
+
...entry,
|
|
72
|
+
latest: true,
|
|
73
|
+
TYPE: createLatestRecordType(),
|
|
74
|
+
__type: createLatestRecordType()
|
|
75
|
+
});
|
|
76
|
+
},
|
|
77
|
+
getElasticsearchPublishedEntryData: async function() {
|
|
78
|
+
if (elasticsearchPublishedEntry) return elasticsearchPublishedEntry;
|
|
79
|
+
const entry = this.transformToIndex();
|
|
80
|
+
return elasticsearchPublishedEntry = await compressionHandler.compress({
|
|
81
|
+
...entry,
|
|
82
|
+
published: true,
|
|
83
|
+
TYPE: createPublishedRecordType(),
|
|
84
|
+
__type: createPublishedRecordType()
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
export { createTransformer };
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operations/entry/transformations/index.js","sources":["../../../../src/operations/entry/transformations/index.ts"],"sourcesContent":["import type {\n CmsEntry,\n CmsEntryValues,\n CmsStorageEntry,\n StorageOperationsCmsModel\n} from \"@webiny/api-headless-cms/types/index.js\";\nimport { transformEntryKeys } from \"./transformEntryKeys.js\";\nimport type { CmsIndexEntry } from \"~/types.js\";\nimport { transformEntryToIndex } from \"~/operations/entry/transformations/transformEntryToIndex.js\";\nimport type { CmsEntryOpenSearchValuesModifier } from \"~/features/CmsEntryOpenSearchValuesModifier/index.js\";\nimport { modifyEntryValues as modifyEntryValuesCallable } from \"~/operations/entry/transformations/modifyEntryValues.js\";\nimport {\n createLatestRecordType,\n createPublishedRecordType\n} from \"~/operations/entry/recordType.js\";\nimport WebinyError from \"@webiny/error\";\nimport { CompressionHandler } from \"@webiny/utils/features/compression/abstractions/CompressionHandler.js\";\nimport { CmsEntryOpenSearchFieldIndexRegistry } from \"~/features/CmsEntryOpenSearchFieldIndex/index.js\";\n\ninterface BaseTransformerParams<T extends CmsEntryValues = CmsEntryValues> {\n model: StorageOperationsCmsModel<T>;\n fieldIndexRegistry: CmsEntryOpenSearchFieldIndexRegistry.Interface;\n compressionHandler: Pick<CompressionHandler.Interface, \"compress\">;\n valuesModifiers: CmsEntryOpenSearchValuesModifier.Interface[];\n}\n\ninterface EntryTransformerParams<\n T extends CmsEntryValues = CmsEntryValues\n> extends BaseTransformerParams<T> {\n entry: CmsEntry<T>;\n storageEntry: CmsEntry<T>;\n transformedToIndex?: never;\n}\n\ninterface TransformedEntryTransformerParams<\n T extends CmsEntryValues = CmsEntryValues\n> extends BaseTransformerParams<T> {\n entry?: never;\n storageEntry?: never;\n transformedToIndex: CmsIndexEntry<T>;\n}\n\ninterface TransformedKeysEntry<T extends CmsEntryValues = CmsEntryValues> {\n entry: CmsEntry<T>;\n storageEntry: CmsEntry<T>;\n}\n\ninterface ModifiedEntryValues<T extends CmsEntryValues = CmsEntryValues> {\n entry: CmsEntry<T>;\n storageEntry: CmsEntry<T>;\n}\n\ninterface TransformerResult<T extends CmsEntryValues = CmsEntryValues> {\n transformEntryKeys: () => TransformedKeysEntry<T>;\n transformToIndex: () => CmsIndexEntry<T>;\n getElasticsearchLatestEntryData: () => Promise<Record<string, any>>;\n getElasticsearchPublishedEntryData: () => Promise<Record<string, any>>;\n}\n\nexport const createTransformer = <T extends CmsEntryValues = CmsEntryValues>(\n params: EntryTransformerParams<T> | TransformedEntryTransformerParams<T>\n): TransformerResult<T> => {\n const {\n model,\n fieldIndexRegistry,\n entry: baseEntry,\n storageEntry: baseStorageEntry,\n transformedToIndex: initialTransformedEntryToIndex = undefined,\n compressionHandler,\n valuesModifiers\n } = params;\n\n let transformedEntryKeys: TransformedKeysEntry<T> | undefined = undefined;\n let transformedEntryToIndex: CmsIndexEntry<T> | undefined = initialTransformedEntryToIndex;\n let modifiedEntryValues: ModifiedEntryValues<T> | undefined = undefined;\n let elasticsearchLatestEntry: any = undefined;\n let elasticsearchPublishedEntry: any = undefined;\n\n const applicableModifiers = valuesModifiers.filter(m => m.canModify(model.modelId));\n\n const modifyEntryValues = () => {\n if (initialTransformedEntryToIndex || !baseEntry) {\n throw new WebinyError(\n `Should not call the \"modifyEntryValues\" when \"transformedToIndex\" is provided.`,\n \"METHOD_NOT_ALLOWED\",\n {\n entry: initialTransformedEntryToIndex\n }\n );\n }\n if (modifiedEntryValues) {\n return modifiedEntryValues;\n }\n const modifiedEntry = modifyEntryValuesCallable<T>({\n modifiers: applicableModifiers,\n model,\n entry: baseEntry\n });\n const modifiedStorageEntry = modifyEntryValuesCallable<T>({\n modifiers: applicableModifiers,\n model,\n entry: baseStorageEntry\n });\n\n return (modifiedEntryValues = transformEntryKeys<T>({\n model,\n entry: modifiedEntry,\n storageEntry: modifiedStorageEntry\n }));\n };\n\n return {\n transformEntryKeys: function () {\n if (initialTransformedEntryToIndex || !baseEntry) {\n throw new WebinyError(\n `Should not call the \"modifyEntryValues\" when \"transformedToIndex\" is provided.`,\n \"METHOD_NOT_ALLOWED\",\n {\n entry: initialTransformedEntryToIndex\n }\n );\n }\n if (transformedEntryKeys) {\n return transformedEntryKeys;\n }\n return (transformedEntryKeys = transformEntryKeys({\n model,\n entry: baseEntry,\n storageEntry: baseStorageEntry\n }));\n },\n transformToIndex: function () {\n if (transformedEntryToIndex) {\n return transformedEntryToIndex;\n }\n let entry: CmsEntry<T>;\n let storageEntry: CmsStorageEntry<T>;\n /**\n * In case there are value modifier plugins, we need to\n * - run modifiers\n * - transform keys\n */\n if (applicableModifiers.length > 0) {\n const result = modifyEntryValues();\n entry = result.entry;\n storageEntry = result.storageEntry;\n }\n // In case there are no modifier plugins, just transform the keys - or used already transformed.\n else {\n const result = this.transformEntryKeys();\n entry = result.entry;\n storageEntry = result.storageEntry;\n }\n return (transformedEntryToIndex = transformEntryToIndex<T>({\n model,\n entry,\n storageEntry,\n fieldIndexRegistry\n }));\n },\n getElasticsearchLatestEntryData: async function () {\n if (elasticsearchLatestEntry) {\n return elasticsearchLatestEntry;\n }\n const entry = this.transformToIndex();\n\n return (elasticsearchLatestEntry = await compressionHandler.compress({\n ...entry,\n latest: true,\n TYPE: createLatestRecordType(),\n __type: createLatestRecordType()\n }));\n },\n getElasticsearchPublishedEntryData: async function () {\n if (elasticsearchPublishedEntry) {\n return elasticsearchPublishedEntry;\n }\n const entry = this.transformToIndex();\n\n return (elasticsearchPublishedEntry = await compressionHandler.compress({\n ...entry,\n published: true,\n TYPE: createPublishedRecordType(),\n __type: createPublishedRecordType()\n }));\n }\n };\n};\n"],"names":["createTransformer","params","model","fieldIndexRegistry","baseEntry","baseStorageEntry","initialTransformedEntryToIndex","compressionHandler","valuesModifiers","transformedEntryKeys","transformedEntryToIndex","modifiedEntryValues","elasticsearchLatestEntry","elasticsearchPublishedEntry","applicableModifiers","m","modifyEntryValues","WebinyError","modifiedEntry","modifyEntryValuesCallable","modifiedStorageEntry","transformEntryKeys","entry","storageEntry","result","transformEntryToIndex","createLatestRecordType","createPublishedRecordType"],"mappings":";;;;;AA2DO,MAAMA,oBAAoB,CAC7BC;IAEA,MAAM,EACFC,KAAK,EACLC,kBAAkB,EAClB,OAAOC,SAAS,EAChB,cAAcC,gBAAgB,EAC9B,oBAAoBC,8BAA8B,EAClDC,kBAAkB,EAClBC,eAAe,EAClB,GAAGP;IAEJ,IAAIQ;IACJ,IAAIC,0BAAwDJ;IAC5D,IAAIK;IACJ,IAAIC;IACJ,IAAIC;IAEJ,MAAMC,sBAAsBN,gBAAgB,MAAM,CAACO,CAAAA,IAAKA,EAAE,SAAS,CAACb,MAAM,OAAO;IAEjF,MAAMc,oBAAoB;QACtB,IAAIV,kCAAkC,CAACF,WACnC,MAAM,IAAIa,MACN,kFACA,sBACA;YACI,OAAOX;QACX;QAGR,IAAIK,qBACA,OAAOA;QAEX,MAAMO,gBAAgBC,gDAA6B;YAC/C,WAAWL;YACXZ;YACA,OAAOE;QACX;QACA,MAAMgB,uBAAuBD,gDAA6B;YACtD,WAAWL;YACXZ;YACA,OAAOG;QACX;QAEA,OAAQM,sBAAsBU,mBAAsB;YAChDnB;YACA,OAAOgB;YACP,cAAcE;QAClB;IACJ;IAEA,OAAO;QACH,oBAAoB;YAChB,IAAId,kCAAkC,CAACF,WACnC,MAAM,IAAIa,MACN,kFACA,sBACA;gBACI,OAAOX;YACX;YAGR,IAAIG,sBACA,OAAOA;YAEX,OAAQA,uBAAuBY,mBAAmB;gBAC9CnB;gBACA,OAAOE;gBACP,cAAcC;YAClB;QACJ;QACA,kBAAkB;YACd,IAAIK,yBACA,OAAOA;YAEX,IAAIY;YACJ,IAAIC;YAMJ,IAAIT,oBAAoB,MAAM,GAAG,GAAG;gBAChC,MAAMU,SAASR;gBACfM,QAAQE,OAAO,KAAK;gBACpBD,eAAeC,OAAO,YAAY;YACtC,OAEK;gBACD,MAAMA,SAAS,IAAI,CAAC,kBAAkB;gBACtCF,QAAQE,OAAO,KAAK;gBACpBD,eAAeC,OAAO,YAAY;YACtC;YACA,OAAQd,0BAA0Be,sBAAyB;gBACvDvB;gBACAoB;gBACAC;gBACApB;YACJ;QACJ;QACA,iCAAiC;YAC7B,IAAIS,0BACA,OAAOA;YAEX,MAAMU,QAAQ,IAAI,CAAC,gBAAgB;YAEnC,OAAQV,2BAA2B,MAAML,mBAAmB,QAAQ,CAAC;gBACjE,GAAGe,KAAK;gBACR,QAAQ;gBACR,MAAMI;gBACN,QAAQA;YACZ;QACJ;QACA,oCAAoC;YAChC,IAAIb,6BACA,OAAOA;YAEX,MAAMS,QAAQ,IAAI,CAAC,gBAAgB;YAEnC,OAAQT,8BAA8B,MAAMN,mBAAmB,QAAQ,CAAC;gBACpE,GAAGe,KAAK;gBACR,WAAW;gBACX,MAAMK;gBACN,QAAQA;YACZ;QACJ;IACJ;AACJ"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { CmsEntry, CmsEntryValues, StorageOperationsCmsModel } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
import type { CmsEntryOpenSearchValuesModifier } from "../../../features/CmsEntryOpenSearchValuesModifier/index.js";
|
|
3
|
+
interface Params<T extends CmsEntryValues = CmsEntryValues> {
|
|
4
|
+
model: StorageOperationsCmsModel<T>;
|
|
5
|
+
modifiers: CmsEntryOpenSearchValuesModifier.Interface[];
|
|
6
|
+
entry: CmsEntry<T>;
|
|
7
|
+
}
|
|
8
|
+
export declare const modifyEntryValues: <T extends CmsEntryValues = CmsEntryValues>(params: Params<T>) => {
|
|
9
|
+
values: T;
|
|
10
|
+
tenant: string;
|
|
11
|
+
entryId: string;
|
|
12
|
+
id: string;
|
|
13
|
+
revisionCreatedOn: string;
|
|
14
|
+
revisionSavedOn: string;
|
|
15
|
+
revisionModifiedOn: string | null;
|
|
16
|
+
revisionDeletedOn: string | null;
|
|
17
|
+
revisionRestoredOn: string | null;
|
|
18
|
+
revisionFirstPublishedOn: string | null;
|
|
19
|
+
revisionLastPublishedOn: string | null;
|
|
20
|
+
revisionCreatedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity;
|
|
21
|
+
revisionSavedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity;
|
|
22
|
+
revisionModifiedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
23
|
+
revisionDeletedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
24
|
+
revisionRestoredBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
25
|
+
revisionFirstPublishedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
26
|
+
revisionLastPublishedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
27
|
+
createdOn: string;
|
|
28
|
+
savedOn: string;
|
|
29
|
+
modifiedOn: string | null;
|
|
30
|
+
deletedOn: string | null;
|
|
31
|
+
restoredOn: string | null;
|
|
32
|
+
firstPublishedOn: string | null;
|
|
33
|
+
lastPublishedOn: string | null;
|
|
34
|
+
createdBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity;
|
|
35
|
+
savedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity;
|
|
36
|
+
modifiedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
37
|
+
deletedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
38
|
+
restoredBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
39
|
+
firstPublishedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
40
|
+
lastPublishedBy: import("@webiny/api-headless-cms/types/identity").CmsIdentity | null;
|
|
41
|
+
modelId: string;
|
|
42
|
+
version: number;
|
|
43
|
+
locked: boolean;
|
|
44
|
+
status: import("@webiny/api-headless-cms/types/types").CmsEntryStatus;
|
|
45
|
+
location?: import("@webiny/api-headless-cms/types/types").ICmsEntryLocation;
|
|
46
|
+
wbyDeleted?: boolean | null;
|
|
47
|
+
binOriginalFolderId?: string;
|
|
48
|
+
system?: import("@webiny/api-headless-cms/types/types").ICmsEntrySystem;
|
|
49
|
+
live: import("@webiny/api-headless-cms/types/types").ICmsEntryLive | null;
|
|
50
|
+
revisionDescription: string | undefined;
|
|
51
|
+
expiresAt: number | null;
|
|
52
|
+
};
|
|
53
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const modifyEntryValues = (params)=>{
|
|
2
|
+
const { modifiers, model, entry } = params;
|
|
3
|
+
let values = entry.values;
|
|
4
|
+
for (const modifier of modifiers)values = modifier.modify({
|
|
5
|
+
model,
|
|
6
|
+
entry,
|
|
7
|
+
values
|
|
8
|
+
});
|
|
9
|
+
return {
|
|
10
|
+
...entry,
|
|
11
|
+
values
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export { modifyEntryValues };
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=modifyEntryValues.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operations/entry/transformations/modifyEntryValues.js","sources":["../../../../src/operations/entry/transformations/modifyEntryValues.ts"],"sourcesContent":["import type {\n CmsEntry,\n CmsEntryValues,\n StorageOperationsCmsModel\n} from \"@webiny/api-headless-cms/types/index.js\";\nimport type { CmsEntryOpenSearchValuesModifier } from \"~/features/CmsEntryOpenSearchValuesModifier/index.js\";\n\ninterface Params<T extends CmsEntryValues = CmsEntryValues> {\n model: StorageOperationsCmsModel<T>;\n modifiers: CmsEntryOpenSearchValuesModifier.Interface[];\n entry: CmsEntry<T>;\n}\n\nexport const modifyEntryValues = <T extends CmsEntryValues = CmsEntryValues>(params: Params<T>) => {\n const { modifiers, model, entry } = params;\n let values = entry.values;\n for (const modifier of modifiers) {\n values = modifier.modify<T>({\n model,\n entry,\n values\n });\n }\n return {\n ...entry,\n values\n };\n};\n"],"names":["modifyEntryValues","params","modifiers","model","entry","values","modifier"],"mappings":"AAaO,MAAMA,oBAAoB,CAA4CC;IACzE,MAAM,EAAEC,SAAS,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGH;IACpC,IAAII,SAASD,MAAM,MAAM;IACzB,KAAK,MAAME,YAAYJ,UACnBG,SAASC,SAAS,MAAM,CAAI;QACxBH;QACAC;QACAC;IACJ;IAEJ,OAAO;QACH,GAAGD,KAAK;QACRC;IACJ;AACJ"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { CmsEntry, CmsEntryValues, CmsStorageEntry, StorageOperationsCmsModel } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
interface TransformKeysParams<T extends CmsEntryValues = CmsEntryValues> {
|
|
3
|
+
model: StorageOperationsCmsModel<T>;
|
|
4
|
+
entry: CmsEntry<T>;
|
|
5
|
+
storageEntry: CmsStorageEntry<T>;
|
|
6
|
+
}
|
|
7
|
+
export declare const transformEntryKeys: <T extends CmsEntryValues = CmsEntryValues>(params: TransformKeysParams<T>) => {
|
|
8
|
+
entry: CmsStorageEntry<T>;
|
|
9
|
+
storageEntry: CmsStorageEntry<T>;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { convertEntryKeysToStorage } from "./convertEntryKeys.js";
|
|
2
|
+
const transformEntryKeys = (params)=>{
|
|
3
|
+
const { model, entry, storageEntry } = params;
|
|
4
|
+
return {
|
|
5
|
+
entry: convertEntryKeysToStorage({
|
|
6
|
+
model,
|
|
7
|
+
entry
|
|
8
|
+
}),
|
|
9
|
+
storageEntry: convertEntryKeysToStorage({
|
|
10
|
+
model,
|
|
11
|
+
entry: storageEntry
|
|
12
|
+
})
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export { transformEntryKeys };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=transformEntryKeys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operations/entry/transformations/transformEntryKeys.js","sources":["../../../../src/operations/entry/transformations/transformEntryKeys.ts"],"sourcesContent":["import type {\n CmsEntry,\n CmsEntryValues,\n CmsStorageEntry,\n StorageOperationsCmsModel\n} from \"@webiny/api-headless-cms/types/index.js\";\nimport { convertEntryKeysToStorage } from \"./convertEntryKeys.js\";\n\ninterface TransformKeysParams<T extends CmsEntryValues = CmsEntryValues> {\n model: StorageOperationsCmsModel<T>;\n entry: CmsEntry<T>;\n storageEntry: CmsStorageEntry<T>;\n}\n\nexport const transformEntryKeys = <T extends CmsEntryValues = CmsEntryValues>(\n params: TransformKeysParams<T>\n) => {\n const { model, entry, storageEntry } = params;\n return {\n entry: convertEntryKeysToStorage<T>({\n model,\n entry\n }),\n storageEntry: convertEntryKeysToStorage<T>({\n model,\n entry: storageEntry\n })\n };\n};\n"],"names":["transformEntryKeys","params","model","entry","storageEntry","convertEntryKeysToStorage"],"mappings":";AAcO,MAAMA,qBAAqB,CAC9BC;IAEA,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAEC,YAAY,EAAE,GAAGH;IACvC,OAAO;QACH,OAAOI,0BAA6B;YAChCH;YACAC;QACJ;QACA,cAAcE,0BAA6B;YACvCH;YACA,OAAOE;QACX;IACJ;AACJ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CmsEntry, CmsEntryValues, CmsStorageEntry, StorageOperationsCmsModel } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
import type { CmsEntryOpenSearchFieldIndexRegistry } from "../../../features/CmsEntryOpenSearchFieldIndex/index.js";
|
|
3
|
+
interface TransformEntryToIndexParams<T extends CmsEntryValues = CmsEntryValues> {
|
|
4
|
+
model: StorageOperationsCmsModel<T>;
|
|
5
|
+
entry: CmsEntry<T>;
|
|
6
|
+
storageEntry: CmsStorageEntry<T>;
|
|
7
|
+
fieldIndexRegistry: CmsEntryOpenSearchFieldIndexRegistry.Interface;
|
|
8
|
+
}
|
|
9
|
+
export declare const transformEntryToIndex: <T extends CmsEntryValues = CmsEntryValues>(params: TransformEntryToIndexParams<T>) => import("../../../types").CmsIndexEntry<T>;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { prepareEntryToIndex } from "../../../helpers/index.js";
|
|
2
|
+
const transformEntryToIndex = (params)=>{
|
|
3
|
+
const { model, entry, storageEntry, fieldIndexRegistry } = params;
|
|
4
|
+
const result = prepareEntryToIndex({
|
|
5
|
+
model,
|
|
6
|
+
entry: structuredClone(entry),
|
|
7
|
+
storageEntry: structuredClone(storageEntry),
|
|
8
|
+
fieldIndexRegistry
|
|
9
|
+
});
|
|
10
|
+
delete result["PK"];
|
|
11
|
+
delete result["SK"];
|
|
12
|
+
delete result["GSI1_PK"];
|
|
13
|
+
delete result["GSI1_SK"];
|
|
14
|
+
delete result["published"];
|
|
15
|
+
delete result["latest"];
|
|
16
|
+
return result;
|
|
17
|
+
};
|
|
18
|
+
export { transformEntryToIndex };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=transformEntryToIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"operations/entry/transformations/transformEntryToIndex.js","sources":["../../../../src/operations/entry/transformations/transformEntryToIndex.ts"],"sourcesContent":["import type {\n CmsEntry,\n CmsEntryValues,\n CmsStorageEntry,\n StorageOperationsCmsModel\n} from \"@webiny/api-headless-cms/types/index.js\";\nimport { prepareEntryToIndex } from \"~/helpers/index.js\";\nimport type { CmsEntryOpenSearchFieldIndexRegistry } from \"~/features/CmsEntryOpenSearchFieldIndex/index.js\";\n\ninterface TransformEntryToIndexParams<T extends CmsEntryValues = CmsEntryValues> {\n model: StorageOperationsCmsModel<T>;\n entry: CmsEntry<T>;\n storageEntry: CmsStorageEntry<T>;\n fieldIndexRegistry: CmsEntryOpenSearchFieldIndexRegistry.Interface;\n}\n\nexport const transformEntryToIndex = <T extends CmsEntryValues = CmsEntryValues>(\n params: TransformEntryToIndexParams<T>\n) => {\n const { model, entry, storageEntry, fieldIndexRegistry } = params;\n const result = prepareEntryToIndex<T>({\n model,\n entry: structuredClone(entry),\n storageEntry: structuredClone(storageEntry),\n fieldIndexRegistry\n });\n\n delete result[\"PK\"];\n delete result[\"SK\"];\n delete result[\"GSI1_PK\"];\n delete result[\"GSI1_SK\"];\n delete result[\"published\"];\n delete result[\"latest\"];\n\n return result;\n};\n"],"names":["transformEntryToIndex","params","model","entry","storageEntry","fieldIndexRegistry","result","prepareEntryToIndex","structuredClone"],"mappings":";AAgBO,MAAMA,wBAAwB,CACjCC;IAEA,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAEC,YAAY,EAAEC,kBAAkB,EAAE,GAAGJ;IAC3D,MAAMK,SAASC,oBAAuB;QAClCL;QACA,OAAOM,gBAAgBL;QACvB,cAAcK,gBAAgBJ;QAC9BC;IACJ;IAEA,OAAOC,MAAM,CAAC,KAAK;IACnB,OAAOA,MAAM,CAAC,KAAK;IACnB,OAAOA,MAAM,CAAC,UAAU;IACxB,OAAOA,MAAM,CAAC,UAAU;IACxB,OAAOA,MAAM,CAAC,YAAY;IAC1B,OAAOA,MAAM,CAAC,SAAS;IAEvB,OAAOA;AACX"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { CmsGroupStorageOperations } from "@webiny/api-headless-cms/types";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
entity:
|
|
6
|
-
|
|
1
|
+
import type { CmsGroupStorageOperations } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
import { IGroupEntity } from "../../definitions/types.js";
|
|
3
|
+
import type { CmsContext } from "../../types.js";
|
|
4
|
+
interface CreateGroupsStorageOperationsParams {
|
|
5
|
+
entity: IGroupEntity;
|
|
6
|
+
container: CmsContext["container"];
|
|
7
7
|
}
|
|
8
8
|
export declare const createGroupsStorageOperations: (params: CreateGroupsStorageOperationsParams) => CmsGroupStorageOperations;
|
|
9
|
+
export {};
|
|
@@ -1,195 +1,121 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
});
|
|
8
|
-
exports.createGroupsStorageOperations = void 0;
|
|
9
|
-
|
|
10
|
-
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
|
-
|
|
12
|
-
var _error = _interopRequireDefault(require("@webiny/error"));
|
|
13
|
-
|
|
14
|
-
var _get = require("@webiny/db-dynamodb/utils/get");
|
|
15
|
-
|
|
16
|
-
var _cleanup = require("@webiny/db-dynamodb/utils/cleanup");
|
|
17
|
-
|
|
18
|
-
var _query = require("@webiny/db-dynamodb/utils/query");
|
|
19
|
-
|
|
20
|
-
var _filter = require("@webiny/db-dynamodb/utils/filter");
|
|
21
|
-
|
|
22
|
-
var _ValueFilterPlugin = require("@webiny/db-dynamodb/plugins/definitions/ValueFilterPlugin");
|
|
23
|
-
|
|
24
|
-
var _sort = require("@webiny/db-dynamodb/utils/sort");
|
|
25
|
-
|
|
26
|
-
const createPartitionKey = params => {
|
|
27
|
-
const {
|
|
28
|
-
tenant,
|
|
29
|
-
locale
|
|
30
|
-
} = params;
|
|
31
|
-
return `T#${tenant}#L#${locale}#CMS#CMG`;
|
|
1
|
+
import error from "@webiny/error";
|
|
2
|
+
import { sortItems } from "@webiny/db-dynamodb";
|
|
3
|
+
import { FilterUtil } from "@webiny/db-dynamodb/exports/api/db.js";
|
|
4
|
+
const createPartitionKey = (params)=>{
|
|
5
|
+
const { tenant } = params;
|
|
6
|
+
return `T#${tenant}#CMS#CMG`;
|
|
32
7
|
};
|
|
33
|
-
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
id
|
|
37
|
-
} = params;
|
|
38
|
-
return id;
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
const createKeys = params => {
|
|
42
|
-
return {
|
|
43
|
-
PK: createPartitionKey(params),
|
|
44
|
-
SK: createSortKeys(params)
|
|
45
|
-
};
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
const createType = () => {
|
|
49
|
-
return "cms.group";
|
|
8
|
+
const createSortKeys = (params)=>{
|
|
9
|
+
const { id } = params;
|
|
10
|
+
return id;
|
|
50
11
|
};
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
plugins
|
|
56
|
-
} = params;
|
|
57
|
-
const filteringPlugins = plugins.byType(_ValueFilterPlugin.ValueFilterPlugin.type);
|
|
58
|
-
|
|
59
|
-
if (filteringPlugins.length === 0) {
|
|
60
|
-
throw new _error.default("DynamoDB filtering plugins not loaded.", "MISSING_DYNAMODB_FILTERING_PLUGINS");
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
const create = async params => {
|
|
64
|
-
const {
|
|
65
|
-
group
|
|
66
|
-
} = params;
|
|
67
|
-
const keys = createKeys(group);
|
|
68
|
-
|
|
69
|
-
try {
|
|
70
|
-
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, group), {}, {
|
|
71
|
-
TYPE: createType()
|
|
72
|
-
}, keys));
|
|
73
|
-
return group;
|
|
74
|
-
} catch (ex) {
|
|
75
|
-
throw new _error.default(ex.message || "Could not create group.", ex.code || "CREATE_GROUP_ERROR", {
|
|
76
|
-
error: ex,
|
|
77
|
-
group,
|
|
78
|
-
keys
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
const update = async params => {
|
|
84
|
-
const {
|
|
85
|
-
group
|
|
86
|
-
} = params;
|
|
87
|
-
const keys = createKeys(group);
|
|
88
|
-
|
|
89
|
-
try {
|
|
90
|
-
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, group), {}, {
|
|
91
|
-
TYPE: createType()
|
|
92
|
-
}, keys));
|
|
93
|
-
return group;
|
|
94
|
-
} catch (ex) {
|
|
95
|
-
throw new _error.default(ex.message || "Could not update group.", ex.code || "UPDATE_GROUP_ERROR", {
|
|
96
|
-
error: ex,
|
|
97
|
-
group,
|
|
98
|
-
keys
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
};
|
|
102
|
-
|
|
103
|
-
const deleteGroup = async params => {
|
|
104
|
-
const {
|
|
105
|
-
group
|
|
106
|
-
} = params; // TODO make sure that group has locale and tenant on it - add it in the crud just in case
|
|
107
|
-
|
|
108
|
-
const keys = createKeys(group);
|
|
109
|
-
|
|
110
|
-
try {
|
|
111
|
-
await entity.delete(keys);
|
|
112
|
-
return group;
|
|
113
|
-
} catch (ex) {
|
|
114
|
-
throw new _error.default(ex.message || "Could not delete group.", ex.code || "DELETE_GROUP_ERROR", {
|
|
115
|
-
error: ex,
|
|
116
|
-
group,
|
|
117
|
-
keys
|
|
118
|
-
});
|
|
119
|
-
}
|
|
120
|
-
};
|
|
121
|
-
|
|
122
|
-
const get = async params => {
|
|
123
|
-
const keys = createKeys(params);
|
|
124
|
-
|
|
125
|
-
try {
|
|
126
|
-
const group = await (0, _get.get)({
|
|
127
|
-
entity,
|
|
128
|
-
keys
|
|
129
|
-
});
|
|
130
|
-
return (0, _cleanup.cleanupItem)(entity, group);
|
|
131
|
-
} catch (ex) {
|
|
132
|
-
throw new _error.default(ex.message || "Could not get group.", ex.code || "GET_GROUP_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
|
133
|
-
error: ex
|
|
134
|
-
}, params), {}, {
|
|
135
|
-
keys
|
|
136
|
-
}));
|
|
137
|
-
}
|
|
138
|
-
};
|
|
139
|
-
|
|
140
|
-
const list = async params => {
|
|
141
|
-
const {
|
|
142
|
-
sort,
|
|
143
|
-
where: initialWhere
|
|
144
|
-
} = params;
|
|
145
|
-
const queryAllParams = {
|
|
146
|
-
entity,
|
|
147
|
-
partitionKey: createPartitionKey(initialWhere),
|
|
148
|
-
options: {
|
|
149
|
-
gte: " "
|
|
150
|
-
}
|
|
151
|
-
};
|
|
152
|
-
let records = [];
|
|
153
|
-
|
|
154
|
-
try {
|
|
155
|
-
records = await (0, _query.queryAll)(queryAllParams);
|
|
156
|
-
} catch (ex) {
|
|
157
|
-
throw new _error.default(ex.message || "Could not list groups.", ex.code || "LIST_GROUP_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
|
158
|
-
error: ex
|
|
159
|
-
}, params), {}, {
|
|
160
|
-
sort,
|
|
161
|
-
where: initialWhere
|
|
162
|
-
}));
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
const where = (0, _objectSpread2.default)({}, initialWhere);
|
|
166
|
-
delete where["tenant"];
|
|
167
|
-
delete where["locale"];
|
|
168
|
-
const filteredItems = (0, _filter.filterItems)({
|
|
169
|
-
items: records,
|
|
170
|
-
where,
|
|
171
|
-
fields: [],
|
|
172
|
-
plugins
|
|
12
|
+
const createKeys = (params)=>({
|
|
13
|
+
PK: createPartitionKey(params),
|
|
14
|
+
SK: createSortKeys(params),
|
|
15
|
+
GSI_TENANT: params.tenant
|
|
173
16
|
});
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
17
|
+
const createType = ()=>"cms.group";
|
|
18
|
+
const createGroupsStorageOperations = (params)=>{
|
|
19
|
+
const { entity, container } = params;
|
|
20
|
+
const filterUtil = container.resolve(FilterUtil);
|
|
21
|
+
const create = async (params)=>{
|
|
22
|
+
const { group } = params;
|
|
23
|
+
const keys = createKeys(group);
|
|
24
|
+
try {
|
|
25
|
+
await entity.put({
|
|
26
|
+
data: group,
|
|
27
|
+
TYPE: createType(),
|
|
28
|
+
...keys
|
|
29
|
+
});
|
|
30
|
+
} catch (ex) {
|
|
31
|
+
throw new error(ex.message || "Could not create group.", ex.code || "CREATE_GROUP_ERROR", {
|
|
32
|
+
error: ex,
|
|
33
|
+
group,
|
|
34
|
+
keys
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
const update = async (params)=>{
|
|
39
|
+
const { group } = params;
|
|
40
|
+
const keys = createKeys(group);
|
|
41
|
+
try {
|
|
42
|
+
await entity.put({
|
|
43
|
+
data: group,
|
|
44
|
+
TYPE: createType(),
|
|
45
|
+
...keys
|
|
46
|
+
});
|
|
47
|
+
} catch (ex) {
|
|
48
|
+
throw new error(ex.message || "Could not update group.", ex.code || "UPDATE_GROUP_ERROR", {
|
|
49
|
+
error: ex,
|
|
50
|
+
group,
|
|
51
|
+
keys
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
const deleteGroup = async (params)=>{
|
|
56
|
+
const { group } = params;
|
|
57
|
+
const keys = createKeys(group);
|
|
58
|
+
try {
|
|
59
|
+
await entity.delete(keys);
|
|
60
|
+
} catch (ex) {
|
|
61
|
+
throw new error(ex.message || "Could not delete group.", ex.code || "DELETE_GROUP_ERROR", {
|
|
62
|
+
error: ex,
|
|
63
|
+
group,
|
|
64
|
+
keys
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
const get = async (params)=>{
|
|
69
|
+
const keys = createKeys(params);
|
|
70
|
+
try {
|
|
71
|
+
const result = await entity.get(keys);
|
|
72
|
+
return result ? result.data : null;
|
|
73
|
+
} catch (ex) {
|
|
74
|
+
throw new error(ex.message || "Could not get group.", ex.code || "GET_GROUP_ERROR", {
|
|
75
|
+
error: ex,
|
|
76
|
+
...params,
|
|
77
|
+
keys
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
const list = async (params)=>{
|
|
82
|
+
const { sort, where } = params;
|
|
83
|
+
let records = [];
|
|
84
|
+
try {
|
|
85
|
+
const ddbRecords = await entity.queryAll({
|
|
86
|
+
partitionKey: createPartitionKey(where),
|
|
87
|
+
options: {
|
|
88
|
+
gte: " "
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
records = ddbRecords.map((item)=>item.data);
|
|
92
|
+
} catch (ex) {
|
|
93
|
+
throw new error(ex.message || "Could not list groups.", ex.code || "LIST_GROUP_ERROR", {
|
|
94
|
+
error: ex,
|
|
95
|
+
...params,
|
|
96
|
+
sort,
|
|
97
|
+
where
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
const filteredItems = filterUtil.filter({
|
|
101
|
+
items: records,
|
|
102
|
+
where,
|
|
103
|
+
fields: []
|
|
104
|
+
});
|
|
105
|
+
if (!sort || 0 === sort.length) return filteredItems;
|
|
106
|
+
return sortItems({
|
|
107
|
+
items: filteredItems,
|
|
108
|
+
sort
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
return {
|
|
112
|
+
create,
|
|
113
|
+
update,
|
|
114
|
+
delete: deleteGroup,
|
|
115
|
+
get,
|
|
116
|
+
list
|
|
117
|
+
};
|
|
193
118
|
};
|
|
119
|
+
export { createGroupsStorageOperations };
|
|
194
120
|
|
|
195
|
-
|
|
121
|
+
//# sourceMappingURL=index.js.map
|