@vegan-friendly/strapi-plugin-elasticsearch 0.1.0-alpha.2 → 0.1.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.
Files changed (77) hide show
  1. package/dist/admin/index.d.ts +8 -0
  2. package/dist/admin/index.js +92 -0
  3. package/dist/admin/pluginId.d.ts +2 -0
  4. package/dist/admin/pluginId.js +8 -0
  5. package/dist/admin/src/components/Initializer/index.js +2 -1
  6. package/dist/admin/src/components/SubNavigation/index.js +10 -8
  7. package/dist/admin/src/pages/ConfigureCollectionList/index.js +40 -28
  8. package/dist/admin/src/pages/Homepage/index.js +20 -21
  9. package/dist/admin/src/pluginId.d.ts +1 -1
  10. package/dist/admin/src/utils/apiUrls.js +1 -0
  11. package/dist/admin/src/utils/axiosInstance.js +1 -2
  12. package/dist/package.json +63 -0
  13. package/dist/server/bootstrap.d.ts +4 -0
  14. package/dist/server/bootstrap.js +3 -3
  15. package/dist/server/config/index.d.ts +5 -0
  16. package/dist/server/config/index.js +2 -1
  17. package/dist/server/content-types/index.d.ts +83 -2
  18. package/dist/server/content-types/index.js +9 -5
  19. package/dist/server/content-types/indexing-logs.d.ts +32 -0
  20. package/dist/server/content-types/indexing-logs.js +22 -24
  21. package/dist/server/content-types/tasks.d.ts +46 -0
  22. package/dist/server/content-types/tasks.js +33 -38
  23. package/dist/server/controllers/configure-indexing.d.ts +11 -0
  24. package/dist/server/controllers/configure-indexing.js +3 -2
  25. package/dist/server/controllers/index.d.ts +33 -5
  26. package/dist/server/controllers/index.js +15 -11
  27. package/dist/server/controllers/log-indexing.d.ts +6 -0
  28. package/dist/server/controllers/log-indexing.js +3 -2
  29. package/dist/server/controllers/perform-indexing.d.ts +8 -0
  30. package/dist/server/controllers/perform-indexing.js +3 -2
  31. package/dist/server/controllers/perform-search.d.ts +4 -1
  32. package/dist/server/controllers/perform-search.js +11 -8
  33. package/dist/server/controllers/setup-info.d.ts +6 -0
  34. package/dist/server/controllers/setup-info.js +2 -1
  35. package/dist/server/destroy.d.ts +4 -0
  36. package/dist/server/destroy.js +2 -1
  37. package/dist/server/index.d.ts +312 -10
  38. package/dist/server/index.js +25 -21
  39. package/dist/server/middlewares/index.d.ts +2 -0
  40. package/dist/server/middlewares/index.js +2 -1
  41. package/dist/server/policies/index.d.ts +2 -0
  42. package/dist/server/policies/index.js +2 -1
  43. package/dist/server/register.d.ts +4 -0
  44. package/dist/server/register.js +2 -1
  45. package/dist/server/routes/configure-indexing.d.ts +12 -0
  46. package/dist/server/routes/configure-indexing.js +2 -1
  47. package/dist/server/routes/index.d.ts +58 -5
  48. package/dist/server/routes/index.js +15 -11
  49. package/dist/server/routes/perform-indexing.d.ts +12 -0
  50. package/dist/server/routes/perform-indexing.js +2 -1
  51. package/dist/server/routes/perform-search.d.ts +12 -0
  52. package/dist/server/routes/perform-search.js +4 -3
  53. package/dist/server/routes/run-log.d.ts +12 -0
  54. package/dist/server/routes/run-log.js +3 -2
  55. package/dist/server/routes/setup-info.d.ts +12 -0
  56. package/dist/server/routes/setup-info.js +3 -2
  57. package/dist/server/services/configure-indexing.d.ts +23 -23
  58. package/dist/server/services/configure-indexing.js +30 -18
  59. package/dist/server/services/es-interface.d.ts +27 -4
  60. package/dist/server/services/es-interface.js +13 -14
  61. package/dist/server/services/helper.d.ts +34 -33
  62. package/dist/server/services/helper.js +31 -23
  63. package/dist/server/services/index.d.ts +124 -7
  64. package/dist/server/services/index.js +19 -15
  65. package/dist/server/services/log-indexing.d.ts +8 -0
  66. package/dist/server/services/log-indexing.js +8 -7
  67. package/dist/server/services/perform-indexing.d.ts +8 -0
  68. package/dist/server/services/perform-indexing.js +29 -16
  69. package/dist/server/services/schedule-indexing.d.ts +19 -0
  70. package/dist/server/services/schedule-indexing.js +13 -12
  71. package/dist/server/services/transform-content.d.ts +7 -2
  72. package/dist/server/services/transform-content.js +4 -3
  73. package/package.json +4 -2
  74. package/dist/strapi-admin.d.ts +0 -0
  75. package/dist/strapi-admin.js +0 -2
  76. package/dist/strapi-server.d.ts +0 -0
  77. package/dist/strapi-server.js +0 -2
