MCPcopy Index your code
hub / github.com/callumalpass/tasknotes / initializeCoreServices

Function initializeCoreServices

src/bootstrap/pluginBootstrap.ts:93–159  ·  view source on GitHub ↗
(plugin: TaskNotesPlugin)

Source from the content-addressed store, hash-verified

91}
92
93export async function initializeCoreServices(plugin: TaskNotesPlugin): Promise<void> {
94 plugin.api = new TaskNotesAPI(plugin);
95
96 plugin.fieldMapper = new FieldMapper(
97 plugin.settings.fieldMapping,
98 plugin.settings.userFields ?? [],
99 plugin.settings.customStatuses,
100 plugin.settings.customPriorities
101 );
102 plugin.statusManager = new StatusManager(
103 plugin.settings.customStatuses,
104 plugin.settings.defaultTaskStatus
105 );
106 plugin.priorityManager = new PriorityManager(plugin.settings.customPriorities);
107
108 plugin.requestDeduplicator = new RequestDeduplicator();
109 plugin.predictivePrefetcher = new PredictivePrefetcher(plugin.requestDeduplicator);
110 plugin.domReconciler = new DOMReconciler();
111 plugin.uiStateManager = new UIStateManager();
112
113 plugin.cacheManager = new TaskManager(plugin.app, plugin.settings, plugin.fieldMapper);
114 plugin.emitter = plugin.cacheManager;
115 plugin.registerEvent(
116 plugin.emitter.on(EVENT_USER_NOTICE, (payload: UserNoticePayload) => {
117 showNotice(payload.message, payload.timeout);
118 })
119 );
120
121 plugin.dependencyCache = new DependencyCache(
122 plugin.app,
123 plugin.settings,
124 plugin.fieldMapper,
125 plugin.statusManager,
126 (frontmatter: unknown) => plugin.cacheManager.isTaskFile(frontmatter)
127 );
128 plugin.cacheManager.setDependencyCache(plugin.dependencyCache);
129
130 plugin.taskService = new TaskService(plugin);
131 plugin.filterService = new FilterService(
132 plugin.cacheManager,
133 plugin.statusManager,
134 plugin.priorityManager,
135 plugin
136 );
137 plugin.taskStatsService = new TaskStatsService(plugin.cacheManager, plugin.statusManager);
138 plugin.viewStateManager = new ViewStateManager(plugin.app, plugin);
139 plugin.projectSubtasksService = new ProjectSubtasksService(plugin);
140 plugin.expandedProjectsService = new ExpandedProjectsService(plugin);
141 plugin.autoArchiveService = new AutoArchiveService(plugin);
142
143 const { TaskSelectionService } = await import("../services/TaskSelectionService");
144 plugin.taskSelectionService = new TaskSelectionService(plugin);
145 plugin.dragDropManager = new DragDropManager(plugin);
146 plugin.statusBarService = new StatusBarService(plugin);
147 plugin.notificationService = new NotificationService(plugin);
148 plugin.viewPerformanceService = new ViewPerformanceService(plugin);
149
150 const { BasesFilterConverter } = await import("../services/BasesFilterConverter");

Callers 1

initializePluginRuntimeFunction · 0.90

Calls 5

showNoticeFunction · 0.90
isTaskFileMethod · 0.80
setDependencyCacheMethod · 0.80
onMethod · 0.65
setAutoArchiveServiceMethod · 0.45

Tested by

no test coverage detected