@frogbotai/db-mongodb 0.29.0 → 0.31.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 (69) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +13 -5
  4. package/dist/index.js.map +1 -1
  5. package/dist/jobIndexes.js +20 -12
  6. package/dist/jobIndexes.js.map +1 -1
  7. package/dist/jobLogs.js +35 -4
  8. package/dist/jobLogs.js.map +1 -1
  9. package/dist/jobModel.d.ts +3 -2
  10. package/dist/jobModel.d.ts.map +1 -1
  11. package/dist/jobModel.js +29 -12
  12. package/dist/jobModel.js.map +1 -1
  13. package/dist/search/buildSchema.js +15 -9
  14. package/dist/search/buildSchema.js.map +1 -1
  15. package/dist/search/buildSearchIndexes.js +135 -55
  16. package/dist/search/buildSearchIndexes.js.map +1 -1
  17. package/dist/search/capabilities.js +12 -15
  18. package/dist/search/capabilities.js.map +1 -1
  19. package/dist/search/createSearchSetupError.js +12 -5
  20. package/dist/search/createSearchSetupError.js.map +1 -1
  21. package/dist/search/ensureSearchIndexes.js +35 -20
  22. package/dist/search/ensureSearchIndexes.js.map +1 -1
  23. package/dist/search/findSearchIndex.js +3 -2
  24. package/dist/search/findSearchIndex.js.map +1 -1
  25. package/dist/search/getSearchIndexes.js +2 -1
  26. package/dist/search/getSearchIndexes.js.map +1 -1
  27. package/dist/search/getSearchModel.d.ts +0 -1
  28. package/dist/search/getSearchModel.d.ts.map +1 -1
  29. package/dist/search/getSearchModel.js +2 -1
  30. package/dist/search/getSearchModel.js.map +1 -1
  31. package/dist/search/getSearchPath.js +17 -13
  32. package/dist/search/getSearchPath.js.map +1 -1
  33. package/dist/search/index.js +2 -1
  34. package/dist/search/index.js.map +1 -1
  35. package/dist/search/isDraftSearch.js +2 -1
  36. package/dist/search/isDraftSearch.js.map +1 -1
  37. package/dist/search/isSearchIndexDefinitionEqual.js +26 -19
  38. package/dist/search/isSearchIndexDefinitionEqual.js.map +1 -1
  39. package/dist/search/pipelines/buildHybridPipeline.js +147 -40
  40. package/dist/search/pipelines/buildHybridPipeline.js.map +1 -1
  41. package/dist/search/pipelines/buildSearchStage.js +17 -5
  42. package/dist/search/pipelines/buildSearchStage.js.map +1 -1
  43. package/dist/search/pipelines/buildVectorScore.js +24 -4
  44. package/dist/search/pipelines/buildVectorScore.js.map +1 -1
  45. package/dist/search/pipelines/buildVectorSearchStage.js +15 -7
  46. package/dist/search/pipelines/buildVectorSearchStage.js.map +1 -1
  47. package/dist/search/queries/buildSearchFilter.js +13 -6
  48. package/dist/search/queries/buildSearchFilter.js.map +1 -1
  49. package/dist/search/queries/buildSearchOperator.js +41 -8
  50. package/dist/search/queries/buildSearchOperator.js.map +1 -1
  51. package/dist/search/queries/buildVectorSearchFilter.js +32 -8
  52. package/dist/search/queries/buildVectorSearchFilter.js.map +1 -1
  53. package/dist/search/queries/parseSearchFilter.js +125 -56
  54. package/dist/search/queries/parseSearchFilter.js.map +1 -1
  55. package/dist/search/readiness.js +23 -12
  56. package/dist/search/readiness.js.map +1 -1
  57. package/dist/search/search.d.ts.map +1 -1
  58. package/dist/search/search.js +181 -77
  59. package/dist/search/search.js.map +1 -1
  60. package/dist/search/supportsRankFusion.d.ts.map +1 -1
  61. package/dist/search/supportsRankFusion.js +29 -10
  62. package/dist/search/supportsRankFusion.js.map +1 -1
  63. package/dist/search/types.js +2 -1
  64. package/dist/search/types.js.map +1 -1
  65. package/dist/updateJobLeases.js +20 -5
  66. package/dist/updateJobLeases.js.map +1 -1
  67. package/dist/updateJobs.js +79 -30
  68. package/dist/updateJobs.js.map +1 -1
  69. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"buildSearchIndexes.js","sourceRoot":"","sources":["../../src/search/buildSearchIndexes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/search/buildSearchIndexes.ts"],"names":["getIDFieldType","getSearchFields","getSearchLocales","getSearchPath","filterFieldTypes","boolean","date","number","string","getSearchIndexName","index","mode","getFilterFields","adapter","collection","versions","fields","filters","Map","set","filter","Object","values","filterFields","many","locale","field","path","relationTo","type","getPaths","paths","map","Set","setFieldMapping","mapping","segment","rest","length","existing","Array","isArray","dynamic","buildLexicalDefinition","textPaths","language","lexical","analyzer","split","mappings","buildVectorDefinition","vectorPaths","vectors","numDimensions","vector","dimensions","similarity","metric","filterPaths","keys","sort","buildSearchIndexes","config","payload","collections","targets","drafts","flatMap","models","push","definition","name"],"mappings":"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","file":"buildSearchIndexes.js"}
