@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
package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { CmsEntryOpenSearchFieldIndex } from "./CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
export interface ICmsEntryOpenSearchFieldIndexRegistry {
|
|
3
|
+
get(fieldType: string): CmsEntryOpenSearchFieldIndex.Interface | undefined;
|
|
4
|
+
getDefault(): CmsEntryOpenSearchFieldIndex.Interface;
|
|
5
|
+
getAll(): CmsEntryOpenSearchFieldIndex.Interface[];
|
|
6
|
+
}
|
|
7
|
+
export declare const CmsEntryOpenSearchFieldIndexRegistry: import("@webiny/di").Abstraction<ICmsEntryOpenSearchFieldIndexRegistry>;
|
|
8
|
+
export declare namespace CmsEntryOpenSearchFieldIndexRegistry {
|
|
9
|
+
type Interface = ICmsEntryOpenSearchFieldIndexRegistry;
|
|
10
|
+
type FieldIndex = CmsEntryOpenSearchFieldIndex.Interface;
|
|
11
|
+
}
|
package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
+
const CmsEntryOpenSearchFieldIndexRegistry = createAbstraction("Cms/Entry/OpenSearch/FieldIndexRegistry");
|
|
3
|
+
export { CmsEntryOpenSearchFieldIndexRegistry };
|
|
4
|
+
|
|
5
|
+
//# sourceMappingURL=CmsEntryOpenSearchFieldIndexRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsEntryOpenSearchFieldIndex } from \"./CmsEntryOpenSearchFieldIndex.js\";\n\nexport interface ICmsEntryOpenSearchFieldIndexRegistry {\n get(fieldType: string): CmsEntryOpenSearchFieldIndex.Interface | undefined;\n getDefault(): CmsEntryOpenSearchFieldIndex.Interface;\n getAll(): CmsEntryOpenSearchFieldIndex.Interface[];\n}\n\nexport const CmsEntryOpenSearchFieldIndexRegistry =\n createAbstraction<ICmsEntryOpenSearchFieldIndexRegistry>(\n \"Cms/Entry/OpenSearch/FieldIndexRegistry\"\n );\n\nexport namespace CmsEntryOpenSearchFieldIndexRegistry {\n export type Interface = ICmsEntryOpenSearchFieldIndexRegistry;\n export type FieldIndex = CmsEntryOpenSearchFieldIndex.Interface;\n}\n"],"names":["CmsEntryOpenSearchFieldIndexRegistry","createAbstraction"],"mappings":";AASO,MAAMA,uCACTC,kBACI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const FIELD_INDEXING_DEFAULT: "*";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/constants.js","sources":["../../../src/features/CmsEntryOpenSearchFieldIndex/constants.ts"],"sourcesContent":["export const FIELD_INDEXING_DEFAULT = \"*\" as const;\n"],"names":["FIELD_INDEXING_DEFAULT"],"mappings":"AAAO,MAAMA,yBAAyB"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
|
+
import { CmsEntryOpenSearchFieldIndexRegistry } from "./CmsEntryOpenSearchFieldIndexRegistry.js";
|
|
3
|
+
import { RichTextFieldIndex } from "./fields/RichTextFieldIndex.js";
|
|
4
|
+
import { JsonFieldIndex } from "./fields/JsonFieldIndex.js";
|
|
5
|
+
import { LongTextFieldIndex } from "./fields/LongTextFieldIndex.js";
|
|
6
|
+
import { NumberFieldIndex } from "./fields/NumberFieldIndex.js";
|
|
7
|
+
import { DefaultFieldIndex } from "./fields/DefaultFieldIndex.js";
|
|
8
|
+
import { DateTimeFieldIndex } from "./fields/DateTimeFieldIndex.js";
|
|
9
|
+
import { ObjectFieldIndex } from "./fields/ObjectFieldIndex.js";
|
|
10
|
+
import { TextCompressedFieldIndex } from "./fields/TextCompressedFieldIndex.js";
|
|
11
|
+
import { TextEncryptedFieldIndex } from "./fields/TextEncryptedFieldIndex.js";
|
|
12
|
+
const CmsEntryOpenSearchFieldIndexFeature = createFeature({
|
|
13
|
+
name: "Cms/Entry/OpenSearch/FieldIndexFeature",
|
|
14
|
+
register: (container)=>{
|
|
15
|
+
container.register(RichTextFieldIndex).inSingletonScope();
|
|
16
|
+
container.register(JsonFieldIndex).inSingletonScope();
|
|
17
|
+
container.register(LongTextFieldIndex).inSingletonScope();
|
|
18
|
+
container.register(NumberFieldIndex).inSingletonScope();
|
|
19
|
+
container.register(DefaultFieldIndex).inSingletonScope();
|
|
20
|
+
container.register(DateTimeFieldIndex).inSingletonScope();
|
|
21
|
+
container.register(ObjectFieldIndex).inSingletonScope();
|
|
22
|
+
container.register(TextCompressedFieldIndex).inSingletonScope();
|
|
23
|
+
container.register(TextEncryptedFieldIndex).inSingletonScope();
|
|
24
|
+
container.register(CmsEntryOpenSearchFieldIndexRegistry).inSingletonScope();
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
export { CmsEntryOpenSearchFieldIndexFeature };
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/feature.js","sources":["../../../src/features/CmsEntryOpenSearchFieldIndex/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CmsEntryOpenSearchFieldIndexRegistry } from \"./CmsEntryOpenSearchFieldIndexRegistry.js\";\nimport { RichTextFieldIndex } from \"./fields/RichTextFieldIndex.js\";\nimport { JsonFieldIndex } from \"./fields/JsonFieldIndex.js\";\nimport { LongTextFieldIndex } from \"./fields/LongTextFieldIndex.js\";\nimport { NumberFieldIndex } from \"./fields/NumberFieldIndex.js\";\nimport { DefaultFieldIndex } from \"./fields/DefaultFieldIndex.js\";\nimport { DateTimeFieldIndex } from \"./fields/DateTimeFieldIndex.js\";\nimport { ObjectFieldIndex } from \"./fields/ObjectFieldIndex.js\";\nimport { TextCompressedFieldIndex } from \"./fields/TextCompressedFieldIndex.js\";\nimport { TextEncryptedFieldIndex } from \"./fields/TextEncryptedFieldIndex.js\";\n\nexport const CmsEntryOpenSearchFieldIndexFeature = createFeature({\n name: \"Cms/Entry/OpenSearch/FieldIndexFeature\",\n register: container => {\n container.register(RichTextFieldIndex).inSingletonScope();\n container.register(JsonFieldIndex).inSingletonScope();\n container.register(LongTextFieldIndex).inSingletonScope();\n container.register(NumberFieldIndex).inSingletonScope();\n container.register(DefaultFieldIndex).inSingletonScope();\n container.register(DateTimeFieldIndex).inSingletonScope();\n container.register(ObjectFieldIndex).inSingletonScope();\n container.register(TextCompressedFieldIndex).inSingletonScope();\n container.register(TextEncryptedFieldIndex).inSingletonScope();\n\n // must be registered last\n container.register(CmsEntryOpenSearchFieldIndexRegistry).inSingletonScope();\n }\n});\n"],"names":["CmsEntryOpenSearchFieldIndexFeature","createFeature","container","RichTextFieldIndex","JsonFieldIndex","LongTextFieldIndex","NumberFieldIndex","DefaultFieldIndex","DateTimeFieldIndex","ObjectFieldIndex","TextCompressedFieldIndex","TextEncryptedFieldIndex","CmsEntryOpenSearchFieldIndexRegistry"],"mappings":";;;;;;;;;;;AAYO,MAAMA,sCAAsCC,cAAc;IAC7D,MAAM;IACN,UAAUC,CAAAA;QACNA,UAAU,QAAQ,CAACC,oBAAoB,gBAAgB;QACvDD,UAAU,QAAQ,CAACE,gBAAgB,gBAAgB;QACnDF,UAAU,QAAQ,CAACG,oBAAoB,gBAAgB;QACvDH,UAAU,QAAQ,CAACI,kBAAkB,gBAAgB;QACrDJ,UAAU,QAAQ,CAACK,mBAAmB,gBAAgB;QACtDL,UAAU,QAAQ,CAACM,oBAAoB,gBAAgB;QACvDN,UAAU,QAAQ,CAACO,kBAAkB,gBAAgB;QACrDP,UAAU,QAAQ,CAACQ,0BAA0B,gBAAgB;QAC7DR,UAAU,QAAQ,CAACS,yBAAyB,gBAAgB;QAG5DT,UAAU,QAAQ,CAACU,sCAAsC,gBAAgB;IAC7E;AACJ"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
declare class DateTimeFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
3
|
+
readonly fieldType = "datetime";
|
|
4
|
+
unmappedType(): string;
|
|
5
|
+
toIndex({ field, value }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
6
|
+
fromIndex({ field, value }: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
7
|
+
}
|
|
8
|
+
export declare const DateTimeFieldIndex: typeof DateTimeFieldIndexImpl & {
|
|
9
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
const convertTimeToNumber = (time)=>{
|
|
3
|
+
if (!time) return null;
|
|
4
|
+
const [hours, minutes, seconds = 0] = time.split(":").map(Number);
|
|
5
|
+
return 60 * hours * 60 + 60 * minutes + seconds;
|
|
6
|
+
};
|
|
7
|
+
const convertNumberToTime = (value)=>{
|
|
8
|
+
if (null == value) return null;
|
|
9
|
+
const hours = Math.floor(value / 60 / 60);
|
|
10
|
+
const minutes = Math.floor((value - 60 * hours * 60) / 60);
|
|
11
|
+
const seconds = Math.floor(value - 60 * hours * 60 - 60 * minutes);
|
|
12
|
+
return [
|
|
13
|
+
hours,
|
|
14
|
+
minutes,
|
|
15
|
+
seconds
|
|
16
|
+
].map((v)=>String(v).padStart(2, "0")).join(":");
|
|
17
|
+
};
|
|
18
|
+
const convertValueToIndex = (value, field)=>{
|
|
19
|
+
if (!value) return null;
|
|
20
|
+
if (field.settings?.type === "time") return convertTimeToNumber(value);
|
|
21
|
+
return value;
|
|
22
|
+
};
|
|
23
|
+
const convertValueFromIndex = (value, field)=>{
|
|
24
|
+
const type = field.settings?.type;
|
|
25
|
+
if ("time" === type) return convertNumberToTime(value);
|
|
26
|
+
if (!value) return null;
|
|
27
|
+
if ("dateTimeWithTimezone" === type) return value;
|
|
28
|
+
if ("date" === type) {
|
|
29
|
+
const dateValue = new Date(value);
|
|
30
|
+
return dateValue.toISOString().slice(0, 10);
|
|
31
|
+
}
|
|
32
|
+
return new Date(value).toISOString();
|
|
33
|
+
};
|
|
34
|
+
class DateTimeFieldIndexImpl {
|
|
35
|
+
unmappedType() {
|
|
36
|
+
return "date";
|
|
37
|
+
}
|
|
38
|
+
toIndex({ field, value }) {
|
|
39
|
+
if (true === Array.isArray(value)) return {
|
|
40
|
+
value: value.map((v)=>convertValueToIndex(v, field))
|
|
41
|
+
};
|
|
42
|
+
return {
|
|
43
|
+
value: convertValueToIndex(value, field)
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
fromIndex({ field, value }) {
|
|
47
|
+
if (true === Array.isArray(value)) return value.map((v)=>convertValueFromIndex(v, field));
|
|
48
|
+
return convertValueFromIndex(value, field);
|
|
49
|
+
}
|
|
50
|
+
constructor(){
|
|
51
|
+
this.fieldType = "datetime";
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
const DateTimeFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
55
|
+
implementation: DateTimeFieldIndexImpl,
|
|
56
|
+
dependencies: []
|
|
57
|
+
});
|
|
58
|
+
export { DateTimeFieldIndex };
|
|
59
|
+
|
|
60
|
+
//# sourceMappingURL=DateTimeFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.ts"],"sourcesContent":["import type { CmsModelDateTimeField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\n\nconst convertTimeToNumber = (time?: string): number | null => {\n if (!time) {\n return null;\n }\n const [hours, minutes, seconds = 0] = time.split(\":\").map(Number);\n return hours * 60 * 60 + minutes * 60 + seconds;\n};\n\nconst convertNumberToTime = (value?: number): string | null => {\n if (value === undefined || value === null) {\n return null;\n }\n\n const hours = Math.floor(value / 60 / 60);\n const minutes = Math.floor((value - hours * 60 * 60) / 60);\n const seconds = Math.floor(value - hours * 60 * 60 - minutes * 60);\n\n return [hours, minutes, seconds].map(v => String(v).padStart(2, \"0\")).join(\":\");\n};\n\nconst convertValueToIndex = (value: string, field: CmsModelDateTimeField) => {\n if (!value) {\n return null;\n } else if (field.settings?.type === \"time\") {\n return convertTimeToNumber(value);\n }\n return value;\n};\n\nconst convertValueFromIndex = (\n value: string | number,\n field: CmsModelDateTimeField\n): string | null => {\n const type = field.settings?.type;\n if (type === \"time\") {\n return convertNumberToTime(value as number);\n } else if (!value) {\n return null;\n } else if (type === \"dateTimeWithTimezone\") {\n return value as string;\n } else if (type === \"date\") {\n const dateValue = new Date(value);\n return dateValue.toISOString().slice(0, 10);\n }\n return new Date(value).toISOString();\n};\n\nclass DateTimeFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = \"datetime\";\n\n public unmappedType(): string {\n return \"date\";\n }\n\n public toIndex({\n field,\n value\n }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue {\n if (Array.isArray(value) === true) {\n return {\n value: value.map((v: string) => {\n return convertValueToIndex(v, field as CmsModelDateTimeField);\n })\n };\n }\n return {\n value: convertValueToIndex(value, field as CmsModelDateTimeField)\n };\n }\n\n public fromIndex({ field, value }: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n if (Array.isArray(value) === true) {\n return value.map((v: string) => {\n return convertValueFromIndex(v, field as CmsModelDateTimeField);\n });\n }\n return convertValueFromIndex(value, field as CmsModelDateTimeField);\n }\n}\n\nexport const DateTimeFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: DateTimeFieldIndexImpl,\n dependencies: []\n});\n"],"names":["convertTimeToNumber","time","hours","minutes","seconds","Number","convertNumberToTime","value","Math","v","String","convertValueToIndex","field","convertValueFromIndex","type","dateValue","Date","DateTimeFieldIndexImpl","Array","DateTimeFieldIndex","CmsEntryOpenSearchFieldIndex"],"mappings":";AAGA,MAAMA,sBAAsB,CAACC;IACzB,IAAI,CAACA,MACD,OAAO;IAEX,MAAM,CAACC,OAAOC,SAASC,UAAU,CAAC,CAAC,GAAGH,KAAK,KAAK,CAAC,KAAK,GAAG,CAACI;IAC1D,OAAOH,AAAQ,KAARA,QAAa,KAAKC,AAAU,KAAVA,UAAeC;AAC5C;AAEA,MAAME,sBAAsB,CAACC;IACzB,IAAIA,QAAAA,OACA,OAAO;IAGX,MAAML,QAAQM,KAAK,KAAK,CAACD,QAAQ,KAAK;IACtC,MAAMJ,UAAUK,KAAK,KAAK,CAAED,AAAAA,CAAAA,QAAQL,AAAQ,KAARA,QAAa,EAAC,IAAK;IACvD,MAAME,UAAUI,KAAK,KAAK,CAACD,QAAQL,AAAQ,KAARA,QAAa,KAAKC,AAAU,KAAVA;IAErD,OAAO;QAACD;QAAOC;QAASC;KAAQ,CAAC,GAAG,CAACK,CAAAA,IAAKC,OAAOD,GAAG,QAAQ,CAAC,GAAG,MAAM,IAAI,CAAC;AAC/E;AAEA,MAAME,sBAAsB,CAACJ,OAAeK;IACxC,IAAI,CAACL,OACD,OAAO;IACJ,IAAIK,MAAM,QAAQ,EAAE,SAAS,QAChC,OAAOZ,oBAAoBO;IAE/B,OAAOA;AACX;AAEA,MAAMM,wBAAwB,CAC1BN,OACAK;IAEA,MAAME,OAAOF,MAAM,QAAQ,EAAE;IAC7B,IAAIE,AAAS,WAATA,MACA,OAAOR,oBAAoBC;IACxB,IAAI,CAACA,OACR,OAAO;IACJ,IAAIO,AAAS,2BAATA,MACP,OAAOP;IACJ,IAAIO,AAAS,WAATA,MAAiB;QACxB,MAAMC,YAAY,IAAIC,KAAKT;QAC3B,OAAOQ,UAAU,WAAW,GAAG,KAAK,CAAC,GAAG;IAC5C;IACA,OAAO,IAAIC,KAAKT,OAAO,WAAW;AACtC;AAEA,MAAMU;IAGK,eAAuB;QAC1B,OAAO;IACX;IAEO,QAAQ,EACXL,KAAK,EACLL,KAAK,EAC8B,EAAwC;QAC3E,IAAIW,AAAyB,SAAzBA,MAAM,OAAO,CAACX,QACd,OAAO;YACH,OAAOA,MAAM,GAAG,CAAC,CAACE,IACPE,oBAAoBF,GAAGG;QAEtC;QAEJ,OAAO;YACH,OAAOD,oBAAoBJ,OAAOK;QACtC;IACJ;IAEO,UAAU,EAAEA,KAAK,EAAEL,KAAK,EAA0C,EAAO;QAC5E,IAAIW,AAAyB,SAAzBA,MAAM,OAAO,CAACX,QACd,OAAOA,MAAM,GAAG,CAAC,CAACE,IACPI,sBAAsBJ,GAAGG;QAGxC,OAAOC,sBAAsBN,OAAOK;IACxC;;aA7BgB,SAAS,GAAG;;AA8BhC;AAEO,MAAMO,qBAAqBC,6BAA6B,oBAAoB,CAAC;IAChF,gBAAgBH;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
import { CmsModelFieldToGraphQLRegistry } from "@webiny/api-headless-cms/exports/api/cms/graphql.js";
|
|
3
|
+
declare class DefaultFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
4
|
+
private readonly fieldRegistry;
|
|
5
|
+
readonly fieldType: "*";
|
|
6
|
+
constructor(fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface);
|
|
7
|
+
toIndex({ field, value }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
8
|
+
fromIndex({ field, value, rawValue }: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
9
|
+
}
|
|
10
|
+
export declare const DefaultFieldIndex: typeof DefaultFieldIndexImpl & {
|
|
11
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
12
|
+
};
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
import { FIELD_INDEXING_DEFAULT } from "../constants.js";
|
|
3
|
+
import { CmsModelFieldToGraphQLRegistry } from "@webiny/api-headless-cms/exports/api/cms/graphql.js";
|
|
4
|
+
class DefaultFieldIndexImpl {
|
|
5
|
+
constructor(fieldRegistry){
|
|
6
|
+
this.fieldRegistry = fieldRegistry;
|
|
7
|
+
this.fieldType = FIELD_INDEXING_DEFAULT;
|
|
8
|
+
}
|
|
9
|
+
toIndex({ field, value }) {
|
|
10
|
+
const fieldType = this.fieldRegistry.get(field.type);
|
|
11
|
+
if (fieldType?.isSearchable === true) return {
|
|
12
|
+
value
|
|
13
|
+
};
|
|
14
|
+
return {
|
|
15
|
+
rawValue: value
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
fromIndex({ field, value, rawValue }) {
|
|
19
|
+
const fieldType = this.fieldRegistry.get(field.type);
|
|
20
|
+
const isSearchable = fieldType?.isSearchable ?? false;
|
|
21
|
+
if (isSearchable) return void 0 === value ? rawValue : value;
|
|
22
|
+
return void 0 === rawValue ? value : rawValue;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
const DefaultFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
26
|
+
implementation: DefaultFieldIndexImpl,
|
|
27
|
+
dependencies: [
|
|
28
|
+
CmsModelFieldToGraphQLRegistry
|
|
29
|
+
]
|
|
30
|
+
});
|
|
31
|
+
export { DefaultFieldIndex };
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=DefaultFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.ts"],"sourcesContent":["import { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\nimport { FIELD_INDEXING_DEFAULT } from \"../constants.js\";\nimport { CmsModelFieldToGraphQLRegistry } from \"@webiny/api-headless-cms/exports/api/cms/graphql.js\";\n\nclass DefaultFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = FIELD_INDEXING_DEFAULT;\n public constructor(private readonly fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface) {}\n\n public toIndex({\n field,\n value\n }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue {\n const fieldType = this.fieldRegistry.get(field.type);\n\n if (fieldType?.isSearchable === true) {\n return { value };\n }\n\n return { rawValue: value };\n }\n\n public fromIndex({ field, value, rawValue }: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n const fieldType = this.fieldRegistry.get(field.type);\n const isSearchable = fieldType?.isSearchable ?? false;\n\n if (isSearchable) {\n return value === undefined ? rawValue : value;\n }\n return rawValue === undefined ? value : rawValue;\n }\n}\n\nexport const DefaultFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: DefaultFieldIndexImpl,\n dependencies: [CmsModelFieldToGraphQLRegistry]\n});\n"],"names":["DefaultFieldIndexImpl","fieldRegistry","FIELD_INDEXING_DEFAULT","field","value","fieldType","rawValue","isSearchable","undefined","DefaultFieldIndex","CmsEntryOpenSearchFieldIndex","CmsModelFieldToGraphQLRegistry"],"mappings":";;;AAIA,MAAMA;IAEF,YAAoCC,aAAuD,CAAE;aAAzDA,aAAa,GAAbA;aADpB,SAAS,GAAGC;IACkE;IAEvF,QAAQ,EACXC,KAAK,EACLC,KAAK,EAC8B,EAAwC;QAC3E,MAAMC,YAAY,IAAI,CAAC,aAAa,CAAC,GAAG,CAACF,MAAM,IAAI;QAEnD,IAAIE,WAAW,iBAAiB,MAC5B,OAAO;YAAED;QAAM;QAGnB,OAAO;YAAE,UAAUA;QAAM;IAC7B;IAEO,UAAU,EAAED,KAAK,EAAEC,KAAK,EAAEE,QAAQ,EAA0C,EAAO;QACtF,MAAMD,YAAY,IAAI,CAAC,aAAa,CAAC,GAAG,CAACF,MAAM,IAAI;QACnD,MAAMI,eAAeF,WAAW,gBAAgB;QAEhD,IAAIE,cACA,OAAOH,AAAUI,WAAVJ,QAAsBE,WAAWF;QAE5C,OAAOE,AAAaE,WAAbF,WAAyBF,QAAQE;IAC5C;AACJ;AAEO,MAAMG,oBAAoBC,6BAA6B,oBAAoB,CAAC;IAC/E,gBAAgBV;IAChB,cAAc;QAACW;KAA+B;AAClD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
declare class JsonFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
3
|
+
readonly fieldType = "json";
|
|
4
|
+
toIndex({ value }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
5
|
+
fromIndex({ rawValue }: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
6
|
+
}
|
|
7
|
+
export declare const JsonFieldIndex: typeof JsonFieldIndexImpl & {
|
|
8
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
class JsonFieldIndexImpl {
|
|
3
|
+
toIndex({ value }) {
|
|
4
|
+
return {
|
|
5
|
+
rawValue: value
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
fromIndex({ rawValue }) {
|
|
9
|
+
return rawValue;
|
|
10
|
+
}
|
|
11
|
+
constructor(){
|
|
12
|
+
this.fieldType = "json";
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
const JsonFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
16
|
+
implementation: JsonFieldIndexImpl,
|
|
17
|
+
dependencies: []
|
|
18
|
+
});
|
|
19
|
+
export { JsonFieldIndex };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=JsonFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.ts"],"sourcesContent":["import { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\n\nclass JsonFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = \"json\";\n\n public toIndex({\n value\n }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue {\n return {\n rawValue: value\n };\n }\n\n public fromIndex({ rawValue }: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n return rawValue;\n }\n}\n\nexport const JsonFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: JsonFieldIndexImpl,\n dependencies: []\n});\n"],"names":["JsonFieldIndexImpl","value","rawValue","JsonFieldIndex","CmsEntryOpenSearchFieldIndex"],"mappings":";AAEA,MAAMA;IAGK,QAAQ,EACXC,KAAK,EAC8B,EAAwC;QAC3E,OAAO;YACH,UAAUA;QACd;IACJ;IAEO,UAAU,EAAEC,QAAQ,EAA0C,EAAO;QACxE,OAAOA;IACX;;aAZgB,SAAS,GAAG;;AAahC;AAEO,MAAMC,iBAAiBC,6BAA6B,oBAAoB,CAAC;IAC5E,gBAAgBJ;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
declare class LongTextFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
3
|
+
readonly fieldType = "long-text";
|
|
4
|
+
toIndex({ rawValue }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
5
|
+
fromIndex({ value }: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
6
|
+
}
|
|
7
|
+
export declare const LongTextFieldIndex: typeof LongTextFieldIndexImpl & {
|
|
8
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
class LongTextFieldIndexImpl {
|
|
3
|
+
toIndex({ rawValue }) {
|
|
4
|
+
return {
|
|
5
|
+
value: Array.isArray(rawValue) ? rawValue : rawValue || ""
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
fromIndex({ value }) {
|
|
9
|
+
if (Array.isArray(value)) return value;
|
|
10
|
+
return value || "";
|
|
11
|
+
}
|
|
12
|
+
constructor(){
|
|
13
|
+
this.fieldType = "long-text";
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
const LongTextFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
17
|
+
implementation: LongTextFieldIndexImpl,
|
|
18
|
+
dependencies: []
|
|
19
|
+
});
|
|
20
|
+
export { LongTextFieldIndex };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=LongTextFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.ts"],"sourcesContent":["import { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\n\nclass LongTextFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = \"long-text\";\n\n public toIndex({\n rawValue\n }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue {\n return {\n value: Array.isArray(rawValue) ? rawValue : rawValue || \"\"\n };\n }\n\n public fromIndex({ value }: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n if (Array.isArray(value)) {\n return value;\n }\n return value || \"\";\n }\n}\n\nexport const LongTextFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: LongTextFieldIndexImpl,\n dependencies: []\n});\n"],"names":["LongTextFieldIndexImpl","rawValue","Array","value","LongTextFieldIndex","CmsEntryOpenSearchFieldIndex"],"mappings":";AAEA,MAAMA;IAGK,QAAQ,EACXC,QAAQ,EAC2B,EAAwC;QAC3E,OAAO;YACH,OAAOC,MAAM,OAAO,CAACD,YAAYA,WAAWA,YAAY;QAC5D;IACJ;IAEO,UAAU,EAAEE,KAAK,EAA0C,EAAO;QACrE,IAAID,MAAM,OAAO,CAACC,QACd,OAAOA;QAEX,OAAOA,SAAS;IACpB;;aAfgB,SAAS,GAAG;;AAgBhC;AAEO,MAAMC,qBAAqBC,6BAA6B,oBAAoB,CAAC;IAChF,gBAAgBL;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
declare class NumberFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
3
|
+
readonly fieldType = "number";
|
|
4
|
+
unmappedType(): string;
|
|
5
|
+
toIndex({ value }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
6
|
+
fromIndex({ value }: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
7
|
+
}
|
|
8
|
+
export declare const NumberFieldIndex: typeof NumberFieldIndexImpl & {
|
|
9
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
const convertToString = (value)=>{
|
|
3
|
+
if (false === Array.isArray(value)) return value;
|
|
4
|
+
return value.map(String);
|
|
5
|
+
};
|
|
6
|
+
const convertToFloat = (value)=>{
|
|
7
|
+
if (false === Array.isArray(value)) return "string" == typeof value ? parseFloat(value) : value;
|
|
8
|
+
return value.map((v)=>parseFloat(v));
|
|
9
|
+
};
|
|
10
|
+
class NumberFieldIndexImpl {
|
|
11
|
+
unmappedType() {
|
|
12
|
+
return "float";
|
|
13
|
+
}
|
|
14
|
+
toIndex({ value }) {
|
|
15
|
+
return {
|
|
16
|
+
value: convertToString(value)
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
fromIndex({ value }) {
|
|
20
|
+
return convertToFloat(value);
|
|
21
|
+
}
|
|
22
|
+
constructor(){
|
|
23
|
+
this.fieldType = "number";
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
const NumberFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
27
|
+
implementation: NumberFieldIndexImpl,
|
|
28
|
+
dependencies: []
|
|
29
|
+
});
|
|
30
|
+
export { NumberFieldIndex };
|
|
31
|
+
|
|
32
|
+
//# sourceMappingURL=NumberFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.ts"],"sourcesContent":["import { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\n\nconst convertToString = (value: number[] | number) => {\n if (Array.isArray(value) === false) {\n return value;\n }\n return (value as number[]).map(String);\n};\n\nconst convertToFloat = (value: string[] | number) => {\n if (Array.isArray(value) === false) {\n return typeof value === \"string\" ? parseFloat(value) : value;\n }\n return (value as string[]).map(v => parseFloat(v));\n};\n\nclass NumberFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = \"number\";\n\n public unmappedType(): string {\n return \"float\";\n }\n\n public toIndex({\n value\n }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue {\n return {\n value: convertToString(value)\n };\n }\n\n public fromIndex({ value }: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n return convertToFloat(value);\n }\n}\n\nexport const NumberFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: NumberFieldIndexImpl,\n dependencies: []\n});\n"],"names":["convertToString","value","Array","String","convertToFloat","parseFloat","v","NumberFieldIndexImpl","NumberFieldIndex","CmsEntryOpenSearchFieldIndex"],"mappings":";AAEA,MAAMA,kBAAkB,CAACC;IACrB,IAAIC,AAAyB,UAAzBA,MAAM,OAAO,CAACD,QACd,OAAOA;IAEX,OAAQA,MAAmB,GAAG,CAACE;AACnC;AAEA,MAAMC,iBAAiB,CAACH;IACpB,IAAIC,AAAyB,UAAzBA,MAAM,OAAO,CAACD,QACd,OAAO,AAAiB,YAAjB,OAAOA,QAAqBI,WAAWJ,SAASA;IAE3D,OAAQA,MAAmB,GAAG,CAACK,CAAAA,IAAKD,WAAWC;AACnD;AAEA,MAAMC;IAGK,eAAuB;QAC1B,OAAO;IACX;IAEO,QAAQ,EACXN,KAAK,EAC8B,EAAwC;QAC3E,OAAO;YACH,OAAOD,gBAAgBC;QAC3B;IACJ;IAEO,UAAU,EAAEA,KAAK,EAA0C,EAAO;QACrE,OAAOG,eAAeH;IAC1B;;aAhBgB,SAAS,GAAG;;AAiBhC;AAEO,MAAMO,mBAAmBC,6BAA6B,oBAAoB,CAAC;IAC9E,gBAAgBF;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
declare class ObjectFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
3
|
+
readonly fieldType = "object";
|
|
4
|
+
toIndex({ model, field, value: initialValue, rawValue: initialRawValue, getFieldIndex }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
5
|
+
fromIndex({ field, value, rawValue, model, getFieldIndex }: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
6
|
+
private processToIndex;
|
|
7
|
+
private processFromIndex;
|
|
8
|
+
}
|
|
9
|
+
export declare const ObjectFieldIndex: typeof ObjectFieldIndexImpl & {
|
|
10
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
11
|
+
};
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { getFieldIdentifiers } from "../../../helpers/index.js";
|
|
2
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
3
|
+
class ObjectFieldIndexImpl {
|
|
4
|
+
toIndex({ model, field, value: initialValue, rawValue: initialRawValue, getFieldIndex }) {
|
|
5
|
+
if (!initialValue) return {
|
|
6
|
+
value: null
|
|
7
|
+
};
|
|
8
|
+
const fields = field.settings?.fields || [];
|
|
9
|
+
if (field.list) {
|
|
10
|
+
const result = {
|
|
11
|
+
value: [],
|
|
12
|
+
rawValue: []
|
|
13
|
+
};
|
|
14
|
+
for(const key in initialValue){
|
|
15
|
+
const { value, rawValue } = this.processToIndex({
|
|
16
|
+
value: initialValue[key],
|
|
17
|
+
rawValue: initialRawValue[key],
|
|
18
|
+
getFieldIndex,
|
|
19
|
+
model,
|
|
20
|
+
fields
|
|
21
|
+
});
|
|
22
|
+
result.value.push(value);
|
|
23
|
+
result.rawValue.push(rawValue);
|
|
24
|
+
}
|
|
25
|
+
return {
|
|
26
|
+
value: result.value.length > 0 ? result.value : void 0,
|
|
27
|
+
rawValue: result.rawValue.length > 0 ? result.rawValue : void 0
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
return this.processToIndex({
|
|
31
|
+
value: initialValue,
|
|
32
|
+
rawValue: initialRawValue,
|
|
33
|
+
getFieldIndex,
|
|
34
|
+
model,
|
|
35
|
+
fields
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
fromIndex({ field, value, rawValue, model, getFieldIndex }) {
|
|
39
|
+
if (!value) return null;
|
|
40
|
+
const fields = field.settings?.fields || [];
|
|
41
|
+
if (field.list) {
|
|
42
|
+
const source = value || rawValue || [];
|
|
43
|
+
return source.map((_, index)=>this.processFromIndex({
|
|
44
|
+
value: value ? value[index] || {} : {},
|
|
45
|
+
rawValue: rawValue ? rawValue[index] || {} : {},
|
|
46
|
+
getFieldIndex,
|
|
47
|
+
model,
|
|
48
|
+
fields
|
|
49
|
+
}));
|
|
50
|
+
}
|
|
51
|
+
return this.processFromIndex({
|
|
52
|
+
value,
|
|
53
|
+
rawValue,
|
|
54
|
+
getFieldIndex,
|
|
55
|
+
model,
|
|
56
|
+
fields
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
processToIndex(params) {
|
|
60
|
+
const { fields, value: sourceValue, rawValue: sourceRawValue, getFieldIndex, model } = params;
|
|
61
|
+
return fields.reduce((values, field)=>{
|
|
62
|
+
const plugin = getFieldIndex(field.type);
|
|
63
|
+
const identifiers = getFieldIdentifiers(sourceValue, sourceRawValue, field);
|
|
64
|
+
if (!identifiers) return values;
|
|
65
|
+
const { value, rawValue } = plugin.toIndex({
|
|
66
|
+
model,
|
|
67
|
+
field,
|
|
68
|
+
value: sourceValue[identifiers.valueIdentifier || identifiers.rawValueIdentifier],
|
|
69
|
+
rawValue: sourceRawValue[identifiers.rawValueIdentifier || identifiers.valueIdentifier],
|
|
70
|
+
getFieldIndex
|
|
71
|
+
});
|
|
72
|
+
if (void 0 !== value) values.value[identifiers.valueIdentifier || identifiers.rawValueIdentifier] = value;
|
|
73
|
+
if (void 0 !== rawValue) values.rawValue[identifiers.rawValueIdentifier || identifiers.valueIdentifier] = rawValue;
|
|
74
|
+
return values;
|
|
75
|
+
}, {
|
|
76
|
+
value: {},
|
|
77
|
+
rawValue: {}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
constructor(){
|
|
81
|
+
this.fieldType = "object";
|
|
82
|
+
this.processFromIndex = (params)=>{
|
|
83
|
+
const { fields, value: sourceValue, rawValue: sourceRawValue, getFieldIndex, model } = params;
|
|
84
|
+
return fields.reduce((values, field)=>{
|
|
85
|
+
const plugin = getFieldIndex(field.type);
|
|
86
|
+
const identifiers = getFieldIdentifiers(sourceValue, sourceRawValue, field);
|
|
87
|
+
if (!identifiers) return values;
|
|
88
|
+
const value = plugin.fromIndex({
|
|
89
|
+
model,
|
|
90
|
+
field,
|
|
91
|
+
value: sourceValue[identifiers.valueIdentifier || identifiers.rawValueIdentifier],
|
|
92
|
+
rawValue: sourceRawValue ? sourceRawValue[identifiers.rawValueIdentifier || identifiers.valueIdentifier] : null,
|
|
93
|
+
getFieldIndex
|
|
94
|
+
});
|
|
95
|
+
if (void 0 !== value) values[identifiers.valueIdentifier || identifiers.rawValueIdentifier] = value;
|
|
96
|
+
return values;
|
|
97
|
+
}, {});
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
const ObjectFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
102
|
+
implementation: ObjectFieldIndexImpl,
|
|
103
|
+
dependencies: []
|
|
104
|
+
});
|
|
105
|
+
export { ObjectFieldIndex };
|
|
106
|
+
|
|
107
|
+
//# sourceMappingURL=ObjectFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.ts"],"sourcesContent":["import type { CmsModel, CmsModelField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { getFieldIdentifiers } from \"~/helpers/index.js\";\nimport { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\n\ninterface ProcessToIndexParams {\n fields: CmsModelField[];\n value: Record<string, any>;\n rawValue: Record<string, any>;\n getFieldIndex: (fieldType: string) => CmsEntryOpenSearchFieldIndex.Interface;\n model: CmsModel;\n}\n\ninterface ReducerValue {\n value: Record<string, any>;\n rawValue: Record<string, any>;\n}\n\ninterface ProcessFromIndexParams {\n fields: CmsModelField[];\n value: Record<string, any>;\n rawValue?: Record<string, any> | null;\n getFieldIndex: (fieldType: string) => CmsEntryOpenSearchFieldIndex.Interface;\n model: CmsModel;\n}\n\nclass ObjectFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = \"object\";\n\n public toIndex({\n model,\n field,\n value: initialValue,\n rawValue: initialRawValue,\n getFieldIndex\n }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue {\n if (!initialValue) {\n return { value: null };\n }\n\n const fields = (field.settings?.fields || []) as CmsModelField[];\n\n if (field.list) {\n const result: { value: Record<string, any>[]; rawValue: Record<string, any>[] } = {\n value: [],\n rawValue: []\n };\n for (const key in initialValue) {\n const { value, rawValue } = this.processToIndex({\n value: initialValue[key],\n rawValue: initialRawValue[key],\n getFieldIndex,\n model,\n fields\n });\n\n result.value.push(value);\n result.rawValue.push(rawValue);\n }\n\n return {\n value: result.value.length > 0 ? result.value : undefined,\n rawValue: result.rawValue.length > 0 ? result.rawValue : undefined\n };\n }\n\n return this.processToIndex({\n value: initialValue,\n rawValue: initialRawValue,\n getFieldIndex,\n model,\n fields\n });\n }\n\n public fromIndex({\n field,\n value,\n rawValue,\n model,\n getFieldIndex\n }: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n if (!value) {\n return null;\n }\n\n const fields = field.settings?.fields || [];\n\n if (field.list) {\n const source = value || rawValue || [];\n\n return source.map((_: any, index: number) =>\n this.processFromIndex({\n value: value ? value[index] || {} : {},\n rawValue: rawValue ? rawValue[index] || {} : {},\n getFieldIndex,\n model,\n fields\n })\n );\n }\n\n return this.processFromIndex({\n value,\n rawValue,\n getFieldIndex,\n model,\n fields\n });\n }\n\n private processToIndex(params: ProcessToIndexParams): ReducerValue {\n const {\n fields,\n value: sourceValue,\n rawValue: sourceRawValue,\n getFieldIndex,\n model\n } = params;\n\n return fields.reduce<ReducerValue>(\n (values, field) => {\n const plugin = getFieldIndex(field.type);\n\n const identifiers = getFieldIdentifiers(sourceValue, sourceRawValue, field);\n if (!identifiers) {\n return values;\n }\n\n const { value, rawValue } = plugin.toIndex({\n model,\n field,\n value: sourceValue[\n identifiers.valueIdentifier || identifiers.rawValueIdentifier\n ],\n rawValue:\n sourceRawValue[\n identifiers.rawValueIdentifier || identifiers.valueIdentifier\n ],\n getFieldIndex\n });\n\n if (value !== undefined) {\n values.value[identifiers.valueIdentifier || identifiers.rawValueIdentifier] =\n value;\n }\n if (rawValue !== undefined) {\n values.rawValue[identifiers.rawValueIdentifier || identifiers.valueIdentifier] =\n rawValue;\n }\n\n return values;\n },\n { value: {}, rawValue: {} }\n );\n }\n\n private processFromIndex = (params: ProcessFromIndexParams): Record<string, any> => {\n const {\n fields,\n value: sourceValue,\n rawValue: sourceRawValue,\n getFieldIndex,\n model\n } = params;\n\n return fields.reduce<Record<string, any>>((values, field) => {\n const plugin = getFieldIndex(field.type);\n\n const identifiers = getFieldIdentifiers(sourceValue, sourceRawValue, field);\n if (!identifiers) {\n return values;\n }\n\n const value = plugin.fromIndex({\n model,\n field,\n value: sourceValue[identifiers.valueIdentifier || identifiers.rawValueIdentifier],\n rawValue: sourceRawValue\n ? sourceRawValue[identifiers.rawValueIdentifier || identifiers.valueIdentifier]\n : null,\n getFieldIndex\n });\n\n if (value !== undefined) {\n values[identifiers.valueIdentifier || identifiers.rawValueIdentifier] = value;\n }\n\n return values;\n }, {});\n };\n}\n\nexport const ObjectFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: ObjectFieldIndexImpl,\n dependencies: []\n});\n"],"names":["ObjectFieldIndexImpl","model","field","initialValue","initialRawValue","getFieldIndex","fields","result","key","value","rawValue","undefined","source","_","index","params","sourceValue","sourceRawValue","values","plugin","identifiers","getFieldIdentifiers","ObjectFieldIndex","CmsEntryOpenSearchFieldIndex"],"mappings":";;AAyBA,MAAMA;IAGK,QAAQ,EACXC,KAAK,EACLC,KAAK,EACL,OAAOC,YAAY,EACnB,UAAUC,eAAe,EACzBC,aAAa,EACsB,EAAwC;QAC3E,IAAI,CAACF,cACD,OAAO;YAAE,OAAO;QAAK;QAGzB,MAAMG,SAAUJ,MAAM,QAAQ,EAAE,UAAU,EAAE;QAE5C,IAAIA,MAAM,IAAI,EAAE;YACZ,MAAMK,SAA4E;gBAC9E,OAAO,EAAE;gBACT,UAAU,EAAE;YAChB;YACA,IAAK,MAAMC,OAAOL,aAAc;gBAC5B,MAAM,EAAEM,KAAK,EAAEC,QAAQ,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC;oBAC5C,OAAOP,YAAY,CAACK,IAAI;oBACxB,UAAUJ,eAAe,CAACI,IAAI;oBAC9BH;oBACAJ;oBACAK;gBACJ;gBAEAC,OAAO,KAAK,CAAC,IAAI,CAACE;gBAClBF,OAAO,QAAQ,CAAC,IAAI,CAACG;YACzB;YAEA,OAAO;gBACH,OAAOH,OAAO,KAAK,CAAC,MAAM,GAAG,IAAIA,OAAO,KAAK,GAAGI;gBAChD,UAAUJ,OAAO,QAAQ,CAAC,MAAM,GAAG,IAAIA,OAAO,QAAQ,GAAGI;YAC7D;QACJ;QAEA,OAAO,IAAI,CAAC,cAAc,CAAC;YACvB,OAAOR;YACP,UAAUC;YACVC;YACAJ;YACAK;QACJ;IACJ;IAEO,UAAU,EACbJ,KAAK,EACLO,KAAK,EACLC,QAAQ,EACRT,KAAK,EACLI,aAAa,EACwB,EAAO;QAC5C,IAAI,CAACI,OACD,OAAO;QAGX,MAAMH,SAASJ,MAAM,QAAQ,EAAE,UAAU,EAAE;QAE3C,IAAIA,MAAM,IAAI,EAAE;YACZ,MAAMU,SAASH,SAASC,YAAY,EAAE;YAEtC,OAAOE,OAAO,GAAG,CAAC,CAACC,GAAQC,QACvB,IAAI,CAAC,gBAAgB,CAAC;oBAClB,OAAOL,QAAQA,KAAK,CAACK,MAAM,IAAI,CAAC,IAAI,CAAC;oBACrC,UAAUJ,WAAWA,QAAQ,CAACI,MAAM,IAAI,CAAC,IAAI,CAAC;oBAC9CT;oBACAJ;oBACAK;gBACJ;QAER;QAEA,OAAO,IAAI,CAAC,gBAAgB,CAAC;YACzBG;YACAC;YACAL;YACAJ;YACAK;QACJ;IACJ;IAEQ,eAAeS,MAA4B,EAAgB;QAC/D,MAAM,EACFT,MAAM,EACN,OAAOU,WAAW,EAClB,UAAUC,cAAc,EACxBZ,aAAa,EACbJ,KAAK,EACR,GAAGc;QAEJ,OAAOT,OAAO,MAAM,CAChB,CAACY,QAAQhB;YACL,MAAMiB,SAASd,cAAcH,MAAM,IAAI;YAEvC,MAAMkB,cAAcC,oBAAoBL,aAAaC,gBAAgBf;YACrE,IAAI,CAACkB,aACD,OAAOF;YAGX,MAAM,EAAET,KAAK,EAAEC,QAAQ,EAAE,GAAGS,OAAO,OAAO,CAAC;gBACvClB;gBACAC;gBACA,OAAOc,WAAW,CACdI,YAAY,eAAe,IAAIA,YAAY,kBAAkB,CAChE;gBACD,UACIH,cAAc,CACVG,YAAY,kBAAkB,IAAIA,YAAY,eAAe,CAChE;gBACLf;YACJ;YAEA,IAAII,AAAUE,WAAVF,OACAS,OAAO,KAAK,CAACE,YAAY,eAAe,IAAIA,YAAY,kBAAkB,CAAC,GACvEX;YAER,IAAIC,AAAaC,WAAbD,UACAQ,OAAO,QAAQ,CAACE,YAAY,kBAAkB,IAAIA,YAAY,eAAe,CAAC,GAC1EV;YAGR,OAAOQ;QACX,GACA;YAAE,OAAO,CAAC;YAAG,UAAU,CAAC;QAAE;IAElC;;aAhIgB,SAAS,GAAG;aAkIpB,gBAAgB,GAAG,CAACH;YACxB,MAAM,EACFT,MAAM,EACN,OAAOU,WAAW,EAClB,UAAUC,cAAc,EACxBZ,aAAa,EACbJ,KAAK,EACR,GAAGc;YAEJ,OAAOT,OAAO,MAAM,CAAsB,CAACY,QAAQhB;gBAC/C,MAAMiB,SAASd,cAAcH,MAAM,IAAI;gBAEvC,MAAMkB,cAAcC,oBAAoBL,aAAaC,gBAAgBf;gBACrE,IAAI,CAACkB,aACD,OAAOF;gBAGX,MAAMT,QAAQU,OAAO,SAAS,CAAC;oBAC3BlB;oBACAC;oBACA,OAAOc,WAAW,CAACI,YAAY,eAAe,IAAIA,YAAY,kBAAkB,CAAC;oBACjF,UAAUH,iBACJA,cAAc,CAACG,YAAY,kBAAkB,IAAIA,YAAY,eAAe,CAAC,GAC7E;oBACNf;gBACJ;gBAEA,IAAII,AAAUE,WAAVF,OACAS,MAAM,CAACE,YAAY,eAAe,IAAIA,YAAY,kBAAkB,CAAC,GAAGX;gBAG5E,OAAOS;YACX,GAAG,CAAC;QACR;;AACJ;AAEO,MAAMI,mBAAmBC,6BAA6B,oBAAoB,CAAC;IAC9E,gBAAgBvB;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
declare class RichTextFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
3
|
+
readonly fieldType = "rich-text";
|
|
4
|
+
toIndex({ value }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
5
|
+
fromIndex({ rawValue }: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
6
|
+
}
|
|
7
|
+
export declare const RichTextFieldIndex: typeof RichTextFieldIndexImpl & {
|
|
8
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
9
|
+
};
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
class RichTextFieldIndexImpl {
|
|
3
|
+
toIndex({ value }) {
|
|
4
|
+
return {
|
|
5
|
+
rawValue: value
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
fromIndex({ rawValue }) {
|
|
9
|
+
return rawValue;
|
|
10
|
+
}
|
|
11
|
+
constructor(){
|
|
12
|
+
this.fieldType = "rich-text";
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
const RichTextFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
16
|
+
implementation: RichTextFieldIndexImpl,
|
|
17
|
+
dependencies: []
|
|
18
|
+
});
|
|
19
|
+
export { RichTextFieldIndex };
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=RichTextFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.ts"],"sourcesContent":["import { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\n\nclass RichTextFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = \"rich-text\";\n\n public toIndex({\n value\n }: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue {\n return {\n rawValue: value\n };\n }\n\n public fromIndex({ rawValue }: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n return rawValue;\n }\n}\n\nexport const RichTextFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: RichTextFieldIndexImpl,\n dependencies: []\n});\n"],"names":["RichTextFieldIndexImpl","value","rawValue","RichTextFieldIndex","CmsEntryOpenSearchFieldIndex"],"mappings":";AAEA,MAAMA;IAGK,QAAQ,EACXC,KAAK,EAC8B,EAAwC;QAC3E,OAAO;YACH,UAAUA;QACd;IACJ;IAEO,UAAU,EAAEC,QAAQ,EAA0C,EAAO;QACxE,OAAOA;IACX;;aAZgB,SAAS,GAAG;;AAahC;AAEO,MAAMC,qBAAqBC,6BAA6B,oBAAoB,CAAC;IAChF,gBAAgBJ;IAChB,cAAc,EAAE;AACpB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
import { CmsModelFieldToGraphQLRegistry } from "@webiny/api-headless-cms/exports/api/cms/graphql.js";
|
|
3
|
+
import { TextFieldTypes } from "@webiny/api-headless-cms/features/modelBuilder/index.js";
|
|
4
|
+
declare class TextCompressedFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {
|
|
5
|
+
private readonly fieldRegistry;
|
|
6
|
+
readonly fieldType = TextFieldTypes.COMPRESSED;
|
|
7
|
+
constructor(fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface);
|
|
8
|
+
toIndex(params: CmsEntryOpenSearchFieldIndex.ToIndex): CmsEntryOpenSearchFieldIndex.ToValue;
|
|
9
|
+
fromIndex(params: CmsEntryOpenSearchFieldIndex.FromIndex): any;
|
|
10
|
+
private isSearchable;
|
|
11
|
+
}
|
|
12
|
+
export declare const TextCompressedFieldIndex: typeof TextCompressedFieldIndexImpl & {
|
|
13
|
+
__abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFieldIndex.js").ICmsEntryOpenSearchFieldIndex>;
|
|
14
|
+
};
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndex } from "../abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
2
|
+
import { CmsModelFieldToGraphQLRegistry } from "@webiny/api-headless-cms/exports/api/cms/graphql.js";
|
|
3
|
+
import { TextFieldTypes } from "@webiny/api-headless-cms/features/modelBuilder/index.js";
|
|
4
|
+
class TextCompressedFieldIndexImpl {
|
|
5
|
+
constructor(fieldRegistry){
|
|
6
|
+
this.fieldRegistry = fieldRegistry;
|
|
7
|
+
this.fieldType = TextFieldTypes.COMPRESSED;
|
|
8
|
+
}
|
|
9
|
+
toIndex(params) {
|
|
10
|
+
const { field, value } = params;
|
|
11
|
+
const isSearchable = this.isSearchable(field);
|
|
12
|
+
if (isSearchable) return {
|
|
13
|
+
value
|
|
14
|
+
};
|
|
15
|
+
return {
|
|
16
|
+
rawValue: value
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
fromIndex(params) {
|
|
20
|
+
const { field, value, rawValue } = params;
|
|
21
|
+
const isSearchable = this.isSearchable(field);
|
|
22
|
+
if (isSearchable) return void 0 === value ? rawValue : value;
|
|
23
|
+
return void 0 === rawValue ? value : rawValue;
|
|
24
|
+
}
|
|
25
|
+
isSearchable(field) {
|
|
26
|
+
const fieldType = this.fieldRegistry.get(field.type);
|
|
27
|
+
if (!fieldType?.isSearchable) return false;
|
|
28
|
+
if (field.settings?.disableFullTextSearch === true) return false;
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const TextCompressedFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({
|
|
33
|
+
implementation: TextCompressedFieldIndexImpl,
|
|
34
|
+
dependencies: [
|
|
35
|
+
CmsModelFieldToGraphQLRegistry
|
|
36
|
+
]
|
|
37
|
+
});
|
|
38
|
+
export { TextCompressedFieldIndex };
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=TextCompressedFieldIndex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.ts"],"sourcesContent":["import { CmsEntryOpenSearchFieldIndex } from \"../abstractions/CmsEntryOpenSearchFieldIndex.js\";\nimport type { CmsModelField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { CmsModelFieldToGraphQLRegistry } from \"@webiny/api-headless-cms/exports/api/cms/graphql.js\";\nimport { TextFieldTypes } from \"@webiny/api-headless-cms/features/modelBuilder/index.js\";\n\nclass TextCompressedFieldIndexImpl implements CmsEntryOpenSearchFieldIndex.Interface {\n public readonly fieldType = TextFieldTypes.COMPRESSED;\n\n public constructor(private readonly fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface) {}\n\n public toIndex(\n params: CmsEntryOpenSearchFieldIndex.ToIndex\n ): CmsEntryOpenSearchFieldIndex.ToValue {\n const { field, value } = params;\n const isSearchable = this.isSearchable(field);\n\n if (isSearchable) {\n return { value };\n }\n\n return {\n rawValue: value\n };\n }\n\n public fromIndex(params: CmsEntryOpenSearchFieldIndex.FromIndex): any {\n const { field, value, rawValue } = params;\n const isSearchable = this.isSearchable(field);\n\n if (isSearchable) {\n return value === undefined ? rawValue : value;\n }\n return rawValue === undefined ? value : rawValue;\n }\n\n private isSearchable(field: CmsModelField): boolean {\n const fieldType = this.fieldRegistry.get(field.type);\n if (!fieldType?.isSearchable) {\n return false;\n } else if (field.settings?.disableFullTextSearch === true) {\n return false;\n }\n return true;\n }\n}\n\nexport const TextCompressedFieldIndex = CmsEntryOpenSearchFieldIndex.createImplementation({\n implementation: TextCompressedFieldIndexImpl,\n dependencies: [CmsModelFieldToGraphQLRegistry]\n});\n"],"names":["TextCompressedFieldIndexImpl","fieldRegistry","TextFieldTypes","params","field","value","isSearchable","rawValue","undefined","fieldType","TextCompressedFieldIndex","CmsEntryOpenSearchFieldIndex","CmsModelFieldToGraphQLRegistry"],"mappings":";;;AAKA,MAAMA;IAGF,YAAoCC,aAAuD,CAAE;aAAzDA,aAAa,GAAbA;aAFpB,SAAS,GAAGC,eAAe,UAAU;IAEyC;IAEvF,QACHC,MAA4C,EACR;QACpC,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGF;QACzB,MAAMG,eAAe,IAAI,CAAC,YAAY,CAACF;QAEvC,IAAIE,cACA,OAAO;YAAED;QAAM;QAGnB,OAAO;YACH,UAAUA;QACd;IACJ;IAEO,UAAUF,MAA8C,EAAO;QAClE,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAEE,QAAQ,EAAE,GAAGJ;QACnC,MAAMG,eAAe,IAAI,CAAC,YAAY,CAACF;QAEvC,IAAIE,cACA,OAAOD,AAAUG,WAAVH,QAAsBE,WAAWF;QAE5C,OAAOE,AAAaC,WAAbD,WAAyBF,QAAQE;IAC5C;IAEQ,aAAaH,KAAoB,EAAW;QAChD,MAAMK,YAAY,IAAI,CAAC,aAAa,CAAC,GAAG,CAACL,MAAM,IAAI;QACnD,IAAI,CAACK,WAAW,cACZ,OAAO;QACJ,IAAIL,MAAM,QAAQ,EAAE,0BAA0B,MACjD,OAAO;QAEX,OAAO;IACX;AACJ;AAEO,MAAMM,2BAA2BC,6BAA6B,oBAAoB,CAAC;IACtF,gBAAgBX;IAChB,cAAc;QAACY;KAA+B;AAClD"}
|