SYMBOL INDEX (449 symbols across 148 files) FILE: @types/console.d.ts type Console (line 2) | interface Console { FILE: @types/environment.d.ts type ProcessEnv (line 3) | interface ProcessEnv { FILE: __mocks__/mongoose.ts class Model (line 5) | class Model { method constructor (line 7) | constructor(value: object) { method find (line 11) | static find() { method findOne (line 15) | static findOne() { method save (line 31) | save() { FILE: __mocks__/stripe.ts class Stripe (line 1) | class Stripe { method constructor (line 21) | constructor(apiKey: string) { FILE: __tests__/shared/commands.ts type Id (line 17) | type Id = string | Types.ObjectId; type Query (line 19) | type Query = Partial<{ type Options (line 31) | type Options = Partial<{ FILE: __tests__/shared/constants.ts constant LOCAL_ROUTE (line 4) | const LOCAL_ROUTE = '/'; constant API_ROUTE (line 5) | const API_ROUTE = `/api/${Version.VERSION_1}`; constant API_ROUTE_V2 (line 6) | const API_ROUTE_V2 = `/api/${Version.VERSION_2}`; constant TEST_ROUTE (line 7) | const TEST_ROUTE = `/api/${Version.VERSION_1}/test`; constant STRIPE_ROUTE (line 8) | const STRIPE_ROUTE = '/stripe'; constant API_URL (line 9) | const API_URL = 'https://igboapi.com'; constant WORD_KEYS_V1 (line 11) | const WORD_KEYS_V1 = [ constant WORD_KEYS_V2 (line 25) | const WORD_KEYS_V2 = [ constant EXAMPLE_KEYS_V1 (line 38) | const EXAMPLE_KEYS_V1 = [ constant EXAMPLE_KEYS_V2 (line 50) | const EXAMPLE_KEYS_V2 = [ constant EXCLUDE_KEYS (line 64) | const EXCLUDE_KEYS = ['__v', '_id']; constant SITE_TITLE (line 65) | const SITE_TITLE = 'The First African Language API'; constant DOCS_SITE_TITLE (line 66) | const DOCS_SITE_TITLE = 'Igbo API Documentation'; constant INVALID_ID (line 67) | const INVALID_ID = 'fdsafdsad'; constant NONEXISTENT_ID (line 68) | const NONEXISTENT_ID = new mongoose.Types.ObjectId(); constant MAIN_KEY (line 69) | const MAIN_KEY = 'main_key'; constant FALLBACK_API_KEY (line 70) | const FALLBACK_API_KEY = 'fallback_api_key'; FILE: env.d.ts type ProcessEnv (line 3) | interface ProcessEnv { FILE: migrations/20201106045436-add-suggestion-properties.js method up (line 2) | async up(db) { method down (line 12) | async down(db) { FILE: migrations/20201108164925-add-exampleForWordSuggestion-field.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20201109083748-remove-examples-from-words.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20201118192335-add-merged-by.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20201121195224-add-updated-on-for-words-and-examples.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20201206042142-add-accented-field.js method up (line 2) | async up(db) { method down (line 13) | async down(db) { FILE: migrations/20201213020925-uid-fields-on-suggestions.js method up (line 2) | async up(db) { method down (line 18) | async down(db) { FILE: migrations/20210225022115-create-dialects.js method up (line 35) | async up(db) { method down (line 45) | async down(db) { FILE: migrations/20210225235148-update-variations-to-array.js method up (line 35) | async up(db) { method down (line 45) | async down(db) { FILE: migrations/20210306224633-add-dialects-for-word-suggestions-and-generic-words.js method up (line 35) | async up(db) { method down (line 45) | async down(db) { FILE: migrations/20210325194345-add-central-igbo.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20210331134705-remove-developer-origin.js method up (line 2) | async up(db) { method down (line 10) | async down(db) { FILE: migrations/20210426171953-remove-normalized-field.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20210814210437-pre-populate-dialects.js method up (line 22) | async up(db) { method down (line 47) | async down(db) { FILE: migrations/20210820170937-merge-accented-and-word.js method up (line 22) | async up(db) { method down (line 70) | async down(db) { FILE: migrations/20210820175620-merge-accented-and-example.js method up (line 2) | async up(db) { method down (line 32) | async down(db) { FILE: migrations/20210822145619-change-central-to-standard.js method up (line 2) | async up(db) { method down (line 14) | async down(db) { FILE: migrations/20210831163032-add-is-complete-word.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20210903175644-remove-is-complete-word.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20211030133331-add-active-and-passive-verbs.js method up (line 2) | async up(db) { method down (line 19) | async down(db) { FILE: migrations/20211121214701-add-nyms.js method up (line 2) | async up(db) { method down (line 16) | async down(db) { FILE: migrations/20211218192401-add-isComplete.js method up (line 52) | async up(db) { method down (line 66) | async down(db) { FILE: migrations/20220107155512-add-nsibidi.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20220125175808-restructure-dialects.js method up (line 99) | async up(db) { method down (line 114) | async down(db) { FILE: migrations/20220208140327-example-pronunciations.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20220216030851-remove-verb-prefixes.js method up (line 47) | async up(db) { method down (line 62) | async down(db) { FILE: migrations/20220301211505-convert-unix-to-iso.js method up (line 44) | async up(db) { method down (line 62) | async down(db) { FILE: migrations/20220308132126-add-is-accented.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20220406005107-add-tenses.js method up (line 242) | async up(db) { method down (line 259) | async down(db) { FILE: migrations/20220423222134-add-attributes.js method up (line 2) | async up(db) { method down (line 24) | async down(db) { FILE: migrations/20220425130741-extend-example-sentences-with-style-and-meaning.js method up (line 2) | async up(db) { method down (line 16) | async down(db) { FILE: migrations/20220808024209-add-borrowed-term-field.js method up (line 2) | async up(db) { method down (line 22) | async down(db) { FILE: migrations/20220808033804-add-tags.js method up (line 2) | async up(db) { method down (line 15) | async down(db) { FILE: migrations/20220808042906-replace-nyms-for-related-terms.js method up (line 2) | async up(db) { method down (line 18) | async down(db) { FILE: migrations/20221014123241-add-is-stem.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20221030034746-restructure-definitions.js method up (line 5) | async up(db) { method down (line 47) | async down(db) { FILE: migrations/20221030054330-connect-example-associated-definitions.js method up (line 35) | async up(db) { method down (line 50) | async down(db) { FILE: migrations/20221107022314-resturcture-dialects-as-arrays.js method up (line 54) | async up(db) { method down (line 69) | async down(db) { FILE: migrations/20221124200346-expand-headword.js method up (line 2) | async up(db) { method down (line 16) | async down(db) { FILE: migrations/20221207003231-nominal-modifier.js method up (line 43) | async up(db) { method down (line 58) | async down(db) { FILE: migrations/20221217204603-definitions-with-nsibidi.js method up (line 21) | async up(db) { method down (line 28) | async down(db) { FILE: migrations/20230112035359-add-is-common.js method up (line 2) | async up(db) { method down (line 11) | async down(db) { FILE: migrations/20230118013604-convert-stems-to-object-id.js method up (line 49) | async up(db) { method down (line 64) | async down(db) { FILE: migrations/20230201191800-convert-medial-to-active.js method up (line 10) | async up(db) { method down (line 24) | async down() { FILE: migrations/20230201193438-add-present-passive-to-verbs.js method up (line 26) | async up(db) { method down (line 40) | async down(db) { FILE: migrations/20230314160556-convert-frequency-to-number.js method up (line 2) | async up(db) { method down (line 24) | async down(db) { FILE: migrations/20230409220217-convert-igbo-definitions-to-include-nsibidi.js method up (line 64) | async up(db) { method down (line 78) | async down(db) { FILE: migrations/20230522011130-pronunciation-to-pronunciations.js method up (line 26) | async up(db) { method down (line 40) | async down(db) { FILE: migrations/20230526231511-example-suggestions-approvals-denials-review.js method up (line 50) | async up(db) { method down (line 57) | async down(db) { FILE: migrations/20230607004329-trim-headword-and-tenses-whitespace-fix.js method up (line 103) | async up(db) { method down (line 108) | async down(db) { FILE: migrations/20240908000598-create-default-igbo-api-project.js method up (line 4) | async up(db) { method down (line 16) | async down(db) { FILE: migrations/20240908000599-change-source-to-origin.js method up (line 24) | async up(db) { method down (line 33) | async down(db) { FILE: migrations/20240908000600-generalize-examples.js method up (line 40) | async up(db) { method down (line 49) | async down(db) { FILE: migrations/20240908162526-assign-projectid-to-each-collection.js method up (line 2) | async up(db) { method down (line 30) | async down(db) { FILE: migrations/20240913215339-move-example-pronunciations-to-translations.js method up (line 45) | async up(db) { method down (line 56) | async down(db) { FILE: migrations/20240928023848-add-languages-to-corpus.js method up (line 2) | async up(db) { method down (line 14) | async down(db) { FILE: migrations/20240928024053-add-types-to-projecs.js method up (line 2) | async up(db) { method down (line 14) | async down(db) { FILE: migrations/20241116014146-add-bit-rate-audio-pronunciation.js method up (line 2) | async up(db) { method down (line 13) | async down(db) { FILE: migrations/20241203060241-insert-owner-firebase-id-on-project.js method up (line 24) | async up(db) { method down (line 47) | async down(db) { FILE: migrations/20241203060300-connect-paywall-to-project.js method up (line 28) | async up(db) { method down (line 66) | async down(db) { FILE: migrations/20241206235108-remove-crowdsourcing.js method up (line 2) | async up(db) { method down (line 16) | async down() {} FILE: migrations/20250212184340-add-viewableSectionIds-to-example-suggestions.js method up (line 2) | async up(db) { method down (line 16) | async down() {} FILE: migrations/20250417110353-migrate-igbo-speech-example-suggestions.js method up (line 3) | async up(db) { method down (line 41) | async down() {} FILE: src/APIs/FlagsAPI.ts type HandleFlags (line 5) | type HandleFlags = { FILE: src/APIs/RedisAPI.ts type RedisClient (line 10) | type RedisClient = { type GetValue (line 16) | type GetValue = { FILE: src/__tests__/shared/fixtures.ts type RequestOptions (line 23) | interface RequestOptions { FILE: src/config.ts constant RUNTIME_ENV (line 13) | const RUNTIME_ENV = defineString('RUNTIME_ENV').value(); constant ENV_REPLICA_SET (line 14) | const ENV_REPLICA_SET = defineBoolean('ENV_REPLICA_SET').value(); constant ENV_MONGO_URI (line 15) | const ENV_MONGO_URI = defineString('ENV_MONGO_URI').value(); constant ENV_FIREBASE_CONFIG (line 16) | const ENV_FIREBASE_CONFIG = defineString('ENV_FIREBASE_CONFIG').value(); constant ENV_FIREBASE_SERVICE_ACCOUNT (line 17) | const ENV_FIREBASE_SERVICE_ACCOUNT = defineString('ENV_FIREBASE_SERVICE_... constant ENV_CLIENT_TEST (line 18) | const ENV_CLIENT_TEST = defineBoolean('ENV_CLIENT_TEST').value(); constant SENDGRID_API_KEY_SOURCE (line 21) | const SENDGRID_API_KEY_SOURCE = defineString('SENDGRID_API_KEY').value(); constant SENDGRID_NEW_DEVELOPER_ACCOUNT_TEMPLATE_SOURCE (line 22) | const SENDGRID_NEW_DEVELOPER_ACCOUNT_TEMPLATE_SOURCE = defineString( constant ENV_MAIN_KEY (line 27) | const ENV_MAIN_KEY = defineString('ENV_MAIN_KEY').value(); constant ENV_SPEECH_TO_TEXT_API (line 30) | const ENV_SPEECH_TO_TEXT_API = defineString('ENV_SPEECH_TO_TEXT_API').va... constant ENV_IGBO_STT_URL (line 31) | const ENV_IGBO_STT_URL = defineString('ENV_IGBO_STT_URL').value(); constant ENV_IGBO_TO_ENGLISH_URL (line 32) | const ENV_IGBO_TO_ENGLISH_URL = defineString('ENV_IGBO_TO_ENGLISH_URL').... constant ENV_ENGLISH_TO_IGBO_URL (line 33) | const ENV_ENGLISH_TO_IGBO_URL = defineString('ENV_ENGLISH_TO_IGBO_URL').... constant ANALYTICS_GA_TRACKING_ID (line 36) | const ANALYTICS_GA_TRACKING_ID = defineString('ANALYTICS_GA_TRACKING_ID'... constant ANALYTICS_GA_API_SECRET (line 37) | const ANALYTICS_GA_API_SECRET = defineString('ANALYTICS_GA_API_SECRET').... constant ENV_REDIS_PORT (line 40) | const ENV_REDIS_PORT = defineInt('ENV_REDIS_PORT').value(); constant ENV_REDIS_URL (line 41) | const ENV_REDIS_URL = defineString('ENV_REDIS_URL').value(); constant ENV_REDIS_HOST (line 42) | const ENV_REDIS_HOST = defineString('ENV_REDIS_HOST').value(); constant ENV_REDIS_USERNAME (line 43) | const ENV_REDIS_USERNAME = defineString('ENV_REDIS_USERNAME').value(); constant ENV_REDIS_PASSWORD (line 44) | const ENV_REDIS_PASSWORD = defineString('ENV_REDIS_PASSWORD').value(); constant GITHUB_STATS_TOKEN_SOURCE (line 47) | const GITHUB_STATS_TOKEN_SOURCE = defineString('GITHUB_STATS_TOKEN').val... constant STRIPE_SECRET_KEY_SOURCE (line 50) | const STRIPE_SECRET_KEY_SOURCE = defineString('STRIPE_SECRET_KEY').value(); constant STRIPE_ENDPOINT_SECRET_SOURCE (line 51) | const STRIPE_ENDPOINT_SECRET_SOURCE = defineString('STRIPE_ENDPOINT_SECR... constant DB_NAME (line 69) | const DB_NAME = 'igbo_api'; constant TEST_DB_NAME (line 70) | const TEST_DB_NAME = 'test_igbo_api'; constant PORT (line 75) | const PORT = process.env.PORT || 8080; constant PROD_LIMIT (line 76) | const PROD_LIMIT = 500; constant MONGO_HOST (line 77) | const MONGO_HOST = process.env.CONTAINER_HOST || '127.0.0.1'; constant REPLICA_SET_NAME (line 78) | const REPLICA_SET_NAME = 'rs0'; constant FIRST_REPLICA_SET_PORT (line 79) | const FIRST_REPLICA_SET_PORT = '2717'; constant SECOND_REPLICA_SET_PORT (line 80) | const SECOND_REPLICA_SET_PORT = '2727'; constant THIRD_REPLICA_SET_PORT (line 81) | const THIRD_REPLICA_SET_PORT = '2737'; constant FALLBACK_MONGO_PORT (line 82) | const FALLBACK_MONGO_PORT = '27017'; constant REPLICA_SET_MONGO_ROOT (line 83) | const REPLICA_SET_MONGO_ROOT = constant FALLBACK_MONGO_ROOT (line 87) | const FALLBACK_MONGO_ROOT = `mongodb://${MONGO_HOST}:${FALLBACK_MONGO_PO... constant MONGO_ROOT (line 88) | const MONGO_ROOT = useReplicaSet ? REPLICA_SET_MONGO_ROOT : FALLBACK_MON... constant QUERIES (line 89) | const QUERIES = useReplicaSet ? `?replicaSet=${REPLICA_SET_NAME}` : ''; constant TEST_MONGO_URI (line 90) | const TEST_MONGO_URI = `${MONGO_ROOT}/${TEST_DB_NAME}`; constant LOCAL_MONGO_URI (line 91) | const LOCAL_MONGO_URI = `${MONGO_ROOT}/${DB_NAME}`; constant MONGO_URI (line 92) | const MONGO_URI = isTestingEnvironment constant FIREBASE_CONFIG (line 97) | const FIREBASE_CONFIG = ENV_FIREBASE_CONFIG; constant FIREBASE_SERVICE_ACCOUNT (line 98) | const FIREBASE_SERVICE_ACCOUNT = ENV_FIREBASE_SERVICE_ACCOUNT; constant CLIENT_TEST (line 99) | const CLIENT_TEST = ENV_CLIENT_TEST; constant CORS_CONFIG (line 101) | const CORS_CONFIG = { constant API_ROUTE (line 107) | const API_ROUTE = isProduction ? 'https://igboapi.com' : `http://localho... constant API_DOCS (line 108) | const API_DOCS = 'https://docs.igboapi.com'; constant SPEECH_TO_TEXT_API (line 111) | const SPEECH_TO_TEXT_API = isProduction ? ENV_SPEECH_TO_TEXT_API : 'http... constant IGBO_STT_API (line 112) | const IGBO_STT_API = ENV_IGBO_STT_URL; constant IGBO_TO_ENGLISH_API (line 113) | const IGBO_TO_ENGLISH_API = ENV_IGBO_TO_ENGLISH_URL; constant ENGLIGH_TO_IGBO_API (line 114) | const ENGLIGH_TO_IGBO_API = ENV_ENGLISH_TO_IGBO_URL; constant SENDGRID_API_KEY (line 116) | const SENDGRID_API_KEY = SENDGRID_API_KEY_SOURCE || ''; constant SENDGRID_NEW_DEVELOPER_ACCOUNT_TEMPLATE (line 117) | const SENDGRID_NEW_DEVELOPER_ACCOUNT_TEMPLATE = constant API_FROM_EMAIL (line 119) | const API_FROM_EMAIL = 'kedu@nkowaokwu.com'; constant MAIN_KEY (line 127) | const MAIN_KEY = ENV_MAIN_KEY || 'main_key'; constant GA_TRACKING_ID (line 130) | const GA_TRACKING_ID = ANALYTICS_GA_TRACKING_ID; constant GA_API_SECRET (line 131) | const GA_API_SECRET = ANALYTICS_GA_API_SECRET; constant GA_URL (line 132) | const GA_URL = 'https://www.google-analytics.com/mp/collect'; constant DEBUG_GA_URL (line 133) | const DEBUG_GA_URL = 'https://www.google-analytics.com/debug/mp/collect'; constant REDIS_HOST (line 136) | const REDIS_HOST = ENV_REDIS_HOST; constant REDIS_PORT (line 137) | const REDIS_PORT = ENV_REDIS_PORT; constant REDIS_USERNAME (line 138) | const REDIS_USERNAME = ENV_REDIS_USERNAME; constant REDIS_PASSWORD (line 139) | const REDIS_PASSWORD = ENV_REDIS_PASSWORD; constant REDIS_URL (line 140) | const REDIS_URL = ENV_REDIS_URL; constant REDIS_CACHE_EXPIRATION (line 142) | const REDIS_CACHE_EXPIRATION = 604800; constant GITHUB_STATS_TOKEN (line 145) | const GITHUB_STATS_TOKEN = GITHUB_STATS_TOKEN_SOURCE; constant STRIPE_SECRET_KEY (line 148) | const STRIPE_SECRET_KEY = constant STRIPE_ENDPOINT_SECRET (line 150) | const STRIPE_ENDPOINT_SECRET = STRIPE_ENDPOINT_SECRET_SOURCE || 'local_e... FILE: src/controllers/__tests__/developers.test.ts class Developer (line 15) | class Developer { method constructor (line 17) | constructor(value: object) { method find (line 21) | static find() { method findOne (line 25) | static findOne() {} method save (line 27) | save() { FILE: src/controllers/developers.ts constant TEST_EMAIL (line 10) | const TEST_EMAIL = 'developer@example.com'; constant DEFAULT_PASSWORD (line 13) | const DEFAULT_PASSWORD = 'UNDEFINED_PASSWORD'; type DeveloperDocument (line 17) | type DeveloperDocument = Document & FILE: src/controllers/email.ts type EmailTemplate (line 13) | type EmailTemplate = { type DeveloperEmailConfig (line 59) | type DeveloperEmailConfig = { FILE: src/controllers/examples.ts type SearchExamplesArg (line 46) | type SearchExamplesArg = { FILE: src/controllers/speechToText.ts type AudioMetadata (line 7) | interface AudioMetadata { type Prediction (line 12) | interface Prediction { FILE: src/controllers/stats.ts constant DEFAULT_STAT (line 8) | const DEFAULT_STAT = { constant DEFAULT_LENGTH (line 12) | const DEFAULT_LENGTH: DeveloperType[] = []; FILE: src/controllers/stripe/webhooks.ts type Event (line 6) | interface Event { FILE: src/controllers/translation.ts type Translation (line 9) | interface Translation { type LanguageCode (line 13) | type LanguageCode = `${LanguageEnum}` type SupportedLanguage (line 15) | type SupportedLanguage = { constant SUPPORTED_TRANSLATIONS (line 21) | const SUPPORTED_TRANSLATIONS: { [key in LanguageCode]: SupportedLanguage... FILE: src/controllers/types.ts type ResponseData (line 4) | type ResponseData = { type ExampleResponseData (line 8) | interface ExampleResponseData extends ResponseData { type WordResponseData (line 12) | interface WordResponseData extends ResponseData { type Filters (line 16) | type Filters = { FILE: src/controllers/utils/buildDocs.ts type NestedDoc (line 18) | type NestedDoc = { _id?: string, __v?: number }; FILE: src/controllers/utils/convertToSkipAndLimit.ts constant DEFAULT_RESPONSE_LIMIT (line 1) | const DEFAULT_RESPONSE_LIMIT = 10; constant MAX_RESPONSE_LIMIT (line 2) | const MAX_RESPONSE_LIMIT = 25; FILE: src/controllers/utils/minimizeWords.ts type MinimizedWord (line 13) | type MinimizedWord = Omit< FILE: src/controllers/utils/parseAWS.ts constant AWS_AUDIO_PRONUNCIATIONS_DELIMITER (line 1) | const AWS_AUDIO_PRONUNCIATIONS_DELIMITER = '/audio-pronunciations/'; FILE: src/controllers/utils/queries.ts type Keywords (line 10) | type Keywords = Keyword[]; FILE: src/controllers/utils/searchWordUsingEnglish.ts type EnglishSearch (line 10) | type EnglishSearch = { FILE: src/controllers/utils/searchWordUsingIgbo.ts type IgboSearch (line 17) | type IgboSearch = { FILE: src/controllers/utils/sortDocsBy.ts constant MATCHING_DEFINITION_INDEX (line 9) | const MATCHING_DEFINITION_INDEX = 1000; constant MATCHING_DEFINITION_INDEX_FACTOR (line 10) | const MATCHING_DEFINITION_INDEX_FACTOR = 100; constant WORD_LENGTH_FACTOR (line 11) | const WORD_LENGTH_FACTOR = 100; constant WORD_LENGTH_DIFFERENCE_FACTOR (line 12) | const WORD_LENGTH_DIFFERENCE_FACTOR = 15; constant IS_COMMON (line 13) | const IS_COMMON = 1000; constant IS_COMMON_THRESHOLD (line 14) | const IS_COMMON_THRESHOLD = -700; constant SIMILARITY_FACTOR (line 15) | const SIMILARITY_FACTOR = 100; constant EXACT_MATCH_FACTOR (line 16) | const EXACT_MATCH_FACTOR = 2000; constant SIMILAR_WORD_THRESHOLD (line 17) | const SIMILAR_WORD_THRESHOLD = 1.5; constant NO_FACTOR (line 18) | const NO_FACTOR = 0; FILE: src/controllers/utils/types.ts type Meta (line 3) | type Meta = { type MinimizedWord (line 13) | type MinimizedWord = { type WordData (line 18) | type WordData = { type Solution (line 23) | type Solution = { type TopSolution (line 30) | type TopSolution = { solution: Solution, metaData: Meta }; type Keyword (line 32) | type Keyword = { type Flags (line 41) | type Flags = { FILE: src/controllers/words.ts constant IGNORE_ENGLISH_WORDS (line 21) | const IGNORE_ENGLISH_WORDS = [ FILE: src/dictionaries/seed.ts constant WRITE_DB_DELAY (line 17) | const WRITE_DB_DELAY = 15000; FILE: src/functions.ts type SpeechToTextRequest (line 7) | interface SpeechToTextRequest { type TranscriptionAudio (line 11) | interface TranscriptionAudio { type TranslationRequest (line 16) | interface TranslationRequest { type DictionaryRequest (line 22) | interface DictionaryRequest { constant TEST_ONLY (line 124) | const TEST_ONLY = { demoInternal }; FILE: src/lib/gtag.js constant GA_TRACKING_ID (line 1) | const GA_TRACKING_ID = process.env.NEXT_PUBLIC_GA_ID; FILE: src/middleware/analytics.ts type TrackingEvent (line 11) | interface TrackingEvent { FILE: src/middleware/helpers/__tests__/createDeveloperUsage.test.ts class DeveloperUsage (line 9) | class DeveloperUsage { method constructor (line 10) | constructor() { FILE: src/middleware/validateApiKey.ts constant FALLBACK_API_KEY (line 6) | const FALLBACK_API_KEY = 'fallback_api_key'; FILE: src/pages/APIs/DevelopersAPI.ts constant API_ROUTE (line 7) | const API_ROUTE = !isProduction() ? 'http://localhost:8080' : 'https://i... FILE: src/pages/APIs/PredictionAPI.ts type Prediction (line 7) | interface Prediction { type Dictionary (line 11) | interface Dictionary { type SpeechToTextResponse (line 15) | interface SpeechToTextResponse extends Prediction {} type TranslationResponse (line 17) | interface TranslationResponse extends Translation {} type DictionaryResponse (line 19) | interface DictionaryResponse extends Dictionary {} FILE: src/pages/_document.page.tsx class MyDocument (line 5) | class MyDocument extends Document { method getInitialProps (line 6) | static async getInitialProps(context: any) { method render (line 11) | render() { FILE: src/pages/atoms/audioAtoms.ts type DefaultAudio (line 3) | interface DefaultAudio { FILE: src/pages/components/Demo/components/IgboSpeech/components/AudioPlayer/UploadButton.tsx constant ACCEPT_FILE_TYPES (line 6) | const ACCEPT_FILE_TYPES = Object.values(ValidAudioType).join(', '); FILE: src/pages/components/Demo/components/IgboSpeech/components/ConvertToTextButton.tsx type ConvertedAudio (line 19) | interface ConvertedAudio { FILE: src/pages/components/Demo/components/IgboSpeech/components/DragState.tsx constant ACCEPT_FILE_TYPES (line 6) | const ACCEPT_FILE_TYPES = Object.values(ValidAudioType).join(', '); FILE: src/pages/components/Demo/components/IgboSpeech/components/ValidAudioType.ts type ValidAudioType (line 1) | enum ValidAudioType { FILE: src/pages/components/MentionedIn/MentionedIn.tsx constant NIGERIAN_TRIBUNE (line 5) | const NIGERIAN_TRIBUNE = { constant UIU (line 10) | const UIU = { constant BUILT_IN_AFRICA (line 14) | const BUILT_IN_AFRICA = { constant NUESROOM (line 18) | const NUESROOM = { constant WEDEYCODE (line 22) | const WEDEYCODE = { constant NASDAQ (line 26) | const NASDAQ = { constant TECHPOINT (line 30) | const TECHPOINT = { FILE: src/pages/dashboard/layout.tsx constant DEFAULT_DEVELOPER (line 16) | const DEFAULT_DEVELOPER = { FILE: src/pages/dashboard/shared/pricingFeatures.tsx type FeatureCategory (line 5) | enum FeatureCategory { type PricingFeatureCategory (line 11) | interface PricingFeatureCategory { type PricingFeature (line 16) | interface PricingFeature { FILE: src/pages/hooks/useRecorder.ts constant MAX_AUDIO_SIZE (line 8) | const MAX_AUDIO_SIZE = 5000000; FILE: src/pages/pricing/types.ts type PricingTier (line 1) | interface PricingTier { FILE: src/pages/utils/getAWSAsset.ts constant AWS_URL (line 1) | const AWS_URL = 'https://nkowaokwu.s3.us-west-1.amazonaws.com/assets'; FILE: src/routers/router.ts constant FIFTEEN_MINUTES (line 20) | const FIFTEEN_MINUTES = 15 * 60 * 1000; constant REQUESTS_PER_MS (line 21) | const REQUESTS_PER_MS = 20; FILE: src/services/database.ts constant DISCONNECTED (line 4) | const DISCONNECTED = 0; FILE: src/services/firebaseConfigs.ts type FirebaseConfig (line 1) | interface FirebaseConfig { constant STAGING_FIREBASE_CONFIG (line 11) | const STAGING_FIREBASE_CONFIG: FirebaseConfig = { constant PRODUCTION_FIREBASE_CONFIG (line 20) | const PRODUCTION_FIREBASE_CONFIG: FirebaseConfig = { FILE: src/shared/constants/AccountStatus.ts type AccountStatus (line 3) | enum AccountStatus { type Status (line 14) | type Status = AccountStatus | Stripe.Subscription.Status; FILE: src/shared/constants/ApiType.ts type ApiType (line 1) | enum ApiType { FILE: src/shared/constants/DefaultAudios.ts constant DEFAULT_AUDIOS (line 1) | const DEFAULT_AUDIOS = [ FILE: src/shared/constants/DemoOption.ts type DemoOption (line 1) | enum DemoOption { FILE: src/shared/constants/DialectEnum.ts type DialectEnum (line 1) | enum DialectEnum { FILE: src/shared/constants/Endpoint.ts type Endpoint (line 1) | enum Endpoint { FILE: src/shared/constants/ExampleStyleEnum.ts type ExampleStyleEnum (line 1) | enum ExampleStyleEnum { FILE: src/shared/constants/Feedback.ts type Feedback (line 1) | enum Feedback { FILE: src/shared/constants/LanguageEnum.ts type LanguageEnum (line 2) | enum LanguageEnum { FILE: src/shared/constants/Plan.ts type Plan (line 1) | enum Plan { FILE: src/shared/constants/StatTypes.ts type StatTypes (line 1) | enum StatTypes { FILE: src/shared/constants/SuggestionSourceEnum.ts type SuggestionSourceEnum (line 2) | enum SuggestionSourceEnum { FILE: src/shared/constants/Version.ts type Version (line 1) | enum Version { FILE: src/shared/constants/WordAttributeEnum.ts type WordAttributeEnum (line 1) | enum WordAttributeEnum { FILE: src/shared/constants/WordClassEnum.ts type WordClassEnum (line 1) | enum WordClassEnum { FILE: src/shared/constants/WordTagEnum.ts type WordTagEnum (line 1) | enum WordTagEnum { FILE: src/shared/constants/diacriticCodes.ts constant OVERDOT_UPPERCASE_N (line 3) | const OVERDOT_UPPERCASE_N = 7748; constant GRAVE_UPPERCASE_N (line 4) | const GRAVE_UPPERCASE_N = 504; constant GRAVE_ACUTE_UPPERCASE_N (line 5) | const GRAVE_ACUTE_UPPERCASE_N = 323; constant UNDERDOT_UPPERCASE_I (line 6) | const UNDERDOT_UPPERCASE_I = 7882; constant UNDERDOT_UPPERCASE_O (line 7) | const UNDERDOT_UPPERCASE_O = 7884; constant UNDERDOT_UPPERCASE_U (line 8) | const UNDERDOT_UPPERCASE_U = 7908; constant GRAVE_UPPERCASE_A (line 9) | const GRAVE_UPPERCASE_A = 192; constant GRAVE_ACUTE_UPPERCASE_A (line 10) | const GRAVE_ACUTE_UPPERCASE_A = 193; constant MACRON_UPPERCASE_A (line 11) | const MACRON_UPPERCASE_A = 256; constant GRAVE_UPPERCASE_E (line 12) | const GRAVE_UPPERCASE_E = 200; constant GRAVE_ACUTE_UPPERCASE_E (line 13) | const GRAVE_ACUTE_UPPERCASE_E = 201; constant MACRON_UPPERCASE_E (line 14) | const MACRON_UPPERCASE_E = 274; constant GRAVE_UPPERCASE_I (line 15) | const GRAVE_UPPERCASE_I = 204; constant GRAVE_ACUTE_UPPERCASE_I (line 16) | const GRAVE_ACUTE_UPPERCASE_I = 205; constant MACRON_UPPERCASE_I (line 17) | const MACRON_UPPERCASE_I = 298; constant GRAVE_UPPERCASE_O (line 18) | const GRAVE_UPPERCASE_O = 210; constant GRAVE_ACUTE_UPPERCASE_O (line 19) | const GRAVE_ACUTE_UPPERCASE_O = 211; constant MACRON_UPPERCASE_O (line 20) | const MACRON_UPPERCASE_O = 332; constant GRAVE_UPPERCASE_U (line 21) | const GRAVE_UPPERCASE_U = 217; constant GRAVE_ACUTE_UPPERCASE_U (line 22) | const GRAVE_ACUTE_UPPERCASE_U = 218; constant MACRON_UPPERCASE_U (line 23) | const MACRON_UPPERCASE_U = 362; constant OVERDOT_LOWERCASE_N (line 25) | const OVERDOT_LOWERCASE_N = 7749; constant GRAVE_LOWERCASE_N (line 26) | const GRAVE_LOWERCASE_N = 505; constant GRAVE_ACUTE_LOWERCASE_N (line 27) | const GRAVE_ACUTE_LOWERCASE_N = 324; constant UNDERDOT_LOWERCASE_I (line 28) | const UNDERDOT_LOWERCASE_I = 7883; constant UNDERDOT_LOWERCASE_O (line 29) | const UNDERDOT_LOWERCASE_O = 7885; constant UNDERDOT_LOWERCASE_U (line 30) | const UNDERDOT_LOWERCASE_U = 7909; constant GRAVE_LOWERCASE_A (line 31) | const GRAVE_LOWERCASE_A = 224; constant GRAVE_ACUTE_LOWERCASE_A (line 32) | const GRAVE_ACUTE_LOWERCASE_A = 225; constant MACRON_LOWERCASE_A (line 33) | const MACRON_LOWERCASE_A = 257; constant GRAVE_LOWERCASE_E (line 34) | const GRAVE_LOWERCASE_E = 232; constant GRAVE_ACUTE_LOWERCASE_E (line 35) | const GRAVE_ACUTE_LOWERCASE_E = 233; constant MACRON_LOWERCASE_E (line 36) | const MACRON_LOWERCASE_E = 275; constant GRAVE_LOWERCASE_I (line 37) | const GRAVE_LOWERCASE_I = 236; constant GRAVE_ACUTE_LOWERCASE_I (line 38) | const GRAVE_ACUTE_LOWERCASE_I = 237; constant MACRON_LOWERCASE_I (line 39) | const MACRON_LOWERCASE_I = 229; constant GRAVE_LOWERCASE_O (line 40) | const GRAVE_LOWERCASE_O = 242; constant GRAVE_ACUTE_LOWERCASE_O (line 41) | const GRAVE_ACUTE_LOWERCASE_O = 243; constant MACRON_LOWERCASE_O (line 42) | const MACRON_LOWERCASE_O = 333; constant GRAVE_LOWERCASE_U (line 43) | const GRAVE_LOWERCASE_U = 249; constant GRAVE_ACUTE_LOWERCASE_U (line 44) | const GRAVE_ACUTE_LOWERCASE_U = 250; constant MACRON_LOWERCASE_U (line 45) | const MACRON_LOWERCASE_U = 363; constant ALL_DIACRITICS (line 48) | const ALL_DIACRITICS = '\u00B4\u0301\u0060\u00AF\u0304\u0323\u0300'; FILE: src/shared/constants/errorMessages.ts constant NO_PROVIDED_TERM (line 1) | const NO_PROVIDED_TERM = 'No search term provided. Use the keyword query... FILE: src/shared/constants/navigationLinks.ts type NavigationType (line 3) | enum NavigationType { type NavigationLink (line 8) | interface NavigationLink { FILE: src/shared/constants/parseFileLocations.ts constant READ_FILE_FORMAT (line 2) | const READ_FILE_FORMAT = 'utf8'; constant DICTIONARIES_DIR (line 4) | const DICTIONARIES_DIR = constant BUILD_DICTIONARIES_DIR (line 8) | const BUILD_DICTIONARIES_DIR = `${mainPath}/../dist/dictionaries/ig-en`; FILE: src/shared/utils/createRegExp.ts type SearchRegExp (line 5) | interface SearchRegExp { FILE: src/siteConstants.ts constant PORT (line 2) | const PORT = 8080; constant API_FROM_EMAIL (line 3) | const API_FROM_EMAIL = 'kedu@nkowaokwu.com'; constant APP_URL (line 4) | const APP_URL = 'https://igboapi.com'; constant API_ROUTE (line 5) | const API_ROUTE = APP_URL; constant DICTIONARY_APP_URL (line 6) | const DICTIONARY_APP_URL = 'https://nkowaokwu.com'; constant VOLUNTEER_PAGE_URL (line 7) | const VOLUNTEER_PAGE_URL = 'https://nkowaokwu.com/volunteer'; constant SPEECH_TO_TEXT_APP_URL (line 8) | const SPEECH_TO_TEXT_APP_URL = 'https://speech.igboapi.com'; constant GITHUB_REPO (line 9) | const GITHUB_REPO = 'https://github.com/nkowaokwu/igbo_api'; constant GITHUB_CONTRIBUTORS (line 10) | const GITHUB_CONTRIBUTORS = 'https://api.github.com/repos/nkowaokwu/igbo... constant GITHUB_STARS (line 11) | const GITHUB_STARS = 'https://api.github.com/repos/nkowaokwu/igbo_api'; constant SERVER_DOMAIN (line 12) | const SERVER_DOMAIN = constant TWITTER (line 18) | const TWITTER = 'https://twitter.com/nkowaokwu'; constant INSTAGRAM (line 19) | const INSTAGRAM = 'https://www.instagram.com/nkowaokwu'; constant LINKEDIN (line 20) | const LINKEDIN = 'https://www.linkedin.com/company/nkowa-okwu'; constant YOUTUBE (line 21) | const YOUTUBE = 'https://www.youtube.com/c/IjemmaOnwuzulike'; constant NKOWAOKWU (line 24) | const NKOWAOKWU = 'https://nkowaokwu.com'; constant NKOWAOKWU_CHROME (line 25) | const NKOWAOKWU_CHROME = 'https://nkowaokwu.com/chrome'; constant SABBI_DASHBOARD (line 26) | const SABBI_DASHBOARD = 'https://dashboard.sabbidata.com'; constant HUGGING_FACE (line 29) | const HUGGING_FACE = 'https://huggingface.co/nkowaokwu'; constant KAGGLE (line 30) | const KAGGLE = 'https://www.kaggle.com/organizations/nkowaokwu'; constant DONATE_URL (line 33) | const DONATE_URL = 'https://donate.stripe.com/dR62aP6UlcmE3kIfYY'; FILE: src/types/databaseStats.ts type ProjectStats (line 1) | interface ProjectStats extends DatabaseStats, GitHubStats {} type DatabaseStats (line 3) | interface DatabaseStats { type GitHubStats (line 14) | interface GitHubStats { FILE: src/types/developer.ts type DeveloperClientData (line 5) | interface DeveloperClientData { type Developer (line 16) | interface Developer extends DeveloperClientData { type DeveloperDocument (line 23) | interface DeveloperDocument extends Developer, Document { type DeveloperResponse (line 27) | interface DeveloperResponse extends Developer { FILE: src/types/developerUsage.ts type DeveloperUsage (line 4) | interface DeveloperUsage { type DeveloperUsageDocument (line 13) | interface DeveloperUsageDocument extends DeveloperUsage, Document { FILE: src/types/example.ts type ExampleBase (line 5) | type ExampleBase = { type IncomingExample (line 14) | type IncomingExample = ExampleBase & { type OutgoingExample (line 19) | type OutgoingExample = IncomingExample & {}; type OutgoingLegacyExample (line 21) | type OutgoingLegacyExample = ExampleBase & { type Translation (line 27) | type Translation = { type Pronunciation (line 33) | type Pronunciation = { type ExampleDocument (line 42) | interface ExampleDocument extends IncomingExample, Document { FILE: src/types/express.ts type StripeBody (line 7) | type StripeBody = { type Query (line 15) | type Query = { type IgboAPIRequest (line 30) | interface IgboAPIRequest extends ExpressRequest { type MiddleWare (line 43) | interface MiddleWare { type ErrorMiddleWare (line 47) | interface ErrorMiddleWare { FILE: src/types/formFields.ts type FormFieldName (line 1) | interface FormFieldName { FILE: src/types/nsibidiCharacter.ts type NsibidiCharacter (line 3) | type NsibidiCharacter = { type NsibidiCharacterDocument (line 11) | interface NsibidiCharacterDocument extends NsibidiCharacter, Document { FILE: src/types/stat.ts type Stat (line 4) | interface Stat { type StatDocument (line 10) | interface StatDocument extends Stat, Document { FILE: src/types/word.ts type WordClass (line 6) | type WordClass = string | WordDialect; type Definition (line 8) | interface Definition { type WordDialect (line 17) | interface WordDialect { type LegacyWordDialect (line 26) | interface LegacyWordDialect { type Attribute (line 30) | type Attribute = { [key in WordAttributeEnum]: boolean }; type WordBase (line 32) | interface WordBase { type IncomingWord (line 48) | interface IncomingWord extends WordBase { type IncomingLegacyWord (line 55) | interface IncomingLegacyWord extends WordBase { type OutgoingWord (line 63) | interface OutgoingWord extends IncomingWord {} type OutgoingLegacyWord (line 65) | interface OutgoingLegacyWord extends IncomingLegacyWord {} type WordType (line 67) | type WordType = OutgoingWord | Document | Document