@@ -42,27 +42,24 @@ const languages = new Set([
42
42
  'swedish',
43
43
  'thai',
44
44
  'turkish',
45
- 'ukrainian',
45
+ 'ukrainian'
46
46
  ]);
47
- export const capabilities = ({ index }) => {
47
+ export const capabilities = ({ index })=>{
48
48
  const language = index.lexical?.language;
49
49
  const dimensions = index.vector?.dimensions ?? 0;
50
- const lexical = language && !languages.has(language)
51
- ? {
52
- unsupported: 'engine-gap',
53
- detail: `MongoDB search has no built-in analyzer for the '${language}' language.`,
54
- }
55
- : 'supported';
56
- const vector = dimensions > maxVectorDimensions
57
- ? {
58
- unsupported: 'engine-gap',
59
- detail: `MongoDB vector search indexes support at most ${maxVectorDimensions} dimensions.`,
60
- }
61
- : 'supported';
50
+ const lexical = language && !languages.has(language) ? {
51
+ unsupported: 'engine-gap',
52
+ detail: `MongoDB search has no built-in analyzer for the '${language}' language.`
53
+ } : 'supported';
54
+ const vector = dimensions > maxVectorDimensions ? {
55
+ unsupported: 'engine-gap',
56
+ detail: `MongoDB vector search indexes support at most ${maxVectorDimensions} dimensions.`
57
+ } : 'supported';
62
58
  return {
63
59
  lexical,
64
60
  vector,
65
- hybrid: lexical === 'supported' ? vector : lexical,
61
+ hybrid: lexical === 'supported' ? vector : lexical
66
62
  };
67
63
  };
64
+
68
65
  //# sourceMappingURL=capabilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/search/capabilities.ts"],"names":[],"mappings":"AAEA,MAAM,mBAAmB,GAAG,IAAI,CAAC;AAEjC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,SAAS;IACT,WAAW;IACX,WAAW;IACX,SAAS;IACT,SAAS;IACT,KAAK;IACL,OAAO;IACP,QAAQ;IACR,OAAO;IACP,SAAS;IACT,SAAS;IACT,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,OAAO;IACP,OAAO;IACP,WAAW;IACX,YAAY;IACZ,OAAO;IACP,SAAS;IACT,UAAU;IACV,QAAQ;IACR,UAAU;IACV,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,MAAM;IACN,WAAW;IACX,SAAS;IACT,QAAQ;IACR,YAAY;IACZ,UAAU;IACV,SAAS;IACT,SAAS;IACT,QAAQ;IACR,SAAS;IACT,SAAS;IACT,MAAM;IACN,SAAS;IACT,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAuB,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC;IACzC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,EAAE,UAAU,IAAI,CAAC,CAAC;IAEjD,MAAM,OAAO,GACX,QAAQ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClC,CAAC,CAAC;YACE,WAAW,EAAE,YAAY;YACzB,MAAM,EAAE,oDAAoD,QAAQ,aAAa;SAClF;QACH,CAAC,CAAC,WAAW,CAAC;IAElB,MAAM,MAAM,GACV,UAAU,GAAG,mBAAmB;QAC9B,CAAC,CAAC;YACE,WAAW,EAAE,YAAY;YACzB,MAAM,EAAE,iDAAiD,mBAAmB,cAAc;SAC3F;QACH,CAAC,CAAC,WAAW,CAAC;IAElB,OAAO;QACL,OAAO;QACP,MAAM;QACN,MAAM,EAAE,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;KACnD,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../src/search/capabilities.ts"],"names":["maxVectorDimensions","languages","Set","capabilities","index","language","lexical","dimensions","vector","has","unsupported","detail","hybrid"],"mappings":"AAEA,MAAMA,sBAAsB;AAE5B,MAAMC,YAAY,IAAIC,IAAI;IACxB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,OAAO,MAAMC,eAAmC,CAAC,EAAEC,KAAK,EAAE;IACxD,MAAMC,WAAWD,MAAME,OAAO,EAAED;IAChC,MAAME,aAAaH,MAAMI,MAAM,EAAED,cAAc;IAE/C,MAAMD,UACJD,YAAY,CAACJ,UAAUQ,GAAG,CAACJ,YACvB;QACEK,aAAa;QACbC,QAAQ,CAAC,iDAAiD,EAAEN,SAAS,WAAW,CAAC;IACnF,IACA;IAEN,MAAMG,SACJD,aAAaP,sBACT;QACEU,aAAa;QACbC,QAAQ,CAAC,8CAA8C,EAAEX,oBAAoB,YAAY,CAAC;IAC5F,IACA;IAEN,OAAO;QACLM;QACAE;QACAI,QAAQN,YAAY,cAAcE,SAASF;IAC7C;AACF,EAAE","file":"capabilities.js"}
@@ -1,6 +1,13 @@
1
1
  import { SearchCapabilityError } from 'frogbot/search';
2
- const missingPrerequisiteCodes = new Set([59, 115, 31082, 40324]);
3
- const permissionDeniedCodes = new Set([13]);
2
+ const missingPrerequisiteCodes = new Set([
3
+ 59,
4
+ 115,
5
+ 31082,
6
+ 40324
7
+ ]);
8
+ const permissionDeniedCodes = new Set([
9
+ 13
10
+ ]);
4
11
  const atlasErrorCode = 8000;
5
12
  const permissionDeniedMessage = /not (allowed|authorized)|unauthorized/i;
6
13
  export function getErrorCode(error) {
@@ -9,17 +16,17 @@ export function getErrorCode(error) {
9
16
  function getErrorMessage(error) {
10
17
  return error instanceof Error ? error.message : String(error);
11
18
  }
12
- export function createSearchSetupError({ error, searchIndex, }) {
19
+ export function createSearchSetupError({ error, searchIndex }) {
13
20
  const code = getErrorCode(error);
14
21
  const message = getErrorMessage(error);
15
22
  if (typeof code === 'number' && missingPrerequisiteCodes.has(code)) {
16
23
  return new SearchCapabilityError(searchIndex.collection, searchIndex.index, searchIndex.mode, 'missing-prerequisite', `search-infrastructure: MongoDB search requires Atlas or a deployment running mongot. ${message}`);
17
24
  }
18
- const permissionDenied = (typeof code === 'number' && permissionDeniedCodes.has(code)) ||
19
- (code === atlasErrorCode && permissionDeniedMessage.test(message));
25
+ const permissionDenied = typeof code === 'number' && permissionDeniedCodes.has(code) || code === atlasErrorCode && permissionDeniedMessage.test(message);
20
26
  if (permissionDenied) {
21
27
  return new SearchCapabilityError(searchIndex.collection, searchIndex.index, searchIndex.mode, 'permission-denied', `The database user cannot manage search index '${searchIndex.name}'. ${message}`);
22
28
  }
23
29
  return new SearchCapabilityError(searchIndex.collection, searchIndex.index, searchIndex.mode, 'setup-failed', `Search index '${searchIndex.name}' could not be reconciled. ${message}`);
24
30
  }
31
+
25
32
  //# sourceMappingURL=createSearchSetupError.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createSearchSetupError.js","sourceRoot":"","sources":["../../src/search/createSearchSetupError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAIvD,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAElE,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAE5C,MAAM,cAAc,GAAG,IAAI,CAAC;AAE5B,MAAM,uBAAuB,GAAG,wCAAwC,CAAC;AAEzE,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AACxF,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,EACrC,KAAK,EACL,WAAW,GAIZ;IACC,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAEvC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACnE,OAAO,IAAI,qBAAqB,CAC9B,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,IAAI,EAChB,sBAAsB,EACtB,wFAAwF,OAAO,EAAE,CAClG,CAAC;IACJ,CAAC;IAED,MAAM,gBAAgB,GACpB,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC,IAAI,KAAK,cAAc,IAAI,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAErE,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,IAAI,qBAAqB,CAC9B,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,IAAI,EAChB,mBAAmB,EACnB,iDAAiD,WAAW,CAAC,IAAI,MAAM,OAAO,EAAE,CACjF,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,qBAAqB,CAC9B,WAAW,CAAC,UAAU,EACtB,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,IAAI,EAChB,cAAc,EACd,iBAAiB,WAAW,CAAC,IAAI,8BAA8B,OAAO,EAAE,CACzE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"sources":["../../src/search/createSearchSetupError.ts"],"names":["SearchCapabilityError","missingPrerequisiteCodes","Set","permissionDeniedCodes","atlasErrorCode","permissionDeniedMessage","getErrorCode","error","code","undefined","getErrorMessage","Error","message","String","createSearchSetupError","searchIndex","has","collection","index","mode","permissionDenied","test","name"],"mappings":"AAAA,SAASA,qBAAqB,QAAQ,iBAAiB;AAIvD,MAAMC,2BAA2B,IAAIC,IAAI;IAAC;IAAI;IAAK;IAAO;CAAM;AAEhE,MAAMC,wBAAwB,IAAID,IAAI;IAAC;CAAG;AAE1C,MAAME,iBAAiB;AAEvB,MAAMC,0BAA0B;AAEhC,OAAO,SAASC,aAAaC,KAAc;IACzC,OAAOA,SAAS,OAAOA,UAAU,YAAY,UAAUA,QAAQA,MAAMC,IAAI,GAAGC;AAC9E;AAEA,SAASC,gBAAgBH,KAAc;IACrC,OAAOA,iBAAiBI,QAAQJ,MAAMK,OAAO,GAAGC,OAAON;AACzD;AAEA,OAAO,SAASO,uBAAuB,EACrCP,KAAK,EACLQ,WAAW,EAIZ;IACC,MAAMP,OAAOF,aAAaC;IAC1B,MAAMK,UAAUF,gBAAgBH;IAEhC,IAAI,OAAOC,SAAS,YAAYP,yBAAyBe,GAAG,CAACR,OAAO;QAClE,OAAO,IAAIR,sBACTe,YAAYE,UAAU,EACtBF,YAAYG,KAAK,EACjBH,YAAYI,IAAI,EAChB,wBACA,CAAC,qFAAqF,EAAEP,SAAS;IAErG;IAEA,MAAMQ,mBACJ,AAAC,OAAOZ,SAAS,YAAYL,sBAAsBa,GAAG,CAACR,SACtDA,SAASJ,kBAAkBC,wBAAwBgB,IAAI,CAACT;IAE3D,IAAIQ,kBAAkB;QACpB,OAAO,IAAIpB,sBACTe,YAAYE,UAAU,EACtBF,YAAYG,KAAK,EACjBH,YAAYI,IAAI,EAChB,qBACA,CAAC,8CAA8C,EAAEJ,YAAYO,IAAI,CAAC,GAAG,EAAEV,SAAS;IAEpF;IAEA,OAAO,IAAIZ,sBACTe,YAAYE,UAAU,EACtBF,YAAYG,KAAK,EACjBH,YAAYI,IAAI,EAChB,gBACA,CAAC,cAAc,EAAEJ,YAAYO,IAAI,CAAC,2BAA2B,EAAEV,SAAS;AAE5E","file":"createSearchSetupError.js"}
@@ -6,32 +6,42 @@ import { getSearchModel } from './getSearchModel.js';
6
6
  import { isSearchIndexDefinitionEqual } from './isSearchIndexDefinitionEqual.js';
7
7
  const droppedIndexTimeout = 60000;
8
8
  const droppedIndexInterval = 500;
9
- async function findCurrentSearchIndex({ dropped, Model, name, }) {
9
+ async function findCurrentSearchIndex({ dropped, Model, name }) {
10
10
  const started = Date.now();
11
- let existing = await findSearchIndex({ Model, name });
12
- while (dropped && existing) {
11
+ let existing = await findSearchIndex({
12
+ Model,
13
+ name
14
+ });
15
+ while(dropped && existing){
13
16
  if (Date.now() - started > droppedIndexTimeout) {
14
17
  throw new Error(`Search index '${name}' from the dropped database was not removed in time.`);
15
18
  }
16
- await new Promise((resolve) => setTimeout(resolve, droppedIndexInterval));
17
- existing = await findSearchIndex({ Model, name });
19
+ await new Promise((resolve)=>setTimeout(resolve, droppedIndexInterval));
20
+ existing = await findSearchIndex({
21
+ Model,
22
+ name
23
+ });
18
24
  }
19
25
  return existing;
20
26
  }
21
- async function ensureSearchIndex({ adapter, dropped, searchIndex, }) {
27
+ async function ensureSearchIndex({ adapter, dropped, searchIndex }) {
22
28
  const Model = getSearchModel({
23
29
  adapter,
24
30
  collection: searchIndex.collection,
25
- versions: searchIndex.versions,
31
+ versions: searchIndex.versions
26
32
  });
27
33
  await Model.createCollection();
28
- const existing = await findCurrentSearchIndex({ dropped, Model, name: searchIndex.name });
34
+ const existing = await findCurrentSearchIndex({
35
+ dropped,
36
+ Model,
37
+ name: searchIndex.name
38
+ });
29
39
  if (!existing) {
30
40
  adapter.payload.logger.info(`Creating search index '${searchIndex.name}' on '${Model.collection.name}'.`);
31
41
  await Model.createSearchIndex({
32
42
  name: searchIndex.name,
33
43
  type: searchIndex.type,
34
- definition: searchIndex.definition,
44
+ definition: searchIndex.definition
35
45
  });
36
46
  return;
37
47
  }
@@ -40,26 +50,31 @@ async function ensureSearchIndex({ adapter, dropped, searchIndex, }) {
40
50
  }
41
51
  const current = isSearchIndexDefinitionEqual({
42
52
  actual: existing.latestDefinition,
43
- expected: searchIndex.definition,
53
+ expected: searchIndex.definition
44
54
  });
45
55
  if (current && existing.status === 'FAILED') {
46
56
  throw new SearchCapabilityError(searchIndex.collection, searchIndex.index, searchIndex.mode, 'setup-failed', `Search index '${searchIndex.name}' failed to build. Drop it after fixing the cause so it is recreated.`);
47
57
  }
48
- if (current)
49
- return;
58
+ if (current) return;
50
59
  adapter.payload.logger.info(`Updating search index '${searchIndex.name}' on '${Model.collection.name}'.`);
51
60
  await Model.updateSearchIndex(searchIndex.name, searchIndex.definition);
52
61
  }
53
- export async function ensureSearchIndexes({ adapter, dropped = false, }) {
54
- for (const searchIndex of getSearchIndexes(adapter)) {
62
+ export async function ensureSearchIndexes({ adapter, dropped = false }) {
63
+ for (const searchIndex of getSearchIndexes(adapter)){
55
64
  try {
56
- await ensureSearchIndex({ adapter, dropped, searchIndex });
57
- }
58
- catch (error) {
59
- if (error instanceof SearchCapabilityError)
60
- throw error;
61
- throw createSearchSetupError({ error, searchIndex });
65
+ await ensureSearchIndex({
66
+ adapter,
67
+ dropped,
68
+ searchIndex
69
+ });
70
+ } catch (error) {
71
+ if (error instanceof SearchCapabilityError) throw error;
72
+ throw createSearchSetupError({
73
+ error,
74
+ searchIndex
75
+ });
62
76
  }
63
77
  }
64
78
  }
79
+
65
80
  //# sourceMappingURL=ensureSearchIndexes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ensureSearchIndexes.js","sourceRoot":"","sources":["../../src/search/ensureSearchIndexes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/search/ensureSearchIndexes.ts"],"names":["SearchCapabilityError","createSearchSetupError","findSearchIndex","getSearchIndexes","getSearchModel","isSearchIndexDefinitionEqual","droppedIndexTimeout","droppedIndexInterval","findCurrentSearchIndex","dropped","Model","name","started","Date","now","existing","Error","Promise","resolve","setTimeout","ensureSearchIndex","adapter","searchIndex","collection","versions","createCollection","payload","logger","info","createSearchIndex","type","definition","index","mode","current","actual","latestDefinition","expected","status","updateSearchIndex","ensureSearchIndexes","error"],"mappings":"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","file":"ensureSearchIndexes.js"}
@@ -1,5 +1,6 @@
1
- export async function findSearchIndex({ Model, name, }) {
2
- const [index] = (await Model.collection.listSearchIndexes(name).toArray());
1
+ export async function findSearchIndex({ Model, name }) {
2
+ const [index] = await Model.collection.listSearchIndexes(name).toArray();
3
3
  return index?.status === 'DOES_NOT_EXIST' ? undefined : index;
4
4
  }
5
+
5
6
  //# sourceMappingURL=findSearchIndex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"findSearchIndex.js","sourceRoot":"","sources":["../../src/search/findSearchIndex.ts"],"names":[],"mappings":"AAUA,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EACpC,KAAK,EACL,IAAI,GAIL;IACC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAsB,CAAC;IAEhG,OAAO,KAAK,EAAE,MAAM,KAAK,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;AAChE,CAAC"}
1
+ {"version":3,"sources":["../../src/search/findSearchIndex.ts"],"names":["findSearchIndex","Model","name","index","collection","listSearchIndexes","toArray","status","undefined"],"mappings":"AAUA,OAAO,eAAeA,gBAAgB,EACpCC,KAAK,EACLC,IAAI,EAIL;IACC,MAAM,CAACC,MAAM,GAAI,MAAMF,MAAMG,UAAU,CAACC,iBAAiB,CAACH,MAAMI,OAAO;IAEvE,OAAOH,OAAOI,WAAW,mBAAmBC,YAAYL;AAC1D","file":"findSearchIndex.js"}
@@ -2,7 +2,8 @@ const searchIndexes = new WeakMap();
2
2
  export function getSearchIndexes(adapter) {
3
3
  return searchIndexes.get(adapter) ?? [];
4
4
  }
5
- export function setSearchIndexes({ adapter, indexes, }) {
5
+ export function setSearchIndexes({ adapter, indexes }) {
6
6
  searchIndexes.set(adapter, indexes);
7
7
  }
8
+
8
9
  //# sourceMappingURL=getSearchIndexes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSearchIndexes.js","sourceRoot":"","sources":["../../src/search/getSearchIndexes.ts"],"names":[],"mappings":"AAIA,MAAM,aAAa,GAAG,IAAI,OAAO,EAAyB,CAAC;AAE3D,MAAM,UAAU,gBAAgB,CAAC,OAAwB;IACvD,OAAO,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAC/B,OAAO,EACP,OAAO,GAIR;IACC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"sources":["../../src/search/getSearchIndexes.ts"],"names":["searchIndexes","WeakMap","getSearchIndexes","adapter","get","setSearchIndexes","indexes","set"],"mappings":"AAIA,MAAMA,gBAAgB,IAAIC;AAE1B,OAAO,SAASC,iBAAiBC,OAAwB;IACvD,OAAOH,cAAcI,GAAG,CAACD,YAAY,EAAE;AACzC;AAEA,OAAO,SAASE,iBAAiB,EAC/BF,OAAO,EACPG,OAAO,EAIR;IACCN,cAAcO,GAAG,CAACJ,SAASG;AAC7B","file":"getSearchIndexes.js"}
@@ -1,6 +1,5 @@
1
1
  import type { MongooseAdapter } from '@payloadcms/db-mongodb';
2
2
  export type SearchModel = MongooseAdapter['collections'][string];
3
- export type SearchPipeline = NonNullable<Parameters<SearchModel['aggregate']>[0]>;
4
3
  export declare function getSearchModel({ adapter, collection, versions, }: {
5
4
  adapter: MongooseAdapter;
6
5
  collection: string;
@@ -1 +1 @@
1
- {"version":3,"file":"getSearchModel.d.ts","sourceRoot":"","sources":["../../src/search/getSearchModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,MAAM,MAAM,cAAc,GAAG,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAElF,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,UAAU,EACV,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,eAAe,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB,GAAG,WAAW,CAEd"}
1
+ {"version":3,"file":"getSearchModel.d.ts","sourceRoot":"","sources":["../../src/search/getSearchModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,WAAW,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,UAAU,EACV,QAAQ,GACT,EAAE;IACD,OAAO,EAAE,eAAe,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;CACnB,GAAG,WAAW,CAEd"}
@@ -1,4 +1,5 @@
1
- export function getSearchModel({ adapter, collection, versions, }) {
1
+ export function getSearchModel({ adapter, collection, versions }) {
2
2
  return versions ? adapter.versions[collection] : adapter.collections[collection];
3
3
  }
4
+
4
5
  //# sourceMappingURL=getSearchModel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSearchModel.js","sourceRoot":"","sources":["../../src/search/getSearchModel.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,cAAc,CAAC,EAC7B,OAAO,EACP,UAAU,EACV,QAAQ,GAKT;IACC,OAAO,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;AACnF,CAAC"}
1
+ {"version":3,"sources":["../../src/search/getSearchModel.ts"],"names":["getSearchModel","adapter","collection","versions","collections"],"mappings":"AAIA,OAAO,SAASA,eAAe,EAC7BC,OAAO,EACPC,UAAU,EACVC,QAAQ,EAKT;IACC,OAAOA,WAAWF,QAAQE,QAAQ,CAACD,WAAW,GAAGD,QAAQG,WAAW,CAACF,WAAW;AAClF","file":"getSearchModel.js"}
@@ -1,23 +1,23 @@
1
1
  import { buildVersionCollectionFields, getLocalizedPaths } from 'payload';
2
- export function getSearchFields({ adapter, collection, versions, }) {
2
+ export function getSearchFields({ adapter, collection, versions }) {
3
3
  const { config } = adapter.payload.collections[collection];
4
- return versions
5
- ? buildVersionCollectionFields(adapter.payload.config, config, true)
6
- : config.flattenedFields;
4
+ return versions ? buildVersionCollectionFields(adapter.payload.config, config, true) : config.flattenedFields;
7
5
  }
8
6
  export function getSearchLocales(adapter) {
9
7
  const { localization } = adapter.payload.config;
10
- return localization ? localization.localeCodes : [undefined];
8
+ return localization ? localization.localeCodes : [
9
+ undefined
10
+ ];
11
11
  }
12
- export function getIDFieldType({ adapter, collection, }) {
12
+ export function getIDFieldType({ adapter, collection }) {
13
13
  const customIDType = adapter.payload.collections[collection]?.customIDType;
14
- if (customIDType === 'number')
15
- return 'number';
14
+ if (customIDType === 'number') return 'number';
16
15
  return customIDType === 'text' ? 'token' : 'objectId';
17
16
  }
18
- export function getSearchPath({ adapter, collection, fields, locale, path, versions, }) {
19
- if (path === 'id')
20
- return { path: versions ? 'parent' : '_id' };
17
+ export function getSearchPath({ adapter, collection, fields, locale, path, versions }) {
18
+ if (path === 'id') return {
19
+ path: versions ? 'parent' : '_id'
20
+ };
21
21
  const [resolved] = getLocalizedPaths({
22
22
  collectionSlug: collection,
23
23
  fields,
@@ -25,11 +25,15 @@ export function getSearchPath({ adapter, collection, fields, locale, path, versi
25
25
  locale,
26
26
  overrideAccess: true,
27
27
  payload: adapter.payload,
28
- showHiddenFields: true,
28
+ showHiddenFields: true
29
29
  });
30
30
  if (!resolved?.path || resolved.invalid) {
31
31
  throw new Error(`Search path '${path}' does not exist in collection '${collection}'.`);
32
32
  }
33
- return { field: resolved.field, path: resolved.path };
33
+ return {
34
+ field: resolved.field,
35
+ path: resolved.path
36
+ };
34
37
  }
38
+
35
39
  //# sourceMappingURL=getSearchPath.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getSearchPath.js","sourceRoot":"","sources":["../../src/search/getSearchPath.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAI1E,MAAM,UAAU,eAAe,CAAC,EAC9B,OAAO,EACP,UAAU,EACV,QAAQ,GAKT;IACC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAE3D,OAAO,QAAQ;QACb,CAAC,CAAC,4BAA4B,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC;QACpE,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAwB;IACvD,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;IAEhD,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAC7B,OAAO,EACP,UAAU,GAIX;IACC,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC;IAE3E,IAAI,YAAY,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAE/C,OAAO,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,EAC5B,OAAO,EACP,UAAU,EACV,MAAM,EACN,MAAM,EACN,IAAI,EACJ,QAAQ,GAQT;IACC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAEhE,MAAM,CAAC,QAAQ,CAAC,GAAG,iBAAiB,CAAC;QACnC,cAAc,EAAE,UAAU;QAC1B,MAAM;QACN,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI;QACjD,MAAM;QACN,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,gBAAgB,EAAE,IAAI;KACvB,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,gBAAgB,IAAI,mCAAmC,UAAU,IAAI,CAAC,CAAC;IACzF,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;AACxD,CAAC"}
1
+ {"version":3,"sources":["../../src/search/getSearchPath.ts"],"names":["buildVersionCollectionFields","getLocalizedPaths","getSearchFields","adapter","collection","versions","config","payload","collections","flattenedFields","getSearchLocales","localization","localeCodes","undefined","getIDFieldType","customIDType","getSearchPath","fields","locale","path","resolved","collectionSlug","incomingPath","overrideAccess","showHiddenFields","invalid","Error","field"],"mappings":"AAEA,SAASA,4BAA4B,EAAEC,iBAAiB,QAAQ,UAAU;AAI1E,OAAO,SAASC,gBAAgB,EAC9BC,OAAO,EACPC,UAAU,EACVC,QAAQ,EAKT;IACC,MAAM,EAAEC,MAAM,EAAE,GAAGH,QAAQI,OAAO,CAACC,WAAW,CAACJ,WAAW;IAE1D,OAAOC,WACHL,6BAA6BG,QAAQI,OAAO,CAACD,MAAM,EAAEA,QAAQ,QAC7DA,OAAOG,eAAe;AAC5B;AAEA,OAAO,SAASC,iBAAiBP,OAAwB;IACvD,MAAM,EAAEQ,YAAY,EAAE,GAAGR,QAAQI,OAAO,CAACD,MAAM;IAE/C,OAAOK,eAAeA,aAAaC,WAAW,GAAG;QAACC;KAAU;AAC9D;AAEA,OAAO,SAASC,eAAe,EAC7BX,OAAO,EACPC,UAAU,EAIX;IACC,MAAMW,eAAeZ,QAAQI,OAAO,CAACC,WAAW,CAACJ,WAAW,EAAEW;IAE9D,IAAIA,iBAAiB,UAAU,OAAO;IAEtC,OAAOA,iBAAiB,SAAS,UAAU;AAC7C;AAEA,OAAO,SAASC,cAAc,EAC5Bb,OAAO,EACPC,UAAU,EACVa,MAAM,EACNC,MAAM,EACNC,IAAI,EACJd,QAAQ,EAQT;IACC,IAAIc,SAAS,MAAM,OAAO;QAAEA,MAAMd,WAAW,WAAW;IAAM;IAE9D,MAAM,CAACe,SAAS,GAAGnB,kBAAkB;QACnCoB,gBAAgBjB;QAChBa;QACAK,cAAcjB,WAAW,CAAC,QAAQ,EAAEc,MAAM,GAAGA;QAC7CD;QACAK,gBAAgB;QAChBhB,SAASJ,QAAQI,OAAO;QACxBiB,kBAAkB;IACpB;IAEA,IAAI,CAACJ,UAAUD,QAAQC,SAASK,OAAO,EAAE;QACvC,MAAM,IAAIC,MAAM,CAAC,aAAa,EAAEP,KAAK,gCAAgC,EAAEf,WAAW,EAAE,CAAC;IACvF;IAEA,OAAO;QAAEuB,OAAOP,SAASO,KAAK;QAAER,MAAMC,SAASD,IAAI;IAAC;AACtD","file":"getSearchPath.js"}
@@ -7,6 +7,7 @@ export const mongooseSearchAdapter = {
7
7
  buildSchema,
8
8
  capabilities,
9
9
  readiness,
10
- search,
10
+ search
11
11
  };
12
+
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/search/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,MAAM,CAAC,MAAM,qBAAqB,GAAkB;IAClD,WAAW;IACX,YAAY;IACZ,SAAS;IACT,MAAM;CACP,CAAC"}
1
+ {"version":3,"sources":["../../src/search/index.ts"],"names":["buildSchema","capabilities","readiness","search","ensureSearchIndexes","mongooseSearchAdapter"],"mappings":"AAEA,SAASA,WAAW,QAAQ,mBAAmB;AAC/C,SAASC,YAAY,QAAQ,oBAAoB;AACjD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,MAAM,QAAQ,cAAc;AAErC,SAASC,mBAAmB,QAAQ,2BAA2B;AAE/D,OAAO,MAAMC,wBAAuC;IAClDL;IACAC;IACAC;IACAC;AACF,EAAE","file":"index.js"}
@@ -1,4 +1,5 @@
1
- export function isDraftSearch({ adapter, collection, draft, }) {
1
+ export function isDraftSearch({ adapter, collection, draft }) {
2
2
  return draft && Boolean(adapter.payload.collections[collection].config.versions?.drafts);
3
3
  }
4
+
4
5
  //# sourceMappingURL=isDraftSearch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isDraftSearch.js","sourceRoot":"","sources":["../../src/search/isDraftSearch.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,aAAa,CAAC,EAC5B,OAAO,EACP,UAAU,EACV,KAAK,GAKN;IACC,OAAO,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC3F,CAAC"}
1
+ {"version":3,"sources":["../../src/search/isDraftSearch.ts"],"names":["isDraftSearch","adapter","collection","draft","Boolean","payload","collections","config","versions","drafts"],"mappings":"AAEA,OAAO,SAASA,cAAc,EAC5BC,OAAO,EACPC,UAAU,EACVC,KAAK,EAKN;IACC,OAAOA,SAASC,QAAQH,QAAQI,OAAO,CAACC,WAAW,CAACJ,WAAW,CAACK,MAAM,CAACC,QAAQ,EAAEC;AACnF","file":"isDraftSearch.js"}
@@ -1,33 +1,40 @@
1
1
  function isRecord(value) {
2
2
  return value !== null && typeof value === 'object' && !Array.isArray(value);
3
3
  }
4
- function matches({ actual, expected, exactKeys, }) {
4
+ function matches({ actual, expected, exactKeys }) {
5
5
  if (Array.isArray(expected)) {
6
- if (!Array.isArray(actual) || actual.length !== expected.length)
7
- return false;
8
- const remaining = [...actual];
9
- return expected.every((item) => {
10
- const index = remaining.findIndex((candidate) => matches({ actual: candidate, expected: item, exactKeys: false }));
11
- if (index === -1)
12
- return false;
6
+ if (!Array.isArray(actual) || actual.length !== expected.length) return false;
7
+ const remaining = [
8
+ ...actual
9
+ ];
10
+ return expected.every((item)=>{
11
+ const index = remaining.findIndex((candidate)=>matches({
12
+ actual: candidate,
13
+ expected: item,
14
+ exactKeys: false
15
+ }));
16
+ if (index === -1) return false;
13
17
  remaining.splice(index, 1);
14
18
  return true;
15
19
  });
16
20
  }
17
21
  if (isRecord(expected)) {
18
- if (!isRecord(actual))
19
- return false;
20
- if (exactKeys && Object.keys(actual).length !== Object.keys(expected).length)
21
- return false;
22
- return Object.entries(expected).every(([key, value]) => matches({
23
- actual: actual[key],
24
- expected: value,
25
- exactKeys: key === 'fields' && isRecord(value),
26
- }));
22
+ if (!isRecord(actual)) return false;
23
+ if (exactKeys && Object.keys(actual).length !== Object.keys(expected).length) return false;
24
+ return Object.entries(expected).every(([key, value])=>matches({
25
+ actual: actual[key],
26
+ expected: value,
27
+ exactKeys: key === 'fields' && isRecord(value)
28
+ }));
27
29
  }
28
30
  return actual === expected;
29
31
  }
30
- export function isSearchIndexDefinitionEqual({ actual, expected, }) {
31
- return matches({ actual, expected, exactKeys: false });
32
+ export function isSearchIndexDefinitionEqual({ actual, expected }) {
33
+ return matches({
34
+ actual,
35
+ expected,
36
+ exactKeys: false
37
+ });
32
38
  }
39
+
33
40
  //# sourceMappingURL=isSearchIndexDefinitionEqual.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isSearchIndexDefinitionEqual.js","sourceRoot":"","sources":["../../src/search/isSearchIndexDefinitionEqual.ts"],"names":[],"mappings":"AAAA,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,OAAO,CAAC,EACf,MAAM,EACN,QAAQ,EACR,SAAS,GAKV;IACC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE9E,MAAM,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;QAE9B,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7B,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,EAAE,CAC9C,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CACjE,CAAC;YAEF,IAAI,KAAK,KAAK,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;YAE/B,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAE3B,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC;QAEpC,IAAI,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAE3F,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACrD,OAAO,CAAC;YACN,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;YACnB,QAAQ,EAAE,KAAK;YACf,SAAS,EAAE,GAAG,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC;SAC/C,CAAC,CACH,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,KAAK,QAAQ,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,EAC3C,MAAM,EACN,QAAQ,GAIT;IACC,OAAO,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AACzD,CAAC"}
1
+ {"version":3,"sources":["../../src/search/isSearchIndexDefinitionEqual.ts"],"names":["isRecord","value","Array","isArray","matches","actual","expected","exactKeys","length","remaining","every","item","index","findIndex","candidate","splice","Object","keys","entries","key","isSearchIndexDefinitionEqual"],"mappings":"AAAA,SAASA,SAASC,KAAc;IAC9B,OAAOA,UAAU,QAAQ,OAAOA,UAAU,YAAY,CAACC,MAAMC,OAAO,CAACF;AACvE;AAEA,SAASG,QAAQ,EACfC,MAAM,EACNC,QAAQ,EACRC,SAAS,EAKV;IACC,IAAIL,MAAMC,OAAO,CAACG,WAAW;QAC3B,IAAI,CAACJ,MAAMC,OAAO,CAACE,WAAWA,OAAOG,MAAM,KAAKF,SAASE,MAAM,EAAE,OAAO;QAExE,MAAMC,YAAY;eAAIJ;SAAO;QAE7B,OAAOC,SAASI,KAAK,CAAC,CAACC;YACrB,MAAMC,QAAQH,UAAUI,SAAS,CAAC,CAACC,YACjCV,QAAQ;oBAAEC,QAAQS;oBAAWR,UAAUK;oBAAMJ,WAAW;gBAAM;YAGhE,IAAIK,UAAU,CAAC,GAAG,OAAO;YAEzBH,UAAUM,MAAM,CAACH,OAAO;YAExB,OAAO;QACT;IACF;IAEA,IAAIZ,SAASM,WAAW;QACtB,IAAI,CAACN,SAASK,SAAS,OAAO;QAE9B,IAAIE,aAAaS,OAAOC,IAAI,CAACZ,QAAQG,MAAM,KAAKQ,OAAOC,IAAI,CAACX,UAAUE,MAAM,EAAE,OAAO;QAErF,OAAOQ,OAAOE,OAAO,CAACZ,UAAUI,KAAK,CAAC,CAAC,CAACS,KAAKlB,MAAM,GACjDG,QAAQ;gBACNC,QAAQA,MAAM,CAACc,IAAI;gBACnBb,UAAUL;gBACVM,WAAWY,QAAQ,YAAYnB,SAASC;YAC1C;IAEJ;IAEA,OAAOI,WAAWC;AACpB;AAEA,OAAO,SAASc,6BAA6B,EAC3Cf,MAAM,EACNC,QAAQ,EAIT;IACC,OAAOF,QAAQ;QAAEC;QAAQC;QAAUC,WAAW;IAAM;AACtD","file":"isSearchIndexDefinitionEqual.js"}