@payloadcms/plugin-search 3.24.0 → 3.25.0-canary.3d5c763
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Search/hooks/deleteFromSearch.d.ts.map +1 -1
- package/dist/Search/hooks/deleteFromSearch.js +2 -0
- package/dist/Search/hooks/deleteFromSearch.js.map +1 -1
- package/dist/utilities/syncDocAsSearchIndex.d.ts.map +1 -1
- package/dist/utilities/syncDocAsSearchIndex.js +2 -0
- package/dist/utilities/syncDocAsSearchIndex.js.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deleteFromSearch.d.ts","sourceRoot":"","sources":["../../../src/Search/hooks/deleteFromSearch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEtD,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"deleteFromSearch.d.ts","sourceRoot":"","sources":["../../../src/Search/hooks/deleteFromSearch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEtD,eAAO,MAAM,gBAAgB,EAAE,gBAwC9B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/Search/hooks/deleteFromSearch.ts"],"sourcesContent":["import type { DeleteFromSearch } from '../../types.js'\n\nexport const deleteFromSearch: DeleteFromSearch = async ({\n collection,\n doc,\n pluginConfig,\n req: { payload },\n req,\n}) => {\n const searchSlug = pluginConfig?.searchOverrides?.slug || 'search'\n try {\n const searchDocQuery = await payload.find({\n collection: searchSlug,\n depth: 0,\n req,\n where: {\n doc: {\n equals: {\n relationTo: collection.slug,\n value: doc.id,\n },\n },\n },\n })\n\n if (searchDocQuery?.docs?.[0]) {\n await payload.delete({\n id: searchDocQuery?.docs?.[0]?.id,\n collection: searchSlug,\n req,\n })\n }\n } catch (err: unknown) {\n payload.logger.error({\n err,\n msg: `Error deleting ${searchSlug} doc.`,\n })\n }\n\n return doc\n}\n"],"names":["deleteFromSearch","collection","doc","pluginConfig","req","payload","searchSlug","searchOverrides","slug","searchDocQuery","find","depth","where","equals","relationTo","value","id","docs","delete","err","logger","error","msg"],"mappings":"AAEA,OAAO,MAAMA,mBAAqC,OAAO,EACvDC,UAAU,EACVC,GAAG,EACHC,YAAY,EACZC,KAAK,EAAEC,OAAO,EAAE,EAChBD,GAAG,EACJ;IACC,MAAME,aAAaH,cAAcI,iBAAiBC,QAAQ;IAC1D,IAAI;QACF,MAAMC,iBAAiB,MAAMJ,QAAQK,IAAI,CAAC;YACxCT,YAAYK;YACZK,OAAO;
|
|
1
|
+
{"version":3,"sources":["../../../src/Search/hooks/deleteFromSearch.ts"],"sourcesContent":["import type { DeleteFromSearch } from '../../types.js'\n\nexport const deleteFromSearch: DeleteFromSearch = async ({\n collection,\n doc,\n pluginConfig,\n req: { payload },\n req,\n}) => {\n const searchSlug = pluginConfig?.searchOverrides?.slug || 'search'\n try {\n const searchDocQuery = await payload.find({\n collection: searchSlug,\n depth: 0,\n limit: 1,\n pagination: false,\n req,\n where: {\n doc: {\n equals: {\n relationTo: collection.slug,\n value: doc.id,\n },\n },\n },\n })\n\n if (searchDocQuery?.docs?.[0]) {\n await payload.delete({\n id: searchDocQuery?.docs?.[0]?.id,\n collection: searchSlug,\n req,\n })\n }\n } catch (err: unknown) {\n payload.logger.error({\n err,\n msg: `Error deleting ${searchSlug} doc.`,\n })\n }\n\n return doc\n}\n"],"names":["deleteFromSearch","collection","doc","pluginConfig","req","payload","searchSlug","searchOverrides","slug","searchDocQuery","find","depth","limit","pagination","where","equals","relationTo","value","id","docs","delete","err","logger","error","msg"],"mappings":"AAEA,OAAO,MAAMA,mBAAqC,OAAO,EACvDC,UAAU,EACVC,GAAG,EACHC,YAAY,EACZC,KAAK,EAAEC,OAAO,EAAE,EAChBD,GAAG,EACJ;IACC,MAAME,aAAaH,cAAcI,iBAAiBC,QAAQ;IAC1D,IAAI;QACF,MAAMC,iBAAiB,MAAMJ,QAAQK,IAAI,CAAC;YACxCT,YAAYK;YACZK,OAAO;YACPC,OAAO;YACPC,YAAY;YACZT;YACAU,OAAO;gBACLZ,KAAK;oBACHa,QAAQ;wBACNC,YAAYf,WAAWO,IAAI;wBAC3BS,OAAOf,IAAIgB,EAAE;oBACf;gBACF;YACF;QACF;QAEA,IAAIT,gBAAgBU,MAAM,CAAC,EAAE,EAAE;YAC7B,MAAMd,QAAQe,MAAM,CAAC;gBACnBF,IAAIT,gBAAgBU,MAAM,CAAC,EAAE,EAAED;gBAC/BjB,YAAYK;gBACZF;YACF;QACF;IACF,EAAE,OAAOiB,KAAc;QACrBhB,QAAQiB,MAAM,CAACC,KAAK,CAAC;YACnBF;YACAG,KAAK,CAAC,eAAe,EAAElB,WAAW,KAAK,CAAC;QAC1C;IACF;IAEA,OAAOJ;AACT,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncDocAsSearchIndex.d.ts","sourceRoot":"","sources":["../../src/utilities/syncDocAsSearchIndex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzD,eAAO,MAAM,oBAAoB,8FAS9B,WAAW,
|
|
1
|
+
{"version":3,"file":"syncDocAsSearchIndex.d.ts","sourceRoot":"","sources":["../../src/utilities/syncDocAsSearchIndex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzD,eAAO,MAAM,oBAAoB,8FAS9B,WAAW,iBA4Mb,CAAA"}
|
|
@@ -124,7 +124,9 @@ export const syncDocAsSearchIndex = async ({ collection, doc, locale, onSyncErro
|
|
|
124
124
|
const { docs: [docWithPublish] } = await payload.find({
|
|
125
125
|
collection,
|
|
126
126
|
draft: false,
|
|
127
|
+
limit: 1,
|
|
127
128
|
locale: syncLocale,
|
|
129
|
+
pagination: false,
|
|
128
130
|
req,
|
|
129
131
|
where: {
|
|
130
132
|
and: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/syncDocAsSearchIndex.ts"],"sourcesContent":["import type { DocToSync, SyncDocArgs } from '../types.js'\n\nexport const syncDocAsSearchIndex = async ({\n collection,\n doc,\n locale,\n onSyncError,\n operation,\n pluginConfig,\n req: { payload },\n req,\n}: SyncDocArgs) => {\n const { id, _status: status, title } = doc || {}\n\n const { beforeSync, defaultPriorities, deleteDrafts, searchOverrides, syncDrafts } = pluginConfig\n\n const searchSlug = searchOverrides?.slug || 'search'\n const syncLocale = locale || req.locale\n\n let dataToSave: DocToSync = {\n doc: {\n relationTo: collection,\n value: id,\n },\n title,\n }\n\n if (typeof beforeSync === 'function') {\n let docToSyncWith = doc\n if (payload.config?.localization) {\n docToSyncWith = await payload.findByID({\n id,\n collection,\n locale: syncLocale,\n req,\n })\n }\n dataToSave = await beforeSync({\n originalDoc: docToSyncWith,\n payload,\n req,\n searchDoc: dataToSave,\n })\n }\n\n let defaultPriority = 0\n if (defaultPriorities) {\n const { [collection]: priority } = defaultPriorities\n\n if (typeof priority === 'function') {\n try {\n defaultPriority = await priority(doc)\n } catch (err: unknown) {\n payload.logger.error(err)\n payload.logger.error(\n `Error gathering default priority for ${searchSlug} documents related to ${collection}`,\n )\n }\n } else {\n defaultPriority = priority\n }\n }\n\n const doSync = syncDrafts || (!syncDrafts && status !== 'draft')\n\n try {\n if (operation === 'create') {\n if (doSync) {\n await payload.create({\n collection: searchSlug,\n data: {\n ...dataToSave,\n priority: defaultPriority,\n },\n locale: syncLocale,\n req,\n })\n }\n }\n\n if (operation === 'update') {\n try {\n // find the correct doc to sync with\n const searchDocQuery = await payload.find({\n collection: searchSlug,\n depth: 0,\n locale: syncLocale,\n req,\n where: {\n 'doc.relationTo': {\n equals: collection,\n },\n 'doc.value': {\n equals: id,\n },\n },\n })\n\n const docs: Array<{\n id: number | string\n priority?: number\n }> = searchDocQuery?.docs || []\n\n const [foundDoc, ...duplicativeDocs] = docs\n\n // delete all duplicative search docs (docs that reference the same page)\n // to ensure the same, out-of-date result does not appear twice (where only syncing the first found doc)\n if (duplicativeDocs.length > 0) {\n try {\n const duplicativeDocIDs = duplicativeDocs.map(({ id }) => id)\n await payload.delete({\n collection: searchSlug,\n req,\n where: { id: { in: duplicativeDocIDs } },\n })\n } catch (err: unknown) {\n payload.logger.error({\n err,\n msg: `Error deleting duplicative ${searchSlug} documents.`,\n })\n }\n }\n\n if (foundDoc) {\n const { id: searchDocID } = foundDoc\n\n if (doSync) {\n // update the doc normally\n try {\n await payload.update({\n id: searchDocID,\n collection: searchSlug,\n data: {\n ...dataToSave,\n priority: foundDoc.priority || defaultPriority,\n },\n locale: syncLocale,\n req,\n })\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error updating ${searchSlug} document.` })\n }\n }\n if (deleteDrafts && status === 'draft') {\n // Check to see if there's a published version of the doc\n // We don't want to remove the search doc if there is a published version but a new draft has been created\n const {\n docs: [docWithPublish],\n } = await payload.find({\n collection,\n draft: false,\n locale: syncLocale,\n req,\n where: {\n and: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n id: {\n equals: id,\n },\n },\n ],\n },\n })\n\n if (!docWithPublish) {\n // do not include draft docs in search results, so delete the record\n try {\n await payload.delete({\n id: searchDocID,\n collection: searchSlug,\n req,\n })\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error deleting ${searchSlug} document.` })\n }\n }\n }\n } else if (doSync) {\n try {\n await payload.create({\n collection: searchSlug,\n data: {\n ...dataToSave,\n priority: defaultPriority,\n },\n locale: syncLocale,\n req,\n })\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error creating ${searchSlug} document.` })\n }\n }\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error finding ${searchSlug} document.` })\n }\n }\n } catch (err: unknown) {\n payload.logger.error({\n err,\n msg: `Error syncing ${searchSlug} document related to ${collection} with id: '${id}'.`,\n })\n\n if (onSyncError) {\n onSyncError()\n }\n }\n\n return doc\n}\n"],"names":["syncDocAsSearchIndex","collection","doc","locale","onSyncError","operation","pluginConfig","req","payload","id","_status","status","title","beforeSync","defaultPriorities","deleteDrafts","searchOverrides","syncDrafts","searchSlug","slug","syncLocale","dataToSave","relationTo","value","docToSyncWith","config","localization","findByID","originalDoc","searchDoc","defaultPriority","priority","err","logger","error","doSync","create","data","searchDocQuery","find","depth","where","equals","docs","foundDoc","duplicativeDocs","length","duplicativeDocIDs","map","delete","in","msg","searchDocID","update","docWithPublish","draft","and"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/syncDocAsSearchIndex.ts"],"sourcesContent":["import type { DocToSync, SyncDocArgs } from '../types.js'\n\nexport const syncDocAsSearchIndex = async ({\n collection,\n doc,\n locale,\n onSyncError,\n operation,\n pluginConfig,\n req: { payload },\n req,\n}: SyncDocArgs) => {\n const { id, _status: status, title } = doc || {}\n\n const { beforeSync, defaultPriorities, deleteDrafts, searchOverrides, syncDrafts } = pluginConfig\n\n const searchSlug = searchOverrides?.slug || 'search'\n const syncLocale = locale || req.locale\n\n let dataToSave: DocToSync = {\n doc: {\n relationTo: collection,\n value: id,\n },\n title,\n }\n\n if (typeof beforeSync === 'function') {\n let docToSyncWith = doc\n if (payload.config?.localization) {\n docToSyncWith = await payload.findByID({\n id,\n collection,\n locale: syncLocale,\n req,\n })\n }\n dataToSave = await beforeSync({\n originalDoc: docToSyncWith,\n payload,\n req,\n searchDoc: dataToSave,\n })\n }\n\n let defaultPriority = 0\n if (defaultPriorities) {\n const { [collection]: priority } = defaultPriorities\n\n if (typeof priority === 'function') {\n try {\n defaultPriority = await priority(doc)\n } catch (err: unknown) {\n payload.logger.error(err)\n payload.logger.error(\n `Error gathering default priority for ${searchSlug} documents related to ${collection}`,\n )\n }\n } else {\n defaultPriority = priority\n }\n }\n\n const doSync = syncDrafts || (!syncDrafts && status !== 'draft')\n\n try {\n if (operation === 'create') {\n if (doSync) {\n await payload.create({\n collection: searchSlug,\n data: {\n ...dataToSave,\n priority: defaultPriority,\n },\n locale: syncLocale,\n req,\n })\n }\n }\n\n if (operation === 'update') {\n try {\n // find the correct doc to sync with\n const searchDocQuery = await payload.find({\n collection: searchSlug,\n depth: 0,\n locale: syncLocale,\n req,\n where: {\n 'doc.relationTo': {\n equals: collection,\n },\n 'doc.value': {\n equals: id,\n },\n },\n })\n\n const docs: Array<{\n id: number | string\n priority?: number\n }> = searchDocQuery?.docs || []\n\n const [foundDoc, ...duplicativeDocs] = docs\n\n // delete all duplicative search docs (docs that reference the same page)\n // to ensure the same, out-of-date result does not appear twice (where only syncing the first found doc)\n if (duplicativeDocs.length > 0) {\n try {\n const duplicativeDocIDs = duplicativeDocs.map(({ id }) => id)\n await payload.delete({\n collection: searchSlug,\n req,\n where: { id: { in: duplicativeDocIDs } },\n })\n } catch (err: unknown) {\n payload.logger.error({\n err,\n msg: `Error deleting duplicative ${searchSlug} documents.`,\n })\n }\n }\n\n if (foundDoc) {\n const { id: searchDocID } = foundDoc\n\n if (doSync) {\n // update the doc normally\n try {\n await payload.update({\n id: searchDocID,\n collection: searchSlug,\n data: {\n ...dataToSave,\n priority: foundDoc.priority || defaultPriority,\n },\n locale: syncLocale,\n req,\n })\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error updating ${searchSlug} document.` })\n }\n }\n if (deleteDrafts && status === 'draft') {\n // Check to see if there's a published version of the doc\n // We don't want to remove the search doc if there is a published version but a new draft has been created\n const {\n docs: [docWithPublish],\n } = await payload.find({\n collection,\n draft: false,\n limit: 1,\n locale: syncLocale,\n pagination: false,\n req,\n where: {\n and: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n id: {\n equals: id,\n },\n },\n ],\n },\n })\n\n if (!docWithPublish) {\n // do not include draft docs in search results, so delete the record\n try {\n await payload.delete({\n id: searchDocID,\n collection: searchSlug,\n req,\n })\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error deleting ${searchSlug} document.` })\n }\n }\n }\n } else if (doSync) {\n try {\n await payload.create({\n collection: searchSlug,\n data: {\n ...dataToSave,\n priority: defaultPriority,\n },\n locale: syncLocale,\n req,\n })\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error creating ${searchSlug} document.` })\n }\n }\n } catch (err: unknown) {\n payload.logger.error({ err, msg: `Error finding ${searchSlug} document.` })\n }\n }\n } catch (err: unknown) {\n payload.logger.error({\n err,\n msg: `Error syncing ${searchSlug} document related to ${collection} with id: '${id}'.`,\n })\n\n if (onSyncError) {\n onSyncError()\n }\n }\n\n return doc\n}\n"],"names":["syncDocAsSearchIndex","collection","doc","locale","onSyncError","operation","pluginConfig","req","payload","id","_status","status","title","beforeSync","defaultPriorities","deleteDrafts","searchOverrides","syncDrafts","searchSlug","slug","syncLocale","dataToSave","relationTo","value","docToSyncWith","config","localization","findByID","originalDoc","searchDoc","defaultPriority","priority","err","logger","error","doSync","create","data","searchDocQuery","find","depth","where","equals","docs","foundDoc","duplicativeDocs","length","duplicativeDocIDs","map","delete","in","msg","searchDocID","update","docWithPublish","draft","limit","pagination","and"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/plugin-search",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.25.0-canary.3d5c763",
|
|
4
4
|
"description": "Search plugin for Payload",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"payload",
|
|
@@ -49,19 +49,19 @@
|
|
|
49
49
|
"dist"
|
|
50
50
|
],
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@payloadcms/next": "3.
|
|
53
|
-
"@payloadcms/ui": "3.
|
|
52
|
+
"@payloadcms/next": "3.25.0-canary.3d5c763",
|
|
53
|
+
"@payloadcms/ui": "3.25.0-canary.3d5c763"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@types/react": "19.0.1",
|
|
57
57
|
"@types/react-dom": "19.0.1",
|
|
58
58
|
"@payloadcms/eslint-config": "3.9.0",
|
|
59
|
-
"payload": "3.
|
|
59
|
+
"payload": "3.25.0-canary.3d5c763"
|
|
60
60
|
},
|
|
61
61
|
"peerDependencies": {
|
|
62
62
|
"react": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
63
63
|
"react-dom": "^19.0.0 || ^19.0.0-rc-65a56d0e-20241020",
|
|
64
|
-
"payload": "3.
|
|
64
|
+
"payload": "3.25.0-canary.3d5c763"
|
|
65
65
|
},
|
|
66
66
|
"publishConfig": {
|
|
67
67
|
"registry": "https://registry.npmjs.org/"
|