@webiny/api-headless-cms-utils-os 0.0.0-unstable.0d717d18dd

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 (302) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +11 -0
  3. package/configurations.d.ts +10 -0
  4. package/configurations.js +24 -0
  5. package/configurations.js.map +1 -0
  6. package/exports/api/cms/opensearch.d.ts +17 -0
  7. package/exports/api/cms/opensearch.js +17 -0
  8. package/features/CmsEntryOpenSearchBodyBuilder/CmsEntryOpenSearchBodyBuilder.d.ts +30 -0
  9. package/features/CmsEntryOpenSearchBodyBuilder/CmsEntryOpenSearchBodyBuilder.js +144 -0
  10. package/features/CmsEntryOpenSearchBodyBuilder/CmsEntryOpenSearchBodyBuilder.js.map +1 -0
  11. package/features/CmsEntryOpenSearchBodyBuilder/abstractions.d.ts +18 -0
  12. package/features/CmsEntryOpenSearchBodyBuilder/abstractions.js +5 -0
  13. package/features/CmsEntryOpenSearchBodyBuilder/abstractions.js.map +1 -0
  14. package/features/CmsEntryOpenSearchBodyBuilder/feature.d.ts +4 -0
  15. package/features/CmsEntryOpenSearchBodyBuilder/feature.js +11 -0
  16. package/features/CmsEntryOpenSearchBodyBuilder/feature.js.map +1 -0
  17. package/features/CmsEntryOpenSearchBodyBuilder/index.d.ts +2 -0
  18. package/features/CmsEntryOpenSearchBodyBuilder/index.js +2 -0
  19. package/features/CmsEntryOpenSearchBodyBuilder/sort.d.ts +17 -0
  20. package/features/CmsEntryOpenSearchBodyBuilder/sort.js +76 -0
  21. package/features/CmsEntryOpenSearchBodyBuilder/sort.js.map +1 -0
  22. package/features/CmsEntryOpenSearchBodyModifier/abstractions.d.ts +16 -0
  23. package/features/CmsEntryOpenSearchBodyModifier/abstractions.js +5 -0
  24. package/features/CmsEntryOpenSearchBodyModifier/abstractions.js.map +1 -0
  25. package/features/CmsEntryOpenSearchBodyModifier/index.d.ts +1 -0
  26. package/features/CmsEntryOpenSearchBodyModifier/index.js +1 -0
  27. package/features/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.d.ts +17 -0
  28. package/features/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.js +119 -0
  29. package/features/CmsEntryOpenSearchExecFiltering/CmsEntryOpenSearchExecFiltering.js.map +1 -0
  30. package/features/CmsEntryOpenSearchExecFiltering/abstractions.d.ts +17 -0
  31. package/features/CmsEntryOpenSearchExecFiltering/abstractions.js +5 -0
  32. package/features/CmsEntryOpenSearchExecFiltering/abstractions.js.map +1 -0
  33. package/features/CmsEntryOpenSearchExecFiltering/applyFiltering.d.ts +11 -0
  34. package/features/CmsEntryOpenSearchExecFiltering/applyFiltering.js +31 -0
  35. package/features/CmsEntryOpenSearchExecFiltering/applyFiltering.js.map +1 -0
  36. package/features/CmsEntryOpenSearchExecFiltering/feature.d.ts +4 -0
  37. package/features/CmsEntryOpenSearchExecFiltering/feature.js +11 -0
  38. package/features/CmsEntryOpenSearchExecFiltering/feature.js.map +1 -0
  39. package/features/CmsEntryOpenSearchExecFiltering/index.d.ts +2 -0
  40. package/features/CmsEntryOpenSearchExecFiltering/index.js +2 -0
  41. package/features/CmsEntryOpenSearchExecFiltering/populated.d.ts +2 -0
  42. package/features/CmsEntryOpenSearchExecFiltering/populated.js +12 -0
  43. package/features/CmsEntryOpenSearchExecFiltering/populated.js.map +1 -0
  44. package/features/CmsEntryOpenSearchExecFiltering/values.d.ts +2 -0
  45. package/features/CmsEntryOpenSearchExecFiltering/values.js +15 -0
  46. package/features/CmsEntryOpenSearchExecFiltering/values.js.map +1 -0
  47. package/features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.d.ts +14 -0
  48. package/features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.js +42 -0
  49. package/features/CmsEntryOpenSearchFieldIndex/CmsEntryOpenSearchFieldIndexRegistry.js.map +1 -0
  50. package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.d.ts +32 -0
  51. package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.js +5 -0
  52. package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndex.js.map +1 -0
  53. package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.d.ts +11 -0
  54. package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.js +5 -0
  55. package/features/CmsEntryOpenSearchFieldIndex/abstractions/CmsEntryOpenSearchFieldIndexRegistry.js.map +1 -0
  56. package/features/CmsEntryOpenSearchFieldIndex/constants.d.ts +1 -0
  57. package/features/CmsEntryOpenSearchFieldIndex/constants.js +4 -0
  58. package/features/CmsEntryOpenSearchFieldIndex/constants.js.map +1 -0
  59. package/features/CmsEntryOpenSearchFieldIndex/feature.d.ts +4 -0
  60. package/features/CmsEntryOpenSearchFieldIndex/feature.js +29 -0
  61. package/features/CmsEntryOpenSearchFieldIndex/feature.js.map +1 -0
  62. package/features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.d.ts +11 -0
  63. package/features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.js +60 -0
  64. package/features/CmsEntryOpenSearchFieldIndex/fields/DateTimeFieldIndex.js.map +1 -0
  65. package/features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.d.ts +13 -0
  66. package/features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.js +33 -0
  67. package/features/CmsEntryOpenSearchFieldIndex/fields/DefaultFieldIndex.js.map +1 -0
  68. package/features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.d.ts +10 -0
  69. package/features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.js +21 -0
  70. package/features/CmsEntryOpenSearchFieldIndex/fields/JsonFieldIndex.js.map +1 -0
  71. package/features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.d.ts +10 -0
  72. package/features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.js +22 -0
  73. package/features/CmsEntryOpenSearchFieldIndex/fields/LongTextFieldIndex.js.map +1 -0
  74. package/features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.d.ts +11 -0
  75. package/features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.js +32 -0
  76. package/features/CmsEntryOpenSearchFieldIndex/fields/NumberFieldIndex.js.map +1 -0
  77. package/features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.d.ts +12 -0
  78. package/features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.js +107 -0
  79. package/features/CmsEntryOpenSearchFieldIndex/fields/ObjectFieldIndex.js.map +1 -0
  80. package/features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.d.ts +10 -0
  81. package/features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.js +21 -0
  82. package/features/CmsEntryOpenSearchFieldIndex/fields/RichTextFieldIndex.js.map +1 -0
  83. package/features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.d.ts +15 -0
  84. package/features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.js +40 -0
  85. package/features/CmsEntryOpenSearchFieldIndex/fields/TextCompressedFieldIndex.js.map +1 -0
  86. package/features/CmsEntryOpenSearchFieldIndex/fields/TextEncryptedFieldIndex.d.ts +15 -0
  87. package/features/CmsEntryOpenSearchFieldIndex/fields/TextEncryptedFieldIndex.js +40 -0
  88. package/features/CmsEntryOpenSearchFieldIndex/fields/TextEncryptedFieldIndex.js.map +1 -0
  89. package/features/CmsEntryOpenSearchFieldIndex/index.d.ts +3 -0
  90. package/features/CmsEntryOpenSearchFieldIndex/index.js +3 -0
  91. package/features/CmsEntryOpenSearchFieldPathFactory/CmsEntryOpenSearchFieldPathFactory.d.ts +11 -0
  92. package/features/CmsEntryOpenSearchFieldPathFactory/CmsEntryOpenSearchFieldPathFactory.js +40 -0
  93. package/features/CmsEntryOpenSearchFieldPathFactory/CmsEntryOpenSearchFieldPathFactory.js.map +1 -0
  94. package/features/CmsEntryOpenSearchFieldPathFactory/abstractions.d.ts +21 -0
  95. package/features/CmsEntryOpenSearchFieldPathFactory/abstractions.js +5 -0
  96. package/features/CmsEntryOpenSearchFieldPathFactory/abstractions.js.map +1 -0
  97. package/features/CmsEntryOpenSearchFieldPathFactory/feature.d.ts +4 -0
  98. package/features/CmsEntryOpenSearchFieldPathFactory/feature.js +11 -0
  99. package/features/CmsEntryOpenSearchFieldPathFactory/feature.js.map +1 -0
  100. package/features/CmsEntryOpenSearchFieldPathFactory/index.d.ts +2 -0
  101. package/features/CmsEntryOpenSearchFieldPathFactory/index.js +2 -0
  102. package/features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.d.ts +11 -0
  103. package/features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.js +36 -0
  104. package/features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.js.map +1 -0
  105. package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.d.ts +37 -0
  106. package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.js +5 -0
  107. package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.js.map +1 -0
  108. package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.d.ts +9 -0
  109. package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.js +5 -0
  110. package/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.js.map +1 -0
  111. package/features/CmsEntryOpenSearchFilter/constants.d.ts +1 -0
  112. package/features/CmsEntryOpenSearchFilter/constants.js +4 -0
  113. package/features/CmsEntryOpenSearchFilter/constants.js.map +1 -0
  114. package/features/CmsEntryOpenSearchFilter/feature.d.ts +4 -0
  115. package/features/CmsEntryOpenSearchFilter/feature.js +17 -0
  116. package/features/CmsEntryOpenSearchFilter/feature.js.map +1 -0
  117. package/features/CmsEntryOpenSearchFilter/fields/DefaultFilter.d.ts +9 -0
  118. package/features/CmsEntryOpenSearchFilter/fields/DefaultFilter.js +26 -0
  119. package/features/CmsEntryOpenSearchFilter/fields/DefaultFilter.js.map +1 -0
  120. package/features/CmsEntryOpenSearchFilter/fields/ObjectFilter.d.ts +9 -0
  121. package/features/CmsEntryOpenSearchFilter/fields/ObjectFilter.js +43 -0
  122. package/features/CmsEntryOpenSearchFilter/fields/ObjectFilter.js.map +1 -0
  123. package/features/CmsEntryOpenSearchFilter/fields/RefFilter.d.ts +9 -0
  124. package/features/CmsEntryOpenSearchFilter/fields/RefFilter.js +36 -0
  125. package/features/CmsEntryOpenSearchFilter/fields/RefFilter.js.map +1 -0
  126. package/features/CmsEntryOpenSearchFilter/index.d.ts +3 -0
  127. package/features/CmsEntryOpenSearchFilter/index.js +3 -0
  128. package/features/CmsEntryOpenSearchFullTextSearch/abstractions.d.ts +20 -0
  129. package/features/CmsEntryOpenSearchFullTextSearch/abstractions.js +5 -0
  130. package/features/CmsEntryOpenSearchFullTextSearch/abstractions.js.map +1 -0
  131. package/features/CmsEntryOpenSearchFullTextSearch/index.d.ts +1 -0
  132. package/features/CmsEntryOpenSearchFullTextSearch/index.js +1 -0
  133. package/features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.d.ts +11 -0
  134. package/features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.js +17 -0
  135. package/features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.js.map +1 -0
  136. package/features/CmsEntryOpenSearchIndex/abstractions.d.ts +14 -0
  137. package/features/CmsEntryOpenSearchIndex/abstractions.js +5 -0
  138. package/features/CmsEntryOpenSearchIndex/abstractions.js.map +1 -0
  139. package/features/CmsEntryOpenSearchIndex/feature.d.ts +4 -0
  140. package/features/CmsEntryOpenSearchIndex/feature.js +11 -0
  141. package/features/CmsEntryOpenSearchIndex/feature.js.map +1 -0
  142. package/features/CmsEntryOpenSearchIndex/index.d.ts +3 -0
  143. package/features/CmsEntryOpenSearchIndex/index.js +3 -0
  144. package/features/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.d.ts +13 -0
  145. package/features/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.js +65 -0
  146. package/features/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.js.map +1 -0
  147. package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateFromHandler.d.ts +11 -0
  148. package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateFromHandler.js +22 -0
  149. package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateFromHandler.js.map +1 -0
  150. package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateHandler.d.ts +11 -0
  151. package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateHandler.js +22 -0
  152. package/features/CmsEntryOpenSearchIndexCreate/ModelAfterCreateHandler.js.map +1 -0
  153. package/features/CmsEntryOpenSearchIndexCreate/abstractions.d.ts +12 -0
  154. package/features/CmsEntryOpenSearchIndexCreate/abstractions.js +5 -0
  155. package/features/CmsEntryOpenSearchIndexCreate/abstractions.js.map +1 -0
  156. package/features/CmsEntryOpenSearchIndexCreate/feature.d.ts +4 -0
  157. package/features/CmsEntryOpenSearchIndexCreate/feature.js +11 -0
  158. package/features/CmsEntryOpenSearchIndexCreate/feature.js.map +1 -0
  159. package/features/CmsEntryOpenSearchIndexCreate/index.d.ts +2 -0
  160. package/features/CmsEntryOpenSearchIndexCreate/index.js +2 -0
  161. package/features/CmsEntryOpenSearchIndexDelete/CmsEntryOpenSearchIndexDelete.d.ts +13 -0
  162. package/features/CmsEntryOpenSearchIndexDelete/CmsEntryOpenSearchIndexDelete.js +43 -0
  163. package/features/CmsEntryOpenSearchIndexDelete/CmsEntryOpenSearchIndexDelete.js.map +1 -0
  164. package/features/CmsEntryOpenSearchIndexDelete/ModelAfterDeleteHandler.d.ts +11 -0
  165. package/features/CmsEntryOpenSearchIndexDelete/ModelAfterDeleteHandler.js +22 -0
  166. package/features/CmsEntryOpenSearchIndexDelete/ModelAfterDeleteHandler.js.map +1 -0
  167. package/features/CmsEntryOpenSearchIndexDelete/abstractions.d.ts +12 -0
  168. package/features/CmsEntryOpenSearchIndexDelete/abstractions.js +5 -0
  169. package/features/CmsEntryOpenSearchIndexDelete/abstractions.js.map +1 -0
  170. package/features/CmsEntryOpenSearchIndexDelete/feature.d.ts +4 -0
  171. package/features/CmsEntryOpenSearchIndexDelete/feature.js +11 -0
  172. package/features/CmsEntryOpenSearchIndexDelete/feature.js.map +1 -0
  173. package/features/CmsEntryOpenSearchIndexDelete/index.d.ts +2 -0
  174. package/features/CmsEntryOpenSearchIndexDelete/index.js +2 -0
  175. package/features/CmsEntryOpenSearchOperatorList/CmsEntryOpenSearchOperatorList.d.ts +12 -0
  176. package/features/CmsEntryOpenSearchOperatorList/CmsEntryOpenSearchOperatorList.js +22 -0
  177. package/features/CmsEntryOpenSearchOperatorList/CmsEntryOpenSearchOperatorList.js.map +1 -0
  178. package/features/CmsEntryOpenSearchOperatorList/abstractions.d.ts +8 -0
  179. package/features/CmsEntryOpenSearchOperatorList/abstractions.js +5 -0
  180. package/features/CmsEntryOpenSearchOperatorList/abstractions.js.map +1 -0
  181. package/features/CmsEntryOpenSearchOperatorList/feature.d.ts +4 -0
  182. package/features/CmsEntryOpenSearchOperatorList/feature.js +11 -0
  183. package/features/CmsEntryOpenSearchOperatorList/feature.js.map +1 -0
  184. package/features/CmsEntryOpenSearchOperatorList/index.d.ts +2 -0
  185. package/features/CmsEntryOpenSearchOperatorList/index.js +2 -0
  186. package/features/CmsEntryOpenSearchQueryModifier/abstractions.d.ts +16 -0
  187. package/features/CmsEntryOpenSearchQueryModifier/abstractions.js +5 -0
  188. package/features/CmsEntryOpenSearchQueryModifier/abstractions.js.map +1 -0
  189. package/features/CmsEntryOpenSearchQueryModifier/index.d.ts +1 -0
  190. package/features/CmsEntryOpenSearchQueryModifier/index.js +1 -0
  191. package/features/CmsEntryOpenSearchSortModifier/abstractions.d.ts +15 -0
  192. package/features/CmsEntryOpenSearchSortModifier/abstractions.js +5 -0
  193. package/features/CmsEntryOpenSearchSortModifier/abstractions.js.map +1 -0
  194. package/features/CmsEntryOpenSearchSortModifier/index.d.ts +1 -0
  195. package/features/CmsEntryOpenSearchSortModifier/index.js +1 -0
  196. package/features/CmsEntryOpenSearchUtilsFeature.d.ts +4 -0
  197. package/features/CmsEntryOpenSearchUtilsFeature.js +37 -0
  198. package/features/CmsEntryOpenSearchUtilsFeature.js.map +1 -0
  199. package/features/CmsEntryOpenSearchValueSearch/CmsEntryOpenSearchValueSearchRegistry.d.ts +12 -0
  200. package/features/CmsEntryOpenSearchValueSearch/CmsEntryOpenSearchValueSearchRegistry.js +31 -0
  201. package/features/CmsEntryOpenSearchValueSearch/CmsEntryOpenSearchValueSearchRegistry.js.map +1 -0
  202. package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearch.d.ts +22 -0
  203. package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearch.js +5 -0
  204. package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearch.js.map +1 -0
  205. package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearchRegistry.d.ts +10 -0
  206. package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearchRegistry.js +5 -0
  207. package/features/CmsEntryOpenSearchValueSearch/abstractions/CmsEntryOpenSearchValueSearchRegistry.js.map +1 -0
  208. package/features/CmsEntryOpenSearchValueSearch/feature.d.ts +4 -0
  209. package/features/CmsEntryOpenSearchValueSearch/feature.js +17 -0
  210. package/features/CmsEntryOpenSearchValueSearch/feature.js.map +1 -0
  211. package/features/CmsEntryOpenSearchValueSearch/fields/RefSearch.d.ts +10 -0
  212. package/features/CmsEntryOpenSearchValueSearch/fields/RefSearch.js +21 -0
  213. package/features/CmsEntryOpenSearchValueSearch/fields/RefSearch.js.map +1 -0
  214. package/features/CmsEntryOpenSearchValueSearch/fields/SearchableJsonSearch.d.ts +10 -0
  215. package/features/CmsEntryOpenSearchValueSearch/fields/SearchableJsonSearch.js +44 -0
  216. package/features/CmsEntryOpenSearchValueSearch/fields/SearchableJsonSearch.js.map +1 -0
  217. package/features/CmsEntryOpenSearchValueSearch/fields/TimeSearch.d.ts +10 -0
  218. package/features/CmsEntryOpenSearchValueSearch/fields/TimeSearch.js +22 -0
  219. package/features/CmsEntryOpenSearchValueSearch/fields/TimeSearch.js.map +1 -0
  220. package/features/CmsEntryOpenSearchValueSearch/index.d.ts +3 -0
  221. package/features/CmsEntryOpenSearchValueSearch/index.js +3 -0
  222. package/features/CmsEntryOpenSearchValueTransformer/CmsEntryOpenSearchValueTransformer.d.ts +11 -0
  223. package/features/CmsEntryOpenSearchValueTransformer/CmsEntryOpenSearchValueTransformer.js +25 -0
  224. package/features/CmsEntryOpenSearchValueTransformer/CmsEntryOpenSearchValueTransformer.js.map +1 -0
  225. package/features/CmsEntryOpenSearchValueTransformer/abstractions.d.ts +13 -0
  226. package/features/CmsEntryOpenSearchValueTransformer/abstractions.js +5 -0
  227. package/features/CmsEntryOpenSearchValueTransformer/abstractions.js.map +1 -0
  228. package/features/CmsEntryOpenSearchValueTransformer/feature.d.ts +4 -0
  229. package/features/CmsEntryOpenSearchValueTransformer/feature.js +11 -0
  230. package/features/CmsEntryOpenSearchValueTransformer/feature.js.map +1 -0
  231. package/features/CmsEntryOpenSearchValueTransformer/index.d.ts +2 -0
  232. package/features/CmsEntryOpenSearchValueTransformer/index.js +2 -0
  233. package/features/CmsEntryOpenSearchValuesModifier/abstractions.d.ts +23 -0
  234. package/features/CmsEntryOpenSearchValuesModifier/abstractions.js +5 -0
  235. package/features/CmsEntryOpenSearchValuesModifier/abstractions.js.map +1 -0
  236. package/features/CmsEntryOpenSearchValuesModifier/index.d.ts +1 -0
  237. package/features/CmsEntryOpenSearchValuesModifier/index.js +1 -0
  238. package/features/CmsModelOpenSearchIndex/CmsModelOpenSearchIndexProvider.d.ts +15 -0
  239. package/features/CmsModelOpenSearchIndex/CmsModelOpenSearchIndexProvider.js +5 -0
  240. package/features/CmsModelOpenSearchIndex/CmsModelOpenSearchIndexProvider.js.map +1 -0
  241. package/features/CmsModelOpenSearchIndex/abstractions.d.ts +20 -0
  242. package/features/CmsModelOpenSearchIndex/abstractions.js +5 -0
  243. package/features/CmsModelOpenSearchIndex/abstractions.js.map +1 -0
  244. package/features/CmsModelOpenSearchIndex/index.d.ts +4 -0
  245. package/features/CmsModelOpenSearchIndex/index.js +2 -0
  246. package/helpers/entryIndexHelpers.d.ts +20 -0
  247. package/helpers/entryIndexHelpers.js +80 -0
  248. package/helpers/entryIndexHelpers.js.map +1 -0
  249. package/helpers/fieldIdentifier.d.ts +6 -0
  250. package/helpers/fieldIdentifier.js +23 -0
  251. package/helpers/fieldIdentifier.js.map +1 -0
  252. package/helpers/index.d.ts +2 -0
  253. package/helpers/index.js +2 -0
  254. package/index.d.ts +1 -0
  255. package/index.js +1 -0
  256. package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.d.ts +18 -0
  257. package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js +9 -0
  258. package/operations/entry/elasticsearch/assignMinimumShouldMatchToQuery.js.map +1 -0
  259. package/operations/entry/elasticsearch/fields/createSystemField.d.ts +4 -0
  260. package/operations/entry/elasticsearch/fields/createSystemField.js +9 -0
  261. package/operations/entry/elasticsearch/fields/createSystemField.js.map +1 -0
  262. package/operations/entry/elasticsearch/fields/live.d.ts +2 -0
  263. package/operations/entry/elasticsearch/fields/live.js +50 -0
  264. package/operations/entry/elasticsearch/fields/live.js.map +1 -0
  265. package/operations/entry/elasticsearch/fields/location.d.ts +2 -0
  266. package/operations/entry/elasticsearch/fields/location.js +50 -0
  267. package/operations/entry/elasticsearch/fields/location.js.map +1 -0
  268. package/operations/entry/elasticsearch/fields/state.d.ts +2 -0
  269. package/operations/entry/elasticsearch/fields/state.js +104 -0
  270. package/operations/entry/elasticsearch/fields/state.js.map +1 -0
  271. package/operations/entry/elasticsearch/fields.d.ts +12 -0
  272. package/operations/entry/elasticsearch/fields.js +207 -0
  273. package/operations/entry/elasticsearch/fields.js.map +1 -0
  274. package/operations/entry/elasticsearch/fullTextSearch.d.ts +13 -0
  275. package/operations/entry/elasticsearch/fullTextSearch.js +51 -0
  276. package/operations/entry/elasticsearch/fullTextSearch.js.map +1 -0
  277. package/operations/entry/elasticsearch/fullTextSearchFields.d.ts +8 -0
  278. package/operations/entry/elasticsearch/fullTextSearchFields.js +10 -0
  279. package/operations/entry/elasticsearch/fullTextSearchFields.js.map +1 -0
  280. package/operations/entry/elasticsearch/initialQuery.d.ts +17 -0
  281. package/operations/entry/elasticsearch/initialQuery.js +45 -0
  282. package/operations/entry/elasticsearch/initialQuery.js.map +1 -0
  283. package/operations/entry/elasticsearch/keyword.d.ts +2 -0
  284. package/operations/entry/elasticsearch/keyword.js +17 -0
  285. package/operations/entry/elasticsearch/keyword.js.map +1 -0
  286. package/operations/entry/elasticsearch/shouldIgnoreEsResponseError.d.ts +2 -0
  287. package/operations/entry/elasticsearch/shouldIgnoreEsResponseError.js +8 -0
  288. package/operations/entry/elasticsearch/shouldIgnoreEsResponseError.js.map +1 -0
  289. package/operations/entry/elasticsearch/types.d.ts +31 -0
  290. package/operations/entry/elasticsearch/types.js +0 -0
  291. package/operations/entry/recordType.d.ts +3 -0
  292. package/operations/entry/recordType.js +6 -0
  293. package/operations/entry/recordType.js.map +1 -0
  294. package/operations/entry/transformations/transformEntryToIndex.d.ts +10 -0
  295. package/operations/entry/transformations/transformEntryToIndex.js +20 -0
  296. package/operations/entry/transformations/transformEntryToIndex.js.map +1 -0
  297. package/package.json +33 -0
  298. package/types.d.ts +5 -0
  299. package/types.js +0 -0
  300. package/values/NoValueContainer.d.ts +5 -0
  301. package/values/NoValueContainer.js +11 -0
  302. package/values/NoValueContainer.js.map +1 -0
