@webiny/api-headless-cms-utils-os 6.6.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +11 -0
- package/configurations.d.ts +19 -0
- package/configurations.js +31 -0
- package/configurations.js.map +1 -0
- package/exports/api/cms/opensearch.d.ts +17 -0
- package/exports/api/cms/opensearch.js +17 -0
- package/features/CmsEntryOpenSearchBodyBuilder/CmsEntryOpenSearchBodyBuilder.d.ts +30 -0
- package/features/CmsEntryOpenSearchBodyBuilder/CmsEntryOpenSearchBodyBuilder.js +144 -0
- package/features/CmsEntryOpenSearchBodyBuilder/CmsEntryOpenSearchBodyBuilder.js.map +1 -0
- package/features/CmsEntryOpenSearchBodyBuilder/abstractions.d.ts +18 -0
- package/features/CmsEntryOpenSearchBodyBuilder/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchBodyBuilder/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchBodyBuilder/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchBodyBuilder/feature.js +11 -0
- package/features/CmsEntryOpenSearchBodyBuilder/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchBodyBuilder/index.d.ts +2 -0
- package/features/CmsEntryOpenSearchBodyBuilder/index.js +2 -0
- package/features/CmsEntryOpenSearchBodyBuilder/sort.d.ts +17 -0
- package/features/CmsEntryOpenSearchBodyBuilder/sort.js +76 -0
- package/features/CmsEntryOpenSearchBodyBuilder/sort.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/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.d.ts +17 -0
- package/features/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.js +119 -0
- package/features/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.js.map +1 -0
- package/features/CmsEntryOpenSearchExecFiltering/abstractions.d.ts +17 -0
- package/features/CmsEntryOpenSearchExecFiltering/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchExecFiltering/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchExecFiltering/applyFiltering.d.ts +11 -0
- package/features/CmsEntryOpenSearchExecFiltering/applyFiltering.js +31 -0
- package/features/CmsEntryOpenSearchExecFiltering/applyFiltering.js.map +1 -0
- package/features/CmsEntryOpenSearchExecFiltering/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchExecFiltering/feature.js +11 -0
- package/features/CmsEntryOpenSearchExecFiltering/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchExecFiltering/index.d.ts +2 -0
- package/features/CmsEntryOpenSearchExecFiltering/index.js +2 -0
- package/features/CmsEntryOpenSearchExecFiltering/populated.d.ts +2 -0
- package/features/CmsEntryOpenSearchExecFiltering/populated.js +12 -0
- package/features/CmsEntryOpenSearchExecFiltering/populated.js.map +1 -0
- package/features/CmsEntryOpenSearchExecFiltering/values.d.ts +2 -0
- package/features/CmsEntryOpenSearchExecFiltering/values.js +15 -0
- package/features/CmsEntryOpenSearchExecFiltering/values.js.map +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/CmsEntryOpenSearchFieldPathFactory/CmsEntryOpenSearchFieldPathFactory.d.ts +11 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/CmsEntryOpenSearchFieldPathFactory.js +40 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/CmsEntryOpenSearchFieldPathFactory.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/abstractions.d.ts +21 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/feature.js +11 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/index.d.ts +2 -0
- package/features/CmsEntryOpenSearchFieldPathFactory/index.js +2 -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/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.d.ts +13 -0
- package/features/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.js +77 -0
- package/features/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateFromHandler.d.ts +11 -0
- package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateFromHandler.js +22 -0
- package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateFromHandler.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateHandler.d.ts +11 -0
- package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateHandler.js +22 -0
- package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateHandler.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexCreate/abstractions.d.ts +12 -0
- package/features/CmsEntryOpenSearchIndexCreate/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchIndexCreate/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexCreate/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchIndexCreate/feature.js +11 -0
- package/features/CmsEntryOpenSearchIndexCreate/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexCreate/index.d.ts +2 -0
- package/features/CmsEntryOpenSearchIndexCreate/index.js +2 -0
- package/features/CmsEntryOpenSearchIndexDelete/CmsEntryOpenSearchIndexDelete.d.ts +11 -0
- package/features/CmsEntryOpenSearchIndexDelete/CmsEntryOpenSearchIndexDelete.js +39 -0
- package/features/CmsEntryOpenSearchIndexDelete/CmsEntryOpenSearchIndexDelete.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexDelete/ModelAfterDeleteHandler.d.ts +11 -0
- package/features/CmsEntryOpenSearchIndexDelete/ModelAfterDeleteHandler.js +22 -0
- package/features/CmsEntryOpenSearchIndexDelete/ModelAfterDeleteHandler.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexDelete/abstractions.d.ts +12 -0
- package/features/CmsEntryOpenSearchIndexDelete/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchIndexDelete/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexDelete/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchIndexDelete/feature.js +11 -0
- package/features/CmsEntryOpenSearchIndexDelete/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchIndexDelete/index.d.ts +2 -0
- package/features/CmsEntryOpenSearchIndexDelete/index.js +2 -0
- package/features/CmsEntryOpenSearchOperatorList/CmsEntryOpenSearchOperatorList.d.ts +12 -0
- package/features/CmsEntryOpenSearchOperatorList/CmsEntryOpenSearchOperatorList.js +22 -0
- package/features/CmsEntryOpenSearchOperatorList/CmsEntryOpenSearchOperatorList.js.map +1 -0
- package/features/CmsEntryOpenSearchOperatorList/abstractions.d.ts +8 -0
- package/features/CmsEntryOpenSearchOperatorList/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchOperatorList/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchOperatorList/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchOperatorList/feature.js +11 -0
- package/features/CmsEntryOpenSearchOperatorList/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchOperatorList/index.d.ts +2 -0
- package/features/CmsEntryOpenSearchOperatorList/index.js +2 -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/CmsEntryOpenSearchUtilsFeature.d.ts +4 -0
- package/features/CmsEntryOpenSearchUtilsFeature.js +37 -0
- package/features/CmsEntryOpenSearchUtilsFeature.js.map +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/CmsEntryOpenSearchValueTransformer/CmsEntryOpenSearchValueTransformer.d.ts +11 -0
- package/features/CmsEntryOpenSearchValueTransformer/CmsEntryOpenSearchValueTransformer.js +25 -0
- package/features/CmsEntryOpenSearchValueTransformer/CmsEntryOpenSearchValueTransformer.js.map +1 -0
- package/features/CmsEntryOpenSearchValueTransformer/abstractions.d.ts +13 -0
- package/features/CmsEntryOpenSearchValueTransformer/abstractions.js +5 -0
- package/features/CmsEntryOpenSearchValueTransformer/abstractions.js.map +1 -0
- package/features/CmsEntryOpenSearchValueTransformer/feature.d.ts +4 -0
- package/features/CmsEntryOpenSearchValueTransformer/feature.js +11 -0
- package/features/CmsEntryOpenSearchValueTransformer/feature.js.map +1 -0
- package/features/CmsEntryOpenSearchValueTransformer/index.d.ts +2 -0
- package/features/CmsEntryOpenSearchValueTransformer/index.js +2 -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 +20 -0
- package/helpers/entryIndexHelpers.js +80 -0
- package/helpers/entryIndexHelpers.js.map +1 -0
- 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 -0
- package/helpers/index.js +2 -0
- package/index.d.ts +1 -0
- package/index.js +1 -0
- 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/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/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/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/types.d.ts +31 -0
- package/operations/entry/elasticsearch/types.js +0 -0
- 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/transformEntryToIndex.d.ts +10 -0
- package/operations/entry/transformations/transformEntryToIndex.js +20 -0
- package/operations/entry/transformations/transformEntryToIndex.js.map +1 -0
- package/package.json +33 -0
- package/types.d.ts +5 -0
- package/types.js +0 -0
- package/values/NoValueContainer.d.ts +5 -0
- package/values/NoValueContainer.js +11 -0
- package/values/NoValueContainer.js.map +1 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import error from "@webiny/error";
|
|
2
|
+
import { parseWhereKey } from "@webiny/api-opensearch";
|
|
3
|
+
import { createBaseQuery } from "../../operations/entry/elasticsearch/initialQuery.js";
|
|
4
|
+
import { assignMinimumShouldMatchToQuery } from "../../operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js";
|
|
5
|
+
import { CmsEntryOpenSearchFilterRegistry } from "../CmsEntryOpenSearchFilter/index.js";
|
|
6
|
+
import { CmsEntryOpenSearchOperatorList } from "../CmsEntryOpenSearchOperatorList/index.js";
|
|
7
|
+
import { CmsEntryOpenSearchValueTransformer } from "../CmsEntryOpenSearchValueTransformer/index.js";
|
|
8
|
+
import { CmsEntryOpenSearchFieldPathFactory } from "../CmsEntryOpenSearchFieldPathFactory/index.js";
|
|
9
|
+
import { CmsEntryOpenSearchExecFiltering } from "./abstractions.js";
|
|
10
|
+
import { getWhereValues } from "./values.js";
|
|
11
|
+
import { getPopulated } from "./populated.js";
|
|
12
|
+
import { createApplyFiltering } from "./applyFiltering.js";
|
|
13
|
+
class CmsEntryOpenSearchExecFilteringImpl {
|
|
14
|
+
constructor(operatorList, valueTransformer, fieldPathFactory, filterRegistry){
|
|
15
|
+
this.operatorList = operatorList;
|
|
16
|
+
this.valueTransformer = valueTransformer;
|
|
17
|
+
this.fieldPathFactory = fieldPathFactory;
|
|
18
|
+
this.filterRegistry = filterRegistry;
|
|
19
|
+
}
|
|
20
|
+
execute(params) {
|
|
21
|
+
const { model, fields, where, query } = params;
|
|
22
|
+
const operators = this.operatorList.getAll();
|
|
23
|
+
const applyFiltering = createApplyFiltering({
|
|
24
|
+
operators,
|
|
25
|
+
valueTransformer: this.valueTransformer,
|
|
26
|
+
fieldPathFactory: this.fieldPathFactory
|
|
27
|
+
});
|
|
28
|
+
const getFilter = (type)=>this.filterRegistry.get(type);
|
|
29
|
+
const execFiltering = (params)=>{
|
|
30
|
+
const { where: initialWhere, query, isValues = false } = params;
|
|
31
|
+
const keys = Object.keys(initialWhere);
|
|
32
|
+
if (0 === keys.length) return;
|
|
33
|
+
const where = structuredClone(initialWhere);
|
|
34
|
+
for(const key in where){
|
|
35
|
+
const value = where[key];
|
|
36
|
+
if (void 0 === value) continue;
|
|
37
|
+
if ("AND" === key) {
|
|
38
|
+
const childWhereList = getWhereValues(value, "AND");
|
|
39
|
+
const childQuery = createBaseQuery();
|
|
40
|
+
for (const childWhere of childWhereList)execFiltering({
|
|
41
|
+
query: childQuery,
|
|
42
|
+
where: childWhere,
|
|
43
|
+
isValues
|
|
44
|
+
});
|
|
45
|
+
const childQueryBool = getPopulated(childQuery);
|
|
46
|
+
if (0 === Object.keys(childQueryBool).length) continue;
|
|
47
|
+
query.filter.push({
|
|
48
|
+
bool: childQueryBool
|
|
49
|
+
});
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
if ("OR" === key) {
|
|
53
|
+
const childWhereList = getWhereValues(value, "OR");
|
|
54
|
+
const should = [];
|
|
55
|
+
for (const childWhere of childWhereList){
|
|
56
|
+
const childQuery = createBaseQuery();
|
|
57
|
+
execFiltering({
|
|
58
|
+
query: childQuery,
|
|
59
|
+
where: childWhere,
|
|
60
|
+
isValues
|
|
61
|
+
});
|
|
62
|
+
const childQueryBool = getPopulated(childQuery);
|
|
63
|
+
if (0 !== Object.keys(childQueryBool).length) should.push({
|
|
64
|
+
bool: childQueryBool
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
if (0 === should.length) continue;
|
|
68
|
+
query.should.push(...should);
|
|
69
|
+
assignMinimumShouldMatchToQuery({
|
|
70
|
+
query
|
|
71
|
+
});
|
|
72
|
+
continue;
|
|
73
|
+
} else if ("values" === key) {
|
|
74
|
+
execFiltering({
|
|
75
|
+
query,
|
|
76
|
+
where: where[key],
|
|
77
|
+
isValues: true
|
|
78
|
+
});
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
const { field: whereFieldId, operator } = parseWhereKey(key);
|
|
82
|
+
let fieldId = isValues ? `values.${whereFieldId}` : whereFieldId;
|
|
83
|
+
const cmsModelField = model.fields.find((f)=>f.fieldId === fieldId);
|
|
84
|
+
if (cmsModelField || fields[fieldId]) {
|
|
85
|
+
if (cmsModelField) fieldId = cmsModelField.fieldId;
|
|
86
|
+
} else throw new error(`There is no CMS Model Field "${fieldId}".`);
|
|
87
|
+
const field = fields[fieldId];
|
|
88
|
+
if (!field) throw new error(`There is no field "${fieldId}".`, "EXEC_FILTERING_ERROR");
|
|
89
|
+
const filter = getFilter(field.type);
|
|
90
|
+
filter.exec({
|
|
91
|
+
applyFiltering,
|
|
92
|
+
getFilter,
|
|
93
|
+
key,
|
|
94
|
+
value,
|
|
95
|
+
operator,
|
|
96
|
+
field,
|
|
97
|
+
fields,
|
|
98
|
+
query
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
execFiltering({
|
|
103
|
+
where,
|
|
104
|
+
query
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
const CmsEntryOpenSearchExecFiltering_CmsEntryOpenSearchExecFiltering = CmsEntryOpenSearchExecFiltering.createImplementation({
|
|
109
|
+
implementation: CmsEntryOpenSearchExecFilteringImpl,
|
|
110
|
+
dependencies: [
|
|
111
|
+
CmsEntryOpenSearchOperatorList,
|
|
112
|
+
CmsEntryOpenSearchValueTransformer,
|
|
113
|
+
CmsEntryOpenSearchFieldPathFactory,
|
|
114
|
+
CmsEntryOpenSearchFilterRegistry
|
|
115
|
+
]
|
|
116
|
+
});
|
|
117
|
+
export { CmsEntryOpenSearchExecFiltering_CmsEntryOpenSearchExecFiltering as CmsEntryOpenSearchExecFiltering };
|
|
118
|
+
|
|
119
|
+
//# sourceMappingURL=CmsEntryOpenSearchExecFiltering.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.js","sources":["../../../src/features/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type { CmsEntryListWhere } from \"@webiny/api-headless-cms/types/index.js\";\nimport type { QueryDslQueryContainer as Query } from \"@webiny/api-opensearch/types.js\";\nimport { parseWhereKey } from \"@webiny/api-opensearch\";\nimport { createBaseQuery } from \"~/operations/entry/elasticsearch/initialQuery.js\";\nimport { assignMinimumShouldMatchToQuery } from \"~/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js\";\nimport { CmsEntryOpenSearchFilterRegistry } from \"~/features/CmsEntryOpenSearchFilter/index.js\";\nimport { CmsEntryOpenSearchOperatorList } from \"~/features/CmsEntryOpenSearchOperatorList/index.js\";\nimport { CmsEntryOpenSearchValueTransformer } from \"~/features/CmsEntryOpenSearchValueTransformer/index.js\";\nimport { CmsEntryOpenSearchFieldPathFactory } from \"~/features/CmsEntryOpenSearchFieldPathFactory/index.js\";\nimport { CmsEntryOpenSearchExecFiltering as CmsEntryOpenSearchExecFilteringAbstraction } from \"./abstractions.js\";\nimport { getWhereValues } from \"./values.js\";\nimport { getPopulated } from \"./populated.js\";\nimport { createApplyFiltering } from \"./applyFiltering.js\";\n\ninterface InternalExecParams {\n where: CmsEntryListWhere;\n query: CmsEntryOpenSearchExecFilteringAbstraction.Params[\"query\"];\n isValues?: boolean;\n}\n\nclass CmsEntryOpenSearchExecFilteringImpl\n implements CmsEntryOpenSearchExecFilteringAbstraction.Interface\n{\n public constructor(\n private readonly operatorList: CmsEntryOpenSearchOperatorList.Interface,\n private readonly valueTransformer: CmsEntryOpenSearchValueTransformer.Interface,\n private readonly fieldPathFactory: CmsEntryOpenSearchFieldPathFactory.Interface,\n private readonly filterRegistry: CmsEntryOpenSearchFilterRegistry.Interface\n ) {}\n\n public execute(params: CmsEntryOpenSearchExecFilteringAbstraction.Params): void {\n const { model, fields, where, query } = params;\n\n const operators = this.operatorList.getAll();\n\n const applyFiltering = createApplyFiltering({\n operators,\n valueTransformer: this.valueTransformer,\n fieldPathFactory: this.fieldPathFactory\n });\n\n const getFilter = (type: string) => {\n return this.filterRegistry.get(type);\n };\n\n const execFiltering = (params: InternalExecParams) => {\n const { where: initialWhere, query, isValues = false } = params;\n const keys = Object.keys(initialWhere);\n if (keys.length === 0) {\n return;\n }\n const where = structuredClone(initialWhere);\n\n for (const key in where) {\n const value = where[key as keyof typeof where];\n if (value === undefined) {\n continue;\n } else if (key === \"AND\") {\n const childWhereList = getWhereValues(value, \"AND\");\n const childQuery = createBaseQuery();\n for (const childWhere of childWhereList) {\n execFiltering({ query: childQuery, where: childWhere, isValues });\n }\n const childQueryBool = getPopulated(childQuery);\n if (Object.keys(childQueryBool).length === 0) {\n continue;\n }\n query.filter.push({ bool: childQueryBool });\n continue;\n } else if (key === \"OR\") {\n const childWhereList = getWhereValues(value, \"OR\");\n const should: Query[] = [];\n for (const childWhere of childWhereList) {\n const childQuery = createBaseQuery();\n execFiltering({ query: childQuery, where: childWhere, isValues });\n const childQueryBool = getPopulated(childQuery);\n if (Object.keys(childQueryBool).length === 0) {\n continue;\n }\n should.push({ bool: childQueryBool });\n }\n if (should.length === 0) {\n continue;\n }\n query.should.push(...should);\n assignMinimumShouldMatchToQuery({ query });\n continue;\n } else if (key === \"values\") {\n execFiltering({\n query,\n where: where[key] as CmsEntryListWhere,\n isValues: true\n });\n continue;\n }\n const { field: whereFieldId, operator } = parseWhereKey(key);\n let fieldId: string = isValues ? `values.${whereFieldId}` : whereFieldId;\n\n const cmsModelField = model.fields.find(f => f.fieldId === fieldId);\n if (!cmsModelField && !fields[fieldId]) {\n throw new WebinyError(`There is no CMS Model Field \"${fieldId}\".`);\n } else if (cmsModelField) {\n fieldId = cmsModelField.fieldId;\n }\n\n const field = fields[fieldId];\n if (!field) {\n throw new WebinyError(\n `There is no field \"${fieldId}\".`,\n \"EXEC_FILTERING_ERROR\"\n );\n }\n const filter = getFilter(field.type);\n\n filter.exec({\n applyFiltering,\n getFilter,\n key,\n value,\n operator,\n field,\n fields,\n query\n });\n }\n };\n\n execFiltering({ where, query });\n }\n}\n\nexport const CmsEntryOpenSearchExecFiltering =\n CmsEntryOpenSearchExecFilteringAbstraction.createImplementation({\n implementation: CmsEntryOpenSearchExecFilteringImpl,\n dependencies: [\n CmsEntryOpenSearchOperatorList,\n CmsEntryOpenSearchValueTransformer,\n CmsEntryOpenSearchFieldPathFactory,\n CmsEntryOpenSearchFilterRegistry\n ]\n });\n"],"names":["CmsEntryOpenSearchExecFilteringImpl","operatorList","valueTransformer","fieldPathFactory","filterRegistry","params","model","fields","where","query","operators","applyFiltering","createApplyFiltering","getFilter","type","execFiltering","initialWhere","isValues","keys","Object","structuredClone","key","value","undefined","childWhereList","getWhereValues","childQuery","createBaseQuery","childWhere","childQueryBool","getPopulated","should","assignMinimumShouldMatchToQuery","whereFieldId","operator","parseWhereKey","fieldId","cmsModelField","f","WebinyError","field","filter","CmsEntryOpenSearchExecFiltering","CmsEntryOpenSearchExecFilteringAbstraction","CmsEntryOpenSearchOperatorList","CmsEntryOpenSearchValueTransformer","CmsEntryOpenSearchFieldPathFactory","CmsEntryOpenSearchFilterRegistry"],"mappings":";;;;;;;;;;;;AAqBA,MAAMA;IAGF,YACqBC,YAAsD,EACtDC,gBAA8D,EAC9DC,gBAA8D,EAC9DC,cAA0D,CAC7E;aAJmBH,YAAY,GAAZA;aACAC,gBAAgB,GAAhBA;aACAC,gBAAgB,GAAhBA;aACAC,cAAc,GAAdA;IAClB;IAEI,QAAQC,MAAyD,EAAQ;QAC5E,MAAM,EAAEC,KAAK,EAAEC,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGJ;QAExC,MAAMK,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM;QAE1C,MAAMC,iBAAiBC,qBAAqB;YACxCF;YACA,kBAAkB,IAAI,CAAC,gBAAgB;YACvC,kBAAkB,IAAI,CAAC,gBAAgB;QAC3C;QAEA,MAAMG,YAAY,CAACC,OACR,IAAI,CAAC,cAAc,CAAC,GAAG,CAACA;QAGnC,MAAMC,gBAAgB,CAACV;YACnB,MAAM,EAAE,OAAOW,YAAY,EAAEP,KAAK,EAAEQ,WAAW,KAAK,EAAE,GAAGZ;YACzD,MAAMa,OAAOC,OAAO,IAAI,CAACH;YACzB,IAAIE,AAAgB,MAAhBA,KAAK,MAAM,EACX;YAEJ,MAAMV,QAAQY,gBAAgBJ;YAE9B,IAAK,MAAMK,OAAOb,MAAO;gBACrB,MAAMc,QAAQd,KAAK,CAACa,IAA0B;gBAC9C,IAAIC,AAAUC,WAAVD,OACA;gBACG,IAAID,AAAQ,UAARA,KAAe;oBACtB,MAAMG,iBAAiBC,eAAeH,OAAO;oBAC7C,MAAMI,aAAaC;oBACnB,KAAK,MAAMC,cAAcJ,eACrBT,cAAc;wBAAE,OAAOW;wBAAY,OAAOE;wBAAYX;oBAAS;oBAEnE,MAAMY,iBAAiBC,aAAaJ;oBACpC,IAAIP,AAAuC,MAAvCA,OAAO,IAAI,CAACU,gBAAgB,MAAM,EAClC;oBAEJpB,MAAM,MAAM,CAAC,IAAI,CAAC;wBAAE,MAAMoB;oBAAe;oBACzC;gBACJ;gBAAO,IAAIR,AAAQ,SAARA,KAAc;oBACrB,MAAMG,iBAAiBC,eAAeH,OAAO;oBAC7C,MAAMS,SAAkB,EAAE;oBAC1B,KAAK,MAAMH,cAAcJ,eAAgB;wBACrC,MAAME,aAAaC;wBACnBZ,cAAc;4BAAE,OAAOW;4BAAY,OAAOE;4BAAYX;wBAAS;wBAC/D,MAAMY,iBAAiBC,aAAaJ;wBACpC,IAAIP,AAAuC,MAAvCA,OAAO,IAAI,CAACU,gBAAgB,MAAM,EAGtCE,OAAO,IAAI,CAAC;4BAAE,MAAMF;wBAAe;oBACvC;oBACA,IAAIE,AAAkB,MAAlBA,OAAO,MAAM,EACb;oBAEJtB,MAAM,MAAM,CAAC,IAAI,IAAIsB;oBACrBC,gCAAgC;wBAAEvB;oBAAM;oBACxC;gBACJ,OAAO,IAAIY,AAAQ,aAARA,KAAkB;oBACzBN,cAAc;wBACVN;wBACA,OAAOD,KAAK,CAACa,IAAI;wBACjB,UAAU;oBACd;oBACA;gBACJ;gBACA,MAAM,EAAE,OAAOY,YAAY,EAAEC,QAAQ,EAAE,GAAGC,cAAcd;gBACxD,IAAIe,UAAkBnB,WAAW,CAAC,OAAO,EAAEgB,cAAc,GAAGA;gBAE5D,MAAMI,gBAAgB/B,MAAM,MAAM,CAAC,IAAI,CAACgC,CAAAA,IAAKA,EAAE,OAAO,KAAKF;gBAC3D,IAAI,AAACC,iBAAkB9B,MAAM,CAAC6B,QAAQ,EAE/B;oBAAA,IAAIC,eACPD,UAAUC,cAAc,OAAO;gBACnC,OAHI,MAAM,IAAIE,MAAY,CAAC,6BAA6B,EAAEH,QAAQ,EAAE,CAAC;gBAKrE,MAAMI,QAAQjC,MAAM,CAAC6B,QAAQ;gBAC7B,IAAI,CAACI,OACD,MAAM,IAAID,MACN,CAAC,mBAAmB,EAAEH,QAAQ,EAAE,CAAC,EACjC;gBAGR,MAAMK,SAAS5B,UAAU2B,MAAM,IAAI;gBAEnCC,OAAO,IAAI,CAAC;oBACR9B;oBACAE;oBACAQ;oBACAC;oBACAY;oBACAM;oBACAjC;oBACAE;gBACJ;YACJ;QACJ;QAEAM,cAAc;YAAEP;YAAOC;QAAM;IACjC;AACJ;AAEO,MAAMiC,kEACTC,gCAAAA,oBAA+D,CAAC;IAC5D,gBAAgB3C;IAChB,cAAc;QACV4C;QACAC;QACAC;QACAC;KACH;AACL"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { CmsEntryListWhere, CmsModel } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
import type { OpenSearchBoolQueryConfig } from "@webiny/api-opensearch/types.js";
|
|
3
|
+
import type { ModelFields } from "../../operations/entry/elasticsearch/types.js";
|
|
4
|
+
export interface ICmsEntryOpenSearchExecFilteringParams {
|
|
5
|
+
model: CmsModel;
|
|
6
|
+
fields: ModelFields;
|
|
7
|
+
where: CmsEntryListWhere;
|
|
8
|
+
query: OpenSearchBoolQueryConfig;
|
|
9
|
+
}
|
|
10
|
+
export interface ICmsEntryOpenSearchExecFiltering {
|
|
11
|
+
execute(params: ICmsEntryOpenSearchExecFilteringParams): void;
|
|
12
|
+
}
|
|
13
|
+
export declare const CmsEntryOpenSearchExecFiltering: import("@webiny/di").Abstraction<ICmsEntryOpenSearchExecFiltering>;
|
|
14
|
+
export declare namespace CmsEntryOpenSearchExecFiltering {
|
|
15
|
+
type Interface = ICmsEntryOpenSearchExecFiltering;
|
|
16
|
+
type Params = ICmsEntryOpenSearchExecFilteringParams;
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchExecFiltering/abstractions.js","sources":["../../../src/features/CmsEntryOpenSearchExecFiltering/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsEntryListWhere, CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\nimport type { OpenSearchBoolQueryConfig } from \"@webiny/api-opensearch/types.js\";\nimport type { ModelFields } from \"~/operations/entry/elasticsearch/types.js\";\n\nexport interface ICmsEntryOpenSearchExecFilteringParams {\n model: CmsModel;\n fields: ModelFields;\n where: CmsEntryListWhere;\n query: OpenSearchBoolQueryConfig;\n}\n\nexport interface ICmsEntryOpenSearchExecFiltering {\n execute(params: ICmsEntryOpenSearchExecFilteringParams): void;\n}\n\nexport const CmsEntryOpenSearchExecFiltering = createAbstraction<ICmsEntryOpenSearchExecFiltering>(\n \"Cms/Entry/OpenSearch/ExecFiltering\"\n);\n\nexport namespace CmsEntryOpenSearchExecFiltering {\n export type Interface = ICmsEntryOpenSearchExecFiltering;\n export type Params = ICmsEntryOpenSearchExecFilteringParams;\n}\n"],"names":["CmsEntryOpenSearchExecFiltering","createAbstraction"],"mappings":";AAgBO,MAAMA,kCAAkCC,kBAC3C"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { OpenSearchQueryBuilderOperators } from "../../operations/entry/elasticsearch/types.js";
|
|
2
|
+
import type { CmsEntryOpenSearchFilter } from "../../features/CmsEntryOpenSearchFilter/index.js";
|
|
3
|
+
import type { CmsEntryOpenSearchValueTransformer } from "../../features/CmsEntryOpenSearchValueTransformer/index.js";
|
|
4
|
+
import type { CmsEntryOpenSearchFieldPathFactory } from "../../features/CmsEntryOpenSearchFieldPathFactory/index.js";
|
|
5
|
+
interface CreateParams {
|
|
6
|
+
operators: OpenSearchQueryBuilderOperators;
|
|
7
|
+
valueTransformer: CmsEntryOpenSearchValueTransformer.Interface;
|
|
8
|
+
fieldPathFactory: CmsEntryOpenSearchFieldPathFactory.Interface;
|
|
9
|
+
}
|
|
10
|
+
export declare const createApplyFiltering: ({ operators, valueTransformer, fieldPathFactory }: CreateParams) => CmsEntryOpenSearchFilter.ApplyFiltering;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import error from "@webiny/error";
|
|
2
|
+
import { hasKeyword } from "../../operations/entry/elasticsearch/keyword.js";
|
|
3
|
+
const createApplyFiltering = ({ operators, valueTransformer, fieldPathFactory })=>(params)=>{
|
|
4
|
+
const { key, value: initialValue, query, operator, field } = params;
|
|
5
|
+
const plugin = operators[operator];
|
|
6
|
+
if (!plugin) throw new error(`Elasticsearch operator "${operator}" plugin missing.`, "PLUGIN_MISSING", {
|
|
7
|
+
operator
|
|
8
|
+
});
|
|
9
|
+
const value = valueTransformer.transform({
|
|
10
|
+
field: field.field,
|
|
11
|
+
value: initialValue
|
|
12
|
+
});
|
|
13
|
+
const keyword = hasKeyword(field);
|
|
14
|
+
const { basePath, path } = fieldPathFactory.create({
|
|
15
|
+
field,
|
|
16
|
+
value,
|
|
17
|
+
originalValue: initialValue,
|
|
18
|
+
key,
|
|
19
|
+
keyword
|
|
20
|
+
});
|
|
21
|
+
plugin.apply(query, {
|
|
22
|
+
name: field.field.fieldId,
|
|
23
|
+
basePath,
|
|
24
|
+
path,
|
|
25
|
+
value,
|
|
26
|
+
keyword
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
export { createApplyFiltering };
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=applyFiltering.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchExecFiltering/applyFiltering.js","sources":["../../../src/features/CmsEntryOpenSearchExecFiltering/applyFiltering.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { hasKeyword } from \"~/operations/entry/elasticsearch/keyword.js\";\nimport type { OpenSearchQueryBuilderOperators } from \"~/operations/entry/elasticsearch/types.js\";\nimport type { CmsEntryOpenSearchFilter } from \"~/features/CmsEntryOpenSearchFilter/index.js\";\nimport type { CmsEntryOpenSearchValueTransformer } from \"~/features/CmsEntryOpenSearchValueTransformer/index.js\";\nimport type { CmsEntryOpenSearchFieldPathFactory } from \"~/features/CmsEntryOpenSearchFieldPathFactory/index.js\";\n\ninterface CreateParams {\n operators: OpenSearchQueryBuilderOperators;\n valueTransformer: CmsEntryOpenSearchValueTransformer.Interface;\n fieldPathFactory: CmsEntryOpenSearchFieldPathFactory.Interface;\n}\n\nexport const createApplyFiltering = ({\n operators,\n valueTransformer,\n fieldPathFactory\n}: CreateParams): CmsEntryOpenSearchFilter.ApplyFiltering => {\n return params => {\n const { key, value: initialValue, query, operator, field } = params;\n\n const plugin = operators[operator];\n if (!plugin) {\n throw new WebinyError(\n `Elasticsearch operator \"${operator}\" plugin missing.`,\n \"PLUGIN_MISSING\",\n {\n operator\n }\n );\n }\n\n const value = valueTransformer.transform({\n field: field.field,\n value: initialValue\n });\n\n const keyword = hasKeyword(field);\n\n const { basePath, path } = fieldPathFactory.create({\n field,\n value,\n originalValue: initialValue,\n key,\n keyword\n });\n\n plugin.apply(query, {\n name: field.field.fieldId,\n basePath,\n path,\n value,\n keyword\n });\n };\n};\n"],"names":["createApplyFiltering","operators","valueTransformer","fieldPathFactory","params","key","initialValue","query","operator","field","plugin","WebinyError","value","keyword","hasKeyword","basePath","path"],"mappings":";;AAaO,MAAMA,uBAAuB,CAAC,EACjCC,SAAS,EACTC,gBAAgB,EAChBC,gBAAgB,EACL,GACJC,CAAAA;QACH,MAAM,EAAEC,GAAG,EAAE,OAAOC,YAAY,EAAEC,KAAK,EAAEC,QAAQ,EAAEC,KAAK,EAAE,GAAGL;QAE7D,MAAMM,SAAST,SAAS,CAACO,SAAS;QAClC,IAAI,CAACE,QACD,MAAM,IAAIC,MACN,CAAC,wBAAwB,EAAEH,SAAS,iBAAiB,CAAC,EACtD,kBACA;YACIA;QACJ;QAIR,MAAMI,QAAQV,iBAAiB,SAAS,CAAC;YACrC,OAAOO,MAAM,KAAK;YAClB,OAAOH;QACX;QAEA,MAAMO,UAAUC,WAAWL;QAE3B,MAAM,EAAEM,QAAQ,EAAEC,IAAI,EAAE,GAAGb,iBAAiB,MAAM,CAAC;YAC/CM;YACAG;YACA,eAAeN;YACfD;YACAQ;QACJ;QAEAH,OAAO,KAAK,CAACH,OAAO;YAChB,MAAME,MAAM,KAAK,CAAC,OAAO;YACzBM;YACAC;YACAJ;YACAC;QACJ;IACJ"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
|
+
import { CmsEntryOpenSearchExecFiltering } from "./CmsEntryOpenSearchExecFiltering.js";
|
|
3
|
+
const CmsEntryOpenSearchExecFilteringFeature = createFeature({
|
|
4
|
+
name: "Cms/Entry/OpenSearch/ExecFilteringFeature",
|
|
5
|
+
register: (container)=>{
|
|
6
|
+
container.register(CmsEntryOpenSearchExecFiltering);
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
export { CmsEntryOpenSearchExecFilteringFeature };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchExecFiltering/feature.js","sources":["../../../src/features/CmsEntryOpenSearchExecFiltering/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CmsEntryOpenSearchExecFiltering } from \"./CmsEntryOpenSearchExecFiltering.js\";\n\nexport const CmsEntryOpenSearchExecFilteringFeature = createFeature({\n name: \"Cms/Entry/OpenSearch/ExecFilteringFeature\",\n register: container => {\n container.register(CmsEntryOpenSearchExecFiltering);\n }\n});\n"],"names":["CmsEntryOpenSearchExecFilteringFeature","createFeature","container","CmsEntryOpenSearchExecFiltering"],"mappings":";;AAGO,MAAMA,yCAAyCC,cAAc;IAChE,MAAM;IACN,UAAUC,CAAAA;QACNA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
const getPopulated = (query)=>{
|
|
2
|
+
const result = {};
|
|
3
|
+
let key;
|
|
4
|
+
for(key in query){
|
|
5
|
+
const value = query[key];
|
|
6
|
+
if (!(void 0 === value || Array.isArray(value) && 0 === value.length)) result[key] = value;
|
|
7
|
+
}
|
|
8
|
+
return result;
|
|
9
|
+
};
|
|
10
|
+
export { getPopulated };
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=populated.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchExecFiltering/populated.js","sources":["../../../src/features/CmsEntryOpenSearchExecFiltering/populated.ts"],"sourcesContent":["import type { OpenSearchBoolQueryConfig } from \"@webiny/api-opensearch/types.js\";\n\nexport const getPopulated = (\n query: OpenSearchBoolQueryConfig\n): Partial<OpenSearchBoolQueryConfig> => {\n const result: Partial<OpenSearchBoolQueryConfig> = {};\n let key: keyof OpenSearchBoolQueryConfig;\n for (key in query) {\n const value = query[key];\n if (value === undefined || (Array.isArray(value) && value.length === 0)) {\n continue;\n }\n /**\n * TODO figure out better types.\n */\n // @ts-expect-error\n result[key] = value;\n }\n return result;\n};\n"],"names":["getPopulated","query","result","key","value","undefined","Array"],"mappings":"AAEO,MAAMA,eAAe,CACxBC;IAEA,MAAMC,SAA6C,CAAC;IACpD,IAAIC;IACJ,IAAKA,OAAOF,MAAO;QACf,MAAMG,QAAQH,KAAK,CAACE,IAAI;QACxB,KAAIC,CAAAA,AAAUC,WAAVD,SAAwBE,MAAM,OAAO,CAACF,UAAUA,AAAiB,MAAjBA,MAAM,MAAM,AAAK,GAOrEF,MAAM,CAACC,IAAI,GAAGC;IAClB;IACA,OAAOF;AACX"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import error from "@webiny/error";
|
|
2
|
+
const getWhereValues = (value, condition)=>{
|
|
3
|
+
const values = value;
|
|
4
|
+
if (Array.isArray(values)) {
|
|
5
|
+
if (0 === values.length) throw new error(`Trying to run filtering with "${condition}", but the value sent is empty array.`, `MALFORMED_${condition}_CONDITION`, {
|
|
6
|
+
value
|
|
7
|
+
});
|
|
8
|
+
} else throw new error(`Trying to run filtering with "${condition}", but the value sent is not an array.`, `MALFORMED_${condition}_CONDITION`, {
|
|
9
|
+
value
|
|
10
|
+
});
|
|
11
|
+
return values;
|
|
12
|
+
};
|
|
13
|
+
export { getWhereValues };
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=values.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchExecFiltering/values.js","sources":["../../../src/features/CmsEntryOpenSearchExecFiltering/values.ts"],"sourcesContent":["import type { CmsEntryListWhere } from \"@webiny/api-headless-cms/types/index.js\";\nimport WebinyError from \"@webiny/error\";\n\nexport const getWhereValues = (value: unknown, condition: \"AND\" | \"OR\") => {\n const values = value as CmsEntryListWhere[] | undefined;\n if (!Array.isArray(values)) {\n throw new WebinyError(\n `Trying to run filtering with \"${condition}\", but the value sent is not an array.`,\n `MALFORMED_${condition}_CONDITION`,\n {\n value\n }\n );\n } else if (values.length === 0) {\n throw new WebinyError(\n `Trying to run filtering with \"${condition}\", but the value sent is empty array.`,\n `MALFORMED_${condition}_CONDITION`,\n {\n value\n }\n );\n }\n return values;\n};\n"],"names":["getWhereValues","value","condition","values","Array","WebinyError"],"mappings":";AAGO,MAAMA,iBAAiB,CAACC,OAAgBC;IAC3C,MAAMC,SAASF;IACf,IAAKG,MAAM,OAAO,CAACD,SAQZ;QAAA,IAAIA,AAAkB,MAAlBA,OAAO,MAAM,EACpB,MAAM,IAAIE,MACN,CAAC,8BAA8B,EAAEH,UAAU,qCAAqC,CAAC,EACjF,CAAC,UAAU,EAAEA,UAAU,UAAU,CAAC,EAClC;YACID;QACJ;IAER,OAfI,MAAM,IAAII,MACN,CAAC,8BAA8B,EAAEH,UAAU,sCAAsC,CAAC,EAClF,CAAC,UAAU,EAAEA,UAAU,UAAU,CAAC,EAClC;QACID;IACJ;IAWR,OAAOE;AACX"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndexRegistry as Abstraction } from "./abstractions/CmsEntryOpenSearchFieldIndexRegistry.js";
|
|
2
|
+
import { CmsEntryOpenSearchFieldIndex } from "./abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
3
|
+
declare class CmsEntryOpenSearchFieldIndexRegistryImpl implements Abstraction.Interface {
|
|
4
|
+
private readonly fieldIndexing;
|
|
5
|
+
private readonly cache;
|
|
6
|
+
constructor(fieldIndexing: CmsEntryOpenSearchFieldIndex.Interface[]);
|
|
7
|
+
get(fieldType: string): CmsEntryOpenSearchFieldIndex.Interface | undefined;
|
|
8
|
+
getDefault(): CmsEntryOpenSearchFieldIndex.Interface;
|
|
9
|
+
getAll(): CmsEntryOpenSearchFieldIndex.Interface[];
|
|
10
|
+
}
|
|
11
|
+
export declare const CmsEntryOpenSearchFieldIndexRegistry: typeof CmsEntryOpenSearchFieldIndexRegistryImpl & {
|
|
12
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions/CmsEntryOpenSearchFieldIndexRegistry.js").ICmsEntryOpenSearchFieldIndexRegistry>;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { CmsEntryOpenSearchFieldIndexRegistry } from "./abstractions/CmsEntryOpenSearchFieldIndexRegistry.js";
|
|
2
|
+
import { CmsEntryOpenSearchFieldIndex } from "./abstractions/CmsEntryOpenSearchFieldIndex.js";
|
|
3
|
+
import { getBaseFieldType } from "@webiny/api-headless-cms/utils/getBaseFieldType.js";
|
|
4
|
+
import { FIELD_INDEXING_DEFAULT } from "./constants.js";
|
|
5
|
+
class CmsEntryOpenSearchFieldIndexRegistryImpl {
|
|
6
|
+
constructor(fieldIndexing){
|
|
7
|
+
this.fieldIndexing = fieldIndexing;
|
|
8
|
+
this.cache = new Map();
|
|
9
|
+
}
|
|
10
|
+
get(fieldType) {
|
|
11
|
+
if (this.cache.has(fieldType)) return this.cache.get(fieldType);
|
|
12
|
+
let indexing = this.fieldIndexing.find((field)=>field.fieldType === fieldType);
|
|
13
|
+
const baseType = getBaseFieldType({
|
|
14
|
+
type: fieldType
|
|
15
|
+
});
|
|
16
|
+
if (!indexing && baseType !== fieldType) indexing = this.fieldIndexing.find((field)=>field.fieldType === baseType);
|
|
17
|
+
this.cache.set(fieldType, indexing);
|
|
18
|
+
return indexing;
|
|
19
|
+
}
|
|
20
|
+
getDefault() {
|
|
21
|
+
const fieldIndex = this.fieldIndexing.find((field)=>field.fieldType === FIELD_INDEXING_DEFAULT);
|
|
22
|
+
if (fieldIndex) return fieldIndex;
|
|
23
|
+
throw new Error(`Missing default field index plugin. Please make sure to register a plugin with "${FIELD_INDEXING_DEFAULT}" field type.`);
|
|
24
|
+
}
|
|
25
|
+
getAll() {
|
|
26
|
+
return this.fieldIndexing;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const CmsEntryOpenSearchFieldIndexRegistry_CmsEntryOpenSearchFieldIndexRegistry = CmsEntryOpenSearchFieldIndexRegistry.createImplementation({
|
|
30
|
+
implementation: CmsEntryOpenSearchFieldIndexRegistryImpl,
|
|
31
|
+
dependencies: [
|
|
32
|
+
[
|
|
33
|
+
CmsEntryOpenSearchFieldIndex,
|
|
34
|
+
{
|
|
35
|
+
multiple: true
|
|
36
|
+
}
|
|
37
|
+
]
|
|
38
|
+
]
|
|
39
|
+
});
|
|
40
|
+
export { CmsEntryOpenSearchFieldIndexRegistry_CmsEntryOpenSearchFieldIndexRegistry as CmsEntryOpenSearchFieldIndexRegistry };
|
|
41
|
+
|
|
42
|
+
//# sourceMappingURL=CmsEntryOpenSearchFieldIndexRegistry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.js","sources":["../../../src/features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.ts"],"sourcesContent":["import { CmsEntryOpenSearchFieldIndexRegistry as Abstraction } from \"./abstractions/CmsEntryOpenSearchFieldIndexRegistry.js\";\nimport { CmsEntryOpenSearchFieldIndex } from \"./abstractions/CmsEntryOpenSearchFieldIndex.js\";\nimport { getBaseFieldType } from \"@webiny/api-headless-cms/utils/getBaseFieldType.js\";\nimport { FIELD_INDEXING_DEFAULT } from \"./constants.js\";\n\nclass CmsEntryOpenSearchFieldIndexRegistryImpl implements Abstraction.Interface {\n private readonly cache: Map<string, CmsEntryOpenSearchFieldIndex.Interface | undefined> =\n new Map();\n\n public constructor(private readonly fieldIndexing: CmsEntryOpenSearchFieldIndex.Interface[]) {}\n\n public get(fieldType: string): CmsEntryOpenSearchFieldIndex.Interface | undefined {\n if (this.cache.has(fieldType)) {\n return this.cache.get(fieldType);\n }\n\n let indexing = this.fieldIndexing.find(field => {\n return field.fieldType === fieldType;\n });\n const baseType = getBaseFieldType({\n type: fieldType\n });\n if (!indexing && baseType !== fieldType) {\n indexing = this.fieldIndexing.find(field => {\n return field.fieldType === baseType;\n });\n }\n this.cache.set(fieldType, indexing);\n return indexing;\n }\n\n public getDefault(): CmsEntryOpenSearchFieldIndex.Interface {\n const fieldIndex = this.fieldIndexing.find(\n field => field.fieldType === FIELD_INDEXING_DEFAULT\n );\n if (fieldIndex) {\n return fieldIndex;\n }\n /**\n * This should never happen, as the default field index plugin exists in our code. This can fail during testing.\n */\n throw new Error(\n `Missing default field index plugin. Please make sure to register a plugin with \"${FIELD_INDEXING_DEFAULT}\" field type.`\n );\n }\n\n public getAll(): CmsEntryOpenSearchFieldIndex.Interface[] {\n return this.fieldIndexing;\n }\n}\n\nexport const CmsEntryOpenSearchFieldIndexRegistry = Abstraction.createImplementation({\n implementation: CmsEntryOpenSearchFieldIndexRegistryImpl,\n dependencies: [[CmsEntryOpenSearchFieldIndex, { multiple: true }]]\n});\n"],"names":["CmsEntryOpenSearchFieldIndexRegistryImpl","fieldIndexing","Map","fieldType","indexing","field","baseType","getBaseFieldType","fieldIndex","FIELD_INDEXING_DEFAULT","Error","CmsEntryOpenSearchFieldIndexRegistry","Abstraction","CmsEntryOpenSearchFieldIndex"],"mappings":";;;;AAKA,MAAMA;IAIF,YAAoCC,aAAuD,CAAE;aAAzDA,aAAa,GAAbA;aAHnB,KAAK,GAClB,IAAIC;IAEsF;IAEvF,IAAIC,SAAiB,EAAsD;QAC9E,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAACA,YACf,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAACA;QAG1B,IAAIC,WAAW,IAAI,CAAC,aAAa,CAAC,IAAI,CAACC,CAAAA,QAC5BA,MAAM,SAAS,KAAKF;QAE/B,MAAMG,WAAWC,iBAAiB;YAC9B,MAAMJ;QACV;QACA,IAAI,CAACC,YAAYE,aAAaH,WAC1BC,WAAW,IAAI,CAAC,aAAa,CAAC,IAAI,CAACC,CAAAA,QACxBA,MAAM,SAAS,KAAKC;QAGnC,IAAI,CAAC,KAAK,CAAC,GAAG,CAACH,WAAWC;QAC1B,OAAOA;IACX;IAEO,aAAqD;QACxD,MAAMI,aAAa,IAAI,CAAC,aAAa,CAAC,IAAI,CACtCH,CAAAA,QAASA,MAAM,SAAS,KAAKI;QAEjC,IAAID,YACA,OAAOA;QAKX,MAAM,IAAIE,MACN,CAAC,gFAAgF,EAAED,uBAAuB,aAAa,CAAC;IAEhI;IAEO,SAAmD;QACtD,OAAO,IAAI,CAAC,aAAa;IAC7B;AACJ;AAEO,MAAME,4EAAuCC,qCAAAA,oBAAgC,CAAC;IACjF,gBAAgBZ;IAChB,cAAc;QAAC;YAACa;YAA8B;gBAAE,UAAU;YAAK;SAAE;KAAC;AACtE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { CmsModel, CmsModelField } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
export interface ToIndexParams {
|
|
3
|
+
model: CmsModel;
|
|
4
|
+
field: CmsModelField;
|
|
5
|
+
value: any;
|
|
6
|
+
rawValue: any;
|
|
7
|
+
getFieldIndex(fieldType: string): ICmsEntryOpenSearchFieldIndex;
|
|
8
|
+
}
|
|
9
|
+
export interface ToIndexValue {
|
|
10
|
+
value?: any;
|
|
11
|
+
rawValue?: any;
|
|
12
|
+
}
|
|
13
|
+
export interface FromIndexParams {
|
|
14
|
+
model: CmsModel;
|
|
15
|
+
field: CmsModelField;
|
|
16
|
+
value: any;
|
|
17
|
+
rawValue: any;
|
|
18
|
+
getFieldIndex(fieldType: string): ICmsEntryOpenSearchFieldIndex;
|
|
19
|
+
}
|
|
20
|
+
export interface ICmsEntryOpenSearchFieldIndex {
|
|
21
|
+
readonly fieldType: string;
|
|
22
|
+
unmappedType?(field: Pick<CmsModelField, "fieldId" | "type">): string;
|
|
23
|
+
toIndex(params: ToIndexParams): ToIndexValue;
|
|
24
|
+
fromIndex(params: FromIndexParams): any;
|
|
25
|
+
}
|
|
26
|
+
export declare const CmsEntryOpenSearchFieldIndex: import("@webiny/di").Abstraction<ICmsEntryOpenSearchFieldIndex>;
|
|
27
|
+
export declare namespace CmsEntryOpenSearchFieldIndex {
|
|
28
|
+
type Interface = ICmsEntryOpenSearchFieldIndex;
|
|
29
|
+
type ToIndex = ToIndexParams;
|
|
30
|
+
type ToValue = ToIndexValue;
|
|
31
|
+
type FromIndex = FromIndexParams;
|
|
32
|
+
}
|
package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.js","sources":["../../../../src/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsModel, CmsModelField } from \"@webiny/api-headless-cms/types/index.js\";\n\nexport interface ToIndexParams {\n model: CmsModel;\n field: CmsModelField;\n value: any;\n rawValue: any;\n getFieldIndex(fieldType: string): ICmsEntryOpenSearchFieldIndex;\n}\n\nexport interface ToIndexValue {\n value?: any;\n rawValue?: any;\n}\n\nexport interface FromIndexParams {\n model: CmsModel;\n field: CmsModelField;\n value: any;\n rawValue: any;\n getFieldIndex(fieldType: string): ICmsEntryOpenSearchFieldIndex;\n}\n\nexport interface ICmsEntryOpenSearchFieldIndex {\n readonly fieldType: string;\n unmappedType?(field: Pick<CmsModelField, \"fieldId\" | \"type\">): string;\n toIndex(params: ToIndexParams): ToIndexValue;\n fromIndex(params: FromIndexParams): any;\n}\n\nexport const CmsEntryOpenSearchFieldIndex = createAbstraction<ICmsEntryOpenSearchFieldIndex>(\n \"Cms/Entry/OpenSearch/FieldIndex\"\n);\n\nexport namespace CmsEntryOpenSearchFieldIndex {\n export type Interface = ICmsEntryOpenSearchFieldIndex;\n export type ToIndex = ToIndexParams;\n export type ToValue = ToIndexValue;\n export type FromIndex = FromIndexParams;\n}\n"],"names":["CmsEntryOpenSearchFieldIndex","createAbstraction"],"mappings":";AA+BO,MAAMA,+BAA+BC,kBACxC"}
|
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 {};
|