annosearch 0.2.8 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -44,6 +44,30 @@ After Quickwit finishes ingesting and indexing the data we can perform a search.
44
44
  },
45
45
  "type": "Annotation"
46
46
  }
47
+ ],
48
+ "annotations": [
49
+ {
50
+ "type": "AnnotationPage",
51
+ "items": [
52
+ {
53
+ "id": "https://iiif.io/api/cookbook/recipe/0266-full-canvas-annotation/canvas-1/annopage-2/anno-1/match-1",
54
+ "type": "Annotation",
55
+ "motivation": "highlighting",
56
+ "target": {
57
+ "type": "SpecificResource",
58
+ "source": "https://iiif.io/api/cookbook/recipe/0266-full-canvas-annotation/canvas-1/annopage-2/anno-1",
59
+ "selector": [
60
+ {
61
+ "type": "TextQuoteSelector",
62
+ "prefix": "...rktplatz mit Gänseliesel ",
63
+ "exact": "Brunnen",
64
+ "suffix": ""
65
+ }
66
+ ]
67
+ }
68
+ }
69
+ ]
70
+ }
47
71
  ]
48
72
  }
49
73
  ```
@@ -137,11 +161,6 @@ Configure AnnoSearch by setting the following environment variables:
137
161
 
138
162
  Adjust these values as needed to customize AnnoSearch’s configuration and behavior.
139
163
 
140
- ## Todo
141
-
142
- - Implement extended API responses
143
-
144
-
145
164
  ## License
146
165
 
147
166
  This project is licensed under the MIT License.
package/dist/delete.js CHANGED
@@ -14,12 +14,12 @@ const quickwit_1 = require("./quickwit");
14
14
  const errors_1 = require("./errors");
15
15
  const contentType = 'application/json';
16
16
  const quickwitClient = (0, quickwit_1.createClient)(contentType);
17
- function deleteIndexWorker(indexId) {
17
+ function deleteIndexWorker(indexId, type) {
18
18
  return __awaiter(this, void 0, void 0, function* () {
19
19
  if (!indexId.trim()) {
20
20
  throw new errors_1.AnnoSearchValidationError('Invalid index parameter');
21
21
  }
22
- const response = yield quickwitClient.delete(`indexes/${indexId}`);
22
+ const response = yield quickwitClient.delete(`indexes/${indexId}_${type}`);
23
23
  if (response.status === 200 && response.data) {
24
24
  //console.log(`Index ${indexId} successfully deleted`);
25
25
  }
@@ -30,8 +30,8 @@ function deleteIndexWorker(indexId) {
30
30
  }
31
31
  function deleteIndex(indexId) {
32
32
  return __awaiter(this, void 0, void 0, function* () {
33
- yield deleteIndexWorker(indexId + '_annotations');
34
- yield deleteIndexWorker(indexId + '_autocomplete');
33
+ yield deleteIndexWorker(indexId, 'annotations');
34
+ yield deleteIndexWorker(indexId, 'autocomplete');
35
35
  console.log(`Index ${indexId} successfully deleted`);
36
36
  });
37
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"delete.js","sourceRoot":"","sources":["../src/delete.ts"],"names":[],"mappings":";;;;;;;;;;;AAkBA,kCAIC;AAtBD,yCAA0C;AAC1C,qCAAqD;AAErD,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,cAAc,GAAG,IAAA,uBAAY,EAAC,WAAW,CAAC,CAAC;AAEjD,SAAe,iBAAiB,CAAC,OAAe;;QAC5C,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,kCAAyB,CAAC,yBAAyB,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,WAAW,OAAO,EAAE,CAAC,CAAC;QACnE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,uDAAuD;QAC3D,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,kCAAyB,CAAC,wBAAwB,CAAC,CAAC;QAClE,CAAC;IACL,CAAC;CAAA;AAED,SAAsB,WAAW,CAAC,OAAe;;QAC7C,MAAM,iBAAiB,CAAC,OAAO,GAAG,cAAc,CAAC,CAAC;QAClD,MAAM,iBAAiB,CAAC,OAAO,GAAG,eAAe,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,SAAS,OAAO,uBAAuB,CAAC,CAAC;IACzD,CAAC;CAAA"}
1
+ {"version":3,"file":"delete.js","sourceRoot":"","sources":["../src/delete.ts"],"names":[],"mappings":";;;;;;;;;;;AAkBA,kCAIC;AAtBD,yCAA0C;AAC1C,qCAAqD;AAErD,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,cAAc,GAAG,IAAA,uBAAY,EAAC,WAAW,CAAC,CAAC;AAEjD,SAAe,iBAAiB,CAAC,OAAe,EAAE,IAAY;;QAC1D,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,kCAAyB,CAAC,yBAAyB,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,WAAW,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC;QAC3E,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,uDAAuD;QAC3D,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,kCAAyB,CAAC,wBAAwB,CAAC,CAAC;QAClE,CAAC;IACL,CAAC;CAAA;AAED,SAAsB,WAAW,CAAC,OAAe;;QAC7C,MAAM,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAChD,MAAM,iBAAiB,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,SAAS,OAAO,uBAAuB,CAAC,CAAC;IACzD,CAAC;CAAA"}
@@ -0,0 +1,133 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ };
44
+ Object.defineProperty(exports, "__esModule", { value: true });
45
+ exports.highlightTerms = highlightTerms;
46
+ const fs_1 = require("fs");
47
+ const maniiifest_1 = require("maniiifest");
48
+ const path = __importStar(require("path"));
49
+ const utils_1 = require("./utils");
50
+ function readJsonFromFile(filePath) {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ try {
53
+ const absolutePath = path.resolve(filePath);
54
+ const data = yield fs_1.promises.readFile(absolutePath, 'utf-8');
55
+ return JSON.parse(data);
56
+ }
57
+ catch (error) {
58
+ console.error(`Error reading JSON from file: ${error}`);
59
+ throw error;
60
+ }
61
+ });
62
+ }
63
+ function createItem(id, term, prefix, suffix, counter) {
64
+ return {
65
+ "id": `${id}/match-${counter}`,
66
+ "type": "Annotation",
67
+ "motivation": "highlighting",
68
+ "target": {
69
+ "type": "SpecificResource",
70
+ "source": `${id}`,
71
+ "selector": [
72
+ {
73
+ "type": "TextQuoteSelector",
74
+ "prefix": prefix,
75
+ "exact": term,
76
+ "suffix": suffix
77
+ }
78
+ ]
79
+ }
80
+ };
81
+ }
82
+ function highlightTerms(annotation_page, query, snippetLength = 25) {
83
+ const terms = query.split(/\s+/).map(utils_1.normalizeTerm).filter(Boolean); // Split into terms, normalize, remove empty ones
84
+ const annotationPageParser = new maniiifest_1.Maniiifest(annotation_page, "AnnotationPage");
85
+ const annotations = annotationPageParser.iterateAnnotationPageAnnotation();
86
+ let matchCounter = 1;
87
+ let annotationItems = [];
88
+ for (const annotation of annotations) {
89
+ const annotationParser = new maniiifest_1.Maniiifest(annotation, "Annotation");
90
+ const bodyParser = annotationParser.iterateAnnotationTextualBody();
91
+ for (const body of bodyParser) {
92
+ const bodyValue = body.value;
93
+ if (bodyValue) {
94
+ for (const term of terms) { // Process each term separately
95
+ const regex = new RegExp(`\\b(${term})\\b`, "gi"); // Global + Case-Insensitive
96
+ let match;
97
+ while ((match = regex.exec(bodyValue)) !== null) { // Iterate all matches for the term
98
+ const exactMatch = match[0]; // Capture the exact match from the original text
99
+ let prefix = bodyValue.substring(Math.max(0, match.index - snippetLength), match.index);
100
+ let suffix = bodyValue.substring(match.index + exactMatch.length, Math.min(bodyValue.length, match.index + exactMatch.length + snippetLength));
101
+ // Add ellipses if the prefix or suffix is truncated
102
+ if (match.index - snippetLength > 0) {
103
+ prefix = '...' + prefix;
104
+ }
105
+ if (match.index + exactMatch.length + snippetLength < bodyValue.length) {
106
+ suffix = suffix + '...';
107
+ }
108
+ const item = createItem(annotation.id, exactMatch, prefix, suffix, matchCounter++);
109
+ annotationItems.push(item);
110
+ }
111
+ }
112
+ }
113
+ }
114
+ }
115
+ annotation_page.annotations = [];
116
+ annotation_page.annotations.push({
117
+ "type": "AnnotationPage",
118
+ "items": annotationItems
119
+ });
120
+ return annotation_page;
121
+ }
122
+ // Example usage with ts-node highlight.ts
123
+ // (async () => {
124
+ // const filePath = '../../maniiifest/test/samples/search.json';
125
+ // try {
126
+ // const jsonData = await readJsonFromFile(filePath);
127
+ // const res = highlightTerms(jsonData, 'london society');
128
+ // console.log(JSON.stringify(res, null, 2));
129
+ // } catch (error) {
130
+ // console.error('Failed to read JSON:', error);
131
+ // }
132
+ // })();
133
+ //# sourceMappingURL=highlight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"highlight.js","sourceRoot":"","sources":["../src/highlight.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ version: "0.8"
2
+
3
+ doc_mapping:
4
+ mode: dynamic
5
+ dynamic_mapping:
6
+ indexed: true
7
+ stored: true
8
+ tokenizer: default
9
+ record: position
10
+ expand_dots: true
11
+ fast: true
@@ -0,0 +1,10 @@
1
+ version: "0.8"
2
+
3
+ doc_mapping:
4
+ mode: dynamic
5
+ dynamic_mapping:
6
+ indexed: true
7
+ stored: true
8
+ tokenizer: default
9
+ record: basic
10
+ fast: true
@@ -8,4 +8,12 @@ doc_mapping:
8
8
  tokenizer: default
9
9
  record: position
10
10
  expand_dots: true
11
+ field_mappings:
12
+ - name: body
13
+ type: object
14
+ field_mappings:
15
+ - name: value
16
+ type: text
17
+ - name: created
18
+ type: datetime
11
19
  fast: true
package/dist/init.js CHANGED
@@ -30,14 +30,15 @@ function modifyConfig(config, indexId) {
30
30
  config.index_id = indexId;
31
31
  return yaml_1.default.stringify(config);
32
32
  }
33
- function initIndexWorker(indexId) {
33
+ function initIndexWorker(indexId, type) {
34
34
  return __awaiter(this, void 0, void 0, function* () {
35
35
  if (!indexId.trim()) {
36
36
  throw new errors_1.AnnoSearchValidationError('Invalid index parameter');
37
37
  }
38
- const filePath = path_1.default.resolve(__dirname, 'index-config.yaml');
38
+ const filePath = path_1.default.resolve(__dirname, `index-${type}-config.yaml`);
39
39
  const config = readYamlConfig(filePath);
40
- const modifiedYamlData = modifyConfig(config, indexId);
40
+ const modifiedYamlData = modifyConfig(config, indexId + '_' + type);
41
+ console.log(modifiedYamlData);
41
42
  const response = yield quickwitClient.post('indexes', modifiedYamlData);
42
43
  if (response.status === 200 && response.data) {
43
44
  //console.log(`Index ${indexId} created successfully`);
@@ -49,8 +50,8 @@ function initIndexWorker(indexId) {
49
50
  }
50
51
  function initIndex(indexId) {
51
52
  return __awaiter(this, void 0, void 0, function* () {
52
- yield initIndexWorker(indexId + '_annotations');
53
- yield initIndexWorker(indexId + '_autocomplete');
53
+ yield initIndexWorker(indexId, 'annotations');
54
+ yield initIndexWorker(indexId, 'autocomplete');
54
55
  console.log(`Index ${indexId} created successfully`);
55
56
  });
56
57
  }
package/dist/init.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAsCA,8BAIC;AA1CD,4CAAoB;AACpB,gDAAwB;AACxB,gDAAwB;AACxB,yCAA0C;AAC1C,qCAAqD;AAErD,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,cAAc,GAAG,IAAA,uBAAY,EAAC,WAAW,CAAC,CAAC;AAEjD,2CAA2C;AAC3C,SAAS,cAAc,CAAC,QAAgB;IACpC,MAAM,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,OAAO,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAChC,CAAC;AAED,kEAAkE;AAClE,SAAS,YAAY,CAAC,MAAW,EAAE,OAAe;IAC9C,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,OAAO,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAGD,SAAe,eAAe,CAAC,OAAe;;QAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,kCAAyB,CAAC,yBAAyB,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACxE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,uDAAuD;QAC3D,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,kCAAyB,CAAC,wBAAwB,CAAC,CAAC;QAClE,CAAC;IAEL,CAAC;CAAA;AAED,SAAsB,SAAS,CAAC,OAAe;;QAC3C,MAAM,eAAe,CAAC,OAAO,GAAG,cAAc,CAAC,CAAC;QAChD,MAAM,eAAe,CAAC,OAAO,GAAG,eAAe,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,SAAS,OAAO,uBAAuB,CAAC,CAAC;IACzD,CAAC;CAAA"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAuCA,8BAIC;AA3CD,4CAAoB;AACpB,gDAAwB;AACxB,gDAAwB;AACxB,yCAA0C;AAC1C,qCAAqD;AAErD,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,cAAc,GAAG,IAAA,uBAAY,EAAC,WAAW,CAAC,CAAC;AAEjD,2CAA2C;AAC3C,SAAS,cAAc,CAAC,QAAgB;IACpC,MAAM,QAAQ,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACnD,OAAO,cAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;AAChC,CAAC;AAED,kEAAkE;AAClE,SAAS,YAAY,CAAC,MAAW,EAAE,OAAe;IAC9C,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,OAAO,cAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAGD,SAAe,eAAe,CAAC,OAAe,EAAE,IAAY;;QACxD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,kCAAyB,CAAC,yBAAyB,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,IAAI,cAAc,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QACxC,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QACxE,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,uDAAuD;QAC3D,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,kCAAyB,CAAC,wBAAwB,CAAC,CAAC;QAClE,CAAC;IAEL,CAAC;CAAA;AAED,SAAsB,SAAS,CAAC,OAAe;;QAC3C,MAAM,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QAC9C,MAAM,eAAe,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,SAAS,OAAO,uBAAuB,CAAC,CAAC;IACzD,CAAC;CAAA"}
package/dist/search.js CHANGED
@@ -15,6 +15,7 @@ const quickwit_1 = require("./quickwit");
15
15
  const errors_1 = require("./errors");
16
16
  const iiif_1 = require("./iiif");
17
17
  const validate_1 = require("./validate");
18
+ const highlight_1 = require("./highlight");
18
19
  const contentType = 'application/json';
19
20
  const quickwitClient = (0, quickwit_1.createClient)(contentType);
20
21
  function buildDateQueryFromString(dateRangesString) {
@@ -67,7 +68,8 @@ function searchIndex(indexId, q, motivation, maxHits, page, searchUrl, date, use
67
68
  start_offset: startOffset,
68
69
  });
69
70
  if (response.status === 200 && response.data) {
70
- return (0, iiif_1.makeSearchResponse)(indexId, response.data, searchUrl, q, motivation, user, maxHits, page, date);
71
+ const result = (0, iiif_1.makeSearchResponse)(indexId, response.data, searchUrl, q, motivation, user, maxHits, page, date);
72
+ return (0, highlight_1.highlightTerms)(result, q);
71
73
  }
72
74
  else {
73
75
  throw new errors_1.AnnoSearchValidationError('Failed to search index');
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../src/search.ts"],"names":[],"mappings":";;;;;;;;;;;AA4CA,kCA4BC;AAMD,gDAcC;AA5FD,yCAA0C;AAC1C,qCAAqD;AACrD,iCAAsE;AACtE,yCAAyM;AACzM,2CAA6C;AAG7C,MAAM,WAAW,GAAG,kBAAkB,CAAC;AACvC,MAAM,cAAc,GAAG,IAAA,uBAAY,EAAC,WAAW,CAAC,CAAC;AAGjD,SAAS,wBAAwB,CAAC,gBAAwB;IACtD,8DAA8D;IAC9D,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAE/C,2DAA2D;IAC3D,OAAO,UAAU;SACZ,GAAG,CAAC,KAAK,CAAC,EAAE;QACT,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,IAAI,kCAAyB,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,YAAY,KAAK,OAAO,GAAG,GAAG,CAAC;IAC1C,CAAC,CAAC;SACD,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,wBAAwB,CAAC,UAAkB;IAChD,8DAA8D;IAC9D,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEpC,0DAA0D;IAC1D,OAAO,KAAK;SACP,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,IAAI,oBAAoB,IAAI,IAAI,CAAC;SAC1D,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAe;IAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,KAAK;SACP,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,IAAI,IAAI,CAAC;SACrC,IAAI,CAAC,OAAO,CAAC,CAAC;AACvB,CAAC;AAED,SAAsB,WAAW,CAAC,OAAe,EAAE,CAAS,EAAE,UAAkB,EAAE,OAAe,EAAE,IAAY,EAAE,SAAiB,EAAE,IAAY,EAAE,IAAY;;QAC1J,MAAM,WAAW,GAAG,IAAI,GAAG,OAAO,CAAC;QACnC,IAAA,uCAA4B,EAAC,CAAC,CAAC,CAAC;QAChC,IAAA,6BAAkB,EAAC,IAAI,CAAC,CAAC;QACzB,IAAA,0BAAe,EAAC,OAAO,CAAC,CAAC;QACzB,IAAA,6BAAkB,EAAC,IAAI,CAAC,CAAC;QACzB,IAAA,yBAAc,EAAC,WAAW,CAAC,CAAC;QAC5B,IAAA,6BAAkB,EAAC,UAAU,CAAC,CAAC;QAC/B,IAAA,uBAAY,EAAC,IAAI,CAAC,CAAC;QAEnB,MAAM,MAAM,GAAG,0BAA0B,CAAC,CAAC,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,UAAU,CAAC,CAAC,CAAC,oBAAoB,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,MAAM,SAAS,GAAG,GAAG,MAAM,GAAG,eAAe,GAAG,SAAS,GAAG,SAAS,EAAE,CAAC;QACxE,iDAAiD;QACjD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,cAAc,SAAS,EAAE;YAC7E,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,OAAO;YACjB,YAAY,EAAE,WAAW;SAC5B,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,MAAM,GAAG,IAAA,yBAAkB,EAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC/G,OAAO,IAAA,0BAAc,EAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACrC,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,kCAAyB,CAAC,wBAAwB,CAAC,CAAC;QAClE,CAAC;IACL,CAAC;CAAA;AAED,SAAS,gCAAgC,CAAC,OAAe;IACrD,OAAO,QAAQ,OAAO,GAAG,CAAA;AAC7B,CAAC;AAED,SAAsB,kBAAkB,CAAC,OAAe,EAAE,CAAS,EAAE,OAAe,EAAE,SAAiB,EAAE,aAAuB;;QAC5H,IAAA,6CAAkC,EAAC,CAAC,CAAC,CAAC;QACtC,IAAA,0BAAe,EAAC,OAAO,CAAC,CAAC;QACzB,MAAM,SAAS,GAAG,gCAAgC,CAAC,CAAC,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,eAAe,SAAS,EAAE;YAC9E,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,OAAO;SACpB,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,OAAO,IAAA,+BAAwB,EAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;QACzF,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,kCAAyB,CAAC,qCAAqC,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;CAAA"}
package/dist/utils.js CHANGED
@@ -116,10 +116,14 @@ function createJsonl(data) {
116
116
  return JSON.stringify(data) + '\n';
117
117
  }
118
118
  }
119
+ /**
120
+ * Normalize a term by trimming whitespace, converting to lowercase,
121
+ * and removing non-alphanumeric characters from the start and end.
122
+ */
119
123
  function normalizeTerm(term) {
120
124
  return term
121
125
  .trim()
122
126
  .toLowerCase()
123
- .replace(/[^\p{L}\p{N}'\-.]/gu, ""); // Retain letters, numbers, apostrophes, hyphens, periods
127
+ .replace(/^[^\p{L}\p{N}]+|[^\p{L}\p{N}]+$/gu, "");
124
128
  }
125
129
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "annosearch",
3
- "version": "0.2.8",
3
+ "version": "0.2.9",
4
4
  "main": "dist/index.js",
5
5
  "files": [
6
6
  "dist/**/*"
@@ -34,7 +34,7 @@
34
34
  "axios": "^1.7.9",
35
35
  "express": "^4.21.2",
36
36
  "jest": "^29.7.0",
37
- "maniiifest": "^1.3.4",
37
+ "maniiifest": "^1.3.8",
38
38
  "nock": "^13.5.6",
39
39
  "pino": "^9.5.0",
40
40
  "pino-http": "^10.3.0",