diff --git a/src/extension/contentscriptHelpers.ts b/src/extension/contentscriptHelpers.ts index a1c5743..a8890c3 100644 --- a/src/extension/contentscriptHelpers.ts +++ b/src/extension/contentscriptHelpers.ts @@ -77,7 +77,6 @@ export default function ( ): ContentscriptHelpers { const contentscriptController = new ContentscriptController(store, updateSidebar) const helpers: ContentscriptHelpers = { - // messageHandler: contentscriptController.messageHandler, devtoolSelectionChangedHandler: contentscriptController.devtoolSelectionChangedHandler, injectScript, recordStoreAddMessageHandler: contentscriptController.recordStoreAddMessageHandler, diff --git a/src/extension/private/ActionRecordStore.ts b/src/extension/private/ActionRecordStore.ts index 155bb6f..502630e 100644 --- a/src/extension/private/ActionRecordStore.ts +++ b/src/extension/private/ActionRecordStore.ts @@ -125,7 +125,6 @@ class ScriptParser { /* public */ public async findNode(loc: SourceLocation): Promise { - // @TODO: remove subset node of elected one // @NOTE: There is 1 offset of column between stacktrace and esprima // stacktrace counts column from 1, while esprima counts column from 0 return this.finder.find( diff --git a/src/tracker/private/ActionRecorder.ts b/src/tracker/private/ActionRecorder.ts index e4e3742..955849f 100644 --- a/src/tracker/private/ActionRecorder.ts +++ b/src/tracker/private/ActionRecorder.ts @@ -8,6 +8,10 @@ interface Recorder extends RecorderFunctioner, RecorderController { } +interface RecorderFunctioner { + record(action: keyof RecorderBrokers, data: ActionAddData): void; +} + interface RecorderController { isRecording(): boolean; startRecording(context: SourceLocation): void; @@ -29,10 +33,6 @@ interface Broker { process(data: ActionData): void; } -interface RecorderFunctioner { - record(action: keyof RecorderBrokers, data: ActionAddData): void; -} - class ActionRecorder implements Recorder { private brokers: { [role: string]: Broker } = {} diff --git a/src/tracker/trackers/jquery/index.ts b/src/tracker/trackers/jquery/index.ts index 43feaee..bd2ab12 100644 --- a/src/tracker/trackers/jquery/index.ts +++ b/src/tracker/trackers/jquery/index.ts @@ -3,7 +3,7 @@ import trackJqueryApis from './tracker' export default function () { ['jQuery', '$'].map((propOfJquery) => { let value = undefined - // noConflict issue: [http://api.jquery.com/jQuery.noconflict/] + // @NOTE: noConflict issue: [http://api.jquery.com/jQuery.noconflict/] Reflect.defineProperty(window, propOfJquery, { set: function (obj) { if (isJquery(obj) && !isTracked(obj)) { diff --git a/src/tracker/trackers/jquery/tracker.ts b/src/tracker/trackers/jquery/tracker.ts index a083ab1..a99bb36 100644 --- a/src/tracker/trackers/jquery/tracker.ts +++ b/src/tracker/trackers/jquery/tracker.ts @@ -99,7 +99,7 @@ function trackAnimationExitPoint() { function trackStop(stop) { // @NOTE: stop will trigger animation promise always handlers to do - // some operations, which are not out target + // some operations, which are not our target jquery.prototype.stop = packActionInNonTrackingContext(function (...args) { return stop.apply(this, args) }) @@ -123,12 +123,12 @@ function trackEventTriggers() { Reflect.defineProperty(jquery.event, 'triggered', { set: function (value) { if (value) { - // @NOTE: native trigger is about to begin, take out messages - // before trigger record process to give native trigger a right source + // @NOTE: native trigger is about to begin, restore ActionRecorder snapshot + // to make native trigger actions included in jQuery API ActionRecorder.restoreSnapshot() } else { - // @NOTE: native trigger is about to end, put back messages to - // continue trigger restore process + // @NOTE: native trigger is about to end, save ActionRecorder snapshot + // to start a new context for upcoming triggered actions ActionRecorder.saveSnapshot() } triggered = value @@ -138,9 +138,8 @@ function trackEventTriggers() { } }) } - + // @NOTE: all trigger methods, like click and mouseenter, are all based on trigger function trackEventTrigger(trigger) { - // @NOTE: all trigger methods, like click and mouseenter, are all based on trigger const isolatedTrigger = packActionInIsolatedContext(trigger) diff --git a/src/tracker/trackers/jquery/trackerHelpers.ts b/src/tracker/trackers/jquery/trackerHelpers.ts index 3b80303..ae4bac4 100644 --- a/src/tracker/trackers/jquery/trackerHelpers.ts +++ b/src/tracker/trackers/jquery/trackerHelpers.ts @@ -56,12 +56,7 @@ export function packAnimInGivenContextOnce( ) return new Proxy(animFunc, { apply: function (target, thisArg, argumentList) { - // @NOTE: when this function is called while queueing (MessageBroker is not empty), - // it should not send any ActionContextMessage const result = trackedAnimFunc.apply(thisArg, argumentList) - // const result = ActionRecorder.isRecording() - // ? target.apply(thisArg, argumentList) - // : packActionInGivenContext(target, context).apply(thisArg, argumentList) // @NOTE: reset animFunc and ignore already tracked actions (track only once) this.apply = packActionInNonTrackingContext(function (target, thisArg, argumentList) { return target.apply(thisArg, argumentList)