@webiny/api-headless-cms-ddb-es 0.0.0-mt-3 → 0.0.0-unstable.2af142b57e
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/configurations.d.ts +2 -2
- package/configurations.js +13 -10
- package/configurations.js.map +1 -0
- package/definitions/entry.d.ts +2 -2
- package/definitions/entry.js +6 -12
- package/definitions/entry.js.map +1 -0
- package/definitions/entryElasticsearch.d.ts +2 -2
- package/definitions/entryElasticsearch.js +3 -12
- package/definitions/entryElasticsearch.js.map +1 -0
- package/definitions/group.d.ts +2 -2
- package/definitions/group.js +3 -12
- package/definitions/group.js.map +1 -0
- package/definitions/model.d.ts +2 -2
- package/definitions/model.js +8 -12
- package/definitions/model.js.map +1 -0
- package/definitions/settings.d.ts +2 -2
- package/definitions/settings.js +3 -12
- package/definitions/settings.js.map +1 -0
- package/definitions/system.d.ts +2 -2
- package/definitions/system.js +3 -12
- package/definitions/system.js.map +1 -0
- package/definitions/table.d.ts +2 -2
- package/definitions/table.js +0 -3
- package/definitions/table.js.map +1 -0
- package/definitions/tableElasticsearch.d.ts +2 -2
- package/definitions/tableElasticsearch.js +0 -3
- package/definitions/tableElasticsearch.js.map +1 -0
- package/dynamoDb/index.d.ts +1 -1
- package/dynamoDb/index.js +4 -11
- package/dynamoDb/index.js.map +1 -0
- package/dynamoDb/storage/date.d.ts +3 -3
- package/dynamoDb/storage/date.js +73 -54
- package/dynamoDb/storage/date.js.map +1 -0
- package/dynamoDb/storage/longText.d.ts +7 -4
- package/dynamoDb/storage/longText.js +72 -64
- package/dynamoDb/storage/longText.js.map +1 -0
- package/dynamoDb/storage/richText.d.ts +2 -3
- package/dynamoDb/storage/richText.js +74 -78
- package/dynamoDb/storage/richText.js.map +1 -0
- package/elasticsearch/createElasticsearchIndex.d.ts +9 -0
- package/elasticsearch/createElasticsearchIndex.js +49 -0
- package/elasticsearch/createElasticsearchIndex.js.map +1 -0
- package/elasticsearch/deleteElasticsearchIndex.d.ts +8 -0
- package/elasticsearch/deleteElasticsearchIndex.js +36 -0
- package/elasticsearch/deleteElasticsearchIndex.js.map +1 -0
- package/elasticsearch/index.d.ts +1 -1
- package/elasticsearch/index.js +1 -6
- package/elasticsearch/index.js.map +1 -0
- package/elasticsearch/indexing/dateTimeIndexing.js +17 -20
- package/elasticsearch/indexing/dateTimeIndexing.js.map +1 -0
- package/elasticsearch/indexing/defaultFieldIndexing.js +5 -9
- package/elasticsearch/indexing/defaultFieldIndexing.js.map +1 -0
- package/elasticsearch/indexing/index.js +1 -10
- package/elasticsearch/indexing/index.js.map +1 -0
- package/elasticsearch/indexing/longTextIndexing.d.ts +4 -0
- package/elasticsearch/indexing/longTextIndexing.js +19 -9
- package/elasticsearch/indexing/longTextIndexing.js.map +1 -0
- package/elasticsearch/indexing/numberIndexing.js +0 -9
- package/elasticsearch/indexing/numberIndexing.js.map +1 -0
- package/elasticsearch/indexing/objectIndexing.d.ts +9 -0
- package/elasticsearch/indexing/objectIndexing.js +26 -30
- package/elasticsearch/indexing/objectIndexing.js.map +1 -0
- package/elasticsearch/indexing/richTextIndexing.js +0 -5
- package/elasticsearch/indexing/richTextIndexing.js.map +1 -0
- package/elasticsearch/indices/base.d.ts +2 -0
- package/elasticsearch/indices/base.js +12 -0
- package/elasticsearch/indices/base.js.map +1 -0
- package/elasticsearch/indices/index.d.ts +1 -0
- package/elasticsearch/indices/index.js +12 -0
- package/elasticsearch/indices/index.js.map +1 -0
- package/elasticsearch/indices/japanese.d.ts +2 -0
- package/elasticsearch/indices/japanese.js +13 -0
- package/elasticsearch/indices/japanese.js.map +1 -0
- package/elasticsearch/search/index.d.ts +2 -2
- package/elasticsearch/search/index.js +3 -9
- package/elasticsearch/search/index.js.map +1 -0
- package/elasticsearch/search/refSearch.d.ts +2 -3
- package/elasticsearch/search/refSearch.js +23 -18
- package/elasticsearch/search/refSearch.js.map +1 -0
- package/elasticsearch/search/timeSearch.d.ts +2 -3
- package/elasticsearch/search/timeSearch.js +18 -17
- package/elasticsearch/search/timeSearch.js.map +1 -0
- package/helpers/entryIndexHelpers.js +43 -57
- package/helpers/entryIndexHelpers.js.map +1 -0
- package/helpers/index.d.ts +0 -1
- package/helpers/index.js +0 -15
- package/helpers/index.js.map +1 -0
- package/index.d.ts +1 -0
- package/index.js +120 -58
- package/index.js.map +1 -0
- package/operations/entry/dataLoaders.d.ts +6 -2
- package/operations/entry/dataLoaders.js +27 -61
- package/operations/entry/dataLoaders.js.map +1 -0
- package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.d.ts +18 -0
- package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js +32 -0
- package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js.map +1 -0
- package/operations/entry/elasticsearch/body.d.ts +13 -0
- package/operations/entry/elasticsearch/body.js +140 -0
- package/operations/entry/elasticsearch/body.js.map +1 -0
- package/operations/entry/elasticsearch/fields.d.ts +9 -0
- package/operations/entry/elasticsearch/fields.js +229 -0
- package/operations/entry/elasticsearch/fields.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/applyFiltering.d.ts +8 -0
- package/operations/entry/elasticsearch/filtering/applyFiltering.js +57 -0
- package/operations/entry/elasticsearch/filtering/applyFiltering.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/exec.d.ts +17 -0
- package/operations/entry/elasticsearch/filtering/exec.js +172 -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 +16 -0
- package/operations/entry/elasticsearch/filtering/index.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/path.d.ts +15 -0
- package/operations/entry/elasticsearch/filtering/path.js +44 -0
- package/operations/entry/elasticsearch/filtering/path.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/plugins/defaultFilterPlugin.d.ts +2 -0
- package/operations/entry/elasticsearch/filtering/plugins/defaultFilterPlugin.js +28 -0
- package/operations/entry/elasticsearch/filtering/plugins/defaultFilterPlugin.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/plugins/index.d.ts +1 -0
- package/operations/entry/elasticsearch/filtering/plugins/index.js +13 -0
- package/operations/entry/elasticsearch/filtering/plugins/index.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/plugins/objectFilterPlugin.d.ts +2 -0
- package/operations/entry/elasticsearch/filtering/plugins/objectFilterPlugin.js +65 -0
- package/operations/entry/elasticsearch/filtering/plugins/objectFilterPlugin.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/plugins/refFilterPlugin.d.ts +2 -0
- package/operations/entry/elasticsearch/filtering/plugins/refFilterPlugin.js +48 -0
- package/operations/entry/elasticsearch/filtering/plugins/refFilterPlugin.js.map +1 -0
- package/operations/entry/elasticsearch/filtering/populated.d.ts +2 -0
- package/operations/entry/elasticsearch/filtering/populated.js +23 -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 +22 -0
- package/operations/entry/elasticsearch/filtering/values.js.map +1 -0
- package/operations/entry/elasticsearch/fullTextSearch.d.ts +12 -0
- package/operations/entry/elasticsearch/fullTextSearch.js +89 -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 +25 -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 +103 -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 +34 -0
- package/operations/entry/elasticsearch/keyword.js.map +1 -0
- package/operations/entry/elasticsearch/plugins/bodyModifier.d.ts +9 -0
- package/operations/entry/elasticsearch/plugins/bodyModifier.js +16 -0
- package/operations/entry/elasticsearch/plugins/bodyModifier.js.map +1 -0
- package/operations/entry/elasticsearch/plugins/operator.d.ts +8 -0
- package/operations/entry/elasticsearch/plugins/operator.js +37 -0
- package/operations/entry/elasticsearch/plugins/operator.js.map +1 -0
- package/operations/entry/elasticsearch/plugins/queryModifier.d.ts +9 -0
- package/operations/entry/elasticsearch/plugins/queryModifier.js +16 -0
- package/operations/entry/elasticsearch/plugins/queryModifier.js.map +1 -0
- package/operations/entry/elasticsearch/plugins/search.d.ts +7 -0
- package/{helpers/searchPluginsList.js → operations/entry/elasticsearch/plugins/search.js} +8 -10
- package/operations/entry/elasticsearch/plugins/search.js.map +1 -0
- package/operations/entry/elasticsearch/plugins/sortModifier.d.ts +9 -0
- package/operations/entry/elasticsearch/plugins/sortModifier.js +16 -0
- package/operations/entry/elasticsearch/plugins/sortModifier.js.map +1 -0
- package/operations/entry/elasticsearch/sort.d.ts +12 -0
- package/operations/entry/elasticsearch/sort.js +82 -0
- package/operations/entry/elasticsearch/sort.js.map +1 -0
- package/operations/entry/elasticsearch/transformValueForSearch.d.ts +16 -0
- package/operations/entry/elasticsearch/transformValueForSearch.js +30 -0
- package/operations/entry/elasticsearch/transformValueForSearch.js.map +1 -0
- package/operations/entry/elasticsearch/types.d.ts +41 -0
- package/operations/entry/elasticsearch/types.js +5 -0
- package/operations/entry/elasticsearch/types.js.map +1 -0
- package/operations/entry/index.d.ts +2 -4
- package/operations/entry/index.js +457 -481
- package/operations/entry/index.js.map +1 -0
- package/operations/entry/keys.js +0 -9
- package/operations/entry/keys.js.map +1 -0
- package/operations/entry/recordType.d.ts +3 -0
- package/operations/entry/recordType.js +18 -0
- package/operations/entry/recordType.js.map +1 -0
- package/operations/group/index.d.ts +2 -2
- package/operations/group/index.js +10 -47
- package/operations/group/index.js.map +1 -0
- package/operations/model/index.d.ts +2 -2
- package/operations/model/index.js +34 -68
- package/operations/model/index.js.map +1 -0
- package/operations/settings/index.d.ts +2 -2
- package/operations/settings/index.js +7 -37
- package/operations/settings/index.js.map +1 -0
- package/operations/system/index.d.ts +2 -2
- package/operations/system/index.js +5 -28
- package/operations/system/index.js.map +1 -0
- package/package.json +24 -29
- package/plugins/CmsEntryElasticsearchBodyModifierPlugin.d.ts +7 -3
- package/plugins/CmsEntryElasticsearchBodyModifierPlugin.js +9 -11
- package/plugins/CmsEntryElasticsearchBodyModifierPlugin.js.map +1 -0
- package/plugins/CmsEntryElasticsearchFieldPlugin.d.ts +3 -3
- package/plugins/CmsEntryElasticsearchFieldPlugin.js +3 -9
- package/plugins/CmsEntryElasticsearchFieldPlugin.js.map +1 -0
- package/plugins/CmsEntryElasticsearchFullTextSearchPlugin.d.ts +23 -0
- package/plugins/CmsEntryElasticsearchFullTextSearchPlugin.js +28 -0
- package/plugins/CmsEntryElasticsearchFullTextSearchPlugin.js.map +1 -0
- package/plugins/CmsEntryElasticsearchIndexPlugin.d.ts +4 -0
- package/plugins/CmsEntryElasticsearchIndexPlugin.js +12 -0
- package/plugins/CmsEntryElasticsearchIndexPlugin.js.map +1 -0
- package/plugins/CmsEntryElasticsearchQueryBuilderValueSearchPlugin.d.ts +30 -0
- package/plugins/CmsEntryElasticsearchQueryBuilderValueSearchPlugin.js +33 -0
- package/plugins/CmsEntryElasticsearchQueryBuilderValueSearchPlugin.js.map +1 -0
- package/plugins/CmsEntryElasticsearchQueryModifierPlugin.d.ts +4 -3
- package/plugins/CmsEntryElasticsearchQueryModifierPlugin.js +9 -11
- package/plugins/CmsEntryElasticsearchQueryModifierPlugin.js.map +1 -0
- package/plugins/CmsEntryElasticsearchSortModifierPlugin.d.ts +4 -3
- package/plugins/CmsEntryElasticsearchSortModifierPlugin.js +9 -11
- package/plugins/CmsEntryElasticsearchSortModifierPlugin.js.map +1 -0
- package/plugins/CmsEntryFilterPlugin.d.ts +49 -0
- package/plugins/CmsEntryFilterPlugin.js +24 -0
- package/plugins/CmsEntryFilterPlugin.js.map +1 -0
- package/plugins/index.d.ts +7 -0
- package/plugins/index.js +82 -0
- package/plugins/index.js.map +1 -0
- package/types.d.ts +7 -34
- package/types.js +0 -18
- package/types.js.map +1 -0
- package/helpers/createElasticsearchQueryBody.d.ts +0 -11
- package/helpers/createElasticsearchQueryBody.js +0 -375
- package/helpers/fields.d.ts +0 -77
- package/helpers/fields.js +0 -174
- package/helpers/operatorPluginsList.d.ts +0 -7
- package/helpers/operatorPluginsList.js +0 -30
- package/helpers/searchPluginsList.d.ts +0 -6
- package/helpers/transformValueForSearch.d.ts +0 -9
- package/helpers/transformValueForSearch.js +0 -26
- package/operations/entry/elasticsearchFields.d.ts +0 -2
- package/operations/entry/elasticsearchFields.js +0 -32
- package/operations/entry/fields.d.ts +0 -3
- package/operations/entry/fields.js +0 -60
- package/operations/system/createElasticsearchTemplate.d.ts +0 -5
- package/operations/system/createElasticsearchTemplate.js +0 -62
- package/upgrades/index.d.ts +0 -2
- package/upgrades/index.js +0 -16
- package/upgrades/utils.d.ts +0 -1
- package/upgrades/utils.js +0 -16
- package/upgrades/v5.0.0/cleanDatabaseRecord.d.ts +0 -6
- package/upgrades/v5.0.0/cleanDatabaseRecord.js +0 -16
- package/upgrades/v5.0.0/createOldVersionIndiceName.d.ts +0 -2
- package/upgrades/v5.0.0/createOldVersionIndiceName.js +0 -12
- package/upgrades/v5.0.0/entryValueFixer.d.ts +0 -4
- package/upgrades/v5.0.0/entryValueFixer.js +0 -124
- package/upgrades/v5.0.0/fieldFinder.d.ts +0 -6
- package/upgrades/v5.0.0/fieldFinder.js +0 -42
- package/upgrades/v5.0.0/helpers.d.ts +0 -4
- package/upgrades/v5.0.0/helpers.js +0 -57
- package/upgrades/v5.0.0/index.d.ts +0 -4
- package/upgrades/v5.0.0/index.js +0 -232
- package/upgrades/v5.8.0/index.d.ts +0 -4
- package/upgrades/v5.8.0/index.js +0 -426
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.deleteElasticsearchIndex = void 0;
|
|
7
|
+
var _configurations = require("../configurations");
|
|
8
|
+
const deleteElasticsearchIndex = async params => {
|
|
9
|
+
const {
|
|
10
|
+
elasticsearch,
|
|
11
|
+
model
|
|
12
|
+
} = params;
|
|
13
|
+
const {
|
|
14
|
+
index
|
|
15
|
+
} = _configurations.configurations.es({
|
|
16
|
+
model
|
|
17
|
+
});
|
|
18
|
+
const {
|
|
19
|
+
body: exists
|
|
20
|
+
} = await elasticsearch.indices.exists({
|
|
21
|
+
index
|
|
22
|
+
});
|
|
23
|
+
if (!exists) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
await elasticsearch.indices.delete({
|
|
28
|
+
index,
|
|
29
|
+
ignore_unavailable: true
|
|
30
|
+
});
|
|
31
|
+
} catch (ex) {
|
|
32
|
+
console.log(`Could not delete Elasticsearch index "${index}". Please do it manually.`);
|
|
33
|
+
console.log(ex.message);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
exports.deleteElasticsearchIndex = deleteElasticsearchIndex;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["deleteElasticsearchIndex","params","elasticsearch","model","index","configurations","es","body","exists","indices","delete","ignore_unavailable","ex","console","log","message"],"sources":["deleteElasticsearchIndex.ts"],"sourcesContent":["import { Client } from \"@elastic/elasticsearch\";\nimport { CmsModel } from \"@webiny/api-headless-cms/types\";\nimport { configurations } from \"~/configurations\";\n\ninterface DeleteElasticsearchIndexParams {\n elasticsearch: Client;\n model: CmsModel;\n}\n\nexport const deleteElasticsearchIndex = async (\n params: DeleteElasticsearchIndexParams\n): Promise<void> => {\n const { elasticsearch, model } = params;\n\n const { index } = configurations.es({\n model\n });\n const { body: exists } = await elasticsearch.indices.exists({\n index\n });\n if (!exists) {\n return;\n }\n\n try {\n await elasticsearch.indices.delete({\n index,\n ignore_unavailable: true\n });\n } catch (ex) {\n console.log(`Could not delete Elasticsearch index \"${index}\". Please do it manually.`);\n console.log(ex.message);\n }\n};\n"],"mappings":";;;;;;AAEA;AAOO,MAAMA,wBAAwB,GAAG,MACpCC,MAAsC,IACtB;EAChB,MAAM;IAAEC,aAAa;IAAEC;EAAM,CAAC,GAAGF,MAAM;EAEvC,MAAM;IAAEG;EAAM,CAAC,GAAGC,8BAAc,CAACC,EAAE,CAAC;IAChCH;EACJ,CAAC,CAAC;EACF,MAAM;IAAEI,IAAI,EAAEC;EAAO,CAAC,GAAG,MAAMN,aAAa,CAACO,OAAO,CAACD,MAAM,CAAC;IACxDJ;EACJ,CAAC,CAAC;EACF,IAAI,CAACI,MAAM,EAAE;IACT;EACJ;EAEA,IAAI;IACA,MAAMN,aAAa,CAACO,OAAO,CAACC,MAAM,CAAC;MAC/BN,KAAK;MACLO,kBAAkB,EAAE;IACxB,CAAC,CAAC;EACN,CAAC,CAAC,OAAOC,EAAE,EAAE;IACTC,OAAO,CAACC,GAAG,CAAE,yCAAwCV,KAAM,2BAA0B,CAAC;IACtFS,OAAO,CAACC,GAAG,CAACF,EAAE,CAACG,OAAO,CAAC;EAC3B;AACJ,CAAC;AAAC"}
|
package/elasticsearch/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
declare const _default: () => (import("../types").CmsModelFieldToElasticsearchPlugin[] | import("
|
|
1
|
+
declare const _default: () => (import("../types").CmsModelFieldToElasticsearchPlugin[] | import("..").CmsEntryElasticsearchQueryBuilderValueSearchPlugin[])[];
|
|
2
2
|
export default _default;
|
package/elasticsearch/index.js
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _indexing = _interopRequireDefault(require("./indexing"));
|
|
11
|
-
|
|
12
9
|
var _search = _interopRequireDefault(require("./search"));
|
|
13
|
-
|
|
14
10
|
var _default = () => [(0, _indexing.default)(), (0, _search.default)()];
|
|
15
|
-
|
|
16
11
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["elasticsearchIndexingPlugins","elasticsearchSearchPlugins"],"sources":["index.ts"],"sourcesContent":["import elasticsearchIndexingPlugins from \"./indexing\";\nimport elasticsearchSearchPlugins from \"./search\";\n\nexport default () => [elasticsearchIndexingPlugins(), elasticsearchSearchPlugins()];\n"],"mappings":";;;;;;;AAAA;AACA;AAAkD,eAEnC,MAAM,CAAC,IAAAA,iBAA4B,GAAE,EAAE,IAAAC,eAA0B,GAAE,CAAC;AAAA"}
|
|
@@ -4,37 +4,30 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
const convertTimeToNumber = time => {
|
|
9
8
|
if (!time) {
|
|
10
9
|
return null;
|
|
11
10
|
}
|
|
12
|
-
|
|
13
11
|
const [hours, minutes, seconds = 0] = time.split(":").map(Number);
|
|
14
12
|
return hours * 60 * 60 + minutes * 60 + seconds;
|
|
15
13
|
};
|
|
16
|
-
|
|
17
14
|
const convertNumberToTime = value => {
|
|
18
15
|
if (value === undefined || value === null) {
|
|
19
16
|
return null;
|
|
20
|
-
}
|
|
17
|
+
}
|
|
18
|
+
// TODO remove when v5 goes out
|
|
21
19
|
// this is a fix for pre beta.5
|
|
22
|
-
|
|
23
|
-
|
|
24
20
|
if (String(value).match(/^([0-9]{2}):([0-9]{2})/) !== null) {
|
|
25
21
|
return String(value);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
|
|
22
|
+
}
|
|
23
|
+
//
|
|
29
24
|
const hours = Math.floor(value / 60 / 60);
|
|
30
25
|
const minutes = Math.floor((value - hours * 60 * 60) / 60);
|
|
31
26
|
const seconds = Math.floor(value - hours * 60 * 60 - minutes * 60);
|
|
32
27
|
return [hours, minutes, seconds].map(v => String(v).padStart(2, "0")).join(":");
|
|
33
28
|
};
|
|
34
|
-
|
|
35
29
|
const convertValueFromIndex = (value, field) => {
|
|
36
30
|
const type = field.settings.type;
|
|
37
|
-
|
|
38
31
|
if (type === "time") {
|
|
39
32
|
return convertNumberToTime(value);
|
|
40
33
|
} else if (!value) {
|
|
@@ -43,22 +36,18 @@ const convertValueFromIndex = (value, field) => {
|
|
|
43
36
|
return value;
|
|
44
37
|
} else if (type === "date") {
|
|
45
38
|
const dateValue = new Date(value);
|
|
46
|
-
return dateValue.toISOString().
|
|
39
|
+
return dateValue.toISOString().slice(0, 10);
|
|
47
40
|
}
|
|
48
|
-
|
|
49
41
|
return new Date(value).toISOString();
|
|
50
42
|
};
|
|
51
|
-
|
|
52
43
|
const convertValueToIndex = (value, field) => {
|
|
53
44
|
if (!value) {
|
|
54
45
|
return null;
|
|
55
46
|
} else if (field.settings.type === "time") {
|
|
56
47
|
return convertTimeToNumber(value);
|
|
57
48
|
}
|
|
58
|
-
|
|
59
49
|
return value;
|
|
60
50
|
};
|
|
61
|
-
|
|
62
51
|
var _default = () => ({
|
|
63
52
|
type: "cms-model-field-to-elastic-search",
|
|
64
53
|
name: "cms-model-field-to-elastic-search-datetime",
|
|
@@ -66,24 +55,32 @@ var _default = () => ({
|
|
|
66
55
|
unmappedType: () => {
|
|
67
56
|
return "date";
|
|
68
57
|
},
|
|
69
|
-
|
|
70
58
|
toIndex({
|
|
71
59
|
field,
|
|
72
60
|
value
|
|
73
61
|
}) {
|
|
62
|
+
if (Array.isArray(value) === true) {
|
|
63
|
+
return {
|
|
64
|
+
value: value.map(v => {
|
|
65
|
+
return convertValueToIndex(v, field);
|
|
66
|
+
})
|
|
67
|
+
};
|
|
68
|
+
}
|
|
74
69
|
const dateValue = convertValueToIndex(value, field);
|
|
75
70
|
return {
|
|
76
71
|
value: dateValue
|
|
77
72
|
};
|
|
78
73
|
},
|
|
79
|
-
|
|
80
74
|
fromIndex({
|
|
81
75
|
field,
|
|
82
76
|
value
|
|
83
77
|
}) {
|
|
78
|
+
if (Array.isArray(value)) {
|
|
79
|
+
return value.map(v => {
|
|
80
|
+
return convertValueFromIndex(v, field);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
84
83
|
return convertValueFromIndex(value, field);
|
|
85
84
|
}
|
|
86
|
-
|
|
87
85
|
});
|
|
88
|
-
|
|
89
86
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["convertTimeToNumber","time","hours","minutes","seconds","split","map","Number","convertNumberToTime","value","undefined","String","match","Math","floor","v","padStart","join","convertValueFromIndex","field","type","settings","dateValue","Date","toISOString","slice","convertValueToIndex","name","fieldType","unmappedType","toIndex","Array","isArray","fromIndex"],"sources":["dateTimeIndexing.ts"],"sourcesContent":["import { CmsModelDateTimeField } from \"@webiny/api-headless-cms/types\";\nimport { CmsModelFieldToElasticsearchPlugin } from \"~/types\";\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 // TODO remove when v5 goes out\n // this is a fix for pre beta.5\n if (String(value).match(/^([0-9]{2}):([0-9]{2})/) !== null) {\n return String(value);\n }\n //\n const hours = Math.floor(value / 60 / 60);\n\n const minutes = Math.floor((value - hours * 60 * 60) / 60);\n\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 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\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\nexport default (): CmsModelFieldToElasticsearchPlugin => ({\n type: \"cms-model-field-to-elastic-search\",\n name: \"cms-model-field-to-elastic-search-datetime\",\n fieldType: \"datetime\",\n unmappedType: () => {\n return \"date\";\n },\n toIndex({ field, value }) {\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 const dateValue = convertValueToIndex(value, field as CmsModelDateTimeField);\n return {\n value: dateValue\n };\n },\n fromIndex({ field, value }) {\n if (Array.isArray(value)) {\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"],"mappings":"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"}
|
|
@@ -4,32 +4,30 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _default = () => ({
|
|
9
8
|
type: "cms-model-field-to-elastic-search",
|
|
10
9
|
name: "cms-model-field-to-elastic-search-default",
|
|
11
10
|
fieldType: "*",
|
|
12
|
-
|
|
13
11
|
toIndex({
|
|
14
12
|
field,
|
|
15
13
|
getFieldTypePlugin,
|
|
16
14
|
value
|
|
17
15
|
}) {
|
|
18
|
-
const fieldTypePlugin = getFieldTypePlugin(field.type);
|
|
16
|
+
const fieldTypePlugin = getFieldTypePlugin(field.type);
|
|
19
17
|
|
|
18
|
+
// when field is searchable, assign it to `values`
|
|
20
19
|
if (fieldTypePlugin.isSearchable === true) {
|
|
21
20
|
return {
|
|
22
21
|
value
|
|
23
22
|
};
|
|
24
|
-
}
|
|
25
|
-
// `rawValues` is a field in ES index that's not being indexed.
|
|
26
|
-
|
|
23
|
+
}
|
|
27
24
|
|
|
25
|
+
// when field is not searchable, move its value to `rawValues`.
|
|
26
|
+
// `rawValues` is a field in ES index that's not being indexed.
|
|
28
27
|
return {
|
|
29
28
|
rawValue: value
|
|
30
29
|
};
|
|
31
30
|
},
|
|
32
|
-
|
|
33
31
|
fromIndex({
|
|
34
32
|
field,
|
|
35
33
|
getFieldTypePlugin,
|
|
@@ -41,7 +39,5 @@ var _default = () => ({
|
|
|
41
39
|
} = getFieldTypePlugin(field.type);
|
|
42
40
|
return isSearchable === true ? value : rawValue;
|
|
43
41
|
}
|
|
44
|
-
|
|
45
42
|
});
|
|
46
|
-
|
|
47
43
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["type","name","fieldType","toIndex","field","getFieldTypePlugin","value","fieldTypePlugin","isSearchable","rawValue","fromIndex"],"sources":["defaultFieldIndexing.ts"],"sourcesContent":["import { CmsModelFieldToElasticsearchPlugin } from \"~/types\";\n\nexport default (): CmsModelFieldToElasticsearchPlugin => ({\n type: \"cms-model-field-to-elastic-search\",\n name: \"cms-model-field-to-elastic-search-default\",\n fieldType: \"*\",\n toIndex({ field, getFieldTypePlugin, value }) {\n const fieldTypePlugin = getFieldTypePlugin(field.type);\n\n // when field is searchable, assign it to `values`\n if (fieldTypePlugin.isSearchable === true) {\n return { value };\n }\n\n // when field is not searchable, move its value to `rawValues`.\n // `rawValues` is a field in ES index that's not being indexed.\n return { rawValue: value };\n },\n fromIndex({ field, getFieldTypePlugin, value, rawValue }) {\n const { isSearchable } = getFieldTypePlugin(field.type);\n\n return isSearchable === true ? value : rawValue;\n }\n});\n"],"mappings":";;;;;;eAEe,OAA2C;EACtDA,IAAI,EAAE,mCAAmC;EACzCC,IAAI,EAAE,2CAA2C;EACjDC,SAAS,EAAE,GAAG;EACdC,OAAO,CAAC;IAAEC,KAAK;IAAEC,kBAAkB;IAAEC;EAAM,CAAC,EAAE;IAC1C,MAAMC,eAAe,GAAGF,kBAAkB,CAACD,KAAK,CAACJ,IAAI,CAAC;;IAEtD;IACA,IAAIO,eAAe,CAACC,YAAY,KAAK,IAAI,EAAE;MACvC,OAAO;QAAEF;MAAM,CAAC;IACpB;;IAEA;IACA;IACA,OAAO;MAAEG,QAAQ,EAAEH;IAAM,CAAC;EAC9B,CAAC;EACDI,SAAS,CAAC;IAAEN,KAAK;IAAEC,kBAAkB;IAAEC,KAAK;IAAEG;EAAS,CAAC,EAAE;IACtD,MAAM;MAAED;IAAa,CAAC,GAAGH,kBAAkB,CAACD,KAAK,CAACJ,IAAI,CAAC;IAEvD,OAAOQ,YAAY,KAAK,IAAI,GAAGF,KAAK,GAAGG,QAAQ;EACnD;AACJ,CAAC,CAAC;AAAA"}
|
|
@@ -1,24 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _richTextIndexing = _interopRequireDefault(require("./richTextIndexing"));
|
|
11
|
-
|
|
12
9
|
var _longTextIndexing = _interopRequireDefault(require("./longTextIndexing"));
|
|
13
|
-
|
|
14
10
|
var _defaultFieldIndexing = _interopRequireDefault(require("./defaultFieldIndexing"));
|
|
15
|
-
|
|
16
11
|
var _dateTimeIndexing = _interopRequireDefault(require("./dateTimeIndexing"));
|
|
17
|
-
|
|
18
12
|
var _numberIndexing = _interopRequireDefault(require("./numberIndexing"));
|
|
19
|
-
|
|
20
13
|
var _objectIndexing = _interopRequireDefault(require("./objectIndexing"));
|
|
21
|
-
|
|
22
14
|
var _default = () => [(0, _dateTimeIndexing.default)(), (0, _richTextIndexing.default)(), (0, _longTextIndexing.default)(), (0, _defaultFieldIndexing.default)(), (0, _numberIndexing.default)(), (0, _objectIndexing.default)()];
|
|
23
|
-
|
|
24
15
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["dateTimeIndexing","richTextIndexing","longTextIndexing","defaultFieldIndexing","numberIndexing","objectIndexing"],"sources":["index.ts"],"sourcesContent":["import richTextIndexing from \"./richTextIndexing\";\nimport longTextIndexing from \"./longTextIndexing\";\nimport defaultFieldIndexing from \"./defaultFieldIndexing\";\nimport dateTimeIndexing from \"./dateTimeIndexing\";\nimport numberIndexing from \"./numberIndexing\";\nimport objectIndexing from \"./objectIndexing\";\n\nexport default () => [\n dateTimeIndexing(),\n richTextIndexing(),\n longTextIndexing(),\n defaultFieldIndexing(),\n numberIndexing(),\n objectIndexing()\n];\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAA8C,eAE/B,MAAM,CACjB,IAAAA,yBAAgB,GAAE,EAClB,IAAAC,yBAAgB,GAAE,EAClB,IAAAC,yBAAgB,GAAE,EAClB,IAAAC,6BAAoB,GAAE,EACtB,IAAAC,uBAAc,GAAE,EAChB,IAAAC,uBAAc,GAAE,CACnB;AAAA"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
import { CmsModelFieldToElasticsearchPlugin } from "../../types";
|
|
2
|
+
/**
|
|
3
|
+
* The long-text indexing plugin must take in consideration that users might have list of long-text fields.
|
|
4
|
+
* Also, we used to encode values, and we do not do that anymore - but we need to have backward compatibility.
|
|
5
|
+
*/
|
|
2
6
|
declare const _default: () => CmsModelFieldToElasticsearchPlugin;
|
|
3
7
|
export default _default;
|
|
@@ -4,33 +4,43 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* The long-text indexing plugin must take in consideration that users might have list of long-text fields.
|
|
9
|
+
* Also, we used to encode values, and we do not do that anymore - but we need to have backward compatibility.
|
|
10
|
+
*/
|
|
8
11
|
var _default = () => ({
|
|
9
12
|
type: "cms-model-field-to-elastic-search",
|
|
10
13
|
name: "cms-model-field-to-elastic-search-long-text",
|
|
11
14
|
fieldType: "long-text",
|
|
12
|
-
|
|
13
15
|
toIndex({
|
|
14
16
|
rawValue
|
|
15
17
|
}) {
|
|
16
18
|
/**
|
|
17
|
-
* We
|
|
18
|
-
* And we want to store prepared value into rawValue so it is not indexed.
|
|
19
|
+
* We take the raw value, before it was prepared via `transformToStorage` for storage (there might be some transform due to DynamoDB) and store it in the Elasticsearch to be indexed.
|
|
19
20
|
*/
|
|
20
21
|
return {
|
|
21
|
-
|
|
22
|
+
/**
|
|
23
|
+
* // TODO @Bruno validate and test
|
|
24
|
+
* I have no idea why we encoded the raw value. We will see in testing and when upgrading our test projects.
|
|
25
|
+
* // TODO remove comments when tested and verified.
|
|
26
|
+
*/
|
|
27
|
+
// value: rawValue ? encodeURIComponent(rawValue) : "",
|
|
28
|
+
value: Array.isArray(rawValue) ? rawValue : rawValue || ""
|
|
22
29
|
};
|
|
23
30
|
},
|
|
24
|
-
|
|
25
31
|
/**
|
|
26
|
-
* When
|
|
32
|
+
* When taking value from the index, we can return the original value.
|
|
33
|
+
* At that point the `transformFromStorage` does not need to do anything.
|
|
34
|
+
*
|
|
35
|
+
* We need to decode to support older systems.
|
|
27
36
|
*/
|
|
28
37
|
fromIndex({
|
|
29
38
|
value
|
|
30
39
|
}) {
|
|
40
|
+
if (Array.isArray(value)) {
|
|
41
|
+
return value.map(decodeURIComponent);
|
|
42
|
+
}
|
|
31
43
|
return value ? decodeURIComponent(value) : "";
|
|
32
44
|
}
|
|
33
|
-
|
|
34
45
|
});
|
|
35
|
-
|
|
36
46
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["type","name","fieldType","toIndex","rawValue","value","Array","isArray","fromIndex","map","decodeURIComponent"],"sources":["longTextIndexing.ts"],"sourcesContent":["import { CmsModelFieldToElasticsearchPlugin } from \"~/types\";\n\n/**\n * The long-text indexing plugin must take in consideration that users might have list of long-text fields.\n * Also, we used to encode values, and we do not do that anymore - but we need to have backward compatibility.\n */\nexport default (): CmsModelFieldToElasticsearchPlugin => ({\n type: \"cms-model-field-to-elastic-search\",\n name: \"cms-model-field-to-elastic-search-long-text\",\n fieldType: \"long-text\",\n toIndex({ rawValue }) {\n /**\n * We take the raw value, before it was prepared via `transformToStorage` for storage (there might be some transform due to DynamoDB) and store it in the Elasticsearch to be indexed.\n */\n return {\n /**\n * // TODO @Bruno validate and test\n * I have no idea why we encoded the raw value. We will see in testing and when upgrading our test projects.\n * // TODO remove comments when tested and verified.\n */\n // value: rawValue ? encodeURIComponent(rawValue) : \"\",\n value: Array.isArray(rawValue) ? rawValue : rawValue || \"\"\n };\n },\n /**\n * When taking value from the index, we can return the original value.\n * At that point the `transformFromStorage` does not need to do anything.\n *\n * We need to decode to support older systems.\n */\n fromIndex({ value }) {\n if (Array.isArray(value)) {\n return value.map(decodeURIComponent);\n }\n return value ? decodeURIComponent(value) : \"\";\n }\n});\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AAHA,eAIe,OAA2C;EACtDA,IAAI,EAAE,mCAAmC;EACzCC,IAAI,EAAE,6CAA6C;EACnDC,SAAS,EAAE,WAAW;EACtBC,OAAO,CAAC;IAAEC;EAAS,CAAC,EAAE;IAClB;AACR;AACA;IACQ,OAAO;MACH;AACZ;AACA;AACA;AACA;MACY;MACAC,KAAK,EAAEC,KAAK,CAACC,OAAO,CAACH,QAAQ,CAAC,GAAGA,QAAQ,GAAGA,QAAQ,IAAI;IAC5D,CAAC;EACL,CAAC;EACD;AACJ;AACA;AACA;AACA;AACA;EACII,SAAS,CAAC;IAAEH;EAAM,CAAC,EAAE;IACjB,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,EAAE;MACtB,OAAOA,KAAK,CAACI,GAAG,CAACC,kBAAkB,CAAC;IACxC;IACA,OAAOL,KAAK,GAAGK,kBAAkB,CAACL,KAAK,CAAC,GAAG,EAAE;EACjD;AACJ,CAAC,CAAC;AAAA"}
|
|
@@ -4,23 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
const convertToString = value => {
|
|
9
8
|
if (Array.isArray(value) === false) {
|
|
10
9
|
return value;
|
|
11
10
|
}
|
|
12
|
-
|
|
13
11
|
return value.map(String);
|
|
14
12
|
};
|
|
15
|
-
|
|
16
13
|
const convertToFloat = value => {
|
|
17
14
|
if (Array.isArray(value) === false) {
|
|
18
15
|
return typeof value === "string" ? parseFloat(value) : value;
|
|
19
16
|
}
|
|
20
|
-
|
|
21
17
|
return value.map(v => parseFloat(v));
|
|
22
18
|
};
|
|
23
|
-
|
|
24
19
|
var _default = () => ({
|
|
25
20
|
type: "cms-model-field-to-elastic-search",
|
|
26
21
|
name: "cms-model-field-to-elastic-search-number",
|
|
@@ -28,7 +23,6 @@ var _default = () => ({
|
|
|
28
23
|
unmappedType: () => {
|
|
29
24
|
return "float";
|
|
30
25
|
},
|
|
31
|
-
|
|
32
26
|
toIndex({
|
|
33
27
|
value
|
|
34
28
|
}) {
|
|
@@ -36,13 +30,10 @@ var _default = () => ({
|
|
|
36
30
|
value: convertToString(value)
|
|
37
31
|
};
|
|
38
32
|
},
|
|
39
|
-
|
|
40
33
|
fromIndex({
|
|
41
34
|
value
|
|
42
35
|
}) {
|
|
43
36
|
return convertToFloat(value);
|
|
44
37
|
}
|
|
45
|
-
|
|
46
38
|
});
|
|
47
|
-
|
|
48
39
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["convertToString","value","Array","isArray","map","String","convertToFloat","parseFloat","v","type","name","fieldType","unmappedType","toIndex","fromIndex"],"sources":["numberIndexing.ts"],"sourcesContent":["import { CmsModelFieldToElasticsearchPlugin } from \"~/types\";\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\nexport default (): CmsModelFieldToElasticsearchPlugin => ({\n type: \"cms-model-field-to-elastic-search\",\n name: \"cms-model-field-to-elastic-search-number\",\n fieldType: \"number\",\n unmappedType: () => {\n return \"float\";\n },\n toIndex({ value }) {\n return {\n value: convertToString(value)\n };\n },\n fromIndex({ value }) {\n return convertToFloat(value);\n }\n});\n"],"mappings":";;;;;;AAEA,MAAMA,eAAe,GAAIC,KAAwB,IAAK;EAClD,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,KAAK,KAAK,EAAE;IAChC,OAAOA,KAAK;EAChB;EACA,OAAQA,KAAK,CAAcG,GAAG,CAACC,MAAM,CAAC;AAC1C,CAAC;AAED,MAAMC,cAAc,GAAIL,KAAwB,IAAK;EACjD,IAAIC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC,KAAK,KAAK,EAAE;IAChC,OAAO,OAAOA,KAAK,KAAK,QAAQ,GAAGM,UAAU,CAACN,KAAK,CAAC,GAAGA,KAAK;EAChE;EACA,OAAQA,KAAK,CAAcG,GAAG,CAACI,CAAC,IAAID,UAAU,CAACC,CAAC,CAAC,CAAC;AACtD,CAAC;AAAC,eAEa,OAA2C;EACtDC,IAAI,EAAE,mCAAmC;EACzCC,IAAI,EAAE,0CAA0C;EAChDC,SAAS,EAAE,QAAQ;EACnBC,YAAY,EAAE,MAAM;IAChB,OAAO,OAAO;EAClB,CAAC;EACDC,OAAO,CAAC;IAAEZ;EAAM,CAAC,EAAE;IACf,OAAO;MACHA,KAAK,EAAED,eAAe,CAACC,KAAK;IAChC,CAAC;EACL,CAAC;EACDa,SAAS,CAAC;IAAEb;EAAM,CAAC,EAAE;IACjB,OAAOK,cAAc,CAACL,KAAK,CAAC;EAChC;AACJ,CAAC,CAAC;AAAA"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TODO remove rawValue when field aliases and field types targeting will be active.
|
|
3
|
+
*
|
|
4
|
+
* Currently we use rawValue for the values that we do not want to be indexed.
|
|
5
|
+
* When field aliases and types in the value path will be active, we can target the keys directly.
|
|
6
|
+
*
|
|
7
|
+
* This change will be incompatible with the current systems so we will need to release a major version.
|
|
8
|
+
*
|
|
9
|
+
*/
|
|
1
10
|
import { CmsModelFieldToElasticsearchPlugin } from "../../types";
|
|
2
11
|
declare const _default: () => CmsModelFieldToElasticsearchPlugin;
|
|
3
12
|
export default _default;
|
|
@@ -4,6 +4,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
+
/**
|
|
8
|
+
* TODO remove rawValue when field aliases and field types targeting will be active.
|
|
9
|
+
*
|
|
10
|
+
* Currently we use rawValue for the values that we do not want to be indexed.
|
|
11
|
+
* When field aliases and types in the value path will be active, we can target the keys directly.
|
|
12
|
+
*
|
|
13
|
+
* This change will be incompatible with the current systems so we will need to release a major version.
|
|
14
|
+
*
|
|
15
|
+
*/
|
|
7
16
|
|
|
8
17
|
const processToIndex = ({
|
|
9
18
|
fields,
|
|
@@ -16,36 +25,34 @@ const processToIndex = ({
|
|
|
16
25
|
}) => {
|
|
17
26
|
const reducer = (values, field) => {
|
|
18
27
|
const plugin = getFieldIndexPlugin(field.type);
|
|
28
|
+
if (!plugin || !plugin.toIndex) {
|
|
29
|
+
return values;
|
|
30
|
+
}
|
|
19
31
|
const {
|
|
20
32
|
value,
|
|
21
33
|
rawValue
|
|
22
34
|
} = plugin.toIndex({
|
|
23
35
|
model,
|
|
24
36
|
field,
|
|
25
|
-
value: sourceValue[field.
|
|
26
|
-
rawValue: sourceRawValue[field.
|
|
37
|
+
value: sourceValue[field.storageId],
|
|
38
|
+
rawValue: sourceRawValue[field.storageId],
|
|
27
39
|
getFieldIndexPlugin,
|
|
28
40
|
getFieldTypePlugin,
|
|
29
41
|
plugins
|
|
30
42
|
});
|
|
31
|
-
|
|
32
43
|
if (value !== undefined) {
|
|
33
|
-
values.value[field.
|
|
44
|
+
values.value[field.storageId] = value;
|
|
34
45
|
}
|
|
35
|
-
|
|
36
46
|
if (rawValue !== undefined) {
|
|
37
|
-
values.rawValue[field.
|
|
47
|
+
values.rawValue[field.storageId] = rawValue;
|
|
38
48
|
}
|
|
39
|
-
|
|
40
49
|
return values;
|
|
41
50
|
};
|
|
42
|
-
|
|
43
51
|
return fields.reduce(reducer, {
|
|
44
52
|
value: {},
|
|
45
53
|
rawValue: {}
|
|
46
54
|
});
|
|
47
55
|
};
|
|
48
|
-
|
|
49
56
|
const processFromIndex = ({
|
|
50
57
|
fields,
|
|
51
58
|
value: sourceValue,
|
|
@@ -57,31 +64,29 @@ const processFromIndex = ({
|
|
|
57
64
|
}) => {
|
|
58
65
|
const reducer = (values, field) => {
|
|
59
66
|
const plugin = getFieldIndexPlugin(field.type);
|
|
67
|
+
if (!plugin || !plugin.fromIndex) {
|
|
68
|
+
return values;
|
|
69
|
+
}
|
|
60
70
|
const value = plugin.fromIndex({
|
|
61
71
|
plugins,
|
|
62
72
|
model,
|
|
63
73
|
field,
|
|
64
|
-
value: sourceValue[field.
|
|
65
|
-
rawValue: sourceRawValue[field.
|
|
74
|
+
value: sourceValue[field.storageId],
|
|
75
|
+
rawValue: sourceRawValue[field.storageId],
|
|
66
76
|
getFieldIndexPlugin,
|
|
67
77
|
getFieldTypePlugin
|
|
68
78
|
});
|
|
69
|
-
|
|
70
79
|
if (value !== undefined) {
|
|
71
|
-
values[field.
|
|
80
|
+
values[field.storageId] = value;
|
|
72
81
|
}
|
|
73
|
-
|
|
74
82
|
return values;
|
|
75
83
|
};
|
|
76
|
-
|
|
77
84
|
return fields.reduce(reducer, {});
|
|
78
85
|
};
|
|
79
|
-
|
|
80
86
|
var _default = () => ({
|
|
81
87
|
type: "cms-model-field-to-elastic-search",
|
|
82
88
|
name: "cms-model-field-to-elastic-search-object",
|
|
83
89
|
fieldType: "object",
|
|
84
|
-
|
|
85
90
|
toIndex({
|
|
86
91
|
plugins,
|
|
87
92
|
model,
|
|
@@ -91,23 +96,22 @@ var _default = () => ({
|
|
|
91
96
|
getFieldIndexPlugin,
|
|
92
97
|
getFieldTypePlugin
|
|
93
98
|
}) {
|
|
99
|
+
var _field$settings;
|
|
94
100
|
if (!initialValue) {
|
|
95
101
|
return {
|
|
96
102
|
value: null
|
|
97
103
|
};
|
|
98
104
|
}
|
|
105
|
+
const fields = ((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.fields) || [];
|
|
99
106
|
|
|
100
|
-
const fields = field.settings.fields;
|
|
101
107
|
/**
|
|
102
108
|
* In "object" field, value is either an object or an array of objects.
|
|
103
109
|
*/
|
|
104
|
-
|
|
105
110
|
if (field.multipleValues) {
|
|
106
111
|
const result = {
|
|
107
112
|
value: [],
|
|
108
113
|
rawValue: []
|
|
109
114
|
};
|
|
110
|
-
|
|
111
115
|
for (const key in initialValue) {
|
|
112
116
|
const {
|
|
113
117
|
value,
|
|
@@ -121,22 +125,18 @@ var _default = () => ({
|
|
|
121
125
|
plugins,
|
|
122
126
|
fields
|
|
123
127
|
});
|
|
124
|
-
|
|
125
128
|
if (Object.keys(value).length > 0) {
|
|
126
129
|
result.value.push(value);
|
|
127
130
|
}
|
|
128
|
-
|
|
129
131
|
if (Object.keys(rawValue).length > 0) {
|
|
130
132
|
result.rawValue.push(rawValue);
|
|
131
133
|
}
|
|
132
134
|
}
|
|
133
|
-
|
|
134
135
|
return {
|
|
135
136
|
value: result.value.length > 0 ? result.value : undefined,
|
|
136
137
|
rawValue: result.rawValue.length > 0 ? result.rawValue : undefined
|
|
137
138
|
};
|
|
138
139
|
}
|
|
139
|
-
|
|
140
140
|
return processToIndex({
|
|
141
141
|
value: initialValue,
|
|
142
142
|
rawValue: initialRawValue,
|
|
@@ -147,7 +147,6 @@ var _default = () => ({
|
|
|
147
147
|
fields
|
|
148
148
|
});
|
|
149
149
|
},
|
|
150
|
-
|
|
151
150
|
fromIndex({
|
|
152
151
|
field,
|
|
153
152
|
value,
|
|
@@ -157,15 +156,15 @@ var _default = () => ({
|
|
|
157
156
|
getFieldIndexPlugin,
|
|
158
157
|
getFieldTypePlugin
|
|
159
158
|
}) {
|
|
159
|
+
var _field$settings2;
|
|
160
160
|
if (!value) {
|
|
161
161
|
return null;
|
|
162
162
|
}
|
|
163
|
+
const fields = ((_field$settings2 = field.settings) === null || _field$settings2 === void 0 ? void 0 : _field$settings2.fields) || [];
|
|
163
164
|
|
|
164
|
-
const fields = field.settings.fields;
|
|
165
165
|
/**
|
|
166
166
|
* In "object" field, value is either an object or an array of objects.
|
|
167
167
|
*/
|
|
168
|
-
|
|
169
168
|
if (field.multipleValues) {
|
|
170
169
|
/**
|
|
171
170
|
* Why this `value || rawValue || []`?
|
|
@@ -183,7 +182,6 @@ var _default = () => ({
|
|
|
183
182
|
fields
|
|
184
183
|
}));
|
|
185
184
|
}
|
|
186
|
-
|
|
187
185
|
return processFromIndex({
|
|
188
186
|
value,
|
|
189
187
|
rawValue,
|
|
@@ -194,7 +192,5 @@ var _default = () => ({
|
|
|
194
192
|
fields
|
|
195
193
|
});
|
|
196
194
|
}
|
|
197
|
-
|
|
198
195
|
});
|
|
199
|
-
|
|
200
196
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["processToIndex","fields","value","sourceValue","rawValue","sourceRawValue","getFieldIndexPlugin","getFieldTypePlugin","plugins","model","reducer","values","field","plugin","type","toIndex","storageId","undefined","reduce","processFromIndex","fromIndex","name","fieldType","initialValue","initialRawValue","settings","multipleValues","result","key","Object","keys","length","push","source","map","_","index"],"sources":["objectIndexing.ts"],"sourcesContent":["/**\n * TODO remove rawValue when field aliases and field types targeting will be active.\n *\n * Currently we use rawValue for the values that we do not want to be indexed.\n * When field aliases and types in the value path will be active, we can target the keys directly.\n *\n * This change will be incompatible with the current systems so we will need to release a major version.\n *\n */\n\nimport { CmsModelFieldToElasticsearchPlugin } from \"~/types\";\nimport {\n CmsModel,\n CmsModelField,\n CmsModelFieldToGraphQLPlugin\n} from \"@webiny/api-headless-cms/types\";\nimport { PluginsContainer } from \"@webiny/plugins\";\n\ninterface ProcessToIndex {\n (params: {\n fields: CmsModelField[];\n value: Record<string, any>;\n rawValue: Record<string, any>;\n getFieldIndexPlugin: (fieldType: string) => CmsModelFieldToElasticsearchPlugin;\n getFieldTypePlugin: (fieldType: string) => CmsModelFieldToGraphQLPlugin;\n plugins: PluginsContainer;\n model: CmsModel;\n }): Record<\"value\" | \"rawValue\", Record<string, any>>;\n}\n\ninterface ProcessFromIndex {\n (params: {\n fields: CmsModelField[];\n value: Record<string, any>;\n rawValue: Record<string, any>;\n getFieldIndexPlugin: (fieldType: string) => CmsModelFieldToElasticsearchPlugin;\n getFieldTypePlugin: (fieldType: string) => CmsModelFieldToGraphQLPlugin;\n plugins: PluginsContainer;\n model: CmsModel;\n }): Record<string, any>;\n}\n\ninterface ReducerValue {\n value: {\n [key: string]: string;\n };\n rawValue: {\n [key: string]: string;\n };\n}\n\nconst processToIndex: ProcessToIndex = ({\n fields,\n value: sourceValue,\n rawValue: sourceRawValue,\n getFieldIndexPlugin,\n getFieldTypePlugin,\n plugins,\n model\n}) => {\n const reducer = (values: ReducerValue, field: CmsModelField) => {\n const plugin = getFieldIndexPlugin(field.type);\n if (!plugin || !plugin.toIndex) {\n return values;\n }\n const { value, rawValue } = plugin.toIndex({\n model,\n field,\n value: sourceValue[field.storageId],\n rawValue: sourceRawValue[field.storageId],\n getFieldIndexPlugin,\n getFieldTypePlugin,\n plugins\n });\n\n if (value !== undefined) {\n values.value[field.storageId] = value;\n }\n if (rawValue !== undefined) {\n values.rawValue[field.storageId] = rawValue;\n }\n\n return values;\n };\n\n return fields.reduce(reducer, { value: {}, rawValue: {} });\n};\nconst processFromIndex: ProcessFromIndex = ({\n fields,\n value: sourceValue,\n rawValue: sourceRawValue,\n getFieldIndexPlugin,\n getFieldTypePlugin,\n plugins,\n model\n}) => {\n const reducer = (values: Record<string, string>, field: CmsModelField) => {\n const plugin = getFieldIndexPlugin(field.type);\n if (!plugin || !plugin.fromIndex) {\n return values;\n }\n const value = plugin.fromIndex({\n plugins,\n model,\n field,\n value: sourceValue[field.storageId],\n rawValue: sourceRawValue[field.storageId],\n getFieldIndexPlugin,\n getFieldTypePlugin\n });\n\n if (value !== undefined) {\n values[field.storageId] = value;\n }\n\n return values;\n };\n\n return fields.reduce(reducer, {});\n};\n\ninterface ToIndexMultipleFieldValue {\n value: Record<string, string>[];\n rawValue: Record<string, string>[];\n}\n\nexport default (): CmsModelFieldToElasticsearchPlugin => ({\n type: \"cms-model-field-to-elastic-search\",\n name: \"cms-model-field-to-elastic-search-object\",\n fieldType: \"object\",\n toIndex({\n plugins,\n model,\n field,\n value: initialValue,\n rawValue: initialRawValue,\n getFieldIndexPlugin,\n getFieldTypePlugin\n }) {\n if (!initialValue) {\n return { value: null };\n }\n\n const fields = (field.settings?.fields || []) as CmsModelField[];\n\n /**\n * In \"object\" field, value is either an object or an array of objects.\n */\n if (field.multipleValues) {\n const result: ToIndexMultipleFieldValue = {\n value: [],\n rawValue: []\n };\n for (const key in initialValue) {\n const { value, rawValue } = processToIndex({\n value: initialValue[key],\n rawValue: initialRawValue[key],\n getFieldIndexPlugin,\n getFieldTypePlugin,\n model,\n plugins,\n fields\n });\n if (Object.keys(value).length > 0) {\n result.value.push(value);\n }\n\n if (Object.keys(rawValue).length > 0) {\n result.rawValue.push(rawValue);\n }\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 processToIndex({\n value: initialValue,\n rawValue: initialRawValue,\n getFieldIndexPlugin,\n getFieldTypePlugin,\n model,\n plugins,\n fields\n });\n },\n fromIndex({ field, value, rawValue, model, plugins, getFieldIndexPlugin, getFieldTypePlugin }) {\n if (!value) {\n return null;\n }\n\n const fields = field.settings?.fields || [];\n\n /**\n * In \"object\" field, value is either an object or an array of objects.\n */\n if (field.multipleValues) {\n /**\n * Why this `value || rawValue || []`?\n * It's possible that an object contains all non-indexable fields, or vice-versa, and so\n * we can never be sure which array we can reliably use as a source of values.\n */\n const source = value || rawValue || [];\n\n return source.map((_: any, index: number) =>\n processFromIndex({\n value: value ? value[index] || {} : {},\n rawValue: rawValue ? rawValue[index] || {} : {},\n getFieldIndexPlugin,\n getFieldTypePlugin,\n model,\n plugins,\n fields\n })\n );\n }\n\n return processFromIndex({\n value,\n rawValue,\n getFieldIndexPlugin,\n getFieldTypePlugin,\n model,\n plugins,\n fields\n });\n }\n});\n"],"mappings":"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"}
|
|
@@ -4,12 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _default = () => ({
|
|
9
8
|
type: "cms-model-field-to-elastic-search",
|
|
10
9
|
name: "cms-model-field-to-elastic-search-rich-text",
|
|
11
10
|
fieldType: "rich-text",
|
|
12
|
-
|
|
13
11
|
toIndex({
|
|
14
12
|
value
|
|
15
13
|
}) {
|
|
@@ -22,13 +20,10 @@ var _default = () => ({
|
|
|
22
20
|
rawValue: value
|
|
23
21
|
};
|
|
24
22
|
},
|
|
25
|
-
|
|
26
23
|
fromIndex({
|
|
27
24
|
rawValue
|
|
28
25
|
}) {
|
|
29
26
|
return rawValue;
|
|
30
27
|
}
|
|
31
|
-
|
|
32
28
|
});
|
|
33
|
-
|
|
34
29
|
exports.default = _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["type","name","fieldType","toIndex","value","rawValue","fromIndex"],"sources":["richTextIndexing.ts"],"sourcesContent":["import { CmsModelFieldToElasticsearchPlugin } from \"~/types\";\n\nexport default (): CmsModelFieldToElasticsearchPlugin => ({\n type: \"cms-model-field-to-elastic-search\",\n name: \"cms-model-field-to-elastic-search-rich-text\",\n fieldType: \"rich-text\",\n toIndex({ value }) {\n // TODO: convert rich-text object to a searchable string to offer full-text search at some point\n\n /**\n * We want to store rich-text value as a \"rawValue\", meaning it wont' be indexed by ES.\n */\n return {\n rawValue: value\n };\n },\n fromIndex({ rawValue }) {\n return rawValue;\n }\n});\n"],"mappings":";;;;;;eAEe,OAA2C;EACtDA,IAAI,EAAE,mCAAmC;EACzCC,IAAI,EAAE,6CAA6C;EACnDC,SAAS,EAAE,WAAW;EACtBC,OAAO,CAAC;IAAEC;EAAM,CAAC,EAAE;IACf;;IAEA;AACR;AACA;IACQ,OAAO;MACHC,QAAQ,EAAED;IACd,CAAC;EACL,CAAC;EACDE,SAAS,CAAC;IAAED;EAAS,CAAC,EAAE;IACpB,OAAOA,QAAQ;EACnB;AACJ,CAAC,CAAC;AAAA"}
|