« get me outta code hell

hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/data/things/search.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/data/things/search.js')
-rw-r--r--src/data/things/search.js18
1 files changed, 14 insertions, 4 deletions
diff --git a/src/data/things/search.js b/src/data/things/search.js
index ad641c38..ed65cb6b 100644
--- a/src/data/things/search.js
+++ b/src/data/things/search.js
@@ -1,15 +1,20 @@
-#!/usr/bin/env node
-
 'use strict';
 
 import {writeFile} from 'node:fs/promises';
+import * as path from 'node:path';
 
 import FlexSearch from 'flexsearch';
 
 import {logError, logInfo, logWarn} from '#cli';
 import Thing from '#thing';
 
-export async function writeSearchIndex(searchIndexPath, wikiData) {
+export async function writeSearchIndex({
+  wikiCachePath,
+  wikiData,
+}) {
+  if (!wikiCachePath) {
+    throw new Error(`Expected wikiCachePath to write into`);
+  }
 
   // Basic flow is:
   // 1. Define schema for type
@@ -81,5 +86,10 @@ export async function writeSearchIndex(searchIndexPath, wikiData) {
         });
       }));
 
-  await writeFile(searchIndexPath, JSON.stringify(searchData));
+  const outputFile =
+    path.join(wikiCachePath, 'search-index.json');
+
+  await writeFile(outputFile, JSON.stringify(searchData));
+
+  logInfo`Search index successfully written.`;
 }