From ab81314f3ca3917377dc658311b2a58ef4e267bf Mon Sep 17 00:00:00 2001 From: bigint <69431456+bigint@users.noreply.github.com> Date: Fri, 17 Nov 2023 12:37:18 +0530 Subject: [PATCH] feat: migrate feeds worker to next api (#4021) --- apps/api/pages/api/feed/getPublicationIds.ts | 45 ++++++++++++++++ .../hey/algorithms/heyMostInteracted.ts | 11 ++-- .../providers/hey/algorithms/heyMostViewed.ts | 16 ++---- .../api/utils/feeds}/providers/hey/heyFeed.ts | 12 ++--- .../providers/k3l/algorithms/k3lGlobalFeed.ts | 3 +- .../k3l/algorithms/k3lPersonalFeed.ts | 3 +- .../api/utils/feeds}/providers/k3l/k3lFeed.ts | 0 .../api/utils/feeds}/randomizeIds.ts | 0 .../utils/feeds}/removeParamsFromString.ts | 0 docs/ports.md | 1 - package.json | 2 +- packages/data/constants.ts | 3 -- packages/lib/getPublicationIds.ts | 4 +- packages/workers/feeds/.dev.vars.example | 1 - packages/workers/feeds/.eslintrc.js | 6 --- packages/workers/feeds/README.md | 1 - packages/workers/feeds/package.json | 31 ----------- packages/workers/feeds/src/constants.ts | 1 - .../src/handlers/getPublicationIds.spec.ts | 51 ------------------- .../feeds/src/handlers/getPublicationIds.ts | 39 -------------- .../workers/feeds/src/helpers/buildRequest.ts | 16 ------ packages/workers/feeds/src/index.ts | 43 ---------------- .../workers/feeds/src/providers/hey/README.md | 4 -- .../src/providers/hey/docs/MostInteracted.md | 17 ------- .../src/providers/hey/docs/MostViewed.md | 0 .../workers/feeds/src/providers/k3l/README.md | 1 - packages/workers/feeds/src/types.ts | 12 ----- packages/workers/feeds/tsconfig.json | 6 --- packages/workers/feeds/vitest.config.ts | 5 -- packages/workers/feeds/wrangler.toml | 12 ----- 30 files changed, 62 insertions(+), 284 deletions(-) create mode 100644 apps/api/pages/api/feed/getPublicationIds.ts rename {packages/workers/feeds/src => apps/api/utils/feeds}/providers/hey/algorithms/heyMostInteracted.ts (88%) rename {packages/workers/feeds/src => apps/api/utils/feeds}/providers/hey/algorithms/heyMostViewed.ts (69%) rename {packages/workers/feeds/src => apps/api/utils/feeds}/providers/hey/heyFeed.ts (50%) rename {packages/workers/feeds/src => apps/api/utils/feeds}/providers/k3l/algorithms/k3lGlobalFeed.ts (90%) rename {packages/workers/feeds/src => apps/api/utils/feeds}/providers/k3l/algorithms/k3lPersonalFeed.ts (91%) rename {packages/workers/feeds/src => apps/api/utils/feeds}/providers/k3l/k3lFeed.ts (100%) rename {packages/workers/feeds/src/helpers => apps/api/utils/feeds}/randomizeIds.ts (100%) rename {packages/workers/feeds/src/helpers => apps/api/utils/feeds}/removeParamsFromString.ts (100%) delete mode 100644 packages/workers/feeds/.dev.vars.example delete mode 100644 packages/workers/feeds/.eslintrc.js delete mode 100644 packages/workers/feeds/README.md delete mode 100644 packages/workers/feeds/package.json delete mode 100644 packages/workers/feeds/src/constants.ts delete mode 100644 packages/workers/feeds/src/handlers/getPublicationIds.spec.ts delete mode 100644 packages/workers/feeds/src/handlers/getPublicationIds.ts delete mode 100644 packages/workers/feeds/src/helpers/buildRequest.ts delete mode 100644 packages/workers/feeds/src/index.ts delete mode 100644 packages/workers/feeds/src/providers/hey/README.md delete mode 100644 packages/workers/feeds/src/providers/hey/docs/MostInteracted.md delete mode 100644 packages/workers/feeds/src/providers/hey/docs/MostViewed.md delete mode 100644 packages/workers/feeds/src/providers/k3l/README.md delete mode 100644 packages/workers/feeds/src/types.ts delete mode 100644 packages/workers/feeds/tsconfig.json delete mode 100644 packages/workers/feeds/vitest.config.ts delete mode 100644 packages/workers/feeds/wrangler.toml diff --git a/apps/api/pages/api/feed/getPublicationIds.ts b/apps/api/pages/api/feed/getPublicationIds.ts new file mode 100644 index 000000000000..d7b382fafd24 --- /dev/null +++ b/apps/api/pages/api/feed/getPublicationIds.ts @@ -0,0 +1,45 @@ +import { AlgorithmProvider } from '@hey/data/enums'; +import { Errors } from '@hey/data/errors'; +import type { NextApiRequest, NextApiResponse } from 'next'; +import allowCors from 'utils/allowCors'; +import { CACHE_AGE } from 'utils/constants'; +import heyFeed from 'utils/feeds/providers/hey/heyFeed'; +import k3lFeed from 'utils/feeds/providers/k3l/k3lFeed'; + +const handler = async (req: NextApiRequest, res: NextApiResponse) => { + const provider = req.query.provider as string; + const strategy = req.query.strategy as string; + const profile = req.query.profile as string; + const limit = (parseInt(req.query?.limit as string) || 50) as number; + const offset = (parseInt(req.query?.offset as string) || 0) as number; + + if (!provider || !strategy) { + return res.status(400).json({ success: false, error: Errors.NoBody }); + } + + try { + let ids: string[] = []; + switch (provider) { + case AlgorithmProvider.K3L: + ids = await k3lFeed(strategy, profile, limit, offset); + break; + case AlgorithmProvider.HEY: + ids = await heyFeed(strategy, limit, offset); + break; + default: + return res + .status(200) + .setHeader('Cache-Control', CACHE_AGE) + .json({ success: false, message: 'Invalid provider' }); + } + + return res + .status(200) + .setHeader('Cache-Control', CACHE_AGE) + .json({ success: true, ids }); + } catch (error) { + throw error; + } +}; + +export default allowCors(handler); diff --git a/packages/workers/feeds/src/providers/hey/algorithms/heyMostInteracted.ts b/apps/api/utils/feeds/providers/hey/algorithms/heyMostInteracted.ts similarity index 88% rename from packages/workers/feeds/src/providers/hey/algorithms/heyMostInteracted.ts rename to apps/api/utils/feeds/providers/hey/algorithms/heyMostInteracted.ts index d2d880ebdff2..7e7d4419acc1 100644 --- a/packages/workers/feeds/src/providers/hey/algorithms/heyMostInteracted.ts +++ b/apps/api/utils/feeds/providers/hey/algorithms/heyMostInteracted.ts @@ -1,9 +1,7 @@ -import createClickhouseClient from '@hey/clickhouse/createClickhouseClient'; import { Errors } from '@hey/data/errors'; import { PUBLICATION } from '@hey/data/tracking'; - -import randomizeIds from '../../../helpers/randomizeIds'; -import type { Env } from '../../../types'; +import createClickhouseClient from 'utils/createClickhouseClient'; +import randomizeIds from 'utils/feeds/randomizeIds'; const interactionAndWeights = { [PUBLICATION.COLLECT_MODULE.COLLECT]: 10, @@ -30,15 +28,14 @@ const generateWeightedCaseStatement = () => { const heyMostInteracted = async ( limit: number, - offset: number, - env: Env + offset: number ): Promise => { if (limit > 500) { throw new Error(Errors.Limit500); } try { - const client = createClickhouseClient(env.CLICKHOUSE_PASSWORD); + const client = createClickhouseClient(); const rows = await client.query({ query: ` SELECT diff --git a/packages/workers/feeds/src/providers/hey/algorithms/heyMostViewed.ts b/apps/api/utils/feeds/providers/hey/algorithms/heyMostViewed.ts similarity index 69% rename from packages/workers/feeds/src/providers/hey/algorithms/heyMostViewed.ts rename to apps/api/utils/feeds/providers/hey/algorithms/heyMostViewed.ts index 8051d0313db2..667903a03299 100644 --- a/packages/workers/feeds/src/providers/hey/algorithms/heyMostViewed.ts +++ b/apps/api/utils/feeds/providers/hey/algorithms/heyMostViewed.ts @@ -1,22 +1,16 @@ -import createClickhouseClient from '@hey/clickhouse/createClickhouseClient'; import { Errors } from '@hey/data/errors'; import { PAGEVIEW } from '@hey/data/tracking'; +import createClickhouseClient from 'utils/createClickhouseClient'; +import randomizeIds from 'utils/feeds/randomizeIds'; +import removeParamsFromString from 'utils/feeds/removeParamsFromString'; -import randomizeIds from '../../../helpers/randomizeIds'; -import removeParamsFromString from '../../../helpers/removeParamsFromString'; -import type { Env } from '../../../types'; - -const heyMostViewed = async ( - limit: number, - offset: number, - env: Env -): Promise => { +const heyMostViewed = async (limit: number, offset: number): Promise => { if (limit > 500) { throw new Error(Errors.Limit500); } try { - const client = createClickhouseClient(env.CLICKHOUSE_PASSWORD); + const client = createClickhouseClient(); const rows = await client.query({ query: ` SELECT diff --git a/packages/workers/feeds/src/providers/hey/heyFeed.ts b/apps/api/utils/feeds/providers/hey/heyFeed.ts similarity index 50% rename from packages/workers/feeds/src/providers/hey/heyFeed.ts rename to apps/api/utils/feeds/providers/hey/heyFeed.ts index 5756c55c2f1d..9bd7af53e744 100644 --- a/packages/workers/feeds/src/providers/hey/heyFeed.ts +++ b/apps/api/utils/feeds/providers/hey/heyFeed.ts @@ -1,18 +1,12 @@ -import type { Env } from '../../types'; import heyMostInteracted from './algorithms/heyMostInteracted'; import heyMostViewed from './algorithms/heyMostViewed'; -const heyFeed = async ( - strategy: string, - limit: number, - offset: number, - env: Env -) => { +const heyFeed = async (strategy: string, limit: number, offset: number) => { switch (strategy) { case 'mostviewed': - return await heyMostViewed(limit, offset, env); + return await heyMostViewed(limit, offset); case 'mostinteracted': - return await heyMostInteracted(limit, offset, env); + return await heyMostInteracted(limit, offset); default: return []; } diff --git a/packages/workers/feeds/src/providers/k3l/algorithms/k3lGlobalFeed.ts b/apps/api/utils/feeds/providers/k3l/algorithms/k3lGlobalFeed.ts similarity index 90% rename from packages/workers/feeds/src/providers/k3l/algorithms/k3lGlobalFeed.ts rename to apps/api/utils/feeds/providers/k3l/algorithms/k3lGlobalFeed.ts index adbf5be9cc46..a48761ec93eb 100644 --- a/packages/workers/feeds/src/providers/k3l/algorithms/k3lGlobalFeed.ts +++ b/apps/api/utils/feeds/providers/k3l/algorithms/k3lGlobalFeed.ts @@ -1,6 +1,5 @@ import urlcat from 'urlcat'; - -import randomizeIds from '../../../helpers/randomizeIds'; +import randomizeIds from 'utils/feeds/randomizeIds'; const k3lGlobalFeed = async ( strategy: string, diff --git a/packages/workers/feeds/src/providers/k3l/algorithms/k3lPersonalFeed.ts b/apps/api/utils/feeds/providers/k3l/algorithms/k3lPersonalFeed.ts similarity index 91% rename from packages/workers/feeds/src/providers/k3l/algorithms/k3lPersonalFeed.ts rename to apps/api/utils/feeds/providers/k3l/algorithms/k3lPersonalFeed.ts index 7cfe87709a9c..be0c2b60b334 100644 --- a/packages/workers/feeds/src/providers/k3l/algorithms/k3lPersonalFeed.ts +++ b/apps/api/utils/feeds/providers/k3l/algorithms/k3lPersonalFeed.ts @@ -1,6 +1,5 @@ import urlcat from 'urlcat'; - -import randomizeIds from '../../../helpers/randomizeIds'; +import randomizeIds from 'utils/feeds/randomizeIds'; const k3lPersonalFeed = async ( strategy: string, diff --git a/packages/workers/feeds/src/providers/k3l/k3lFeed.ts b/apps/api/utils/feeds/providers/k3l/k3lFeed.ts similarity index 100% rename from packages/workers/feeds/src/providers/k3l/k3lFeed.ts rename to apps/api/utils/feeds/providers/k3l/k3lFeed.ts diff --git a/packages/workers/feeds/src/helpers/randomizeIds.ts b/apps/api/utils/feeds/randomizeIds.ts similarity index 100% rename from packages/workers/feeds/src/helpers/randomizeIds.ts rename to apps/api/utils/feeds/randomizeIds.ts diff --git a/packages/workers/feeds/src/helpers/removeParamsFromString.ts b/apps/api/utils/feeds/removeParamsFromString.ts similarity index 100% rename from packages/workers/feeds/src/helpers/removeParamsFromString.ts rename to apps/api/utils/feeds/removeParamsFromString.ts diff --git a/docs/ports.md b/docs/ports.md index e5f882bd02aa..e03e8eda922d 100644 --- a/docs/ports.md +++ b/docs/ports.md @@ -10,7 +10,6 @@ The following ports are exposed by the repository | 8084 | Snapshot relay worker | http://localhost:8084 | https://snapshot-relay.hey.xyz | | 8086 | Oembed worker | http://localhost:8086 | https://oembed.hey.xyz | | 8088 | Stats worker | http://localhost:8088 | https://stats.hey.xyz | -| 8089 | Feeds gateway | http://localhost:8089 | https://feeds.hey.xyz | | 8090 | Preferences worker | http://localhost:8090 | https://preferences.hey.xyz | | 8091 | Groups worker | http://localhost:8091 | https://groups.hey.xyz | | 8092 | NFT worker | http://localhost:8092 | https://nft.hey.xyz | diff --git a/package.json b/package.json index 8ed4b3be8627..dfde049667ff 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,7 @@ "prettier:fix": "turbo run prettier:fix --parallel", "start": "turbo run start --parallel", "test:dev": "turbo run test:dev", - "test:e2e": "start-server-and-test start '8083|8086|8089' test:dev", + "test:e2e": "start-server-and-test start '8083|8086' test:dev", "typecheck": "turbo run typecheck --parallel", "typecheck:affected": "turbo run typecheck --parallel --filter=[origin/main]", "workers:deploy": "turbo run worker:deploy --parallel" diff --git a/packages/data/constants.ts b/packages/data/constants.ts index 498e8d2a33b2..5f2dc65d9296 100644 --- a/packages/data/constants.ts +++ b/packages/data/constants.ts @@ -71,9 +71,6 @@ export const OEMBED_WORKER_URL = IS_PRODUCTION export const STATS_WORKER_URL = IS_PRODUCTION ? 'https://stats.hey.xyz' : 'http://localhost:8088'; -export const FEEDS_WORKER_URL = IS_PRODUCTION - ? 'https://feeds.hey.xyz' - : 'http://localhost:8089'; export const PREFERENCES_WORKER_URL = IS_PRODUCTION ? 'https://preferences.hey.xyz' : 'http://localhost:8090'; diff --git a/packages/lib/getPublicationIds.ts b/packages/lib/getPublicationIds.ts index 1da72936e10e..5f61549587e3 100644 --- a/packages/lib/getPublicationIds.ts +++ b/packages/lib/getPublicationIds.ts @@ -1,4 +1,4 @@ -import { FEEDS_WORKER_URL } from '@hey/data/constants'; +import { HEY_API_URL } from '@hey/data/constants'; import axios from 'axios'; /** @@ -16,7 +16,7 @@ const getPublicationIds = async ( profile?: string ) => { try { - const response = await axios.get(`${FEEDS_WORKER_URL}/ids`, { + const response = await axios.get(`${HEY_API_URL}/feed/getPublicationIds`, { params: { provider, strategy, diff --git a/packages/workers/feeds/.dev.vars.example b/packages/workers/feeds/.dev.vars.example deleted file mode 100644 index 4264033d63b4..000000000000 --- a/packages/workers/feeds/.dev.vars.example +++ /dev/null @@ -1 +0,0 @@ -CLICKHOUSE_PASSWORD="" diff --git a/packages/workers/feeds/.eslintrc.js b/packages/workers/feeds/.eslintrc.js deleted file mode 100644 index 484e1ab14a27..000000000000 --- a/packages/workers/feeds/.eslintrc.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - extends: [require.resolve('@hey/config/eslint/base.js')], - rules: { - 'import/no-anonymous-default-export': 'off' - } -}; diff --git a/packages/workers/feeds/README.md b/packages/workers/feeds/README.md deleted file mode 100644 index 378499eee45b..000000000000 --- a/packages/workers/feeds/README.md +++ /dev/null @@ -1 +0,0 @@ -# Feeds worker diff --git a/packages/workers/feeds/package.json b/packages/workers/feeds/package.json deleted file mode 100644 index 7ea1945e8ebb..000000000000 --- a/packages/workers/feeds/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "@workers/feeds", - "version": "0.0.0", - "private": true, - "license": "AGPL-3.0", - "scripts": { - "dev": "wrangler dev --port 8089", - "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --fix --ext .ts", - "prettier": "prettier --check \"**/*.{js,ts,tsx,md}\" --cache", - "prettier:fix": "prettier --write \"**/*.{js,ts,tsx,md}\" --cache", - "start": "pnpm dev", - "test:dev": "vitest --run", - "typecheck": "tsc --pretty", - "worker:deploy": "wrangler deploy --var RELEASE:\"$(git rev-parse HEAD)\"" - }, - "dependencies": { - "@hey/clickhouse": "workspace:*", - "@hey/data": "workspace:*", - "@hey/lib": "workspace:*", - "itty-router": "^4.0.23", - "urlcat": "^3.1.0" - }, - "devDependencies": { - "@cloudflare/workers-types": "^4.20231025.0", - "@hey/config": "workspace:*", - "typescript": "^5.2.2", - "vitest": "^0.34.5", - "wrangler": "^3.15.0" - } -} diff --git a/packages/workers/feeds/src/constants.ts b/packages/workers/feeds/src/constants.ts deleted file mode 100644 index d758e281c672..000000000000 --- a/packages/workers/feeds/src/constants.ts +++ /dev/null @@ -1 +0,0 @@ -export const TEST_URL = 'http://127.0.0.1:8089'; diff --git a/packages/workers/feeds/src/handlers/getPublicationIds.spec.ts b/packages/workers/feeds/src/handlers/getPublicationIds.spec.ts deleted file mode 100644 index 487258903830..000000000000 --- a/packages/workers/feeds/src/handlers/getPublicationIds.spec.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { describe, expect, test } from 'vitest'; - -import { TEST_URL } from '../constants'; - -type Response = { - ids: string[]; -}; - -describe('getPublicationIds', () => { - describe('k3l provider', () => { - test('should return ids for k3l provider and recent strategy', async () => { - const getRequest = await fetch( - `${TEST_URL}/ids?provider=k3l&strategy=recent` - ); - const response: Response = await getRequest.json(); - expect(response.ids.length).toBe(50); - }); - - test('should return ids for k3l provider and recommended strategy', async () => { - const getRequest = await fetch( - `${TEST_URL}/ids?provider=k3l&strategy=recommended` - ); - const response: Response = await getRequest.json(); - expect(response.ids.length).toBe(50); - }); - - test('should return ids for k3l provider and popular strategy', async () => { - const getRequest = await fetch( - `${TEST_URL}/ids?provider=k3l&strategy=popular` - ); - const response: Response = await getRequest.json(); - expect(response.ids.length).toBe(50); - }); - - test('should return ids for k3l provider and crowdsourced strategy', async () => { - const getRequest = await fetch( - `${TEST_URL}/ids?provider=k3l&strategy=crowdsourced` - ); - const response: Response = await getRequest.json(); - expect(response.ids.length).toBe(50); - }); - - test.skip('should return ids for k3l provider, following strategy and profile', async () => { - const getRequest = await fetch( - `${TEST_URL}/ids?provider=k3l&strategy=following&profile=yoginth.lens` - ); - const response: Response = await getRequest.json(); - expect(response.ids.length).toBe(50); - }); - }); -}); diff --git a/packages/workers/feeds/src/handlers/getPublicationIds.ts b/packages/workers/feeds/src/handlers/getPublicationIds.ts deleted file mode 100644 index d8f0df500523..000000000000 --- a/packages/workers/feeds/src/handlers/getPublicationIds.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { AlgorithmProvider } from '@hey/data/enums'; -import response from '@hey/lib/response'; - -import heyFeed from '../providers/hey/heyFeed'; -import k3lFeed from '../providers/k3l/k3lFeed'; -import type { WorkerRequest } from '../types'; - -export default async (request: WorkerRequest) => { - const provider = request.query.provider as string; - const strategy = request.query.strategy as string; - const profile = request.query.profile as string; - const limit = (parseInt(request.query?.limit as string) || 50) as number; - const offset = (parseInt(request.query?.offset as string) || 0) as number; - - if (!provider || !strategy) { - return response({ - success: false, - message: 'Missing required parameters!' - }); - } - - try { - let ids: string[] = []; - switch (provider) { - case AlgorithmProvider.K3L: - ids = await k3lFeed(strategy, profile, limit, offset); - break; - case AlgorithmProvider.HEY: - ids = await heyFeed(strategy, limit, offset, request.env); - break; - default: - return response({ success: false, message: 'Invalid provider' }); - } - - return response({ success: true, ids }); - } catch (error) { - throw error; - } -}; diff --git a/packages/workers/feeds/src/helpers/buildRequest.ts b/packages/workers/feeds/src/helpers/buildRequest.ts deleted file mode 100644 index 7e779e95e42a..000000000000 --- a/packages/workers/feeds/src/helpers/buildRequest.ts +++ /dev/null @@ -1,16 +0,0 @@ -import type { Env, WorkerRequest } from '../types'; - -const buildRequest = ( - request: Request, - env: Env, - ctx: ExecutionContext -): WorkerRequest => { - const temp: WorkerRequest = request as WorkerRequest; - temp.req = request; - temp.env = env; - temp.ctx = ctx; - - return temp; -}; - -export default buildRequest; diff --git a/packages/workers/feeds/src/index.ts b/packages/workers/feeds/src/index.ts deleted file mode 100644 index ce9bd0ce3a83..000000000000 --- a/packages/workers/feeds/src/index.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { Errors } from '@hey/data/errors'; -import response from '@hey/lib/response'; -import { createCors, error, Router, status } from 'itty-router'; - -import getPublicationIds from './handlers/getPublicationIds'; -import buildRequest from './helpers/buildRequest'; -import type { Env, WorkerRequest } from './types'; - -const { preflight, corsify } = createCors({ - origins: ['*'], - methods: ['HEAD', 'GET', 'POST'] -}); - -const router = Router(); - -router - .all('*', preflight) - .head('*', () => status(200)) - .get('/', (request: WorkerRequest) => - response({ - message: 'gm, to feeds service 👋', - version: request.env.RELEASE ?? 'unknown' - }) - ) - .get('/ids', getPublicationIds) - .all('*', () => error(404)); - -export default { - async fetch( - request: Request, - env: Env, - ctx: ExecutionContext - ): Promise { - const incomingRequest = buildRequest(request, env, ctx); - - return await router - .handle(incomingRequest) - .then(corsify) - .catch(() => { - return error(500, Errors.InternalServerError); - }); - } -}; diff --git a/packages/workers/feeds/src/providers/hey/README.md b/packages/workers/feeds/src/providers/hey/README.md deleted file mode 100644 index 2e583f86028c..000000000000 --- a/packages/workers/feeds/src/providers/hey/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# Hey Algorithms - -- [MostViewed](./docs/MostViewed.md) -- [MostInteracted](./docs/MostInteracted.md) diff --git a/packages/workers/feeds/src/providers/hey/docs/MostInteracted.md b/packages/workers/feeds/src/providers/hey/docs/MostInteracted.md deleted file mode 100644 index 1f19b6edeec6..000000000000 --- a/packages/workers/feeds/src/providers/hey/docs/MostInteracted.md +++ /dev/null @@ -1,17 +0,0 @@ -```ts -const interactionAndWeights = { - [PUBLICATION.COLLECT_MODULE.COLLECT]: 10, - [PUBLICATION.MIRROR]: 8, - [PUBLICATION.SHARE]: 6, - [PUBLICATION.LIKE]: 5, - [PUBLICATION.ATTACHMENT.AUDIO.PLAY]: 4, - [PUBLICATION.ATTACHMENT.IMAGE.OPEN]: 4, - [PUBLICATION.TOGGLE_BOOKMARK]: 3, - [PUBLICATION.OPEN_MIRRORS]: 2, - [PUBLICATION.OPEN_LIKES]: 2, - [PUBLICATION.OPEN_COLLECTORS]: 2, - [PUBLICATION.COPY_TEXT]: 1, - [PUBLICATION.TRANSLATE]: 1, - [PUBLICATION.CLICK_OEMBED]: 1 -}; -``` diff --git a/packages/workers/feeds/src/providers/hey/docs/MostViewed.md b/packages/workers/feeds/src/providers/hey/docs/MostViewed.md deleted file mode 100644 index e69de29bb2d1..000000000000 diff --git a/packages/workers/feeds/src/providers/k3l/README.md b/packages/workers/feeds/src/providers/k3l/README.md deleted file mode 100644 index c482a0eb418a..000000000000 --- a/packages/workers/feeds/src/providers/k3l/README.md +++ /dev/null @@ -1 +0,0 @@ -# Karma3Labs Algorithm diff --git a/packages/workers/feeds/src/types.ts b/packages/workers/feeds/src/types.ts deleted file mode 100644 index d5f0a4665db5..000000000000 --- a/packages/workers/feeds/src/types.ts +++ /dev/null @@ -1,12 +0,0 @@ -import type { IRequestStrict } from 'itty-router'; - -export interface Env { - RELEASE: string; - CLICKHOUSE_PASSWORD: string; -} - -export type WorkerRequest = { - req: Request; - env: Env; - ctx: ExecutionContext; -} & IRequestStrict; diff --git a/packages/workers/feeds/tsconfig.json b/packages/workers/feeds/tsconfig.json deleted file mode 100644 index 33dc4d0f2e28..000000000000 --- a/packages/workers/feeds/tsconfig.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "extends": "@hey/config/base.tsconfig.json", - "compilerOptions": { - "types": ["@cloudflare/workers-types"] - } -} diff --git a/packages/workers/feeds/vitest.config.ts b/packages/workers/feeds/vitest.config.ts deleted file mode 100644 index 2dc9a86e22c1..000000000000 --- a/packages/workers/feeds/vitest.config.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { defineConfig } from 'vitest/config'; - -export default defineConfig({ - test: { globals: true, testTimeout: 30000 } -}); diff --git a/packages/workers/feeds/wrangler.toml b/packages/workers/feeds/wrangler.toml deleted file mode 100644 index 1b114c009dc7..000000000000 --- a/packages/workers/feeds/wrangler.toml +++ /dev/null @@ -1,12 +0,0 @@ -name = "feeds" -main = "src/index.ts" -compatibility_date = "2023-10-25" -keep_vars = true - -routes = [ - { pattern = "feeds.hey.xyz", custom_domain = true } -] - -[env.production.vars] -RELEASE = "" -CLICKHOUSE_PASSWORD = ""