octalens-mentions 0.0.3 → 0.0.4

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.
@@ -116,6 +116,7 @@ const controller = ({ strapi }) => ({
116
116
  async ingest(ctx) {
117
117
  const requestBody = ctx.request.body;
118
118
  if (!requestBody?.data) return ctx.badRequest("Missing data in request body");
119
+ ctx.body = { data: requestBody?.data };
119
120
  const rawTitle = requestBody.data?.title || "";
120
121
  const rawBody = requestBody.data?.body || "";
121
122
  const generatedTitle = getMentionTitle(rawTitle, rawBody);
@@ -136,7 +137,7 @@ const controller = ({ strapi }) => ({
136
137
  bookmarked: requestBody.data?.bookmarked || false,
137
138
  language: requestBody.data?.language || "",
138
139
  sentimentLabel: requestBody.data?.sentimentLabel || "",
139
- viewId: requestBody.data?.viewId || null,
140
+ viewId: requestBody.data?.viewId ? String(requestBody.data.viewId) : "",
140
141
  viewName: requestBody.data?.viewName || "",
141
142
  subreddit: requestBody.data?.subreddit || ""
142
143
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../server/src/bootstrap.ts","../../server/src/destroy.ts","../../server/src/register.ts","../../server/src/config/index.ts","../../server/src/content-types/mention/index.ts","../../server/src/content-types/index.ts","../../server/src/controllers/mention/index.ts","../../server/src/controllers/ingest/index.ts","../../server/src/controllers/index.ts","../../server/src/middlewares/index.ts","../../server/src/policies/index.ts","../../server/src/routes/admin-api.ts","../../server/src/routes/content-api.ts","../../server/src/routes/index.ts","../../server/src/services/mention/index.ts","../../server/src/services/index.ts","../../server/src/index.ts"],"sourcesContent":["import type { Core } from '@strapi/strapi';\n\nconst bootstrap = ({ strapi }: { strapi: Core.Strapi }) => {\n // bootstrap phase\n};\n\nexport default bootstrap;\n","import type { Core } from '@strapi/strapi';\n\nconst destroy = ({ strapi }: { strapi: Core.Strapi }) => {\n // destroy phase\n};\n\nexport default destroy;\n","import type { Core } from '@strapi/strapi';\n\nconst register = ({ strapi }: { strapi: Core.Strapi }) => {\n // register phase\n};\n\nexport default register;\n","export default {\n default: {},\n validator() {},\n};\n","import schema from './schema.json';\n\nexport default {\n schema,\n};","import mention from './mention';\n\nexport default {\n mention,\n};","'use strict';\n\n/**\n * mention controller\n */\n\nconst { createCoreController } = require('@strapi/strapi').factories;\n\nexport default createCoreController('plugin::octalens-mentions.mention');","import type { Core } from '@strapi/strapi';\n\n/**\n * Gets the display title for a mention.\n * If title is empty or \"Untitled\", uses the first 100 characters from body.\n */\nfunction getMentionTitle(title: string, body: string): string {\n if (!title || title.trim() === '' || title.toLowerCase() === 'untitled') {\n if (!body) return 'Untitled';\n\n const excerpt = body.substring(0, 100).trim();\n return excerpt.length === 100 ? `${excerpt}...` : excerpt;\n }\n\n return title;\n}\n\nconst controller = ({ strapi }: { strapi: Core.Strapi }) => ({\n async ingest(ctx) {\n const requestBody = ctx.request.body;\n\n if (!requestBody?.data) return ctx.badRequest('Missing data in request body');\n\n const rawTitle = requestBody.data?.title || '';\n const rawBody = requestBody.data?.body || '';\n const generatedTitle = getMentionTitle(rawTitle, rawBody);\n\n const mentionData = {\n action: requestBody.action,\n title: generatedTitle,\n body: rawBody,\n url: requestBody.data?.url || '',\n timestamp: requestBody.data?.timestamp || '',\n imageUrl: requestBody.data?.imageUrl || '',\n author: requestBody.data?.author || '',\n authorProfileLink: requestBody.data?.authorProfileLink || '',\n source: requestBody.data?.source || '',\n sourceId: requestBody.data?.sourceId || '',\n relevanceScore: requestBody.data?.relevanceScore || '',\n relevanceComment: requestBody.data?.relevanceComment || '',\n keyword: requestBody.data?.keyword || '',\n bookmarked: requestBody.data?.bookmarked || false,\n language: requestBody.data?.language || '',\n sentimentLabel: requestBody.data?.sentimentLabel || '',\n viewId: requestBody.data?.viewId || null,\n viewName: requestBody.data?.viewName || '',\n subreddit: requestBody.data?.subreddit || '',\n };\n\n console.log('###############################');\n console.log('Parsed mention data:', mentionData);\n console.log('###############################');\n\n try {\n const mention = await strapi.service('plugin::octalens-mentions.mention').create({\n data: mentionData,\n });\n\n ctx.body = { data: mention };\n } catch (error) {\n console.error('Error creating mention:', error);\n ctx.throw(500, 'Failed to create mention');\n }\n },\n});\n\nexport default controller;\n","import mention from './mention';\nimport ingest from './ingest';\n\nexport default {\n mention,\n ingest\n};","export default {};\n","export default {};\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: ['admin::isAuthenticatedAdmin'],\n },\n },\n];\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: [],\n },\n },\n {\n method: 'GET',\n path: '/mentions/:id',\n handler: 'mention.findOne',\n config: {\n policies: [],\n },\n },\n {\n method: 'DELETE',\n path: '/mentions/:id',\n handler: 'mention.delete',\n config: {\n policies: [],\n },\n },\n {\n method: 'PUT',\n path: '/mentions/:id',\n handler: 'mention.update',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/mentions',\n handler: 'mention.create',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/ingest',\n handler: 'ingest.ingest'\n }\n];\n","\"use strict\";\n\nimport adminApiRoutes from \"./admin-api\";\nimport contentApiRoutes from \"./content-api\";\n\n\nexport default {\n \"admin-api\": {\n type: \"admin\",\n routes: [...adminApiRoutes],\n },\n \"content-api\": {\n type: \"content-api\",\n routes: [...contentApiRoutes],\n },\n};","'use strict';\n\n/**\n * mention service\n */\n\nconst { createCoreService } = require('@strapi/strapi').factories;\n\nexport default createCoreService('plugin::octalens-mentions.mention');\n","import mention from './mention';\n\nexport default {\n mention,\n};\n","/**\n * Application methods\n */\nimport bootstrap from './bootstrap';\nimport destroy from './destroy';\nimport register from './register';\n\n/**\n * Plugin server methods\n */\nimport config from './config';\nimport contentTypes from './content-types';\nimport controllers from './controllers';\nimport middlewares from './middlewares';\nimport policies from './policies';\nimport routes from './routes';\nimport services from './services';\n\nexport default {\n register,\n bootstrap,\n destroy,\n config,\n controllers,\n routes,\n services,\n contentTypes,\n policies,\n middlewares,\n};\n"],"names":["mention","ingest"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../server/src/bootstrap.ts","../../server/src/destroy.ts","../../server/src/register.ts","../../server/src/config/index.ts","../../server/src/content-types/mention/index.ts","../../server/src/content-types/index.ts","../../server/src/controllers/mention/index.ts","../../server/src/controllers/ingest/index.ts","../../server/src/controllers/index.ts","../../server/src/middlewares/index.ts","../../server/src/policies/index.ts","../../server/src/routes/admin-api.ts","../../server/src/routes/content-api.ts","../../server/src/routes/index.ts","../../server/src/services/mention/index.ts","../../server/src/services/index.ts","../../server/src/index.ts"],"sourcesContent":["import type { Core } from '@strapi/strapi';\n\nconst bootstrap = ({ strapi }: { strapi: Core.Strapi }) => {\n // bootstrap phase\n};\n\nexport default bootstrap;\n","import type { Core } from '@strapi/strapi';\n\nconst destroy = ({ strapi }: { strapi: Core.Strapi }) => {\n // destroy phase\n};\n\nexport default destroy;\n","import type { Core } from '@strapi/strapi';\n\nconst register = ({ strapi }: { strapi: Core.Strapi }) => {\n // register phase\n};\n\nexport default register;\n","export default {\n default: {},\n validator() {},\n};\n","import schema from './schema.json';\n\nexport default {\n schema,\n};","import mention from './mention';\n\nexport default {\n mention,\n};","'use strict';\n\n/**\n * mention controller\n */\n\nconst { createCoreController } = require('@strapi/strapi').factories;\n\nexport default createCoreController('plugin::octalens-mentions.mention');","import type { Core } from '@strapi/strapi';\n\n/**\n * Gets the display title for a mention.\n * If title is empty or \"Untitled\", uses the first 100 characters from body.\n */\nfunction getMentionTitle(title: string, body: string): string {\n if (!title || title.trim() === '' || title.toLowerCase() === 'untitled') {\n if (!body) return 'Untitled';\n\n const excerpt = body.substring(0, 100).trim();\n return excerpt.length === 100 ? `${excerpt}...` : excerpt;\n }\n\n return title;\n}\n\nconst controller = ({ strapi }: { strapi: Core.Strapi }) => ({\n async ingest(ctx) {\n const requestBody = ctx.request.body; \n\n if (!requestBody?.data) return ctx.badRequest('Missing data in request body');\n\n ctx.body = { data: requestBody?.data };\n\n const rawTitle = requestBody.data?.title || '';\n const rawBody = requestBody.data?.body || '';\n const generatedTitle = getMentionTitle(rawTitle, rawBody);\n\n const mentionData = {\n action: requestBody.action,\n title: generatedTitle,\n body: rawBody,\n url: requestBody.data?.url || '',\n timestamp: requestBody.data?.timestamp || '',\n imageUrl: requestBody.data?.imageUrl || '',\n author: requestBody.data?.author || '',\n authorProfileLink: requestBody.data?.authorProfileLink || '',\n source: requestBody.data?.source || '',\n sourceId: requestBody.data?.sourceId || '',\n relevanceScore: requestBody.data?.relevanceScore || '',\n relevanceComment: requestBody.data?.relevanceComment || '',\n keyword: requestBody.data?.keyword || '',\n bookmarked: requestBody.data?.bookmarked || false,\n language: requestBody.data?.language || '',\n sentimentLabel: requestBody.data?.sentimentLabel || '',\n viewId: requestBody.data?.viewId ? String(requestBody.data.viewId) : '',\n viewName: requestBody.data?.viewName || '',\n subreddit: requestBody.data?.subreddit || '',\n };\n\n console.log('###############################');\n console.log('Parsed mention data:', mentionData);\n console.log('###############################');\n\n try {\n const mention = await strapi.service('plugin::octalens-mentions.mention').create({\n data: mentionData,\n });\n\n ctx.body = { data: mention };\n } catch (error) {\n console.error('Error creating mention:', error);\n ctx.throw(500, 'Failed to create mention');\n }\n },\n});\n\nexport default controller;\n","import mention from './mention';\nimport ingest from './ingest';\n\nexport default {\n mention,\n ingest\n};","export default {};\n","export default {};\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: ['admin::isAuthenticatedAdmin'],\n },\n },\n];\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: [],\n },\n },\n {\n method: 'GET',\n path: '/mentions/:id',\n handler: 'mention.findOne',\n config: {\n policies: [],\n },\n },\n {\n method: 'DELETE',\n path: '/mentions/:id',\n handler: 'mention.delete',\n config: {\n policies: [],\n },\n },\n {\n method: 'PUT',\n path: '/mentions/:id',\n handler: 'mention.update',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/mentions',\n handler: 'mention.create',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/ingest',\n handler: 'ingest.ingest'\n }\n];\n","\"use strict\";\n\nimport adminApiRoutes from \"./admin-api\";\nimport contentApiRoutes from \"./content-api\";\n\n\nexport default {\n \"admin-api\": {\n type: \"admin\",\n routes: [...adminApiRoutes],\n },\n \"content-api\": {\n type: \"content-api\",\n routes: [...contentApiRoutes],\n },\n};","'use strict';\n\n/**\n * mention service\n */\n\nconst { createCoreService } = require('@strapi/strapi').factories;\n\nexport default createCoreService('plugin::octalens-mentions.mention');\n","import mention from './mention';\n\nexport default {\n mention,\n};\n","/**\n * Application methods\n */\nimport bootstrap from './bootstrap';\nimport destroy from './destroy';\nimport register from './register';\n\n/**\n * Plugin server methods\n */\nimport config from './config';\nimport contentTypes from './content-types';\nimport controllers from './controllers';\nimport middlewares from './middlewares';\nimport policies from './policies';\nimport routes from './routes';\nimport services from './services';\n\nexport default {\n register,\n bootstrap,\n destroy,\n config,\n controllers,\n routes,\n services,\n contentTypes,\n policies,\n middlewares,\n};\n"],"names":["mention","ingest"],"mappings":"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"}
@@ -115,6 +115,7 @@ const controller = ({ strapi }) => ({
115
115
  async ingest(ctx) {
116
116
  const requestBody = ctx.request.body;
117
117
  if (!requestBody?.data) return ctx.badRequest("Missing data in request body");
118
+ ctx.body = { data: requestBody?.data };
118
119
  const rawTitle = requestBody.data?.title || "";
119
120
  const rawBody = requestBody.data?.body || "";
120
121
  const generatedTitle = getMentionTitle(rawTitle, rawBody);
@@ -135,7 +136,7 @@ const controller = ({ strapi }) => ({
135
136
  bookmarked: requestBody.data?.bookmarked || false,
136
137
  language: requestBody.data?.language || "",
137
138
  sentimentLabel: requestBody.data?.sentimentLabel || "",
138
- viewId: requestBody.data?.viewId || null,
139
+ viewId: requestBody.data?.viewId ? String(requestBody.data.viewId) : "",
139
140
  viewName: requestBody.data?.viewName || "",
140
141
  subreddit: requestBody.data?.subreddit || ""
141
142
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../server/src/bootstrap.ts","../../server/src/destroy.ts","../../server/src/register.ts","../../server/src/config/index.ts","../../server/src/content-types/mention/index.ts","../../server/src/content-types/index.ts","../../server/src/controllers/mention/index.ts","../../server/src/controllers/ingest/index.ts","../../server/src/controllers/index.ts","../../server/src/middlewares/index.ts","../../server/src/policies/index.ts","../../server/src/routes/admin-api.ts","../../server/src/routes/content-api.ts","../../server/src/routes/index.ts","../../server/src/services/mention/index.ts","../../server/src/services/index.ts","../../server/src/index.ts"],"sourcesContent":["import type { Core } from '@strapi/strapi';\n\nconst bootstrap = ({ strapi }: { strapi: Core.Strapi }) => {\n // bootstrap phase\n};\n\nexport default bootstrap;\n","import type { Core } from '@strapi/strapi';\n\nconst destroy = ({ strapi }: { strapi: Core.Strapi }) => {\n // destroy phase\n};\n\nexport default destroy;\n","import type { Core } from '@strapi/strapi';\n\nconst register = ({ strapi }: { strapi: Core.Strapi }) => {\n // register phase\n};\n\nexport default register;\n","export default {\n default: {},\n validator() {},\n};\n","import schema from './schema.json';\n\nexport default {\n schema,\n};","import mention from './mention';\n\nexport default {\n mention,\n};","'use strict';\n\n/**\n * mention controller\n */\n\nconst { createCoreController } = require('@strapi/strapi').factories;\n\nexport default createCoreController('plugin::octalens-mentions.mention');","import type { Core } from '@strapi/strapi';\n\n/**\n * Gets the display title for a mention.\n * If title is empty or \"Untitled\", uses the first 100 characters from body.\n */\nfunction getMentionTitle(title: string, body: string): string {\n if (!title || title.trim() === '' || title.toLowerCase() === 'untitled') {\n if (!body) return 'Untitled';\n\n const excerpt = body.substring(0, 100).trim();\n return excerpt.length === 100 ? `${excerpt}...` : excerpt;\n }\n\n return title;\n}\n\nconst controller = ({ strapi }: { strapi: Core.Strapi }) => ({\n async ingest(ctx) {\n const requestBody = ctx.request.body;\n\n if (!requestBody?.data) return ctx.badRequest('Missing data in request body');\n\n const rawTitle = requestBody.data?.title || '';\n const rawBody = requestBody.data?.body || '';\n const generatedTitle = getMentionTitle(rawTitle, rawBody);\n\n const mentionData = {\n action: requestBody.action,\n title: generatedTitle,\n body: rawBody,\n url: requestBody.data?.url || '',\n timestamp: requestBody.data?.timestamp || '',\n imageUrl: requestBody.data?.imageUrl || '',\n author: requestBody.data?.author || '',\n authorProfileLink: requestBody.data?.authorProfileLink || '',\n source: requestBody.data?.source || '',\n sourceId: requestBody.data?.sourceId || '',\n relevanceScore: requestBody.data?.relevanceScore || '',\n relevanceComment: requestBody.data?.relevanceComment || '',\n keyword: requestBody.data?.keyword || '',\n bookmarked: requestBody.data?.bookmarked || false,\n language: requestBody.data?.language || '',\n sentimentLabel: requestBody.data?.sentimentLabel || '',\n viewId: requestBody.data?.viewId || null,\n viewName: requestBody.data?.viewName || '',\n subreddit: requestBody.data?.subreddit || '',\n };\n\n console.log('###############################');\n console.log('Parsed mention data:', mentionData);\n console.log('###############################');\n\n try {\n const mention = await strapi.service('plugin::octalens-mentions.mention').create({\n data: mentionData,\n });\n\n ctx.body = { data: mention };\n } catch (error) {\n console.error('Error creating mention:', error);\n ctx.throw(500, 'Failed to create mention');\n }\n },\n});\n\nexport default controller;\n","import mention from './mention';\nimport ingest from './ingest';\n\nexport default {\n mention,\n ingest\n};","export default {};\n","export default {};\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: ['admin::isAuthenticatedAdmin'],\n },\n },\n];\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: [],\n },\n },\n {\n method: 'GET',\n path: '/mentions/:id',\n handler: 'mention.findOne',\n config: {\n policies: [],\n },\n },\n {\n method: 'DELETE',\n path: '/mentions/:id',\n handler: 'mention.delete',\n config: {\n policies: [],\n },\n },\n {\n method: 'PUT',\n path: '/mentions/:id',\n handler: 'mention.update',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/mentions',\n handler: 'mention.create',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/ingest',\n handler: 'ingest.ingest'\n }\n];\n","\"use strict\";\n\nimport adminApiRoutes from \"./admin-api\";\nimport contentApiRoutes from \"./content-api\";\n\n\nexport default {\n \"admin-api\": {\n type: \"admin\",\n routes: [...adminApiRoutes],\n },\n \"content-api\": {\n type: \"content-api\",\n routes: [...contentApiRoutes],\n },\n};","'use strict';\n\n/**\n * mention service\n */\n\nconst { createCoreService } = require('@strapi/strapi').factories;\n\nexport default createCoreService('plugin::octalens-mentions.mention');\n","import mention from './mention';\n\nexport default {\n mention,\n};\n","/**\n * Application methods\n */\nimport bootstrap from './bootstrap';\nimport destroy from './destroy';\nimport register from './register';\n\n/**\n * Plugin server methods\n */\nimport config from './config';\nimport contentTypes from './content-types';\nimport controllers from './controllers';\nimport middlewares from './middlewares';\nimport policies from './policies';\nimport routes from './routes';\nimport services from './services';\n\nexport default {\n register,\n bootstrap,\n destroy,\n config,\n controllers,\n routes,\n services,\n contentTypes,\n policies,\n middlewares,\n};\n"],"names":["mention","ingest"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../server/src/bootstrap.ts","../../server/src/destroy.ts","../../server/src/register.ts","../../server/src/config/index.ts","../../server/src/content-types/mention/index.ts","../../server/src/content-types/index.ts","../../server/src/controllers/mention/index.ts","../../server/src/controllers/ingest/index.ts","../../server/src/controllers/index.ts","../../server/src/middlewares/index.ts","../../server/src/policies/index.ts","../../server/src/routes/admin-api.ts","../../server/src/routes/content-api.ts","../../server/src/routes/index.ts","../../server/src/services/mention/index.ts","../../server/src/services/index.ts","../../server/src/index.ts"],"sourcesContent":["import type { Core } from '@strapi/strapi';\n\nconst bootstrap = ({ strapi }: { strapi: Core.Strapi }) => {\n // bootstrap phase\n};\n\nexport default bootstrap;\n","import type { Core } from '@strapi/strapi';\n\nconst destroy = ({ strapi }: { strapi: Core.Strapi }) => {\n // destroy phase\n};\n\nexport default destroy;\n","import type { Core } from '@strapi/strapi';\n\nconst register = ({ strapi }: { strapi: Core.Strapi }) => {\n // register phase\n};\n\nexport default register;\n","export default {\n default: {},\n validator() {},\n};\n","import schema from './schema.json';\n\nexport default {\n schema,\n};","import mention from './mention';\n\nexport default {\n mention,\n};","'use strict';\n\n/**\n * mention controller\n */\n\nconst { createCoreController } = require('@strapi/strapi').factories;\n\nexport default createCoreController('plugin::octalens-mentions.mention');","import type { Core } from '@strapi/strapi';\n\n/**\n * Gets the display title for a mention.\n * If title is empty or \"Untitled\", uses the first 100 characters from body.\n */\nfunction getMentionTitle(title: string, body: string): string {\n if (!title || title.trim() === '' || title.toLowerCase() === 'untitled') {\n if (!body) return 'Untitled';\n\n const excerpt = body.substring(0, 100).trim();\n return excerpt.length === 100 ? `${excerpt}...` : excerpt;\n }\n\n return title;\n}\n\nconst controller = ({ strapi }: { strapi: Core.Strapi }) => ({\n async ingest(ctx) {\n const requestBody = ctx.request.body; \n\n if (!requestBody?.data) return ctx.badRequest('Missing data in request body');\n\n ctx.body = { data: requestBody?.data };\n\n const rawTitle = requestBody.data?.title || '';\n const rawBody = requestBody.data?.body || '';\n const generatedTitle = getMentionTitle(rawTitle, rawBody);\n\n const mentionData = {\n action: requestBody.action,\n title: generatedTitle,\n body: rawBody,\n url: requestBody.data?.url || '',\n timestamp: requestBody.data?.timestamp || '',\n imageUrl: requestBody.data?.imageUrl || '',\n author: requestBody.data?.author || '',\n authorProfileLink: requestBody.data?.authorProfileLink || '',\n source: requestBody.data?.source || '',\n sourceId: requestBody.data?.sourceId || '',\n relevanceScore: requestBody.data?.relevanceScore || '',\n relevanceComment: requestBody.data?.relevanceComment || '',\n keyword: requestBody.data?.keyword || '',\n bookmarked: requestBody.data?.bookmarked || false,\n language: requestBody.data?.language || '',\n sentimentLabel: requestBody.data?.sentimentLabel || '',\n viewId: requestBody.data?.viewId ? String(requestBody.data.viewId) : '',\n viewName: requestBody.data?.viewName || '',\n subreddit: requestBody.data?.subreddit || '',\n };\n\n console.log('###############################');\n console.log('Parsed mention data:', mentionData);\n console.log('###############################');\n\n try {\n const mention = await strapi.service('plugin::octalens-mentions.mention').create({\n data: mentionData,\n });\n\n ctx.body = { data: mention };\n } catch (error) {\n console.error('Error creating mention:', error);\n ctx.throw(500, 'Failed to create mention');\n }\n },\n});\n\nexport default controller;\n","import mention from './mention';\nimport ingest from './ingest';\n\nexport default {\n mention,\n ingest\n};","export default {};\n","export default {};\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: ['admin::isAuthenticatedAdmin'],\n },\n },\n];\n","export default [\n {\n method: 'GET',\n path: '/mentions',\n handler: 'mention.find',\n config: {\n policies: [],\n },\n },\n {\n method: 'GET',\n path: '/mentions/:id',\n handler: 'mention.findOne',\n config: {\n policies: [],\n },\n },\n {\n method: 'DELETE',\n path: '/mentions/:id',\n handler: 'mention.delete',\n config: {\n policies: [],\n },\n },\n {\n method: 'PUT',\n path: '/mentions/:id',\n handler: 'mention.update',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/mentions',\n handler: 'mention.create',\n config: {\n policies: [],\n },\n },\n {\n method: 'POST',\n path: '/ingest',\n handler: 'ingest.ingest'\n }\n];\n","\"use strict\";\n\nimport adminApiRoutes from \"./admin-api\";\nimport contentApiRoutes from \"./content-api\";\n\n\nexport default {\n \"admin-api\": {\n type: \"admin\",\n routes: [...adminApiRoutes],\n },\n \"content-api\": {\n type: \"content-api\",\n routes: [...contentApiRoutes],\n },\n};","'use strict';\n\n/**\n * mention service\n */\n\nconst { createCoreService } = require('@strapi/strapi').factories;\n\nexport default createCoreService('plugin::octalens-mentions.mention');\n","import mention from './mention';\n\nexport default {\n mention,\n};\n","/**\n * Application methods\n */\nimport bootstrap from './bootstrap';\nimport destroy from './destroy';\nimport register from './register';\n\n/**\n * Plugin server methods\n */\nimport config from './config';\nimport contentTypes from './content-types';\nimport controllers from './controllers';\nimport middlewares from './middlewares';\nimport policies from './policies';\nimport routes from './routes';\nimport services from './services';\n\nexport default {\n register,\n bootstrap,\n destroy,\n config,\n controllers,\n routes,\n services,\n contentTypes,\n policies,\n middlewares,\n};\n"],"names":["mention","ingest"],"mappings":"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"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.0.3",
2
+ "version": "0.0.4",
3
3
  "keywords": [],
4
4
  "type": "commonjs",
5
5
  "exports": {