@@ -0,0 +1,2 @@
1
+ export { CmsEntryOpenSearchFieldPathFactoryFeature } from "./feature.js";
2
+ export { CmsEntryOpenSearchFieldPathFactory } from "./abstractions.js";
@@ -0,0 +1,2 @@
1
+ export { CmsEntryOpenSearchFieldPathFactoryFeature } from "./feature.js";
2
+ export { CmsEntryOpenSearchFieldPathFactory } from "./abstractions.js";
@@ -0,0 +1,11 @@
1
+ import { CmsEntryOpenSearchFilterRegistry as Abstraction } from "./abstractions/CmsEntryOpenSearchFilterRegistry.js";
2
+ import { CmsEntryOpenSearchFilter } from "./abstractions/CmsEntryOpenSearchFilter.js";
3
+ declare class CmsEntryOpenSearchFilterRegistryImpl implements Abstraction.Interface {
4
+ private readonly filters;
5
+ constructor(filters: CmsEntryOpenSearchFilter.Interface[]);
6
+ get(type: string): CmsEntryOpenSearchFilter.Interface;
7
+ }
8
+ export declare const CmsEntryOpenSearchFilterRegistry: typeof CmsEntryOpenSearchFilterRegistryImpl & {
9
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions/CmsEntryOpenSearchFilterRegistry.js").ICmsEntryOpenSearchFilterRegistry>;
10
+ };
11
+ export {};
@@ -0,0 +1,36 @@
1
+ import error from "@webiny/error";
2
+ import { CmsEntryOpenSearchFilterRegistry } from "./abstractions/CmsEntryOpenSearchFilterRegistry.js";
3
+ import { CmsEntryOpenSearchFilter } from "./abstractions/CmsEntryOpenSearchFilter.js";
4
+ import { getBaseFieldType } from "@webiny/api-headless-cms/utils/getBaseFieldType.js";
5
+ import { FILTER_DEFAULT } from "./constants.js";
6
+ class CmsEntryOpenSearchFilterRegistryImpl {
7
+ constructor(filters){
8
+ this.filters = filters;
9
+ }
10
+ get(type) {
11
+ const fieldType = getBaseFieldType({
12
+ type
13
+ });
14
+ const filter = this.filters.find((f)=>f.fieldType === fieldType);
15
+ if (filter) return filter;
16
+ const fallback = this.filters.find((f)=>f.fieldType === FILTER_DEFAULT);
17
+ if (fallback) return fallback;
18
+ throw new error(`There is no filter for the given field type "${fieldType}".`, "FILTER_REGISTRY_ERROR", {
19
+ fieldType
20
+ });
21
+ }
22
+ }
23
+ const CmsEntryOpenSearchFilterRegistry_CmsEntryOpenSearchFilterRegistry = CmsEntryOpenSearchFilterRegistry.createImplementation({
24
+ implementation: CmsEntryOpenSearchFilterRegistryImpl,
25
+ dependencies: [
26
+ [
27
+ CmsEntryOpenSearchFilter,
28
+ {
29
+ multiple: true
30
+ }
31
+ ]
32
+ ]
33
+ });
34
+ export { CmsEntryOpenSearchFilterRegistry_CmsEntryOpenSearchFilterRegistry as CmsEntryOpenSearchFilterRegistry };
35
+
36
+ //# sourceMappingURL=CmsEntryOpenSearchFilterRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.js","sources":["../../../src/features/CmsEntryOpenSearchFilter/CmsEntryOpenSearchFilterRegistry.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { CmsEntryOpenSearchFilterRegistry as Abstraction } from \"./abstractions/CmsEntryOpenSearchFilterRegistry.js\";\nimport { CmsEntryOpenSearchFilter } from \"./abstractions/CmsEntryOpenSearchFilter.js\";\nimport { getBaseFieldType } from \"@webiny/api-headless-cms/utils/getBaseFieldType.js\";\nimport { FILTER_DEFAULT } from \"./constants.js\";\n\nclass CmsEntryOpenSearchFilterRegistryImpl implements Abstraction.Interface {\n public constructor(private readonly filters: CmsEntryOpenSearchFilter.Interface[]) {}\n\n public get(type: string): CmsEntryOpenSearchFilter.Interface {\n const fieldType = getBaseFieldType({ type });\n const filter = this.filters.find(f => {\n return f.fieldType === fieldType;\n });\n if (filter) {\n return filter;\n }\n const fallback = this.filters.find(f => {\n return f.fieldType === FILTER_DEFAULT;\n });\n if (fallback) {\n return fallback;\n }\n throw new WebinyError(\n `There is no filter for the given field type \"${fieldType}\".`,\n \"FILTER_REGISTRY_ERROR\",\n {\n fieldType\n }\n );\n }\n}\n\nexport const CmsEntryOpenSearchFilterRegistry = Abstraction.createImplementation({\n implementation: CmsEntryOpenSearchFilterRegistryImpl,\n dependencies: [[CmsEntryOpenSearchFilter, { multiple: true }]]\n});\n"],"names":["CmsEntryOpenSearchFilterRegistryImpl","filters","type","fieldType","getBaseFieldType","filter","f","fallback","FILTER_DEFAULT","WebinyError","CmsEntryOpenSearchFilterRegistry","Abstraction","CmsEntryOpenSearchFilter"],"mappings":";;;;;AAMA,MAAMA;IACF,YAAoCC,OAA6C,CAAE;aAA/CA,OAAO,GAAPA;IAAgD;IAE7E,IAAIC,IAAY,EAAsC;QACzD,MAAMC,YAAYC,iBAAiB;YAAEF;QAAK;QAC1C,MAAMG,SAAS,IAAI,CAAC,OAAO,CAAC,IAAI,CAACC,CAAAA,IACtBA,EAAE,SAAS,KAAKH;QAE3B,IAAIE,QACA,OAAOA;QAEX,MAAME,WAAW,IAAI,CAAC,OAAO,CAAC,IAAI,CAACD,CAAAA,IACxBA,EAAE,SAAS,KAAKE;QAE3B,IAAID,UACA,OAAOA;QAEX,MAAM,IAAIE,MACN,CAAC,6CAA6C,EAAEN,UAAU,EAAE,CAAC,EAC7D,yBACA;YACIA;QACJ;IAER;AACJ;AAEO,MAAMO,oEAAmCC,iCAAAA,oBAAgC,CAAC;IAC7E,gBAAgBX;IAChB,cAAc;QAAC;YAACY;YAA0B;gBAAE,UAAU;YAAK;SAAE;KAAC;AAClE"}
@@ -0,0 +1,37 @@
1
+ import type { ModelField, ModelFields } from "../../../operations/entry/elasticsearch/types.js";
2
+ import type { OpenSearchBoolQueryConfig } from "@webiny/api-opensearch/types.js";
3
+ interface ApplyParams {
4
+ key: string;
5
+ value: any;
6
+ query: OpenSearchBoolQueryConfig;
7
+ operator: string;
8
+ field: ModelField;
9
+ }
10
+ export interface ApplyFilteringCb {
11
+ (params: ApplyParams): void;
12
+ }
13
+ export interface GetFilterCb {
14
+ (type: string): CmsEntryOpenSearchFilter.Interface;
15
+ }
16
+ export interface IExecParams {
17
+ applyFiltering: ApplyFilteringCb;
18
+ getFilter: GetFilterCb;
19
+ key: string;
20
+ value: any;
21
+ operator: string;
22
+ field: ModelField;
23
+ fields: ModelFields;
24
+ query: OpenSearchBoolQueryConfig;
25
+ }
26
+ export interface ICmsEntryOpenSearchFilter {
27
+ readonly fieldType: string;
28
+ exec(params: IExecParams): void;
29
+ }
30
+ export declare const CmsEntryOpenSearchFilter: import("@webiny/di").Abstraction<ICmsEntryOpenSearchFilter>;
31
+ export declare namespace CmsEntryOpenSearchFilter {
32
+ type Interface = ICmsEntryOpenSearchFilter;
33
+ type ExecParams = IExecParams;
34
+ type ApplyFiltering = ApplyFilteringCb;
35
+ type GetFilter = GetFilterCb;
36
+ }
37
+ export {};
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const CmsEntryOpenSearchFilter = createAbstraction("Cms/Entry/OpenSearch/Filter");
3
+ export { CmsEntryOpenSearchFilter };
4
+
5
+ //# sourceMappingURL=CmsEntryOpenSearchFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.js","sources":["../../../../src/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilter.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { ModelField, ModelFields } from \"~/operations/entry/elasticsearch/types.js\";\nimport type { OpenSearchBoolQueryConfig } from \"@webiny/api-opensearch/types.js\";\n\ninterface ApplyParams {\n key: string;\n value: any;\n query: OpenSearchBoolQueryConfig;\n operator: string;\n field: ModelField;\n}\n\nexport interface ApplyFilteringCb {\n (params: ApplyParams): void;\n}\n\nexport interface GetFilterCb {\n (type: string): CmsEntryOpenSearchFilter.Interface;\n}\n\nexport interface IExecParams {\n applyFiltering: ApplyFilteringCb;\n getFilter: GetFilterCb;\n key: string;\n value: any;\n operator: string;\n field: ModelField;\n fields: ModelFields;\n query: OpenSearchBoolQueryConfig;\n}\n\nexport interface ICmsEntryOpenSearchFilter {\n readonly fieldType: string;\n exec(params: IExecParams): void;\n}\n\nexport const CmsEntryOpenSearchFilter = createAbstraction<ICmsEntryOpenSearchFilter>(\n \"Cms/Entry/OpenSearch/Filter\"\n);\n\nexport namespace CmsEntryOpenSearchFilter {\n export type Interface = ICmsEntryOpenSearchFilter;\n export type ExecParams = IExecParams;\n export type ApplyFiltering = ApplyFilteringCb;\n export type GetFilter = GetFilterCb;\n}\n"],"names":["CmsEntryOpenSearchFilter","createAbstraction"],"mappings":";AAoCO,MAAMA,2BAA2BC,kBACpC"}
@@ -0,0 +1,9 @@
1
+ import type { CmsEntryOpenSearchFilter } from "./CmsEntryOpenSearchFilter.js";
2
+ export interface ICmsEntryOpenSearchFilterRegistry {
3
+ get(fieldType: string): CmsEntryOpenSearchFilter.Interface;
4
+ }
5
+ export declare const CmsEntryOpenSearchFilterRegistry: import("@webiny/di").Abstraction<ICmsEntryOpenSearchFilterRegistry>;
6
+ export declare namespace CmsEntryOpenSearchFilterRegistry {
7
+ type Interface = ICmsEntryOpenSearchFilterRegistry;
8
+ type Filter = CmsEntryOpenSearchFilter.Interface;
9
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const CmsEntryOpenSearchFilterRegistry = createAbstraction("Cms/Entry/OpenSearch/FilterRegistry");
3
+ export { CmsEntryOpenSearchFilterRegistry };
4
+
5
+ //# sourceMappingURL=CmsEntryOpenSearchFilterRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.js","sources":["../../../../src/features/CmsEntryOpenSearchFilter/abstractions/CmsEntryOpenSearchFilterRegistry.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsEntryOpenSearchFilter } from \"./CmsEntryOpenSearchFilter.js\";\n\nexport interface ICmsEntryOpenSearchFilterRegistry {\n get(fieldType: string): CmsEntryOpenSearchFilter.Interface;\n}\n\nexport const CmsEntryOpenSearchFilterRegistry =\n createAbstraction<ICmsEntryOpenSearchFilterRegistry>(\"Cms/Entry/OpenSearch/FilterRegistry\");\n\nexport namespace CmsEntryOpenSearchFilterRegistry {\n export type Interface = ICmsEntryOpenSearchFilterRegistry;\n export type Filter = CmsEntryOpenSearchFilter.Interface;\n}\n"],"names":["CmsEntryOpenSearchFilterRegistry","createAbstraction"],"mappings":";AAOO,MAAMA,mCACTC,kBAAqD"}
@@ -0,0 +1 @@
1
+ export declare const FILTER_DEFAULT: "*";
@@ -0,0 +1,4 @@
1
+ const FILTER_DEFAULT = "*";
2
+ export { FILTER_DEFAULT };
3
+
4
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/constants.js","sources":["../../../src/features/CmsEntryOpenSearchFilter/constants.ts"],"sourcesContent":["export const FILTER_DEFAULT = \"*\" as const;\n"],"names":["FILTER_DEFAULT"],"mappings":"AAAO,MAAMA,iBAAiB"}
@@ -0,0 +1,4 @@
1
+ export declare const CmsEntryOpenSearchFilterFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,17 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { DefaultFilter } from "./fields/DefaultFilter.js";
3
+ import { RefFilter } from "./fields/RefFilter.js";
4
+ import { ObjectFilter } from "./fields/ObjectFilter.js";
5
+ import { CmsEntryOpenSearchFilterRegistry } from "./CmsEntryOpenSearchFilterRegistry.js";
6
+ const CmsEntryOpenSearchFilterFeature = createFeature({
7
+ name: "Cms/Entry/OpenSearch/FilterFeature",
8
+ register: (container)=>{
9
+ container.register(DefaultFilter);
10
+ container.register(RefFilter);
11
+ container.register(ObjectFilter);
12
+ container.register(CmsEntryOpenSearchFilterRegistry);
13
+ }
14
+ });
15
+ export { CmsEntryOpenSearchFilterFeature };
16
+
17
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/feature.js","sources":["../../../src/features/CmsEntryOpenSearchFilter/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DefaultFilter } from \"./fields/DefaultFilter.js\";\nimport { RefFilter } from \"./fields/RefFilter.js\";\nimport { ObjectFilter } from \"./fields/ObjectFilter.js\";\nimport { CmsEntryOpenSearchFilterRegistry } from \"./CmsEntryOpenSearchFilterRegistry.js\";\n\nexport const CmsEntryOpenSearchFilterFeature = createFeature({\n name: \"Cms/Entry/OpenSearch/FilterFeature\",\n register: container => {\n container.register(DefaultFilter);\n container.register(RefFilter);\n container.register(ObjectFilter);\n container.register(CmsEntryOpenSearchFilterRegistry);\n }\n});\n"],"names":["CmsEntryOpenSearchFilterFeature","createFeature","container","DefaultFilter","RefFilter","ObjectFilter","CmsEntryOpenSearchFilterRegistry"],"mappings":";;;;;AAMO,MAAMA,kCAAkCC,cAAc;IACzD,MAAM;IACN,UAAUC,CAAAA;QACNA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE;QACnBF,UAAU,QAAQ,CAACG;QACnBH,UAAU,QAAQ,CAACI;IACvB;AACJ"}
@@ -0,0 +1,9 @@
1
+ import { CmsEntryOpenSearchFilter } from "../abstractions/CmsEntryOpenSearchFilter.js";
2
+ declare class DefaultFilterImpl implements CmsEntryOpenSearchFilter.Interface {
3
+ readonly fieldType: "*";
4
+ exec(params: CmsEntryOpenSearchFilter.ExecParams): void;
5
+ }
6
+ export declare const DefaultFilter: typeof DefaultFilterImpl & {
7
+ __abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFilter.js").ICmsEntryOpenSearchFilter>;
8
+ };
9
+ export {};
@@ -0,0 +1,26 @@
1
+ import error from "@webiny/error";
2
+ import { CmsEntryOpenSearchFilter } from "../abstractions/CmsEntryOpenSearchFilter.js";
3
+ import { FILTER_DEFAULT } from "../constants.js";
4
+ class DefaultFilterImpl {
5
+ exec(params) {
6
+ const { applyFiltering, field } = params;
7
+ if (!field.searchable) {
8
+ const identifier = [
9
+ ...field.parents.map((p)=>p.fieldId),
10
+ field.field.fieldId
11
+ ].join(".");
12
+ throw new error(`Field "${identifier}" is not searchable.`);
13
+ }
14
+ applyFiltering(params);
15
+ }
16
+ constructor(){
17
+ this.fieldType = FILTER_DEFAULT;
18
+ }
19
+ }
20
+ const DefaultFilter = CmsEntryOpenSearchFilter.createImplementation({
21
+ implementation: DefaultFilterImpl,
22
+ dependencies: []
23
+ });
24
+ export { DefaultFilter };
25
+
26
+ //# sourceMappingURL=DefaultFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/fields/DefaultFilter.js","sources":["../../../../src/features/CmsEntryOpenSearchFilter/fields/DefaultFilter.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { CmsEntryOpenSearchFilter } from \"../abstractions/CmsEntryOpenSearchFilter.js\";\nimport { FILTER_DEFAULT } from \"../constants.js\";\n\nclass DefaultFilterImpl implements CmsEntryOpenSearchFilter.Interface {\n public readonly fieldType = FILTER_DEFAULT;\n\n public exec(params: CmsEntryOpenSearchFilter.ExecParams): void {\n const { applyFiltering, field } = params;\n if (!field.searchable) {\n const identifier = [...field.parents.map(p => p.fieldId), field.field.fieldId].join(\n \".\"\n );\n throw new WebinyError(`Field \"${identifier}\" is not searchable.`);\n }\n applyFiltering(params);\n }\n}\n\nexport const DefaultFilter = CmsEntryOpenSearchFilter.createImplementation({\n implementation: DefaultFilterImpl,\n dependencies: []\n});\n"],"names":["DefaultFilterImpl","params","applyFiltering","field","identifier","p","WebinyError","FILTER_DEFAULT","DefaultFilter","CmsEntryOpenSearchFilter"],"mappings":";;;AAIA,MAAMA;IAGK,KAAKC,MAA2C,EAAQ;QAC3D,MAAM,EAAEC,cAAc,EAAEC,KAAK,EAAE,GAAGF;QAClC,IAAI,CAACE,MAAM,UAAU,EAAE;YACnB,MAAMC,aAAa;mBAAID,MAAM,OAAO,CAAC,GAAG,CAACE,CAAAA,IAAKA,EAAE,OAAO;gBAAGF,MAAM,KAAK,CAAC,OAAO;aAAC,CAAC,IAAI,CAC/E;YAEJ,MAAM,IAAIG,MAAY,CAAC,OAAO,EAAEF,WAAW,oBAAoB,CAAC;QACpE;QACAF,eAAeD;IACnB;;aAXgB,SAAS,GAAGM;;AAYhC;AAEO,MAAMC,gBAAgBC,yBAAyB,oBAAoB,CAAC;IACvE,gBAAgBT;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,9 @@
1
+ import { CmsEntryOpenSearchFilter } from "../abstractions/CmsEntryOpenSearchFilter.js";
2
+ declare class ObjectFilterImpl implements CmsEntryOpenSearchFilter.Interface {
3
+ readonly fieldType = "object";
4
+ exec(params: CmsEntryOpenSearchFilter.ExecParams): void;
5
+ }
6
+ export declare const ObjectFilter: typeof ObjectFilterImpl & {
7
+ __abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFilter.js").ICmsEntryOpenSearchFilter>;
8
+ };
9
+ export {};
@@ -0,0 +1,43 @@
1
+ import error from "@webiny/error";
2
+ import { CmsEntryOpenSearchFilter } from "../abstractions/CmsEntryOpenSearchFilter.js";
3
+ import { parseWhereKey } from "@webiny/api-opensearch";
4
+ class ObjectFilterImpl {
5
+ exec(params) {
6
+ const { applyFiltering, value: where, fields, field: parentField, getFilter, query } = params;
7
+ for(const key in where){
8
+ const value = where[key];
9
+ if (void 0 === value) continue;
10
+ const { field: whereFieldId, operator } = parseWhereKey(key);
11
+ const identifier = [
12
+ ...parentField.parents.map((p)=>p.fieldId),
13
+ parentField.field.fieldId,
14
+ whereFieldId
15
+ ].join(".");
16
+ const field = fields[identifier];
17
+ if (!field) throw new error(`There is no field "${identifier}".`, "OBJECT_FILTER_FIELD_ERROR", {
18
+ fields: Object.keys(fields)
19
+ });
20
+ const filter = getFilter(field.type);
21
+ filter.exec({
22
+ applyFiltering,
23
+ getFilter,
24
+ key,
25
+ value,
26
+ operator,
27
+ field,
28
+ fields,
29
+ query
30
+ });
31
+ }
32
+ }
33
+ constructor(){
34
+ this.fieldType = "object";
35
+ }
36
+ }
37
+ const ObjectFilter = CmsEntryOpenSearchFilter.createImplementation({
38
+ implementation: ObjectFilterImpl,
39
+ dependencies: []
40
+ });
41
+ export { ObjectFilter };
42
+
43
+ //# sourceMappingURL=ObjectFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/fields/ObjectFilter.js","sources":["../../../../src/features/CmsEntryOpenSearchFilter/fields/ObjectFilter.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { CmsEntryOpenSearchFilter } from \"../abstractions/CmsEntryOpenSearchFilter.js\";\nimport { parseWhereKey } from \"@webiny/api-opensearch\";\n\nclass ObjectFilterImpl implements CmsEntryOpenSearchFilter.Interface {\n public readonly fieldType = \"object\";\n\n public exec(params: CmsEntryOpenSearchFilter.ExecParams): void {\n const {\n applyFiltering,\n value: where,\n fields,\n field: parentField,\n getFilter,\n query\n } = params;\n /**\n * Because this is an object field, we must construct filters based on the value property.\n * Value property is actually a where condition.\n */\n for (const key in where) {\n const value = where[key];\n if (value === undefined) {\n continue;\n }\n const { field: whereFieldId, operator } = parseWhereKey(key);\n\n const identifier = [\n ...parentField.parents.map(p => p.fieldId),\n parentField.field.fieldId,\n whereFieldId\n ].join(\".\");\n const field = fields[identifier];\n if (!field) {\n throw new WebinyError(\n `There is no field \"${identifier}\".`,\n \"OBJECT_FILTER_FIELD_ERROR\",\n {\n fields: Object.keys(fields)\n }\n );\n }\n /**\n * We need to find the filter for the child field.\n * This will throw error if no filter can be found.\n */\n const filter = getFilter(field.type);\n /**\n * Basically this allows us to go into depth as much as we want with the object fields.\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\nexport const ObjectFilter = CmsEntryOpenSearchFilter.createImplementation({\n implementation: ObjectFilterImpl,\n dependencies: []\n});\n"],"names":["ObjectFilterImpl","params","applyFiltering","where","fields","parentField","getFilter","query","key","value","undefined","whereFieldId","operator","parseWhereKey","identifier","p","field","WebinyError","Object","filter","ObjectFilter","CmsEntryOpenSearchFilter"],"mappings":";;;AAIA,MAAMA;IAGK,KAAKC,MAA2C,EAAQ;QAC3D,MAAM,EACFC,cAAc,EACd,OAAOC,KAAK,EACZC,MAAM,EACN,OAAOC,WAAW,EAClBC,SAAS,EACTC,KAAK,EACR,GAAGN;QAKJ,IAAK,MAAMO,OAAOL,MAAO;YACrB,MAAMM,QAAQN,KAAK,CAACK,IAAI;YACxB,IAAIC,AAAUC,WAAVD,OACA;YAEJ,MAAM,EAAE,OAAOE,YAAY,EAAEC,QAAQ,EAAE,GAAGC,cAAcL;YAExD,MAAMM,aAAa;mBACZT,YAAY,OAAO,CAAC,GAAG,CAACU,CAAAA,IAAKA,EAAE,OAAO;gBACzCV,YAAY,KAAK,CAAC,OAAO;gBACzBM;aACH,CAAC,IAAI,CAAC;YACP,MAAMK,QAAQZ,MAAM,CAACU,WAAW;YAChC,IAAI,CAACE,OACD,MAAM,IAAIC,MACN,CAAC,mBAAmB,EAAEH,WAAW,EAAE,CAAC,EACpC,6BACA;gBACI,QAAQI,OAAO,IAAI,CAACd;YACxB;YAOR,MAAMe,SAASb,UAAUU,MAAM,IAAI;YAInCG,OAAO,IAAI,CAAC;gBACRjB;gBACAI;gBACAE;gBACAC;gBACAG;gBACAI;gBACAZ;gBACAG;YACJ;QACJ;IACJ;;aAxDgB,SAAS,GAAG;;AAyDhC;AAEO,MAAMa,eAAeC,yBAAyB,oBAAoB,CAAC;IACtE,gBAAgBrB;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,9 @@
1
+ import { CmsEntryOpenSearchFilter } from "../abstractions/CmsEntryOpenSearchFilter.js";
2
+ declare class RefFilterImpl implements CmsEntryOpenSearchFilter.Interface {
3
+ readonly fieldType = "ref";
4
+ exec(params: CmsEntryOpenSearchFilter.ExecParams): void;
5
+ }
6
+ export declare const RefFilter: typeof RefFilterImpl & {
7
+ __abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsEntryOpenSearchFilter.js").ICmsEntryOpenSearchFilter>;
8
+ };
9
+ export {};
@@ -0,0 +1,36 @@
1
+ import error from "@webiny/error";
2
+ import { CmsEntryOpenSearchFilter } from "../abstractions/CmsEntryOpenSearchFilter.js";
3
+ import { parseWhereKey } from "@webiny/api-opensearch";
4
+ class RefFilterImpl {
5
+ exec(params) {
6
+ const { applyFiltering, query, field } = params;
7
+ let values = params.value;
8
+ if ("object" != typeof values) throw new error("When querying by ref field, value of the field must be an object.", "OBJECT_REQUIRED", {
9
+ value: values
10
+ });
11
+ if (null == values) values = {
12
+ entryId: null
13
+ };
14
+ for(const key in values){
15
+ const { operator } = parseWhereKey(key);
16
+ const value = values[key];
17
+ if (void 0 !== value) applyFiltering({
18
+ query,
19
+ field,
20
+ operator,
21
+ key,
22
+ value
23
+ });
24
+ }
25
+ }
26
+ constructor(){
27
+ this.fieldType = "ref";
28
+ }
29
+ }
30
+ const RefFilter = CmsEntryOpenSearchFilter.createImplementation({
31
+ implementation: RefFilterImpl,
32
+ dependencies: []
33
+ });
34
+ export { RefFilter };
35
+
36
+ //# sourceMappingURL=RefFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFilter/fields/RefFilter.js","sources":["../../../../src/features/CmsEntryOpenSearchFilter/fields/RefFilter.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { CmsEntryOpenSearchFilter } from \"../abstractions/CmsEntryOpenSearchFilter.js\";\nimport { parseWhereKey } from \"@webiny/api-opensearch\";\n\nclass RefFilterImpl implements CmsEntryOpenSearchFilter.Interface {\n public readonly fieldType = \"ref\";\n\n public exec(params: CmsEntryOpenSearchFilter.ExecParams): void {\n const { applyFiltering, query, field } = params;\n\n let values = params.value;\n /**\n * We must have an object when querying in the ref field.\n */\n if (typeof values !== \"object\") {\n throw new WebinyError(\n `When querying by ref field, value of the field must be an object.`,\n \"OBJECT_REQUIRED\",\n {\n value: values\n }\n );\n }\n\n if (values === null || values === undefined) {\n values = {\n entryId: null\n };\n }\n\n for (const key in values) {\n const { operator } = parseWhereKey(key);\n const value = values[key];\n if (value === undefined) {\n continue;\n }\n\n applyFiltering({\n query,\n field,\n operator,\n key,\n value\n });\n }\n }\n}\n\nexport const RefFilter = CmsEntryOpenSearchFilter.createImplementation({\n implementation: RefFilterImpl,\n dependencies: []\n});\n"],"names":["RefFilterImpl","params","applyFiltering","query","field","values","WebinyError","key","operator","parseWhereKey","value","undefined","RefFilter","CmsEntryOpenSearchFilter"],"mappings":";;;AAIA,MAAMA;IAGK,KAAKC,MAA2C,EAAQ;QAC3D,MAAM,EAAEC,cAAc,EAAEC,KAAK,EAAEC,KAAK,EAAE,GAAGH;QAEzC,IAAII,SAASJ,OAAO,KAAK;QAIzB,IAAI,AAAkB,YAAlB,OAAOI,QACP,MAAM,IAAIC,MACN,qEACA,mBACA;YACI,OAAOD;QACX;QAIR,IAAIA,QAAAA,QACAA,SAAS;YACL,SAAS;QACb;QAGJ,IAAK,MAAME,OAAOF,OAAQ;YACtB,MAAM,EAAEG,QAAQ,EAAE,GAAGC,cAAcF;YACnC,MAAMG,QAAQL,MAAM,CAACE,IAAI;YACzB,IAAIG,AAAUC,WAAVD,OAIJR,eAAe;gBACXC;gBACAC;gBACAI;gBACAD;gBACAG;YACJ;QACJ;IACJ;;aAxCgB,SAAS,GAAG;;AAyChC;AAEO,MAAME,YAAYC,yBAAyB,oBAAoB,CAAC;IACnE,gBAAgBb;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,3 @@
1
+ export { CmsEntryOpenSearchFilter } from "./abstractions/CmsEntryOpenSearchFilter.js";
2
+ export { CmsEntryOpenSearchFilterRegistry } from "./abstractions/CmsEntryOpenSearchFilterRegistry.js";
3
+ export { CmsEntryOpenSearchFilterFeature } from "./feature.js";
@@ -0,0 +1,3 @@
1
+ export { CmsEntryOpenSearchFilter } from "./abstractions/CmsEntryOpenSearchFilter.js";
2
+ export { CmsEntryOpenSearchFilterRegistry } from "./abstractions/CmsEntryOpenSearchFilterRegistry.js";
3
+ export { CmsEntryOpenSearchFilterFeature } from "./feature.js";
@@ -0,0 +1,20 @@
1
+ import type { CmsModel } from "@webiny/api-headless-cms/types/index.js";
2
+ import type { OpenSearchBoolQueryConfig } from "@webiny/api-opensearch/types.js";
3
+ import type { ModelField, ModelFields } from "../../operations/entry/elasticsearch/types.js";
4
+ export interface ApplyFullTextSearchParams {
5
+ model: CmsModel;
6
+ query: OpenSearchBoolQueryConfig;
7
+ term: string;
8
+ fields: ModelFields;
9
+ createFieldPath: (field: ModelField) => string;
10
+ prepareTerm: (term: string) => string;
11
+ }
12
+ export interface ICmsEntryOpenSearchFullTextSearch {
13
+ readonly models?: string[];
14
+ apply(params: ApplyFullTextSearchParams): void;
15
+ }
16
+ export declare const CmsEntryOpenSearchFullTextSearch: import("@webiny/di").Abstraction<ICmsEntryOpenSearchFullTextSearch>;
17
+ export declare namespace CmsEntryOpenSearchFullTextSearch {
18
+ type Interface = ICmsEntryOpenSearchFullTextSearch;
19
+ type Params = ApplyFullTextSearchParams;
20
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const CmsEntryOpenSearchFullTextSearch = createAbstraction("Cms/Entry/OpenSearch/FullTextSearch");
3
+ export { CmsEntryOpenSearchFullTextSearch };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchFullTextSearch/abstractions.js","sources":["../../../src/features/CmsEntryOpenSearchFullTextSearch/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\nimport type { OpenSearchBoolQueryConfig } from \"@webiny/api-opensearch/types.js\";\nimport type { ModelField, ModelFields } from \"~/operations/entry/elasticsearch/types.js\";\n\nexport interface ApplyFullTextSearchParams {\n model: CmsModel;\n query: OpenSearchBoolQueryConfig;\n term: string;\n fields: ModelFields;\n createFieldPath: (field: ModelField) => string;\n prepareTerm: (term: string) => string;\n}\n\nexport interface ICmsEntryOpenSearchFullTextSearch {\n readonly models?: string[];\n apply(params: ApplyFullTextSearchParams): void;\n}\n\nexport const CmsEntryOpenSearchFullTextSearch =\n createAbstraction<ICmsEntryOpenSearchFullTextSearch>(\"Cms/Entry/OpenSearch/FullTextSearch\");\n\nexport namespace CmsEntryOpenSearchFullTextSearch {\n export type Interface = ICmsEntryOpenSearchFullTextSearch;\n export type Params = ApplyFullTextSearchParams;\n}\n"],"names":["CmsEntryOpenSearchFullTextSearch","createAbstraction"],"mappings":";AAmBO,MAAMA,mCACTC,kBAAqD"}
@@ -0,0 +1 @@
1
+ export { CmsEntryOpenSearchFullTextSearch } from "./abstractions.js";
@@ -0,0 +1 @@
1
+ export { CmsEntryOpenSearchFullTextSearch } from "./abstractions.js";
@@ -0,0 +1,11 @@
1
+ import { CmsEntryOpenSearchIndex } from "./abstractions.js";
2
+ import type { OpenSearchIndexRequestBody } from "@webiny/api-opensearch/types.js";
3
+ declare class BaseOpenSearchIndexImpl implements CmsEntryOpenSearchIndex.Interface {
4
+ readonly body: OpenSearchIndexRequestBody;
5
+ constructor();
6
+ canUse(_: CmsEntryOpenSearchIndex.CanUseParams): boolean;
7
+ }
8
+ export declare const BaseOpenSearchIndex: typeof BaseOpenSearchIndexImpl & {
9
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").ICmsEntryOpenSearchIndex>;
10
+ };
11
+ export {};
@@ -0,0 +1,17 @@
1
+ import { getBaseConfiguration } from "@webiny/api-opensearch";
2
+ import { CmsEntryOpenSearchIndex } from "./abstractions.js";
3
+ class BaseOpenSearchIndexImpl {
4
+ constructor(){
5
+ this.body = getBaseConfiguration();
6
+ }
7
+ canUse(_) {
8
+ return true;
9
+ }
10
+ }
11
+ const BaseOpenSearchIndex = CmsEntryOpenSearchIndex.createImplementation({
12
+ implementation: BaseOpenSearchIndexImpl,
13
+ dependencies: []
14
+ });
15
+ export { BaseOpenSearchIndex };
16
+
17
+ //# sourceMappingURL=BaseOpenSearchIndex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.js","sources":["../../../src/features/CmsEntryOpenSearchIndex/BaseOpenSearchIndex.ts"],"sourcesContent":["import { getBaseConfiguration } from \"@webiny/api-opensearch\";\nimport { CmsEntryOpenSearchIndex } from \"./abstractions.js\";\nimport type { OpenSearchIndexRequestBody } from \"@webiny/api-opensearch/types.js\";\n\nclass BaseOpenSearchIndexImpl implements CmsEntryOpenSearchIndex.Interface {\n public readonly body: OpenSearchIndexRequestBody;\n\n public constructor() {\n this.body = getBaseConfiguration();\n }\n public canUse(_: CmsEntryOpenSearchIndex.CanUseParams): boolean {\n return true;\n }\n}\n\nexport const BaseOpenSearchIndex = CmsEntryOpenSearchIndex.createImplementation({\n implementation: BaseOpenSearchIndexImpl,\n dependencies: []\n});\n"],"names":["BaseOpenSearchIndexImpl","getBaseConfiguration","_","BaseOpenSearchIndex","CmsEntryOpenSearchIndex"],"mappings":";;AAIA,MAAMA;IAGF,aAAqB;QACjB,IAAI,CAAC,IAAI,GAAGC;IAChB;IACO,OAAOC,CAAuC,EAAW;QAC5D,OAAO;IACX;AACJ;AAEO,MAAMC,sBAAsBC,wBAAwB,oBAAoB,CAAC;IAC5E,gBAAgBJ;IAChB,cAAc,EAAE;AACpB"}
@@ -0,0 +1,14 @@
1
+ import type { OpenSearchIndexRequestBody } from "@webiny/api-opensearch/types.js";
2
+ import type { CmsModel } from "@webiny/api-headless-cms/types/index.js";
3
+ export interface ICmsEntryOpenSearchIndexCanUseParams {
4
+ model: Pick<CmsModel, "tenant" | "modelId" | "group">;
5
+ }
6
+ export interface ICmsEntryOpenSearchIndex {
7
+ readonly body: OpenSearchIndexRequestBody;
8
+ canUse(params: ICmsEntryOpenSearchIndexCanUseParams): boolean;
9
+ }
10
+ export declare const CmsEntryOpenSearchIndex: import("@webiny/di").Abstraction<ICmsEntryOpenSearchIndex>;
11
+ export declare namespace CmsEntryOpenSearchIndex {
12
+ type Interface = ICmsEntryOpenSearchIndex;
13
+ type CanUseParams = ICmsEntryOpenSearchIndexCanUseParams;
14
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const CmsEntryOpenSearchIndex = createAbstraction("Cms/Entry/OpenSearch/Index");
3
+ export { CmsEntryOpenSearchIndex };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchIndex/abstractions.js","sources":["../../../src/features/CmsEntryOpenSearchIndex/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { OpenSearchIndexRequestBody } from \"@webiny/api-opensearch/types.js\";\nimport type { CmsModel } from \"@webiny/api-headless-cms/types/index.js\";\n\nexport interface ICmsEntryOpenSearchIndexCanUseParams {\n model: Pick<CmsModel, \"tenant\" | \"modelId\" | \"group\">;\n}\n\nexport interface ICmsEntryOpenSearchIndex {\n readonly body: OpenSearchIndexRequestBody;\n canUse(params: ICmsEntryOpenSearchIndexCanUseParams): boolean;\n}\n\nexport const CmsEntryOpenSearchIndex = createAbstraction<ICmsEntryOpenSearchIndex>(\n \"Cms/Entry/OpenSearch/Index\"\n);\n\nexport namespace CmsEntryOpenSearchIndex {\n export type Interface = ICmsEntryOpenSearchIndex;\n export type CanUseParams = ICmsEntryOpenSearchIndexCanUseParams;\n}\n"],"names":["CmsEntryOpenSearchIndex","createAbstraction"],"mappings":";AAaO,MAAMA,0BAA0BC,kBACnC"}
@@ -0,0 +1,4 @@
1
+ export declare const CmsEntryOpenSearchIndexFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,11 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { BaseOpenSearchIndex } from "./BaseOpenSearchIndex.js";
3
+ const CmsEntryOpenSearchIndexFeature = createFeature({
4
+ name: "Cms/Entry/OpenSearch/IndexFeature",
5
+ register: (container)=>{
6
+ container.register(BaseOpenSearchIndex);
7
+ }
8
+ });
9
+ export { CmsEntryOpenSearchIndexFeature };
10
+
11
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchIndex/feature.js","sources":["../../../src/features/CmsEntryOpenSearchIndex/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { BaseOpenSearchIndex } from \"./BaseOpenSearchIndex.js\";\n\nexport const CmsEntryOpenSearchIndexFeature = createFeature({\n name: \"Cms/Entry/OpenSearch/IndexFeature\",\n register: container => {\n container.register(BaseOpenSearchIndex);\n }\n});\n"],"names":["CmsEntryOpenSearchIndexFeature","createFeature","container","BaseOpenSearchIndex"],"mappings":";;AAGO,MAAMA,iCAAiCC,cAAc;IACxD,MAAM;IACN,UAAUC,CAAAA;QACNA,UAAU,QAAQ,CAACC;IACvB;AACJ"}
@@ -0,0 +1,3 @@
1
+ export { CmsEntryOpenSearchIndexFeature } from "./feature.js";
2
+ export { CmsEntryOpenSearchIndex } from "./abstractions.js";
3
+ export { BaseOpenSearchIndex } from "./BaseOpenSearchIndex.js";
@@ -0,0 +1,3 @@
1
+ export { CmsEntryOpenSearchIndexFeature } from "./feature.js";
2
+ export { CmsEntryOpenSearchIndex } from "./abstractions.js";
3
+ export { BaseOpenSearchIndex } from "./BaseOpenSearchIndex.js";
@@ -0,0 +1,13 @@
1
+ import { OpenSearchClient } from "@webiny/api-opensearch/exports/api/opensearch.js";
2
+ import { CmsModelOpenSearchIndexProvider } from "../../features/CmsModelOpenSearchIndex/CmsModelOpenSearchIndexProvider.js";
3
+ import { CmsEntryOpenSearchIndexCreate as CmsEntryOpenSearchIndexCreateAbstraction } from "./abstractions.js";
4
+ declare class CmsEntryOpenSearchIndexCreateImpl implements CmsEntryOpenSearchIndexCreateAbstraction.Interface {
5
+ private readonly openSearchClient;
6
+ private readonly indexProvider;
7
+ constructor(openSearchClient: OpenSearchClient.Interface, indexProvider: CmsModelOpenSearchIndexProvider.Interface);
8
+ execute(params: CmsEntryOpenSearchIndexCreateAbstraction.Params): Promise<void>;
9
+ }
10
+ export declare const CmsEntryOpenSearchIndexCreate: typeof CmsEntryOpenSearchIndexCreateImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").ICmsEntryOpenSearchIndexCreate>;
12
+ };
13
+ export {};
@@ -0,0 +1,65 @@
1
+ import error from "@webiny/error";
2
+ import { OpenSearchClient } from "@webiny/api-opensearch/exports/api/opensearch.js";
3
+ import { CmsModelOpenSearchIndexProvider } from "../CmsModelOpenSearchIndex/CmsModelOpenSearchIndexProvider.js";
4
+ import { CmsEntryOpenSearchIndexCreate } from "./abstractions.js";
5
+ import { getOpenSearchIndexPrefix } from "@webiny/api-opensearch";
6
+ class CmsEntryOpenSearchIndexCreateImpl {
7
+ constructor(openSearchClient, indexProvider){
8
+ this.openSearchClient = openSearchClient;
9
+ this.indexProvider = indexProvider;
10
+ }
11
+ async execute(params) {
12
+ const { model } = params;
13
+ const client = this.openSearchClient.use();
14
+ const { index: rawIndex, settings } = await this.indexProvider.execute({
15
+ model
16
+ });
17
+ const prefix = getOpenSearchIndexPrefix();
18
+ const index = prefix ? prefix + rawIndex : rawIndex;
19
+ try {
20
+ const response = await client.indices.exists({
21
+ index,
22
+ ignore_unavailable: false,
23
+ allow_no_indices: true,
24
+ include_defaults: true,
25
+ flat_settings: false,
26
+ local: false
27
+ });
28
+ if (response.body) return void console.log(`Elasticsearch index "${index}" for the CMS model "${model.name}" already exists.`);
29
+ } catch {
30
+ console.error(`Could not determine if the index "${index}" exists.`);
31
+ }
32
+ try {
33
+ await client.indices.create({
34
+ index,
35
+ body: {
36
+ ...settings
37
+ }
38
+ });
39
+ } catch (ex) {
40
+ console.error(`Could not create Elasticsearch index "${index}" for the CMS model "${model.name}".`);
41
+ console.error(ex);
42
+ throw new error(ex.message || "Could not create OpenSearch index for the CMS entry.", ex.code || "CREATE_OPENSEARCH_INDEX_ERROR", {
43
+ error: {
44
+ ...ex,
45
+ message: ex.message,
46
+ code: ex.code,
47
+ data: ex.data
48
+ },
49
+ tenant: model.tenant,
50
+ index,
51
+ body: settings
52
+ });
53
+ }
54
+ }
55
+ }
56
+ const CmsEntryOpenSearchIndexCreate_CmsEntryOpenSearchIndexCreate = CmsEntryOpenSearchIndexCreate.createImplementation({
57
+ implementation: CmsEntryOpenSearchIndexCreateImpl,
58
+ dependencies: [
59
+ OpenSearchClient,
60
+ CmsModelOpenSearchIndexProvider
61
+ ]
62
+ });
63
+ export { CmsEntryOpenSearchIndexCreate_CmsEntryOpenSearchIndexCreate as CmsEntryOpenSearchIndexCreate };
64
+
65
+ //# sourceMappingURL=CmsEntryOpenSearchIndexCreate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.js","sources":["../../../src/features/CmsEntryOpenSearchIndexCreate/CmsEntryOpenSearchIndexCreate.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { OpenSearchClient } from \"@webiny/api-opensearch/exports/api/opensearch.js\";\nimport { CmsModelOpenSearchIndexProvider } from \"~/features/CmsModelOpenSearchIndex/CmsModelOpenSearchIndexProvider.js\";\nimport { CmsEntryOpenSearchIndexCreate as CmsEntryOpenSearchIndexCreateAbstraction } from \"./abstractions.js\";\nimport { getOpenSearchIndexPrefix } from \"@webiny/api-opensearch\";\n\nclass CmsEntryOpenSearchIndexCreateImpl\n implements CmsEntryOpenSearchIndexCreateAbstraction.Interface\n{\n public constructor(\n private readonly openSearchClient: OpenSearchClient.Interface,\n private readonly indexProvider: CmsModelOpenSearchIndexProvider.Interface\n ) {}\n\n public async execute(params: CmsEntryOpenSearchIndexCreateAbstraction.Params): Promise<void> {\n const { model } = params;\n const client = this.openSearchClient.use();\n\n const { index: rawIndex, settings } = await this.indexProvider.execute({ model });\n const prefix = getOpenSearchIndexPrefix();\n const index = prefix ? prefix + rawIndex : rawIndex;\n\n try {\n const response = await client.indices.exists({\n index,\n ignore_unavailable: false,\n allow_no_indices: true,\n include_defaults: true,\n flat_settings: false,\n local: false\n });\n if (response.body) {\n console.log(\n `Elasticsearch index \"${index}\" for the CMS model \"${model.name}\" already exists.`\n );\n return;\n }\n } catch {\n console.error(`Could not determine if the index \"${index}\" exists.`);\n }\n\n try {\n await client.indices.create({\n index,\n body: {\n ...settings\n }\n });\n } catch (ex) {\n console.error(\n `Could not create Elasticsearch index \"${index}\" for the CMS model \"${model.name}\".`\n );\n console.error(ex);\n throw new WebinyError(\n ex.message || \"Could not create OpenSearch index for the CMS entry.\",\n ex.code || \"CREATE_OPENSEARCH_INDEX_ERROR\",\n {\n error: {\n ...ex,\n message: ex.message,\n code: ex.code,\n data: ex.data\n },\n tenant: model.tenant,\n index,\n body: settings\n }\n );\n }\n }\n}\n\nexport const CmsEntryOpenSearchIndexCreate =\n CmsEntryOpenSearchIndexCreateAbstraction.createImplementation({\n implementation: CmsEntryOpenSearchIndexCreateImpl,\n dependencies: [OpenSearchClient, CmsModelOpenSearchIndexProvider]\n });\n"],"names":["CmsEntryOpenSearchIndexCreateImpl","openSearchClient","indexProvider","params","model","client","rawIndex","settings","prefix","getOpenSearchIndexPrefix","index","response","console","ex","WebinyError","CmsEntryOpenSearchIndexCreate","CmsEntryOpenSearchIndexCreateAbstraction","OpenSearchClient","CmsModelOpenSearchIndexProvider"],"mappings":";;;;;AAMA,MAAMA;IAGF,YACqBC,gBAA4C,EAC5CC,aAAwD,CAC3E;aAFmBD,gBAAgB,GAAhBA;aACAC,aAAa,GAAbA;IAClB;IAEH,MAAa,QAAQC,MAAuD,EAAiB;QACzF,MAAM,EAAEC,KAAK,EAAE,GAAGD;QAClB,MAAME,SAAS,IAAI,CAAC,gBAAgB,CAAC,GAAG;QAExC,MAAM,EAAE,OAAOC,QAAQ,EAAEC,QAAQ,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YAAEH;QAAM;QAC/E,MAAMI,SAASC;QACf,MAAMC,QAAQF,SAASA,SAASF,WAAWA;QAE3C,IAAI;YACA,MAAMK,WAAW,MAAMN,OAAO,OAAO,CAAC,MAAM,CAAC;gBACzCK;gBACA,oBAAoB;gBACpB,kBAAkB;gBAClB,kBAAkB;gBAClB,eAAe;gBACf,OAAO;YACX;YACA,IAAIC,SAAS,IAAI,EAAE,YACfC,QAAQ,GAAG,CACP,CAAC,qBAAqB,EAAEF,MAAM,qBAAqB,EAAEN,MAAM,IAAI,CAAC,iBAAiB,CAAC;QAI9F,EAAE,OAAM;YACJQ,QAAQ,KAAK,CAAC,CAAC,kCAAkC,EAAEF,MAAM,SAAS,CAAC;QACvE;QAEA,IAAI;YACA,MAAML,OAAO,OAAO,CAAC,MAAM,CAAC;gBACxBK;gBACA,MAAM;oBACF,GAAGH,QAAQ;gBACf;YACJ;QACJ,EAAE,OAAOM,IAAI;YACTD,QAAQ,KAAK,CACT,CAAC,sCAAsC,EAAEF,MAAM,qBAAqB,EAAEN,MAAM,IAAI,CAAC,EAAE,CAAC;YAExFQ,QAAQ,KAAK,CAACC;YACd,MAAM,IAAIC,MACND,GAAG,OAAO,IAAI,wDACdA,GAAG,IAAI,IAAI,iCACX;gBACI,OAAO;oBACH,GAAGA,EAAE;oBACL,SAASA,GAAG,OAAO;oBACnB,MAAMA,GAAG,IAAI;oBACb,MAAMA,GAAG,IAAI;gBACjB;gBACA,QAAQT,MAAM,MAAM;gBACpBM;gBACA,MAAMH;YACV;QAER;IACJ;AACJ;AAEO,MAAMQ,8DACTC,8BAAAA,oBAA6D,CAAC;IAC1D,gBAAgBhB;IAChB,cAAc;QAACiB;QAAkBC;KAAgC;AACrE"}
@@ -0,0 +1,11 @@
1
+ import { ModelAfterCreateFromEventHandler, type ModelAfterCreateFromEvent } from "@webiny/api-headless-cms/features/contentModel/CreateModelFrom/events.js";
2
+ import { CmsEntryOpenSearchIndexCreate } from "./abstractions.js";
3
+ declare class ModelAfterCreateFromHandlerImpl implements ModelAfterCreateFromEventHandler.Interface {
4
+ private indexCreate;
5
+ constructor(indexCreate: CmsEntryOpenSearchIndexCreate.Interface);
6
+ handle(event: ModelAfterCreateFromEvent): Promise<void>;
7
+ }
8
+ export declare const ModelAfterCreateFromHandler: typeof ModelAfterCreateFromHandlerImpl & {
9
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<ModelAfterCreateFromEvent>>;
10
+ };
11
+ export {};