@@ -1,24 +1,24 @@
1
- declare const getPluginStore: () => {
2
- get(params: Partial<{
3
- key: string;
4
- type?: string;
5
- environment?: string;
6
- name?: string;
7
- tag?: string;
8
- }>): Promise<unknown>;
9
- set(params: Partial<{
10
- key: string;
11
- value: unknown;
12
- type?: string;
13
- environment?: string;
14
- name?: string;
15
- tag?: string;
16
- }>): Promise<void>;
17
- delete(params: Partial<{
18
- key: string;
19
- type?: string;
20
- environment?: string;
21
- name?: string;
22
- tag?: string;
23
- }>): Promise<void>;
1
+ declare const _default: ({ strapi }: {
2
+ strapi: any;
3
+ }) => {
4
+ initializeStrapiElasticsearch(): Promise<void>;
5
+ markInitialized(): Promise<void>;
6
+ isInitialized(): any;
7
+ cacheConfig(): Promise<void>;
8
+ getCollectionConfig({ collectionName }: {
9
+ collectionName: any;
10
+ }): Promise<{} | null>;
11
+ getCollectionsConfiguredForIndexing(): Promise<string[]>;
12
+ isCollectionConfiguredToBeIndexed({ collectionName }: {
13
+ collectionName: any;
14
+ }): Promise<boolean>;
15
+ getContentConfig(): Promise<any>;
16
+ importContentConfig({ config }: {
17
+ config: any;
18
+ }): Promise<any>;
19
+ setContentConfig({ collection, config }: {
20
+ collection: any;
21
+ config: any;
22
+ }): Promise<any>;
24
23
  };
24
+ export default _default;
@@ -1,4 +1,5 @@
1
1
  'use strict';
2
+ Object.defineProperty(exports, "__esModule", { value: true });
2
3
  const getPluginStore = () => {
3
4
  return strapi.store({
4
5
  environment: '',
@@ -6,7 +7,7 @@ const getPluginStore = () => {
6
7
  name: 'elasticsearch',
7
8
  });
8
9
  };
9
- module.exports = ({ strapi }) => ({
10
+ exports.default = ({ strapi }) => ({
10
11
  async initializeStrapiElasticsearch() {
11
12
  await this.cacheConfig();
12
13
  },
@@ -16,8 +17,7 @@ module.exports = ({ strapi }) => ({
16
17
  strapi.elasticsearch.initialized = true;
17
18
  },
18
19
  isInitialized() {
19
- var _a;
20
- return ((_a = strapi.elasticsearch) === null || _a === void 0 ? void 0 : _a.initialized) || false;
20
+ return strapi.elasticsearch?.initialized || false;
21
21
  },
22
22
  async cacheConfig() {
23
23
  if (!strapi.elasticsearch)
@@ -57,7 +57,14 @@ module.exports = ({ strapi }) => ({
57
57
  return collectionsToIndex.includes(collectionName);
58
58
  },
59
59
  async getContentConfig() {
60
- const fieldsToExclude = ['createdAt', 'createdBy', 'publishedAt', 'publishedBy', 'updatedAt', 'updatedBy'];
60
+ const fieldsToExclude = [
61
+ 'createdAt',
62
+ 'createdBy',
63
+ 'publishedAt',
64
+ 'publishedBy',
65
+ 'updatedAt',
66
+ 'updatedBy',
67
+ ];
61
68
  const pluginStore = getPluginStore();
62
69
  const settings = await pluginStore.get({ key: 'configsettings' });
63
70
  const contentTypes = strapi.contentTypes;
@@ -69,16 +76,18 @@ module.exports = ({ strapi }) => ({
69
76
  const listOfAttributes = Object.keys(collectionAttributes).filter((i) => fieldsToExclude.includes(i) === false);
70
77
  for (let k = 0; k < listOfAttributes.length; k++) {
71
78
  const currentAttribute = listOfAttributes[k];
72
- let attributeType = "regular";
73
- if (typeof collectionAttributes[currentAttribute]["type"] !== "undefined"
74
- && collectionAttributes[currentAttribute]["type"] !== null) {
75
- if (collectionAttributes[currentAttribute]["type"] === "component")
76
- attributeType = "component";
77
- else if (collectionAttributes[currentAttribute]["type"] === "dynamiczone")
78
- attributeType = "dynamiczone";
79
+ let attributeType = 'regular';
80
+ if (typeof collectionAttributes[currentAttribute]['type'] !== 'undefined' &&
81
+ collectionAttributes[currentAttribute]['type'] !== null) {
82
+ if (collectionAttributes[currentAttribute]['type'] === 'component')
83
+ attributeType = 'component';
84
+ else if (collectionAttributes[currentAttribute]['type'] === 'dynamiczone')
85
+ attributeType = 'dynamiczone';
79
86
  }
80
- apiContentConfig[apiContentTypes[r]][listOfAttributes[k]] = { index: false,
81
- type: attributeType };
87
+ apiContentConfig[apiContentTypes[r]][listOfAttributes[k]] = {
88
+ index: false,
89
+ type: attributeType,
90
+ };
82
91
  }
83
92
  }
84
93
  if (settings) {
@@ -90,12 +99,15 @@ module.exports = ({ strapi }) => ({
90
99
  const attribsForCollection = Object.keys(apiContentConfig[collections[r]]);
91
100
  for (let s = 0; s < attribsForCollection.length; s++) {
92
101
  if (!Object.keys(objSettings['contentConfig'][collections[r]]).includes(attribsForCollection[s])) {
93
- objSettings['contentConfig'][collections[r]][attribsForCollection[s]] = { index: false,
94
- type: apiContentConfig[collections[r]][attribsForCollection[s]].type };
102
+ objSettings['contentConfig'][collections[r]][attribsForCollection[s]] = {
103
+ index: false,
104
+ type: apiContentConfig[collections[r]][attribsForCollection[s]].type,
105
+ };
95
106
  }
96
107
  else {
97
108
  if (!Object.keys(objSettings['contentConfig'][collections[r]][attribsForCollection[s]]).includes('type'))
98
- objSettings['contentConfig'][collections[r]][attribsForCollection[s]]['type'] = apiContentConfig[collections[r]][attribsForCollection[s]].type;
109
+ objSettings['contentConfig'][collections[r]][attribsForCollection[s]]['type'] =
110
+ apiContentConfig[collections[r]][attribsForCollection[s]].type;
99
111
  }
100
112
  }
101
113
  }
@@ -120,7 +132,7 @@ module.exports = ({ strapi }) => ({
120
132
  await pluginStore.set({ key: 'configsettings', value: stringifySettings });
121
133
  }
122
134
  else {
123
- const newSettings = JSON.stringify({ 'contentConfig': config });
135
+ const newSettings = JSON.stringify({ contentConfig: config });
124
136
  await pluginStore.set({ key: 'configsettings', value: newSettings });
125
137
  }
126
138
  const updatedSettings = await pluginStore.get({ key: 'configsettings' });
@@ -148,7 +160,7 @@ module.exports = ({ strapi }) => ({
148
160
  await pluginStore.set({ key: 'configsettings', value: stringifySettings });
149
161
  }
150
162
  else {
151
- const newSettings = JSON.stringify({ 'contentConfig': config });
163
+ const newSettings = JSON.stringify({ contentConfig: config });
152
164
  await pluginStore.set({ key: 'configsettings', value: newSettings });
153
165
  }
154
166
  const updatedSettings = await pluginStore.get({ key: 'configsettings' });
@@ -1,4 +1,27 @@
1
- declare const Client: any;
2
- declare const fs: any;
3
- declare const path: any;
4
- declare let client: null;
1
+ declare const _default: ({ strapi }: {
2
+ strapi: any;
3
+ }) => {
4
+ initializeSearchEngine({ host, uname, password, cert }: {
5
+ host: any;
6
+ uname: any;
7
+ password: any;
8
+ cert: any;
9
+ }): Promise<void>;
10
+ createIndex(indexName: any): Promise<void>;
11
+ deleteIndex(indexName: any): Promise<void>;
12
+ attachAliasToIndex(indexName: any): Promise<void>;
13
+ checkESConnection(): Promise<boolean>;
14
+ indexDataToSpecificIndex({ itemId, itemData }: {
15
+ itemId: any;
16
+ itemData: any;
17
+ }, iName: any): Promise<void>;
18
+ indexData({ itemId, itemData }: {
19
+ itemId: any;
20
+ itemData: any;
21
+ }): Promise<void>;
22
+ removeItemFromIndex({ itemId }: {
23
+ itemId: any;
24
+ }): Promise<void>;
25
+ searchData(searchQuery: any): Promise<any>;
26
+ };
27
+ export default _default;
@@ -1,21 +1,20 @@
1
1
  "use strict";
2
- const { Client } = require('@elastic/elasticsearch');
3
- const fs = require('fs');
4
- const path = require('path');
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const elasticsearch_1 = require("@elastic/elasticsearch");
5
4
  let client = null;
6
- module.exports = ({ strapi }) => ({
5
+ exports.default = ({ strapi }) => ({
7
6
  async initializeSearchEngine({ host, uname, password, cert }) {
8
7
  try {
9
- client = new Client({
8
+ client = new elasticsearch_1.Client({
10
9
  node: host,
11
10
  auth: {
12
11
  username: uname,
13
- password: password
12
+ password: password,
14
13
  },
15
14
  tls: {
16
15
  ca: cert,
17
- rejectUnauthorized: false
18
- }
16
+ rejectUnauthorized: false,
17
+ },
19
18
  });
20
19
  }
21
20
  catch (err) {
@@ -27,7 +26,7 @@ module.exports = ({ strapi }) => ({
27
26
  console.error('strapi-plugin-elasticsearch : Error while initializing connection to ElasticSearch.');
28
27
  console.error(err);
29
28
  }
30
- throw (err);
29
+ throw err;
31
30
  }
32
31
  },
33
32
  async createIndex(indexName) {
@@ -54,7 +53,7 @@ module.exports = ({ strapi }) => ({
54
53
  async deleteIndex(indexName) {
55
54
  try {
56
55
  await client.indices.delete({
57
- index: indexName
56
+ index: indexName,
58
57
  });
59
58
  }
60
59
  catch (err) {
@@ -112,7 +111,7 @@ module.exports = ({ strapi }) => ({
112
111
  await client.index({
113
112
  index: iName,
114
113
  id: itemId,
115
- document: itemData
114
+ document: itemData,
116
115
  });
117
116
  await client.indices.refresh({ index: iName });
118
117
  }
@@ -131,7 +130,7 @@ module.exports = ({ strapi }) => ({
131
130
  try {
132
131
  await client.delete({
133
132
  index: pluginConfig.indexAliasName,
134
- id: itemId
133
+ id: itemId,
135
134
  });
136
135
  await client.indices.refresh({ index: pluginConfig.indexAliasName });
137
136
  }
@@ -149,7 +148,7 @@ module.exports = ({ strapi }) => ({
149
148
  const pluginConfig = await strapi.config.get('plugin.elasticsearch');
150
149
  const result = await client.search({
151
150
  index: pluginConfig.indexAliasName,
152
- ...searchQuery
151
+ ...searchQuery,
153
152
  });
154
153
  return result;
155
154
  }
@@ -157,5 +156,5 @@ module.exports = ({ strapi }) => ({
157
156
  console.log('Search : elasticClient.searchData : Error encountered while making a search request to ElasticSearch.');
158
157
  throw err;
159
158
  }
160
- }
159
+ },
161
160
  });
@@ -1,34 +1,35 @@
1
- declare const isEmpty: any, merge: any;
2
- declare const transformServiceProvider: any;
3
- declare const getPluginStore: () => {
4
- get(params: Partial<{
5
- key: string;
6
- type?: string;
7
- environment?: string;
8
- name?: string;
9
- tag?: string;
10
- }>): Promise<unknown>;
11
- set(params: Partial<{
12
- key: string;
13
- value: unknown;
14
- type?: string;
15
- environment?: string;
16
- name?: string;
17
- tag?: string;
18
- }>): Promise<void>;
19
- delete(params: Partial<{
20
- key: string;
21
- type?: string;
22
- environment?: string;
23
- name?: string;
24
- tag?: string;
25
- }>): Promise<void>;
1
+ declare const _default: ({ strapi }: {
2
+ strapi: any;
3
+ }) => {
4
+ getElasticsearchInfo(): Promise<{
5
+ indexingCronSchedule: any;
6
+ elasticHost: any;
7
+ elasticUserName: any;
8
+ elasticCertificate: any;
9
+ elasticIndexAlias: any;
10
+ connected: any;
11
+ initialized: any;
12
+ }>;
13
+ isCollectionDraftPublish({ collectionName }: {
14
+ collectionName: any;
15
+ }): boolean;
16
+ getPopulateAttribute({ collectionName }: {
17
+ collectionName: any;
18
+ }): true | {
19
+ populate: never;
20
+ } | undefined;
21
+ getIndexItemId({ collectionName, itemId }: {
22
+ collectionName: any;
23
+ itemId: any;
24
+ }): string;
25
+ getCurrentIndexName(): Promise<string>;
26
+ getIncrementedIndexName(): Promise<string>;
27
+ storeCurrentIndexName(indexName: any): Promise<void>;
28
+ modifySubfieldsConfigForExtractor(collectionConfig: any): any;
29
+ extractDataToIndex({ collectionName, data, collectionConfig }: {
30
+ collectionName: any;
31
+ data: any;
32
+ collectionConfig: any;
33
+ }): {};
26
34
  };
27
- declare const getModelPopulationAttributes: (model: any) => any;
28
- declare const getFullPopulateObject: (modelUid: any, maxDepth: number | undefined, ignore: any) => true | {
29
- populate: {};
30
- } | undefined;
31
- declare function extractSubfieldData({ config, data }: {
32
- config: any;
33
- data: any;
34
- }): string;
35
+ export default _default;
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  ///START : via https://raw.githubusercontent.com/Barelydead/strapi-plugin-populate-deep/main/server/helpers/index.js
3
- const { isEmpty, merge } = require("lodash/fp");
4
- const transformServiceProvider = require('./transform-content');
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const fp_1 = require("lodash/fp");
8
+ const transform_content_1 = __importDefault(require("./transform-content"));
5
9
  const getPluginStore = () => {
6
10
  return strapi.store({
7
11
  environment: '',
@@ -29,7 +33,7 @@ const getFullPopulateObject = (modelUid, maxDepth = 20, ignore) => {
29
33
  if (ignore && !ignore.includes(model.collectionName))
30
34
  ignore.push(model.collectionName);
31
35
  for (const [key, value] of Object.entries(getModelPopulationAttributes(model))) {
32
- if (ignore === null || ignore === void 0 ? void 0 : ignore.includes(key))
36
+ if (ignore?.includes(key))
33
37
  continue;
34
38
  if (value) {
35
39
  if (value.type === "component") {
@@ -38,9 +42,9 @@ const getFullPopulateObject = (modelUid, maxDepth = 20, ignore) => {
38
42
  else if (value.type === "dynamiczone") {
39
43
  const dynamicPopulate = value.components.reduce((prev, cur) => {
40
44
  const curPopulate = getFullPopulateObject(cur, maxDepth - 1);
41
- return curPopulate === true ? prev : merge(prev, curPopulate);
45
+ return curPopulate === true ? prev : (0, fp_1.merge)(prev, curPopulate);
42
46
  }, {});
43
- populate[key] = isEmpty(dynamicPopulate) ? true : dynamicPopulate;
47
+ populate[key] = (0, fp_1.isEmpty)(dynamicPopulate) ? true : dynamicPopulate;
44
48
  }
45
49
  else if (value.type === "relation") {
46
50
  const relationPopulate = getFullPopulateObject(value.target, (key === 'localizations') && maxDepth > 2 ? 1 : maxDepth - 1, ignore);
@@ -53,7 +57,7 @@ const getFullPopulateObject = (modelUid, maxDepth = 20, ignore) => {
53
57
  }
54
58
  }
55
59
  }
56
- return isEmpty(populate) ? true : { populate };
60
+ return (0, fp_1.isEmpty)(populate) ? true : { populate };
57
61
  };
58
62
  ///END : via https://raw.githubusercontent.com/Barelydead/strapi-plugin-populate-deep/main/server/helpers/index.js
59
63
  /*
@@ -109,7 +113,7 @@ function extractSubfieldData({ config, data }) {
109
113
  let val = extractItem[conf['field']];
110
114
  if (Object.keys(conf).includes('transform')
111
115
  && conf['transform'] === 'markdown')
112
- val = transformServiceProvider.transform({ content: val, from: 'markdown' });
116
+ val = transform_content_1.default.transform({ content: val, from: 'markdown' });
113
117
  returnData = returnData + '\n' + val;
114
118
  }
115
119
  else if (conf.component === extractItem.__component &&
@@ -126,7 +130,7 @@ function extractSubfieldData({ config, data }) {
126
130
  let val = extractItem[conf['field']];
127
131
  if (Object.keys(conf).includes('transform')
128
132
  && conf['transform'] === 'markdown')
129
- val = transformServiceProvider.transform({ content: val, from: 'markdown' });
133
+ val = transform_content_1.default.transform({ content: val, from: 'markdown' });
130
134
  returnData = returnData + '\n' + val;
131
135
  }
132
136
  else if (Object.keys(conf).includes('subfields')) {
@@ -155,24 +159,28 @@ function extractSubfieldData({ config, data }) {
155
159
  }
156
160
  return returnData;
157
161
  }
158
- module.exports = ({ strapi }) => ({
162
+ exports.default = ({ strapi }) => ({
159
163
  async getElasticsearchInfo() {
160
164
  const configureService = strapi.plugins['elasticsearch'].services.configureIndexing;
161
165
  const esInterface = strapi.plugins['elasticsearch'].services.esInterface;
162
166
  const pluginConfig = await strapi.config.get('plugin.elasticsearch');
163
167
  const connected = pluginConfig.searchConnector && pluginConfig.searchConnector.host
164
- ? await esInterface.checkESConnection() : false;
168
+ ? await esInterface.checkESConnection()
169
+ : false;
165
170
  return {
166
- indexingCronSchedule: pluginConfig.indexingCronSchedule || "Not configured",
167
- elasticHost: pluginConfig.searchConnector ?
168
- pluginConfig.searchConnector.host || "Not configured" : "Not configured",
169
- elasticUserName: pluginConfig.searchConnector ?
170
- pluginConfig.searchConnector.username || "Not configured" : "Not configured",
171
- elasticCertificate: pluginConfig.searchConnector ?
172
- pluginConfig.searchConnector.certificate || "Not configured" : "Not configured",
173
- elasticIndexAlias: pluginConfig.indexAliasName || "Not configured",
171
+ indexingCronSchedule: pluginConfig.indexingCronSchedule || 'Not configured',
172
+ elasticHost: pluginConfig.searchConnector
173
+ ? pluginConfig.searchConnector.host || 'Not configured'
174
+ : 'Not configured',
175
+ elasticUserName: pluginConfig.searchConnector
176
+ ? pluginConfig.searchConnector.username || 'Not configured'
177
+ : 'Not configured',
178
+ elasticCertificate: pluginConfig.searchConnector
179
+ ? pluginConfig.searchConnector.certificate || 'Not configured'
180
+ : 'Not configured',
181
+ elasticIndexAlias: pluginConfig.indexAliasName || 'Not configured',
174
182
  connected: connected,
175
- initialized: configureService.isInitialized()
183
+ initialized: configureService.isInitialized(),
176
184
  };
177
185
  },
178
186
  isCollectionDraftPublish({ collectionName }) {
@@ -210,11 +218,11 @@ module.exports = ({ strapi }) => ({
210
218
  const settings = await pluginStore.get({ key: 'configsettings' });
211
219
  if (settings) {
212
220
  const objSettings = JSON.parse(settings);
213
- objSettings['indexConfig'] = { 'name': indexName };
221
+ objSettings['indexConfig'] = { name: indexName };
214
222
  await pluginStore.set({ key: 'configsettings', value: JSON.stringify(objSettings) });
215
223
  }
216
224
  else {
217
- const newSettings = JSON.stringify({ 'indexConfig': { 'name': indexName } });
225
+ const newSettings = JSON.stringify({ indexConfig: { name: indexName } });
218
226
  await pluginStore.set({ key: 'configsettings', value: newSettings });
219
227
  }
220
228
  },
@@ -256,7 +264,7 @@ module.exports = ({ strapi }) => ({
256
264
  val = data[fti[k]];
257
265
  if (Object.keys(fieldConfig).includes('transform') &&
258
266
  fieldConfig['transform'] === 'markdown')
259
- val = transformServiceProvider.transform({ content: val, from: 'markdown' });
267
+ val = transform_content_1.default.transform({ content: val, from: 'markdown' });
260
268
  }
261
269
  if (Object.keys(fieldConfig).includes('searchFieldName'))
262
270
  document[fieldConfig['searchFieldName']] = val;
@@ -265,5 +273,5 @@ module.exports = ({ strapi }) => ({
265
273
  }
266
274
  }
267
275
  return document;
268
- }
276
+ },
269
277
  });
@@ -1,7 +1,124 @@
1
- declare const configureIndexing: any;
2
- declare const scheduleIndexing: any;
3
- declare const esInterface: any;
4
- declare const indexer: any;
5
- declare const logIndexing: any;
6
- declare const helper: any;
7
- declare const transformContent: any;
1
+ declare const _default: {
2
+ configureIndexing: ({ strapi }: {
3
+ strapi: any;
4
+ }) => {
5
+ initializeStrapiElasticsearch(): Promise<void>;
6
+ markInitialized(): Promise<void>;
7
+ isInitialized(): any;
8
+ cacheConfig(): Promise<void>;
9
+ getCollectionConfig({ collectionName }: {
10
+ collectionName: any;
11
+ }): Promise<{} | null>;
12
+ getCollectionsConfiguredForIndexing(): Promise<string[]>;
13
+ isCollectionConfiguredToBeIndexed({ collectionName }: {
14
+ collectionName: any;
15
+ }): Promise<boolean>;
16
+ getContentConfig(): Promise<any>;
17
+ importContentConfig({ config }: {
18
+ config: any;
19
+ }): Promise<any>;
20
+ setContentConfig({ collection, config }: {
21
+ collection: any;
22
+ config: any;
23
+ }): Promise<any>;
24
+ };
25
+ scheduleIndexing: ({ strapi }: {
26
+ strapi: any;
27
+ }) => {
28
+ addFullSiteIndexingTask(): Promise<any>;
29
+ addCollectionToIndex({ collectionUid }: {
30
+ collectionUid: any;
31
+ }): Promise<any>;
32
+ addItemToIndex({ collectionUid, recordId }: {
33
+ collectionUid: any;
34
+ recordId: any;
35
+ }): Promise<any>;
36
+ removeItemFromIndex({ collectionUid, recordId }: {
37
+ collectionUid: any;
38
+ recordId: any;
39
+ }): Promise<void>;
40
+ getItemsPendingToBeIndexed(): Promise<any>;
41
+ markIndexingTaskComplete(recId: any): Promise<void>;
42
+ };
43
+ esInterface: ({ strapi }: {
44
+ strapi: any;
45
+ }) => {
46
+ initializeSearchEngine({ host, uname, password, cert }: {
47
+ host: any;
48
+ uname: any;
49
+ password: any;
50
+ cert: any;
51
+ }): Promise<void>;
52
+ createIndex(indexName: any): Promise<void>;
53
+ deleteIndex(indexName: any): Promise<void>;
54
+ attachAliasToIndex(indexName: any): Promise<void>;
55
+ checkESConnection(): Promise<boolean>;
56
+ indexDataToSpecificIndex({ itemId, itemData }: {
57
+ itemId: any;
58
+ itemData: any;
59
+ }, iName: any): Promise<void>;
60
+ indexData({ itemId, itemData }: {
61
+ itemId: any;
62
+ itemData: any;
63
+ }): Promise<void>;
64
+ removeItemFromIndex({ itemId }: {
65
+ itemId: any;
66
+ }): Promise<void>;
67
+ searchData(searchQuery: any): Promise<any>;
68
+ };
69
+ indexer: ({ strapi }: {
70
+ strapi: any;
71
+ }) => {
72
+ rebuildIndex(): Promise<boolean | undefined>;
73
+ indexCollection(collectionName: any, indexName?: null): Promise<boolean>;
74
+ indexPendingData(): Promise<boolean>;
75
+ };
76
+ logIndexing: ({ strapi }: {
77
+ strapi: any;
78
+ }) => {
79
+ recordIndexingPass(message: any): Promise<void>;
80
+ recordIndexingFail(message: any): Promise<void>;
81
+ fetchIndexingLogs(count?: number): Promise<any>;
82
+ };
83
+ helper: ({ strapi }: {
84
+ strapi: any;
85
+ }) => {
86
+ getElasticsearchInfo(): Promise<{
87
+ indexingCronSchedule: any;
88
+ elasticHost: any;
89
+ elasticUserName: any;
90
+ elasticCertificate: any;
91
+ elasticIndexAlias: any;
92
+ connected: any;
93
+ initialized: any;
94
+ }>;
95
+ isCollectionDraftPublish({ collectionName }: {
96
+ collectionName: any;
97
+ }): boolean;
98
+ getPopulateAttribute({ collectionName }: {
99
+ collectionName: any;
100
+ }): true | {
101
+ populate: never;
102
+ } | undefined;
103
+ getIndexItemId({ collectionName, itemId }: {
104
+ collectionName: any;
105
+ itemId: any;
106
+ }): string;
107
+ getCurrentIndexName(): Promise<string>;
108
+ getIncrementedIndexName(): Promise<string>;
109
+ storeCurrentIndexName(indexName: any): Promise<void>;
110
+ modifySubfieldsConfigForExtractor(collectionConfig: any): any;
111
+ extractDataToIndex({ collectionName, data, collectionConfig }: {
112
+ collectionName: any;
113
+ data: any;
114
+ collectionConfig: any;
115
+ }): {};
116
+ };
117
+ transformContent: {
118
+ transform({ content, from }: {
119
+ content: any;
120
+ from: any;
121
+ }): any;
122
+ };
123
+ };
124
+ export default _default;
@@ -1,17 +1,21 @@
1
1
  'use strict';
2
- const configureIndexing = require('./configure-indexing');
3
- const scheduleIndexing = require('./schedule-indexing');
4
- const esInterface = require('./es-interface');
5
- const indexer = require('./perform-indexing');
6
- const logIndexing = require('./log-indexing');
7
- const helper = require('./helper');
8
- const transformContent = require('./transform-content');
9
- module.exports = {
10
- configureIndexing,
11
- scheduleIndexing,
12
- esInterface,
13
- indexer,
14
- logIndexing,
15
- helper,
16
- transformContent
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const configure_indexing_1 = __importDefault(require("./configure-indexing"));
7
+ const schedule_indexing_1 = __importDefault(require("./schedule-indexing"));
8
+ const es_interface_1 = __importDefault(require("./es-interface"));
9
+ const perform_indexing_1 = __importDefault(require("./perform-indexing"));
10
+ const log_indexing_1 = __importDefault(require("./log-indexing"));
11
+ const helper_1 = __importDefault(require("./helper"));
12
+ const transform_content_1 = __importDefault(require("./transform-content"));
13
+ exports.default = {
14
+ configureIndexing: configure_indexing_1.default,
15
+ scheduleIndexing: schedule_indexing_1.default,
16
+ esInterface: es_interface_1.default,
17
+ indexer: perform_indexing_1.default,
18
+ logIndexing: log_indexing_1.default,
19
+ helper: helper_1.default,
20
+ transformContent: transform_content_1.default,
17
21
  };
@@ -0,0 +1,8 @@
1
+ declare const _default: ({ strapi }: {
2
+ strapi: any;
3
+ }) => {
4
+ recordIndexingPass(message: any): Promise<void>;
5
+ recordIndexingFail(message: any): Promise<void>;
6
+ fetchIndexingLogs(count?: number): Promise<any>;
7
+ };
8
+ export default _default;