@drodil/backstage-plugin-search-backend-module-qeta 3.18.2 → 3.20.1

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.
@@ -79,11 +79,13 @@ ${commentsContent.join("\n\n")}` : ""}`,
79
79
  location: post.type === "question" ? `/qeta/questions/${post.id}` : `/qeta/articles/${post.id}`,
80
80
  docType: "qeta_post",
81
81
  author: post.author,
82
+ created: post.created,
82
83
  score: post.score,
83
84
  entityRefs: post.entities,
84
85
  answerCount: post.answersCount,
85
86
  views: post.views,
86
87
  tags: post.tags,
88
+ postType: post.type,
87
89
  authorization: {
88
90
  resourceRef: `qeta:post:${post.id}`
89
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultQetaCollatorFactory.cjs.js","sources":["../../src/collators/DefaultQetaCollatorFactory.ts"],"sourcesContent":["import { Config } from '@backstage/config';\nimport { Readable } from 'stream';\nimport { DocumentCollatorFactory } from '@backstage/plugin-search-common';\nimport {\n QetaApi,\n QetaClient,\n QetaCollectionDocument,\n QetaPostDocument,\n qetaReadPostPermission,\n} from '@drodil/backstage-plugin-qeta-common';\nimport {\n AuthService,\n DiscoveryService,\n LoggerService,\n} from '@backstage/backend-plugin-api';\n\nexport type QetaCollatorFactoryOptions = {\n logger: LoggerService;\n discovery: DiscoveryService;\n auth?: AuthService;\n};\n\nexport class DefaultQetaCollatorFactory implements DocumentCollatorFactory {\n public readonly type: string = 'qeta';\n visibilityPermission = qetaReadPostPermission;\n private readonly logger: LoggerService;\n private readonly auth?: AuthService;\n private readonly api: QetaApi;\n\n private constructor(_config: Config, options: QetaCollatorFactoryOptions) {\n this.logger = options.logger;\n this.auth = options.auth;\n this.api = new QetaClient({ discoveryApi: options.discovery });\n }\n\n static fromConfig(config: Config, options: QetaCollatorFactoryOptions) {\n return new DefaultQetaCollatorFactory(config, options);\n }\n\n async getCollator() {\n return Readable.from(this.execute());\n }\n\n async *execute(): AsyncGenerator<QetaPostDocument | QetaCollectionDocument> {\n this.logger.info('Executing QetaCollator');\n let totalPosts = Number.MAX_VALUE;\n let indexedPosts = 0;\n\n while (totalPosts > indexedPosts) {\n let tok = undefined;\n\n if (this.auth) {\n const { token } = await this.auth.getPluginRequestToken({\n onBehalfOf: await this.auth.getOwnServiceCredentials(),\n targetPluginId: 'qeta',\n });\n tok = token;\n }\n\n const data = await this.api.getPosts(\n {\n includeAnswers: true,\n includeComments: true,\n orderBy: 'created',\n order: 'asc',\n limit: 50,\n offset: indexedPosts,\n },\n { token: tok },\n );\n\n if (!data || 'errors' in data || !('posts' in data)) {\n this.logger.error(\n `Error while fetching posts from qeta: ${JSON.stringify(data)}`,\n );\n return;\n }\n\n const posts = data.posts;\n this.logger.info(`Indexing ${posts.length} posts`);\n totalPosts = data.total;\n indexedPosts += posts.length;\n\n for (const post of posts) {\n const postContent = `# ${\n post.type === 'question' ? 'Question' : 'Article'\n }: ${post.title}\\n\\n${post.content}`;\n const answersContent = (post.answers ?? []).map(a => {\n return `## ${a.correct ? 'Correct answer' : 'Answer'} by ${\n a.author\n }: ${a.content}`;\n });\n\n const allComments = (post.comments ?? []).concat(\n (post.answers ?? []).flatMap(a => a.comments ?? []),\n );\n const commentsContent = allComments.map(c => {\n return `* Comment by ${c.author}: ${c.content}`;\n });\n\n yield {\n title: post.title,\n text: `${postContent}\\n\\n${answersContent.join('\\n\\n')}\\n\\n${\n commentsContent.length > 0\n ? `Comments:\\n\\n${commentsContent.join('\\n\\n')}`\n : ''\n }`,\n location:\n post.type === 'question'\n ? `/qeta/questions/${post.id}`\n : `/qeta/articles/${post.id}`,\n docType: 'qeta_post',\n author: post.author,\n score: post.score,\n entityRefs: post.entities,\n answerCount: post.answersCount,\n views: post.views,\n tags: post.tags,\n authorization: {\n resourceRef: `qeta:post:${post.id}`,\n },\n };\n }\n }\n\n let totalCollections = Number.MAX_VALUE;\n let indexedCollections = 0;\n\n while (totalCollections > indexedCollections) {\n let tok = undefined;\n\n if (this.auth) {\n const { token } = await this.auth.getPluginRequestToken({\n onBehalfOf: await this.auth.getOwnServiceCredentials(),\n targetPluginId: 'qeta',\n });\n tok = token;\n }\n\n const data = await this.api.getCollections(\n {\n orderBy: 'created',\n order: 'asc',\n limit: 50,\n offset: indexedCollections,\n },\n { token: tok },\n );\n\n if (!data || 'errors' in data || !('collections' in data)) {\n this.logger.error(\n `Error while fetching collections from qeta: ${JSON.stringify(data)}`,\n );\n return;\n }\n\n const collections = data.collections;\n this.logger.info(`Indexing ${collections.length} collections`);\n totalCollections = data.total;\n indexedCollections += collections.length;\n\n for (const collection of collections) {\n yield {\n title: collection.title,\n text: collection.description ?? '',\n location: `/qeta/collections/${collection.id}`,\n docType: 'qeta_collection',\n owner: collection.owner,\n created: collection.created,\n headerImage: collection.headerImage,\n };\n }\n }\n }\n}\n"],"names":["qetaReadPostPermission","QetaClient","Readable"],"mappings":"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"}
1
+ {"version":3,"file":"DefaultQetaCollatorFactory.cjs.js","sources":["../../src/collators/DefaultQetaCollatorFactory.ts"],"sourcesContent":["import { Config } from '@backstage/config';\nimport { Readable } from 'stream';\nimport { DocumentCollatorFactory } from '@backstage/plugin-search-common';\nimport {\n QetaApi,\n QetaClient,\n QetaCollectionDocument,\n QetaPostDocument,\n qetaReadPostPermission,\n} from '@drodil/backstage-plugin-qeta-common';\nimport {\n AuthService,\n DiscoveryService,\n LoggerService,\n} from '@backstage/backend-plugin-api';\n\nexport type QetaCollatorFactoryOptions = {\n logger: LoggerService;\n discovery: DiscoveryService;\n auth?: AuthService;\n};\n\nexport class DefaultQetaCollatorFactory implements DocumentCollatorFactory {\n public readonly type: string = 'qeta';\n visibilityPermission = qetaReadPostPermission;\n private readonly logger: LoggerService;\n private readonly auth?: AuthService;\n private readonly api: QetaApi;\n\n private constructor(_config: Config, options: QetaCollatorFactoryOptions) {\n this.logger = options.logger;\n this.auth = options.auth;\n this.api = new QetaClient({ discoveryApi: options.discovery });\n }\n\n static fromConfig(config: Config, options: QetaCollatorFactoryOptions) {\n return new DefaultQetaCollatorFactory(config, options);\n }\n\n async getCollator() {\n return Readable.from(this.execute());\n }\n\n async *execute(): AsyncGenerator<QetaPostDocument | QetaCollectionDocument> {\n this.logger.info('Executing QetaCollator');\n let totalPosts = Number.MAX_VALUE;\n let indexedPosts = 0;\n\n while (totalPosts > indexedPosts) {\n let tok = undefined;\n\n if (this.auth) {\n const { token } = await this.auth.getPluginRequestToken({\n onBehalfOf: await this.auth.getOwnServiceCredentials(),\n targetPluginId: 'qeta',\n });\n tok = token;\n }\n\n const data = await this.api.getPosts(\n {\n includeAnswers: true,\n includeComments: true,\n orderBy: 'created',\n order: 'asc',\n limit: 50,\n offset: indexedPosts,\n },\n { token: tok },\n );\n\n if (!data || 'errors' in data || !('posts' in data)) {\n this.logger.error(\n `Error while fetching posts from qeta: ${JSON.stringify(data)}`,\n );\n return;\n }\n\n const posts = data.posts;\n this.logger.info(`Indexing ${posts.length} posts`);\n totalPosts = data.total;\n indexedPosts += posts.length;\n\n for (const post of posts) {\n const postContent = `# ${\n post.type === 'question' ? 'Question' : 'Article'\n }: ${post.title}\\n\\n${post.content}`;\n const answersContent = (post.answers ?? []).map(a => {\n return `## ${a.correct ? 'Correct answer' : 'Answer'} by ${\n a.author\n }: ${a.content}`;\n });\n\n const allComments = (post.comments ?? []).concat(\n (post.answers ?? []).flatMap(a => a.comments ?? []),\n );\n const commentsContent = allComments.map(c => {\n return `* Comment by ${c.author}: ${c.content}`;\n });\n\n yield {\n title: post.title,\n text: `${postContent}\\n\\n${answersContent.join('\\n\\n')}\\n\\n${\n commentsContent.length > 0\n ? `Comments:\\n\\n${commentsContent.join('\\n\\n')}`\n : ''\n }`,\n location:\n post.type === 'question'\n ? `/qeta/questions/${post.id}`\n : `/qeta/articles/${post.id}`,\n docType: 'qeta_post',\n author: post.author,\n created: post.created,\n score: post.score,\n entityRefs: post.entities,\n answerCount: post.answersCount,\n views: post.views,\n tags: post.tags,\n postType: post.type,\n authorization: {\n resourceRef: `qeta:post:${post.id}`,\n },\n };\n }\n }\n\n let totalCollections = Number.MAX_VALUE;\n let indexedCollections = 0;\n\n while (totalCollections > indexedCollections) {\n let tok = undefined;\n\n if (this.auth) {\n const { token } = await this.auth.getPluginRequestToken({\n onBehalfOf: await this.auth.getOwnServiceCredentials(),\n targetPluginId: 'qeta',\n });\n tok = token;\n }\n\n const data = await this.api.getCollections(\n {\n orderBy: 'created',\n order: 'asc',\n limit: 50,\n offset: indexedCollections,\n },\n { token: tok },\n );\n\n if (!data || 'errors' in data || !('collections' in data)) {\n this.logger.error(\n `Error while fetching collections from qeta: ${JSON.stringify(data)}`,\n );\n return;\n }\n\n const collections = data.collections;\n this.logger.info(`Indexing ${collections.length} collections`);\n totalCollections = data.total;\n indexedCollections += collections.length;\n\n for (const collection of collections) {\n yield {\n title: collection.title,\n text: collection.description ?? '',\n location: `/qeta/collections/${collection.id}`,\n docType: 'qeta_collection',\n owner: collection.owner,\n created: collection.created,\n headerImage: collection.headerImage,\n };\n }\n }\n }\n}\n"],"names":["qetaReadPostPermission","QetaClient","Readable"],"mappings":"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"}
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "search",
8
8
  "backstage.io"
9
9
  ],
10
- "version": "3.18.2",
10
+ "version": "3.20.1",
11
11
  "main": "dist/index.cjs.js",
12
12
  "types": "dist/index.d.ts",
13
13
  "prepublishOnly": "yarn tsc && yarn build",
@@ -46,7 +46,7 @@
46
46
  "@backstage/errors": "^1.2.7",
47
47
  "@backstage/plugin-search-backend-node": "^1.3.7",
48
48
  "@backstage/plugin-search-common": "^1.2.17",
49
- "@drodil/backstage-plugin-qeta-common": "^3.18.2"
49
+ "@drodil/backstage-plugin-qeta-common": "^3.20.1"
50
50
  },
51
51
  "devDependencies": {
52
52
  "@backstage/backend-test-utils": "^1.2.1",