cry-search 2.0.2 → 2.1.0

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.
Files changed (40) hide show
  1. package/CLAUDE.md +8 -2
  2. package/README.md +53 -0
  3. package/UNIVERSE.md +12 -0
  4. package/dist/common/numeric/createSearchArrayMetadata.d.ts +10 -0
  5. package/dist/common/numeric/createSearchArrayMetadata.d.ts.map +1 -1
  6. package/dist/common/numeric/matchMany.d.ts +111 -0
  7. package/dist/common/numeric/matchMany.d.ts.map +1 -0
  8. package/dist/common/numeric/prepareQueryVariants.d.ts +24 -0
  9. package/dist/common/numeric/prepareQueryVariants.d.ts.map +1 -1
  10. package/dist/common/numeric/searchAndRank.d.ts.map +1 -1
  11. package/dist/common/numeric/searchInData.d.ts.map +1 -1
  12. package/dist/common/numeric/syncSearchArrayMetadata.d.ts.map +1 -1
  13. package/dist/common/numeric/updateSearchMetadata.d.ts.map +1 -1
  14. package/dist/index.cjs +316 -112
  15. package/dist/index.d.cts +6 -1
  16. package/dist/index.d.ts +6 -1
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +316 -112
  19. package/dist/types/index.d.ts +65 -0
  20. package/dist/types/index.d.ts.map +1 -1
  21. package/dist/utils/compareTokenized.d.ts +24 -0
  22. package/dist/utils/compareTokenized.d.ts.map +1 -0
  23. package/dist/vet/data/enote.d.ts +40 -0
  24. package/dist/vet/data/enote.d.ts.map +1 -0
  25. package/dist/vet/data/znamke.gen.d.ts +41 -0
  26. package/dist/vet/data/znamke.gen.d.ts.map +1 -0
  27. package/dist/vet/index.cjs +2468 -0
  28. package/dist/vet/index.d.cts +24 -0
  29. package/dist/vet/index.d.ts +24 -0
  30. package/dist/vet/index.d.ts.map +1 -0
  31. package/dist/vet/index.js +2426 -0
  32. package/dist/vet/normalizatorji.d.ts +104 -0
  33. package/dist/vet/normalizatorji.d.ts.map +1 -0
  34. package/dist/vet/ocena.d.ts +46 -0
  35. package/dist/vet/ocena.d.ts.map +1 -0
  36. package/dist/vet/spec.d.ts +35 -0
  37. package/dist/vet/spec.d.ts.map +1 -0
  38. package/dist/vet/uparjanje.d.ts +72 -0
  39. package/dist/vet/uparjanje.d.ts.map +1 -0
  40. package/package.json +29 -11
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Compares two strings by their tokenized forms and returns the Jaccard
3
+ * similarity of their token sets: a number between `0` (no tokens in common)
4
+ * and `1` (identical token sets). Order-independent and case/diacritics
5
+ * insensitive, because both sides go through the same search pipeline as the
6
+ * rest of the library (normalizeDates → preprocess → sanitise → tokenize with
7
+ * the default replacements/removals).
8
+ *
9
+ * Both empty strings are considered identical (`1`); an empty vs non-empty
10
+ * string yields `0`.
11
+ *
12
+ * @param a - First string to compare.
13
+ * @param b - Second string to compare.
14
+ * @returns Similarity ratio `0..1` (matching tokens / union of tokens).
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * compareTokenized('Janez Novak', 'novak janez'); // 1
19
+ * compareTokenized('Janes Novak', 'novak'); // 0.5
20
+ * compareTokenized('Janez Novak', 'ana'); // 0
21
+ * ```
22
+ */
23
+ export declare function compareTokenized(a: string, b: string): number;
24
+ //# sourceMappingURL=compareTokenized.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compareTokenized.d.ts","sourceRoot":"","sources":["../../src/utils/compareTokenized.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAc7D"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Sinonimi merskih enot in količinskih besed za veterino.
3
+ *
4
+ * Ročno vzdrževano (majhno in stabilno). Ključ je zapis, kot se pojavi v nazivih,
5
+ * vrednost je kanonična oblika, ki gre naprej v iskalni cevovod. Vrstni red ni
6
+ * pomemben, ker se uporablja kot mapa.
7
+ *
8
+ * Pravilo: kanonična enota je kratka in nespremenljiva (`tbl`, `kps`, `amp`, `ml`,
9
+ * `kg` …), da se `1TABL`, `1 tab`, `1 tableta` in `1 tabl` ujemajo med sabo.
10
+ */
11
+ export declare const ENOTE_SINONIMI: Record<string, string>;
12
+ /**
13
+ * Enote, ki veljajo LE v sestavljenem zapisu (cifra + enota), ne kot samostojna
14
+ * beseda: `250m` → `250 ml`, a `BALL M` ostane `M` (velikost, ne mililitri).
15
+ */
16
+ export declare const ENOTE_SESTAVLJENE: Record<string, string>;
17
+ /**
18
+ * VELIKOSTI (S/M/L/XL/XXL + besede) → RAZRED `velikost`, beseda se iz besedila
19
+ * odstrani. Razlog (izmerjeno): jedro črko `s` odstrani kot slovnično besedo, zato
20
+ * sta imela „… siva S“ in „… siva L“ ISTE žetone in je izbiro odločala abeceda.
21
+ */
22
+ export declare const VELIKOSTI_SINONIMI: Record<string, string>;
23
+ /**
24
+ * PES in MAČKA: zapis v nazivu → kanonična vrsta, ki postane RAZRED `vrsta`
25
+ * (beseda se iz besedila odstrani, ker je vrsta za ta dva močan razločevalnik).
26
+ */
27
+ export declare const VRSTE_SINONIMI: Record<string, string>;
28
+ /**
29
+ * LEMATIZACIJA ostalih živalskih vrst: vse oblike → IMENOVALNIK EDNINE
30
+ * (`race`, `raca` → `raca`; `konj`, `konja`, `konji` → `konj`).
31
+ *
32
+ * Te vrste ostanejo navadne BESEDE (ne razred): register jih sicer steka v en ključ
33
+ * (`perutnina`), zato bi razred izgubil razliko med „račjim“ in „prepeličjim“
34
+ * izdelkom. Normalizacija popravi le obliko besede, da se sklon in število ne
35
+ * štejeta kot razlika.
36
+ *
37
+ * Tabela je ročno vzdrževana (slovenska lematizacija živalskih samostalnikov).
38
+ */
39
+ export declare const VRSTE_NORMALIZACIJA: Record<string, string>;
40
+ //# sourceMappingURL=enote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enote.d.ts","sourceRoot":"","sources":["../../../src/vet/data/enote.ts"],"names":[],"mappings":"AACA;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA0EjD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAcpD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAoBrD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAwBjD,CAAC;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * GENERIRANO — ne urejaj ročno!
3
+ *
4
+ * Vir: panthenImport (/Users/primozk/devmt/panthenImport)
5
+ * - analysed/znamke-okrajsave.csv
6
+ * - analysed/znamke-dobavitelji.csv
7
+ * - src/znamke/dodatne-znamke.ts
8
+ * Ustvarjeno: 2026-10-04T14:12:11.296Z
9
+ * Vrstic: 76 okrajšav, 14 linij, 8 dobaviteljev, 2 oznak, 94 tipskih oznak.
10
+ *
11
+ * Regeneracija: `bun run gen:vet-data` (iz korena cry-search).
12
+ */
13
+ export interface OkrajsavaZnamke {
14
+ okrajsava: string;
15
+ znamka: string;
16
+ zaupanje: string;
17
+ pojavitve: number;
18
+ }
19
+ export interface LinijaZnamke {
20
+ linija: string;
21
+ znamka: string;
22
+ vir: string;
23
+ opomba?: string;
24
+ }
25
+ export declare const ZNAMKE_GEN: {
26
+ vir: string;
27
+ okrajsave: OkrajsavaZnamke[];
28
+ znamke: string[];
29
+ linije: LinijaZnamke[];
30
+ dobavitelji: {
31
+ zeton: string;
32
+ vir: string;
33
+ }[];
34
+ oznake: {
35
+ oznaka: string;
36
+ pomen: string;
37
+ }[];
38
+ /** Tipske oznake (PRIB, IGR, OVR …) — vratar jih pri kandidatu preskoči. */
39
+ tipskeOznake: string[];
40
+ };
41
+ //# sourceMappingURL=znamke.gen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"znamke.gen.d.ts","sourceRoot":"","sources":["../../../src/vet/data/znamke.gen.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,eAAe;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,UAAU,EAAE;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC9C,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC5C,4EAA4E;IAC5E,YAAY,EAAE,MAAM,EAAE,CAAC;CA2sBvB,CAAC"}