SYMBOL INDEX (340 symbols across 33 files) FILE: packages/core/src/core/answer-wrapper/answer.wrapper.handler.ts function defaultAnswerWrapperHandler (line 43) | async function defaultAnswerWrapperHandler( FILE: packages/core/src/core/answer-wrapper/answer.wrapper.parser.ts class AnswerWrapperParser (line 7) | class AnswerWrapperParser { method fromObject (line 9) | static fromObject(json: any): AnswererWrapper[] { method fromJSONString (line 53) | static fromJSONString(json: string) { method fromURL (line 63) | static async fromURL(url: string) { method fromBase64 (line 73) | static fromBase64(base64: string) { method from (line 80) | static from(value: any): AnswererWrapper[] | Promise { FILE: packages/core/src/core/answer-wrapper/interface.ts type Result (line 2) | interface Result { type SearchInformation (line 9) | interface SearchInformation { type AnswererWrapper (line 27) | interface AnswererWrapper { FILE: packages/core/src/core/utils/dom.ts function domSearch (line 9) | function domSearch( function domSearchAll (line 44) | function domSearchAll( FILE: packages/core/src/core/utils/request.ts function request (line 8) | function request( FILE: packages/core/src/core/utils/string.ts function clearString (line 8) | function clearString(str: string, ...exclude: string[]) { function answerSimilar (line 36) | function answerSimilar(answers: string[], options: string[]): Rating[] { function answerExactMatch (line 58) | function answerExactMatch(answers: string[], options: string[]): string[] { function removeRedundant (line 75) | function removeRedundant(str: string) { FILE: packages/core/src/core/worker/interface.ts type ElementResolver (line 3) | type ElementResolver = (root: HTMLElement | Document) => R; type RawElements (line 4) | type RawElements = Record< type SearchedElements (line 14) | type SearchedElements = Record & { type QuestionTypes (line 22) | type QuestionTypes = 'single' | 'multiple' | 'completion' | 'judgement' ... type AnswerMatchMode (line 24) | type AnswerMatchMode = 'exact' | 'similar'; type WorkContext (line 27) | interface WorkContext { type ResolverResult (line 43) | interface ResolverResult { type WorkResult (line 49) | interface WorkResult { type SimplifyWorkResult (line 64) | interface SimplifyWorkResult { type QuestionResolver (line 91) | type QuestionResolver = ( type DefaultWork (line 109) | interface DefaultWork { type CustomWork (line 184) | type CustomWork = (ctx: WorkContext) => Promis... type AnswererType (line 188) | type AnswererType = ( type WorkOptions (line 196) | interface WorkOptions { type CustomWorkOptions (line 223) | interface CustomWorkOptions { type WorkUploadType (line 237) | type WorkUploadType = 'save' | 'nomove' | 'force' | number; type WorkerEvents (line 239) | type WorkerEvents = { FILE: packages/core/src/core/worker/question.resolver.ts function createDefaultQuestionResolver (line 8) | function createDefaultQuestionResolver( FILE: packages/core/src/core/worker/utils.ts function defaultWorkTypeResolver (line 4) | function defaultWorkTypeResolver(ctx: WorkContext): QuestionTypes |... function isPlainAnswer (line 26) | function isPlainAnswer(answer: string) { function resolvePlainAnswer (line 54) | function resolvePlainAnswer(answer: string) { function splitAnswer (line 65) | function splitAnswer(answer: string, separators = ['===', '#', '---', '#... FILE: packages/core/src/core/worker/worker.ts class OCSWorker (line 25) | class OCSWorker extends CommonEvent... method constructor (line 32) | constructor(opts: WorkOptions) { method doWork (line 38) | async doWork(options?: { enable_debug?: boolean }) { method uploadHandler (line 333) | uploadHandler(options: { class CustomOCSWorker (line 364) | class CustomOCSWorker extends CommonEventEmitter { method constructor (line 370) | constructor(opts: CustomWorkOptions) { method doWork (line 376) | async doWork(options?: { enable_debug?: boolean }) { function waitForContinuate (line 457) | async function waitForContinuate(isStopping: () => boolean) { FILE: packages/core/src/utils/common.ts method uuid (line 8) | uuid() { method random (line 21) | random(min: number, max: number) { method sleep (line 29) | async sleep(period: number): Promise { method isInBrowser (line 38) | isInBrowser(): boolean { method elementToRawObject (line 46) | elementToRawObject(el: HTMLElement | undefined | null) { method onresize (line 59) | onresize(el: E, handler: (el: E) => void) { method isInTopWindow (line 75) | isInTopWindow() { method createCenteredPopupWindow (line 86) | createCenteredPopupWindow( FILE: packages/core/src/utils/playwright.ts type Base64 (line 6) | type Base64 = string; type ClickOptions (line 8) | interface ClickOptions { type RemotePage (line 73) | interface RemotePage { class RemotePlaywright (line 157) | class RemotePlaywright { method getRemotePage (line 161) | static async getRemotePage( method createRemotePage (line 190) | private static createRemotePage( function scrollToElement (line 292) | function scrollToElement(el: HTMLElement) { function showMousePointer (line 298) | function showMousePointer(el: HTMLElement) { function waitForMouseIdle (line 319) | function waitForMouseIdle(timeout: number = 200): Promise { FILE: packages/core/src/utils/string.ts method humpToTarget (line 9) | humpToTarget(value: string, target: string) { class StringUtils (line 19) | class StringUtils { method constructor (line 21) | constructor(_text: string) { method nowrap (line 29) | static nowrap(str: string, replace_str: string) { method nowrap (line 37) | nowrap(replace_str: string) { method nospace (line 43) | static nospace(str?: string) { method nospace (line 48) | nospace() { method noSpecialChar (line 54) | static noSpecialChar(str?: string) { method noSpecialChar (line 59) | noSpecialChar() { method max (line 65) | static max(str: string, len: number) { method max (line 70) | max(len: number) { method hide (line 76) | static hide(str: string, start: number, end: number, replacer: string ... method hide (line 82) | hide(start: number, end: number, replacer: string = '*') { method of (line 91) | static of(text: string) { method toString (line 95) | toString() { FILE: packages/scripts/src/elements/search.infos.ts class SearchInfosElement (line 23) | class SearchInfosElement extends HTMLElement { method connectedCallback (line 31) | connectedCallback() { FILE: packages/scripts/src/index.ts function definedProjects (line 26) | function definedProjects(): Project[] { FILE: packages/scripts/src/projects/background.ts type LogType (line 39) | type LogType = 'log' | 'info' | 'debug' | 'warn' | 'error'; type RequestList (line 41) | type RequestList = { method onstart (line 62) | onstart() { method onrender (line 76) | onrender({ panel }) { method onrender (line 199) | onrender({ panel }) { method onactive (line 241) | async onactive() { method methods (line 403) | methods() { method onrender (line 413) | async onrender({ panel }) { method oncomplete (line 440) | oncomplete() { method methods (line 518) | methods() { method onrender (line 525) | onrender({ panel }) { method oncomplete (line 559) | oncomplete() { method onstart (line 571) | onstart() { method methods (line 630) | methods() { method onrender (line 766) | onrender() { method onstart (line 769) | onstart() { method oncomplete (line 876) | oncomplete() { method onactive (line 924) | async onactive() { type Console (line 982) | type Console = Record void>; method get (line 986) | get(target, key) { FILE: packages/scripts/src/projects/common.ts constant TAB_WORK_RESULTS_KEY (line 20) | const TAB_WORK_RESULTS_KEY = 'common.work-results.results'; type QuestionCache (line 79) | type QuestionCache = { title: string; answer: string; from: string; home... method onrender (line 100) | onrender({ panel }) { method onload (line 134) | onload() { method onload (line 483) | onload(el) { method onload (line 544) | onload(el) { method onload (line 593) | onload(el) { method methods (line 633) | methods() { method oncomplete (line 703) | oncomplete() { method onrender (line 709) | onrender({ panel }) { method methods (line 864) | methods() { method onrender (line 1203) | onrender({ panel }) { method oncomplete (line 1235) | oncomplete() { method onrender (line 1248) | onrender({ panel }) { method onactive (line 1319) | onactive() { method oncomplete (line 1322) | oncomplete() { method onstart (line 1336) | onstart() { method methods (line 1370) | methods() { method onrender (line 1465) | onrender({ panel }) { function insertCopyableStyle (line 1622) | function insertCopyableStyle() { function createAnswererWrapperList (line 1636) | function createAnswererWrapperList(aw: AnswererWrapper[]) { FILE: packages/scripts/src/projects/cx.ts type VideoQuizStrategy (line 66) | type VideoQuizStrategy = 'random' | 'ignore'; type Attachment (line 68) | type Attachment = { type Job (line 88) | type Job = { method onstart (line 128) | onstart() { method oncomplete (line 172) | oncomplete() { method onrender (line 305) | onrender({ panel }) { method onactive (line 329) | async onactive() { method oncomplete (line 412) | async oncomplete() { method oncomplete (line 439) | oncomplete() { method oncomplete (line 493) | async oncomplete() { method oncomplete (line 518) | async oncomplete() { method oncomplete (line 564) | oncomplete() { method onstart (line 593) | onstart() { method methods (line 601) | methods() { method oncomplete (line 650) | oncomplete() { method oncomplete (line 665) | async oncomplete() { method oncomplete (line 720) | async oncomplete() { method oncomplete (line 737) | oncomplete(...args) { function workOrExam (line 744) | function workOrExam( function mappingRecognize (line 974) | async function mappingRecognize(doc: Document = document) { function loadTyprMapping (line 1049) | async function loadTyprMapping() { method isInSpecialMode (line 1067) | isInSpecialMode() { method isStuckInBreakingMode (line 1071) | async isStuckInBreakingMode() { method isInFinalTab (line 1099) | isInFinalTab() { method isInFinalChapter (line 1108) | isInFinalChapter() { method isFinishedAllChapters (line 1114) | isFinishedAllChapters() { method getChapterInfos (line 1118) | getChapterInfos() { method scrollToActiveChapter (line 1126) | scrollToActiveChapter() { method waitForChapterInfos (line 1137) | waitForChapterInfos(timeout = 10) { method getSecretFont (line 1155) | getSecretFont(doc: Document = document) { method isCurrentChapterFinished (line 1165) | isCurrentChapterFinished() { function rateHack (line 1179) | function rateHack() { function study (line 1267) | async function study( function searchIFrame (line 1432) | function searchIFrame(root: Document) { function searchJob (line 1455) | function searchJob( function fixedVideoProgress (line 1646) | function fixedVideoProgress() { method media (line 1662) | async media( method read (line 1774) | async read(win: Window & { finishJob?: Function }) { method timereader (line 1782) | async timereader(iframe: HTMLIFrameElement) { method chapter (line 1798) | async chapter( method readPPTWithAudio (line 2094) | async readPPTWithAudio(win: Window & { swiperNext?: Function }) { method hyperlink (line 2113) | async hyperlink(a: HTMLElement) { function getQuestionType (line 2142) | function getQuestionType( function readerAndFillHandle (line 2163) | async function readerAndFillHandle(searchInfos: SearchInformation[], lis... function hasFaceRecognition (line 2188) | function hasFaceRecognition() { function hasNewFaceRecognition (line 2202) | function hasNewFaceRecognition() { function waitForNewFaceRecognition (line 2217) | function waitForNewFaceRecognition() { function waitForFaceRecognition (line 2244) | function waitForFaceRecognition() { FILE: packages/scripts/src/projects/icourse.ts method oncomplete (line 32) | oncomplete() { method methods (line 78) | methods() { method oncomplete (line 134) | oncomplete() { method methods (line 140) | methods() { method methods (line 367) | methods() { method oncomplete (line 420) | oncomplete() { method oncomplete (line 441) | oncomplete(...args) { function waitForQuestion (line 452) | function waitForQuestion() { function workAndExam (line 463) | function workAndExam( function watchMedia (line 620) | async function watchMedia(playbackRate: number, volume: number) { function readPPT (line 646) | async function readPPT(remotePage: RemotePage, readSpeed: number) { function discussion (line 669) | async function discussion( FILE: packages/scripts/src/projects/icve.ts class StudyLock (line 36) | class StudyLock { method constructor (line 39) | constructor() { method canStudy (line 45) | canStudy() { method getLock (line 49) | static getLock() { method oncomplete (line 79) | oncomplete() { method oncomplete (line 99) | async oncomplete() { method onrender (line 244) | onrender() { method oncomplete (line 257) | async oncomplete() { method oncomplete (line 423) | async oncomplete() { method oncomplete (line 448) | oncomplete() { method onhistorychange (line 502) | onhistorychange(type) { method oncomplete (line 510) | async oncomplete(type) { method oncomplete (line 714) | oncomplete() { function watchMedia (line 735) | async function watchMedia() { function work (line 764) | function work({ answererWrappers, period, thread, answerSeparators, answ... function aiWork (line 948) | function aiWork({ answererWrappers, period, thread, answerSeparators, an... function waitForPopupQuestion (line 1105) | function waitForPopupQuestion(dom: Document) { function handleContinueDialog (line 1133) | function handleContinueDialog() { FILE: packages/scripts/src/projects/yuketang.ts method onstart (line 32) | onstart(...args) { method oncomplete (line 75) | async oncomplete() { method oncomplete (line 162) | async oncomplete() { function loadFontMapping (line 183) | async function loadFontMapping() { function watch (line 201) | async function watch(options: { volume: number; playbackRate: number }) { FILE: packages/scripts/src/projects/zhs.ts type ZHSProcessor (line 45) | interface ZHSProcessor { class StudyVideoH5 (line 58) | class StudyVideoH5 implements ZHSProcessor { method init (line 60) | async init() { method getCourseName (line 68) | getCourseName() { method getChapterName (line 72) | getChapterName(root: HTMLElement): string { method getNext (line 76) | getNext(opts: { next: boolean; restudy: boolean }) { method switchPlaybackRate (line 93) | async switchPlaybackRate(rate: number) { method switchLine (line 114) | async switchLine(definition: 'line1bq' | 'line1gq') { method hasJob (line 134) | hasJob() { method hideDialog (line 138) | hideDialog() { method handleTestDialog (line 145) | async handleTestDialog() { class FusionCourseH5 (line 194) | class FusionCourseH5 extends StudyVideoH5 implements ZHSProcessor { method getCourseName (line 195) | getCourseName() { method getChapterName (line 200) | getChapterName(root: HTMLElement): string { method getNext (line 213) | getNext(opts: { next: boolean; restudy: boolean }) { class StudyPlusH5 (line 301) | class StudyPlusH5 extends StudyVideoH5 implements ZHSProcessor { method getCourseName (line 302) | getCourseName() { method getChapterName (line 306) | getChapterName(item: HTMLElement): string { method hasJob (line 310) | hasJob() { method getNext (line 314) | getNext(opts: { next: boolean; restudy: boolean }) { method hideDialog (line 338) | hideDialog() { method handleTestDialog (line 345) | async handleTestDialog(remotePage?: RemotePage) { class WishdomH5 (line 408) | class WishdomH5 extends StudyVideoH5 implements ZHSProcessor { method getCourseName (line 409) | getCourseName() { method getChapterName (line 413) | getChapterName(item: HTMLElement): string { method hasJob (line 417) | hasJob() { method getNext (line 421) | getNext(opts: { next: boolean; restudy: boolean }) { method hideDialog (line 455) | hideDialog() { method handleTestDialog (line 462) | async handleTestDialog(remotePage?: RemotePage) { class Hike (line 523) | class Hike extends StudyVideoH5 implements ZHSProcessor { method getCourseName (line 524) | getCourseName() { method getChapterName (line 528) | getChapterName(item: HTMLElement): string { method hasJob (line 532) | hasJob() { method getNext (line 536) | getNext(opts: { next: boolean; restudy: boolean }) { method hideDialog (line 560) | hideDialog() { class HikeV2 (line 568) | class HikeV2 extends StudyVideoH5 implements ZHSProcessor { method getCourseName (line 569) | getCourseName() { method getChapterName (line 573) | getChapterName(): string { method hasJob (line 577) | hasJob() { method getNext (line 581) | getNext(opts: { next: boolean; restudy: boolean }) { method hideDialog (line 605) | hideDialog() { method oncomplete (line 637) | oncomplete() { method methods (line 715) | methods() { method onrender (line 756) | onrender({ panel }) { method onactive (line 797) | onactive() { method oncomplete (line 805) | async oncomplete() { method methods (line 1002) | methods() { method onactive (line 1077) | async onactive() { method oncomplete (line 1130) | oncomplete() { method onhistorychange (line 1133) | onhistorychange(type, ...args) { method methods (line 1138) | methods() { method methods (line 1399) | methods() { method oncomplete (line 1437) | oncomplete() { method onhistorychange (line 1440) | onhistorychange(type, ...args) { method methods (line 1459) | methods() { method oncomplete (line 1473) | oncomplete() { method oncomplete (line 1488) | oncomplete() { method oncomplete (line 1579) | async oncomplete() { method oncomplete (line 1627) | async oncomplete() { method oncomplete (line 1937) | async oncomplete(...args) { method oncomplete (line 2145) | oncomplete(...args) { method onhistorychange (line 2148) | async onhistorychange(type) { method oncomplete (line 2316) | async oncomplete() { method oncomplete (line 2342) | async oncomplete() { function watch (line 2364) | async function watch( function watchXnk (line 2483) | async function watchXnk(options: { volume: number }, onended: () => void) { function checkForCaptcha (line 2508) | function checkForCaptcha(update: (hasCaptcha: boolean) => void) { function waitForCaptcha (line 2537) | function waitForCaptcha(): void | Promise { function getPopupCaptcha (line 2559) | function getPopupCaptcha() { function gxkWorkAndExam (line 2566) | function gxkWorkAndExam( function xnkWork (line 2753) | function xnkWork({ answererWrappers, period, thread, answerSeparators, a... function smartWork (line 2864) | function smartWork( function smartExam (line 3025) | function smartExam( function fusioncourseWork (line 3175) | function fusioncourseWork( function hikeWork (line 3297) | function hikeWork( function hikeHomework (line 3427) | function hikeHomework( function optimizeSecond (line 3533) | function optimizeSecond(second: number) { function autoStop (line 3543) | function autoStop(stopTime: string) { function fixProcessBar (line 3571) | function fixProcessBar() { function closeDialogRead (line 3581) | function closeDialogRead() { function finishAlert (line 3588) | function finishAlert() { FILE: packages/scripts/src/projects/zjy.ts type CourseType (line 10) | type CourseType = { method oncomplete (line 83) | oncomplete() { method methods (line 107) | methods() { method onhistorychange (line 144) | onhistorychange(type) { method oncomplete (line 149) | oncomplete() { method methods (line 191) | methods() { method methods (line 339) | methods() { function watchMedia (line 356) | async function watchMedia() { function watchFile (line 385) | async function watchFile(pptReadPeriod: number) { function getUniqueCourseId (line 422) | function getUniqueCourseId() { function isZyk (line 427) | function isZyk() { function getVueBindElement (line 431) | function getVueBindElement() { function getPPTVueBindElement (line 435) | function getPPTVueBindElement() { function next (line 443) | async function next(type: 'classroomNow' | 'normal') { function getCourseDataInClassroomNowPage (line 494) | function getCourseDataInClassroomNowPage() { function getCourseData (line 517) | async function getCourseData() { function waitForLoad (line 621) | function waitForLoad() { function waitForQuestions (line 628) | async function waitForQuestions() { function workOrExam (line 632) | function workOrExam( FILE: packages/scripts/src/utils/app.ts method onConfirm (line 15) | onConfirm() { FILE: packages/scripts/src/utils/configs.ts method onload (line 23) | onload() { method onload (line 66) | onload(el) { FILE: packages/scripts/src/utils/index.ts type CommonWorkOptions (line 7) | interface CommonWorkOptions { function workPreCheckMessage (line 19) | function workPreCheckMessage( function createRangeTooltip (line 68) | function createRangeTooltip( function playMedia (line 80) | async function playMedia(playFunction: () => Promise | undefined |... function enableCopy (line 124) | function enableCopy(elements: (HTMLElement | Document)[]) { function createQuestionTitleExtra (line 173) | function createQuestionTitleExtra(question: string) { function msg (line 196) | function msg(type: keyof typeof $message, attrs: MessageAttrs) { FILE: packages/scripts/src/utils/markdown.ts function markdown (line 3) | function markdown(md: string) { FILE: packages/scripts/src/utils/render.ts method moveToEdge (line 7) | moveToEdge(x = 80, y = 100) { FILE: packages/scripts/src/utils/study.ts function waitForMedia (line 6) | async function waitForMedia(options?: { function waitForElement (line 43) | function waitForElement( function waitFor (line 52) | function waitFor(predicate: () => T, opts?: { timeout_seconds?: numbe... FILE: packages/scripts/src/utils/work.ts function commonWork (line 11) | function commonWork( function createWorkerControl (line 148) | function createWorkerControl(options: { function optimizationElementWithImage (line 187) | function optimizationElementWithImage(root: HTMLElement, clone_node: boo... function createUnVisibleTextOfImage (line 211) | function createUnVisibleTextOfImage(img: HTMLImageElement) { function simplifyWorkResult (line 220) | function simplifyWorkResult( function removeRedundantWords (line 262) | function removeRedundantWords(str: string, words: string[]) { FILE: packages/utils/src/common/script.builder.ts type MetaDataType (line 4) | type MetaDataType = string | string[]; type MetaDataFormatter (line 9) | interface MetaDataFormatter { type Metadata (line 20) | interface Metadata { type CreateOptions (line 42) | interface CreateOptions { constant DEFAULT_METADATA (line 52) | const DEFAULT_METADATA: Partial = { function createUserScriptMetadata (line 68) | function createUserScriptMetadata(formatter: MetaDataFormatter, metadata... function parseMetaDataRequires (line 93) | async function parseMetaDataRequires(require: Metadata['require'] = []) { function parseMetaDataResources (line 111) | async function parseMetaDataResources( function createUserScript (line 130) | async function createUserScript(opts: CreateOptions) { FILE: scripts/build-core.js function cleanOutput (line 19) | function cleanOutput() { function buildPackages (line 23) | async function buildPackages() { function createUserJs (line 34) | async function createUserJs() { FILE: scripts/utils.js function execOut (line 4) | function execOut(command, ...opts) {