cry-vetzdravila 1.0.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.
- package/.claude/settings.local.json +17 -0
- package/CLAUDE.md +82 -0
- package/LICENSE.md +16 -0
- package/README.md +376 -0
- package/a.txt +1643 -0
- package/bun.lock +197 -0
- package/dist/atcvet/opisATCvetKode.d.ts +23 -0
- package/dist/atcvet/podatkiATCvetKode.d.ts +20 -0
- package/dist/atcvet/pomeniNivojevATCvet.d.ts +1 -0
- package/dist/atcvet/types/AtcvetFile.d.ts +19 -0
- package/dist/generated/AtcVet.d.ts +9 -0
- package/dist/generated/RegisterZdravil.d.ts +8 -0
- package/dist/generated/seznamZdravil.d.ts +8 -0
- package/dist/index.d.ts +244 -0
- package/dist/index.js +141786 -0
- package/dist/register/MIN_OCENA_PODOBNOSTI.d.ts +2 -0
- package/dist/register/helper/normalizirajNaziv.d.ts +176 -0
- package/dist/register/helper/oblikujRezultatIskanja.d.ts +8 -0
- package/dist/register/helper/oceniPodobnost.d.ts +37 -0
- package/dist/register/helper/poisciZivalskoVrsto.d.ts +33 -0
- package/dist/register/helper/razcleniNaziv.d.ts +2 -0
- package/dist/register/podobnaZdravilaPoATC.d.ts +16 -0
- package/dist/register/podobnaZdravilaPoUcinkovinah.d.ts +18 -0
- package/dist/register/registerZdravil.d.ts +9 -0
- package/dist/register/types/KarencaZdravila.d.ts +24 -0
- package/dist/register/types/PotUporabeZdravila.d.ts +21 -0
- package/dist/register/types/RazclembaZdravila.d.ts +9 -0
- package/dist/register/types/RegisterZdravil.d.ts +2 -0
- package/dist/register/types/UcinkovinaZdravila.d.ts +20 -0
- package/dist/register/types/Zdravilo.d.ts +65 -0
- package/dist/register/types/ZdraviloZUtemeljitvijo.d.ts +9 -0
- package/dist/register/types/ZivalskeVrste.d.ts +158 -0
- package/dist/register/uganiZdravilo.d.ts +43 -0
- package/dist/register/zdravilaZaAtcVetKodo.d.ts +8 -0
- package/dist/register/zdraviloJeVakcinaZa.d.ts +18 -0
- package/docs/vakcine.md +195 -0
- package/package.json +39 -0
- package/src/atcvet/CLAUDE.md +18 -0
- package/src/atcvet/downloadLatestAtcvetPdf.ts +107 -0
- package/src/atcvet/opisATCvetKode.ts +116 -0
- package/src/atcvet/parseAtcvetPdf.ts +215 -0
- package/src/atcvet/podatkiATCvetKode.ts +34 -0
- package/src/atcvet/pomeniNivojevATCvet.ts +8 -0
- package/src/atcvet/types/AtcvetFile.ts +22 -0
- package/src/generate.ts +111 -0
- package/src/generated/AtcVet.ts +56704 -0
- package/src/generated/seznamZdravil.ts +44833 -0
- package/src/importParseAndBuildAll.ts +97 -0
- package/src/index.ts +289 -0
- package/src/interactive.ts +428 -0
- package/src/register/CLAUDE.md +230 -0
- package/src/register/MIN_OCENA_PODOBNOSTI.ts +3 -0
- package/src/register/downloadRegister.ts +148 -0
- package/src/register/helper/analizaVakcin.ts +90 -0
- package/src/register/helper/checkVrste.ts +72 -0
- package/src/register/helper/hashString.ts +27 -0
- package/src/register/helper/normalizirajNaziv.ts +493 -0
- package/src/register/helper/oblikujRezultatIskanja.ts +15 -0
- package/src/register/helper/oceniPodobnost.ts +194 -0
- package/src/register/helper/poisciZivalskoVrsto.ts +100 -0
- package/src/register/helper/razcleniNaziv.ts +105 -0
- package/src/register/helper/testNormalizacije.ts +89 -0
- package/src/register/helper/testPodobnosti.ts +238 -0
- package/src/register/helper/testVakcin.ts +103 -0
- package/src/register/parseRegister.ts +464 -0
- package/src/register/podobnaZdravilaPoATC.ts +71 -0
- package/src/register/podobnaZdravilaPoUcinkovinah.ts +136 -0
- package/src/register/registerZdravil.ts +22 -0
- package/src/register/stats.ts +114 -0
- package/src/register/types/KarencaZdravila.ts +26 -0
- package/src/register/types/PotUporabeZdravila.ts +21 -0
- package/src/register/types/RazclembaZdravila.ts +10 -0
- package/src/register/types/RegisterRaw.ts +23 -0
- package/src/register/types/RegisterZdravil.ts +3 -0
- package/src/register/types/UcinkovinaZdravila.ts +21 -0
- package/src/register/types/Zdravilo.ts +84 -0
- package/src/register/types/ZdraviloZUtemeljitvijo.ts +11 -0
- package/src/register/types/ZivalskeVrste.ts +7 -0
- package/src/register/uganiZdravilo.ts +142 -0
- package/src/register/zdravilaZaAtcVetKodo.ts +28 -0
- package/src/register/zdraviloJeVakcinaZa.ts +202 -0
- package/src/test/testPodobnosti.test.ts +126 -0
- package/src/test/zdravila.json +38693 -0
- package/tsconfig.json +18 -0
package/bun.lock
ADDED
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
{
|
|
2
|
+
"lockfileVersion": 1,
|
|
3
|
+
"workspaces": {
|
|
4
|
+
"": {
|
|
5
|
+
"name": "cry-vetzdravila",
|
|
6
|
+
"dependencies": {
|
|
7
|
+
"cry-klikvet-logic": "^1.0.458",
|
|
8
|
+
"cry-pmz": "^1.1.8",
|
|
9
|
+
"pdfjs-dist": "^5.4.530",
|
|
10
|
+
"xlsx": "^0.18.5",
|
|
11
|
+
},
|
|
12
|
+
"devDependencies": {
|
|
13
|
+
"@types/bun": "latest",
|
|
14
|
+
"typescript": "^5.0.0",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
"packages": {
|
|
19
|
+
"@mongodb-js/saslprep": ["@mongodb-js/saslprep@1.4.4", "", { "dependencies": { "sparse-bitfield": "^3.0.3" } }, "sha512-p7X/ytJDIdwUfFL/CLOhKgdfJe1Fa8uw9seJYvdOmnP9JBWGWHW69HkOixXS6Wy9yvGf1MbhcS6lVmrhy4jm2g=="],
|
|
20
|
+
|
|
21
|
+
"@napi-rs/canvas": ["@napi-rs/canvas@0.1.88", "", { "optionalDependencies": { "@napi-rs/canvas-darwin-arm64": "0.1.88" } }, "sha512-/p08f93LEbsL5mDZFQ3DBxcPv/I4QG9EDYRRq1WNlCOXVfAHBTHMSVMwxlqG/AtnSfUr9+vgfN7MKiyDo0+Weg=="],
|
|
22
|
+
|
|
23
|
+
"@napi-rs/canvas-darwin-arm64": ["@napi-rs/canvas-darwin-arm64@0.1.88", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Xgywz0dDxOKSgx3eZnK85WgGMmGrQEW7ZLA/E7raZdlEE+xXCozobgqz2ZvYigpB6DJFYkqnwHjqCOTSDGlFdg=="],
|
|
24
|
+
|
|
25
|
+
"@types/bcrypt": ["@types/bcrypt@6.0.0", "", { "dependencies": { "@types/node": "*" } }, "sha512-/oJGukuH3D2+D+3H4JWLaAsJ/ji86dhRidzZ/Od7H/i8g+aCmvkeCc6Ni/f9uxGLSQVCRZkX2/lqEFG2BvWtlQ=="],
|
|
26
|
+
|
|
27
|
+
"@types/bun": ["@types/bun@1.3.5", "", { "dependencies": { "bun-types": "1.3.5" } }, "sha512-RnygCqNrd3srIPEWBd5LFeUYG7plCoH2Yw9WaZGyNmdTEei+gWaHqydbaIRkIkcbXwhBT94q78QljxN0Sk838w=="],
|
|
28
|
+
|
|
29
|
+
"@types/chai": ["@types/chai@5.2.3", "", { "dependencies": { "@types/deep-eql": "*", "assertion-error": "^2.0.1" } }, "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA=="],
|
|
30
|
+
|
|
31
|
+
"@types/deep-eql": ["@types/deep-eql@4.0.2", "", {}, "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw=="],
|
|
32
|
+
|
|
33
|
+
"@types/lodash": ["@types/lodash@4.17.21", "", {}, "sha512-FOvQ0YPD5NOfPgMzJihoT+Za5pdkDJWcbpuj1DjaKZIr/gxodQjY/uWEFlTNqW2ugXHUiL8lRQgw63dzKHZdeQ=="],
|
|
34
|
+
|
|
35
|
+
"@types/lodash.clonedeep": ["@types/lodash.clonedeep@4.5.9", "", { "dependencies": { "@types/lodash": "*" } }, "sha512-19429mWC+FyaAhOLzsS8kZUsI+/GmBAQ0HFiCPsKGU+7pBXOQWhyrY6xNNDwUSX8SMZMJvuFVMF9O5dQOlQK9Q=="],
|
|
36
|
+
|
|
37
|
+
"@types/mocha": ["@types/mocha@10.0.10", "", {}, "sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q=="],
|
|
38
|
+
|
|
39
|
+
"@types/node": ["@types/node@25.0.3", "", { "dependencies": { "undici-types": "~7.16.0" } }, "sha512-W609buLVRVmeW693xKfzHeIV6nJGGz98uCPfeXI1ELMLXVeKYZ9m15fAMSaUPBHYLGFsVRcMmSCksQOrZV9BYA=="],
|
|
40
|
+
|
|
41
|
+
"@types/webidl-conversions": ["@types/webidl-conversions@7.0.3", "", {}, "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA=="],
|
|
42
|
+
|
|
43
|
+
"@types/whatwg-url": ["@types/whatwg-url@13.0.0", "", { "dependencies": { "@types/webidl-conversions": "*" } }, "sha512-N8WXpbE6Wgri7KUSvrmQcqrMllKZ9uxkYWMt+mCSGwNc0Hsw9VQTW7ApqI4XNrx6/SaM2QQJCzMPDEXE058s+Q=="],
|
|
44
|
+
|
|
45
|
+
"adler-32": ["adler-32@1.3.1", "", {}, "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A=="],
|
|
46
|
+
|
|
47
|
+
"assert": ["assert@2.1.0", "", { "dependencies": { "call-bind": "^1.0.2", "is-nan": "^1.3.2", "object-is": "^1.1.5", "object.assign": "^4.1.4", "util": "^0.12.5" } }, "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw=="],
|
|
48
|
+
|
|
49
|
+
"assertion-error": ["assertion-error@2.0.1", "", {}, "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA=="],
|
|
50
|
+
|
|
51
|
+
"available-typed-arrays": ["available-typed-arrays@1.0.7", "", { "dependencies": { "possible-typed-array-names": "^1.0.0" } }, "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ=="],
|
|
52
|
+
|
|
53
|
+
"bcrypt": ["bcrypt@6.0.0", "", { "dependencies": { "node-addon-api": "^8.3.0", "node-gyp-build": "^4.8.4" } }, "sha512-cU8v/EGSrnH+HnxV2z0J7/blxH8gq7Xh2JFT6Aroax7UohdmiJJlxApMxtKfuI7z68NvvVcmR78k2LbT6efhRg=="],
|
|
54
|
+
|
|
55
|
+
"bson": ["bson@6.10.4", "", {}, "sha512-WIsKqkSC0ABoBJuT1LEX+2HEvNmNKKgnTAyd0fL8qzK4SH2i9NXg+t08YtdZp/V9IZ33cxe3iV4yM0qg8lMQng=="],
|
|
56
|
+
|
|
57
|
+
"bun-types": ["bun-types@1.3.5", "", { "dependencies": { "@types/node": "*" } }, "sha512-inmAYe2PFLs0SUbFOWSVD24sg1jFlMPxOjOSSCYqUgn4Hsc3rDc7dFvfVYjFPNHtov6kgUeulV4SxbuIV/stPw=="],
|
|
58
|
+
|
|
59
|
+
"call-bind": ["call-bind@1.0.8", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", "get-intrinsic": "^1.2.4", "set-function-length": "^1.2.2" } }, "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww=="],
|
|
60
|
+
|
|
61
|
+
"call-bind-apply-helpers": ["call-bind-apply-helpers@1.0.2", "", { "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2" } }, "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ=="],
|
|
62
|
+
|
|
63
|
+
"call-bound": ["call-bound@1.0.4", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.2", "get-intrinsic": "^1.3.0" } }, "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg=="],
|
|
64
|
+
|
|
65
|
+
"cfb": ["cfb@1.2.2", "", { "dependencies": { "adler-32": "~1.3.0", "crc-32": "~1.2.0" } }, "sha512-KfdUZsSOw19/ObEWasvBP/Ac4reZvAGauZhs6S/gqNhXhI7cKwvlH7ulj+dOEYnca4bm4SGo8C1bTAQvnTjgQA=="],
|
|
66
|
+
|
|
67
|
+
"codepage": ["codepage@1.15.0", "", {}, "sha512-3g6NUTPd/YtuuGrhMnOMRjFc+LJw/bnMp3+0r/Wcz3IXUuCosKRJvMphm5+Q+bvTVGcJJuRvVLuYba+WojaFaA=="],
|
|
68
|
+
|
|
69
|
+
"crc-32": ["crc-32@1.2.2", "", { "bin": { "crc32": "bin/crc32.njs" } }, "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ=="],
|
|
70
|
+
|
|
71
|
+
"cry-dateranges": ["cry-dateranges@2.1.33", "", { "dependencies": { "dayjs": "^1.11.11" } }, "sha512-PcaRPL2sxlSs8wFHkE49nxuf6RzZYvsCfmVWL7cPqpmai1BuOY0R1MFz56pdrLLDwPFhNhLGSUZfInqPHlq3vQ=="],
|
|
72
|
+
|
|
73
|
+
"cry-db": ["cry-db@2.3.1", "", { "dependencies": { "@types/bcrypt": "^6.0.0", "bcrypt": "^6.0.0", "cry-helpers": "^2.1.177", "dotenv": "^17.2.3", "lodash": "^4.17.21", "lodash.clonedeep": "^4.5.0", "mongodb": "^7.0.0", "tiny-typed-emitter": "^2.1.0" } }, "sha512-UVrtJdCTQ7igO8aLWDM3M8Zpy+Rtn5H9ZCeUVsCF516B4i5o8uLFHdhO+difgWBeMo2ERRx6rgOJJFiHwnButA=="],
|
|
74
|
+
|
|
75
|
+
"cry-helpers": ["cry-helpers@2.1.179", "", { "dependencies": { "@types/chai": "^5.2.3", "@types/mocha": "^10.0.10", "assert": "^2.1.0", "dayjs": "^1.11.19", "lodash.clonedeep": "^4.5.0" } }, "sha512-5Om6XhMPSPmA6YvnwxXn/3hZRtz4Y0jvORzPM9nWdo6BpBrZPNlnhMsp+Of0sfKT9P3nO5ffh35IICP1fkrxIQ=="],
|
|
76
|
+
|
|
77
|
+
"cry-klikvet-logic": ["cry-klikvet-logic@1.0.458", "", { "dependencies": { "@types/chai": "^5.2.3", "@types/lodash.clonedeep": "^4.5.9", "@types/mocha": "^10.0.10", "bson": "^6.10.4", "cry-dateranges": "^2.1.30", "cry-db": "^2.3.1", "cry-helpers": "^2.1.177", "cry-local-query": "^1.0.12", "cry-pmz": "^1.1.8", "lodash.clonedeep": "^4.5.0" } }, "sha512-G+irm5Ky2ABln/Kg7YHotlmPCjxsNLzRH4Eec2sM0jAZsRQq9k9gqU5nBZ6euZRrAec1/9rS6FV8Fx93IL+9yg=="],
|
|
78
|
+
|
|
79
|
+
"cry-local-query": ["cry-local-query@1.0.12", "", { "dependencies": { "ejson": "^2.2.2", "lodash": "^4.17.21" } }, "sha512-N2azR/rv39gU9UBxbqUn9snTCoEp0R64FQo3Hvr47MFiIzhfIO85keYxaMbJZksIVs0jiyrNNgBtjo9Mxi3ggQ=="],
|
|
80
|
+
|
|
81
|
+
"cry-pmz": ["cry-pmz@1.1.8", "", {}, "sha512-Ke2uogRTe4XdWCEFDTljYefbmaPusveHg1HnrBx6wtvNWk0xJmBSSo6gtevhegY5Z24R0GWkeHn6kMSRWutccA=="],
|
|
82
|
+
|
|
83
|
+
"dayjs": ["dayjs@1.11.19", "", {}, "sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw=="],
|
|
84
|
+
|
|
85
|
+
"define-data-property": ["define-data-property@1.1.4", "", { "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", "gopd": "^1.0.1" } }, "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A=="],
|
|
86
|
+
|
|
87
|
+
"define-properties": ["define-properties@1.2.1", "", { "dependencies": { "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" } }, "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg=="],
|
|
88
|
+
|
|
89
|
+
"dotenv": ["dotenv@17.2.3", "", {}, "sha512-JVUnt+DUIzu87TABbhPmNfVdBDt18BLOWjMUFJMSi/Qqg7NTYtabbvSNJGOJ7afbRuv9D/lngizHtP7QyLQ+9w=="],
|
|
90
|
+
|
|
91
|
+
"dunder-proto": ["dunder-proto@1.0.1", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.1", "es-errors": "^1.3.0", "gopd": "^1.2.0" } }, "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A=="],
|
|
92
|
+
|
|
93
|
+
"ejson": ["ejson@2.2.3", "", {}, "sha512-hsFvJp6OpGxFRQfBR3PSxFpaPALdHDY+SB3TRbMpLWNhvu8GzLiZutof5+/DFd2QekZo3KyXau75ngdJqQUSrw=="],
|
|
94
|
+
|
|
95
|
+
"es-define-property": ["es-define-property@1.0.1", "", {}, "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g=="],
|
|
96
|
+
|
|
97
|
+
"es-errors": ["es-errors@1.3.0", "", {}, "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="],
|
|
98
|
+
|
|
99
|
+
"es-object-atoms": ["es-object-atoms@1.1.1", "", { "dependencies": { "es-errors": "^1.3.0" } }, "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA=="],
|
|
100
|
+
|
|
101
|
+
"for-each": ["for-each@0.3.5", "", { "dependencies": { "is-callable": "^1.2.7" } }, "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg=="],
|
|
102
|
+
|
|
103
|
+
"frac": ["frac@1.1.2", "", {}, "sha512-w/XBfkibaTl3YDqASwfDUqkna4Z2p9cFSr1aHDt0WoMTECnRfBOv2WArlZILlqgWlmdIlALXGpM2AOhEk5W3IA=="],
|
|
104
|
+
|
|
105
|
+
"function-bind": ["function-bind@1.1.2", "", {}, "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="],
|
|
106
|
+
|
|
107
|
+
"generator-function": ["generator-function@2.0.1", "", {}, "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g=="],
|
|
108
|
+
|
|
109
|
+
"get-intrinsic": ["get-intrinsic@1.3.0", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", "es-errors": "^1.3.0", "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", "get-proto": "^1.0.1", "gopd": "^1.2.0", "has-symbols": "^1.1.0", "hasown": "^2.0.2", "math-intrinsics": "^1.1.0" } }, "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ=="],
|
|
110
|
+
|
|
111
|
+
"get-proto": ["get-proto@1.0.1", "", { "dependencies": { "dunder-proto": "^1.0.1", "es-object-atoms": "^1.0.0" } }, "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g=="],
|
|
112
|
+
|
|
113
|
+
"gopd": ["gopd@1.2.0", "", {}, "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg=="],
|
|
114
|
+
|
|
115
|
+
"has-property-descriptors": ["has-property-descriptors@1.0.2", "", { "dependencies": { "es-define-property": "^1.0.0" } }, "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg=="],
|
|
116
|
+
|
|
117
|
+
"has-symbols": ["has-symbols@1.1.0", "", {}, "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="],
|
|
118
|
+
|
|
119
|
+
"has-tostringtag": ["has-tostringtag@1.0.2", "", { "dependencies": { "has-symbols": "^1.0.3" } }, "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw=="],
|
|
120
|
+
|
|
121
|
+
"hasown": ["hasown@2.0.2", "", { "dependencies": { "function-bind": "^1.1.2" } }, "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ=="],
|
|
122
|
+
|
|
123
|
+
"inherits": ["inherits@2.0.4", "", {}, "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="],
|
|
124
|
+
|
|
125
|
+
"is-arguments": ["is-arguments@1.2.0", "", { "dependencies": { "call-bound": "^1.0.2", "has-tostringtag": "^1.0.2" } }, "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA=="],
|
|
126
|
+
|
|
127
|
+
"is-callable": ["is-callable@1.2.7", "", {}, "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA=="],
|
|
128
|
+
|
|
129
|
+
"is-generator-function": ["is-generator-function@1.1.2", "", { "dependencies": { "call-bound": "^1.0.4", "generator-function": "^2.0.0", "get-proto": "^1.0.1", "has-tostringtag": "^1.0.2", "safe-regex-test": "^1.1.0" } }, "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA=="],
|
|
130
|
+
|
|
131
|
+
"is-nan": ["is-nan@1.3.2", "", { "dependencies": { "call-bind": "^1.0.0", "define-properties": "^1.1.3" } }, "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w=="],
|
|
132
|
+
|
|
133
|
+
"is-regex": ["is-regex@1.2.1", "", { "dependencies": { "call-bound": "^1.0.2", "gopd": "^1.2.0", "has-tostringtag": "^1.0.2", "hasown": "^2.0.2" } }, "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g=="],
|
|
134
|
+
|
|
135
|
+
"is-typed-array": ["is-typed-array@1.1.15", "", { "dependencies": { "which-typed-array": "^1.1.16" } }, "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ=="],
|
|
136
|
+
|
|
137
|
+
"lodash": ["lodash@4.17.21", "", {}, "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="],
|
|
138
|
+
|
|
139
|
+
"lodash.clonedeep": ["lodash.clonedeep@4.5.0", "", {}, "sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ=="],
|
|
140
|
+
|
|
141
|
+
"math-intrinsics": ["math-intrinsics@1.1.0", "", {}, "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="],
|
|
142
|
+
|
|
143
|
+
"memory-pager": ["memory-pager@1.5.0", "", {}, "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg=="],
|
|
144
|
+
|
|
145
|
+
"mongodb": ["mongodb@7.0.0", "", { "dependencies": { "@mongodb-js/saslprep": "^1.3.0", "bson": "^7.0.0", "mongodb-connection-string-url": "^7.0.0" }, "peerDependencies": { "@aws-sdk/credential-providers": "^3.806.0", "@mongodb-js/zstd": "^7.0.0", "gcp-metadata": "^7.0.1", "kerberos": "^7.0.0", "mongodb-client-encryption": ">=7.0.0 <7.1.0", "snappy": "^7.3.2", "socks": "^2.8.6" }, "optionalPeers": ["@aws-sdk/credential-providers", "@mongodb-js/zstd", "gcp-metadata", "kerberos", "mongodb-client-encryption", "snappy", "socks"] }, "sha512-vG/A5cQrvGGvZm2mTnCSz1LUcbOPl83hfB6bxULKQ8oFZauyox/2xbZOoGNl+64m8VBrETkdGCDBdOsCr3F3jg=="],
|
|
146
|
+
|
|
147
|
+
"mongodb-connection-string-url": ["mongodb-connection-string-url@7.0.0", "", { "dependencies": { "@types/whatwg-url": "^13.0.0", "whatwg-url": "^14.1.0" } }, "sha512-irhhjRVLE20hbkRl4zpAYLnDMM+zIZnp0IDB9akAFFUZp/3XdOfwwddc7y6cNvF2WCEtfTYRwYbIfYa2kVY0og=="],
|
|
148
|
+
|
|
149
|
+
"node-addon-api": ["node-addon-api@8.5.0", "", {}, "sha512-/bRZty2mXUIFY/xU5HLvveNHlswNJej+RnxBjOMkidWfwZzgTbPG1E3K5TOxRLOR+5hX7bSofy8yf1hZevMS8A=="],
|
|
150
|
+
|
|
151
|
+
"node-gyp-build": ["node-gyp-build@4.8.4", "", { "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", "node-gyp-build-test": "build-test.js" } }, "sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ=="],
|
|
152
|
+
|
|
153
|
+
"object-is": ["object-is@1.1.6", "", { "dependencies": { "call-bind": "^1.0.7", "define-properties": "^1.2.1" } }, "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q=="],
|
|
154
|
+
|
|
155
|
+
"object-keys": ["object-keys@1.1.1", "", {}, "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA=="],
|
|
156
|
+
|
|
157
|
+
"object.assign": ["object.assign@4.1.7", "", { "dependencies": { "call-bind": "^1.0.8", "call-bound": "^1.0.3", "define-properties": "^1.2.1", "es-object-atoms": "^1.0.0", "has-symbols": "^1.1.0", "object-keys": "^1.1.1" } }, "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw=="],
|
|
158
|
+
|
|
159
|
+
"pdfjs-dist": ["pdfjs-dist@5.4.530", "", { "optionalDependencies": { "@napi-rs/canvas": "^0.1.84" } }, "sha512-r1hWsSIGGmyYUAHR26zSXkxYWLXLMd6AwqcaFYG9YUZ0GBf5GvcjJSeo512tabM4GYFhxhl5pMCmPr7Q72Rq2Q=="],
|
|
160
|
+
|
|
161
|
+
"possible-typed-array-names": ["possible-typed-array-names@1.1.0", "", {}, "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg=="],
|
|
162
|
+
|
|
163
|
+
"punycode": ["punycode@2.3.1", "", {}, "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="],
|
|
164
|
+
|
|
165
|
+
"safe-regex-test": ["safe-regex-test@1.1.0", "", { "dependencies": { "call-bound": "^1.0.2", "es-errors": "^1.3.0", "is-regex": "^1.2.1" } }, "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw=="],
|
|
166
|
+
|
|
167
|
+
"set-function-length": ["set-function-length@1.2.2", "", { "dependencies": { "define-data-property": "^1.1.4", "es-errors": "^1.3.0", "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", "gopd": "^1.0.1", "has-property-descriptors": "^1.0.2" } }, "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg=="],
|
|
168
|
+
|
|
169
|
+
"sparse-bitfield": ["sparse-bitfield@3.0.3", "", { "dependencies": { "memory-pager": "^1.0.2" } }, "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ=="],
|
|
170
|
+
|
|
171
|
+
"ssf": ["ssf@0.11.2", "", { "dependencies": { "frac": "~1.1.2" } }, "sha512-+idbmIXoYET47hH+d7dfm2epdOMUDjqcB4648sTZ+t2JwoyBFL/insLfB/racrDmsKB3diwsDA696pZMieAC5g=="],
|
|
172
|
+
|
|
173
|
+
"tiny-typed-emitter": ["tiny-typed-emitter@2.1.0", "", {}, "sha512-qVtvMxeXbVej0cQWKqVSSAHmKZEHAvxdF8HEUBFWts8h+xEo5m/lEiPakuyZ3BnCBjOD8i24kzNOiOLLgsSxhA=="],
|
|
174
|
+
|
|
175
|
+
"tr46": ["tr46@5.1.1", "", { "dependencies": { "punycode": "^2.3.1" } }, "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw=="],
|
|
176
|
+
|
|
177
|
+
"typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="],
|
|
178
|
+
|
|
179
|
+
"undici-types": ["undici-types@7.16.0", "", {}, "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw=="],
|
|
180
|
+
|
|
181
|
+
"util": ["util@0.12.5", "", { "dependencies": { "inherits": "^2.0.3", "is-arguments": "^1.0.4", "is-generator-function": "^1.0.7", "is-typed-array": "^1.1.3", "which-typed-array": "^1.1.2" } }, "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA=="],
|
|
182
|
+
|
|
183
|
+
"webidl-conversions": ["webidl-conversions@7.0.0", "", {}, "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g=="],
|
|
184
|
+
|
|
185
|
+
"whatwg-url": ["whatwg-url@14.2.0", "", { "dependencies": { "tr46": "^5.1.0", "webidl-conversions": "^7.0.0" } }, "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw=="],
|
|
186
|
+
|
|
187
|
+
"which-typed-array": ["which-typed-array@1.1.19", "", { "dependencies": { "available-typed-arrays": "^1.0.7", "call-bind": "^1.0.8", "call-bound": "^1.0.4", "for-each": "^0.3.5", "get-proto": "^1.0.1", "gopd": "^1.2.0", "has-tostringtag": "^1.0.2" } }, "sha512-rEvr90Bck4WZt9HHFC4DJMsjvu7x+r6bImz0/BrbWb7A2djJ8hnZMrWnHo9F8ssv0OMErasDhftrfROTyqSDrw=="],
|
|
188
|
+
|
|
189
|
+
"wmf": ["wmf@1.0.2", "", {}, "sha512-/p9K7bEh0Dj6WbXg4JG0xvLQmIadrner1bi45VMJTfnbVHsc7yIajZyoSoK60/dtVBs12Fm6WkUI5/3WAVsNMw=="],
|
|
190
|
+
|
|
191
|
+
"word": ["word@0.3.0", "", {}, "sha512-OELeY0Q61OXpdUfTp+oweA/vtLVg5VDOXh+3he3PNzLGG/y0oylSOC1xRVj0+l4vQ3tj/bB1HVHv1ocXkQceFA=="],
|
|
192
|
+
|
|
193
|
+
"xlsx": ["xlsx@0.18.5", "", { "dependencies": { "adler-32": "~1.3.0", "cfb": "~1.2.1", "codepage": "~1.15.0", "crc-32": "~1.2.1", "ssf": "~0.11.2", "wmf": "~1.0.1", "word": "~0.3.0" }, "bin": "bin/xlsx.njs" }, "sha512-dmg3LCjBPHZnQp5/F/+nnTa+miPJxUXB6vtk42YjBBKayDNagxGEeIdWApkYPOf3Z3pm3k62Knjzp7lMeTEtFQ=="],
|
|
194
|
+
|
|
195
|
+
"mongodb/bson": ["bson@7.0.0", "", {}, "sha512-Kwc6Wh4lQ5OmkqqKhYGKIuELXl+EPYSCObVE6bWsp1T/cGkOCBN0I8wF/T44BiuhHyNi1mmKVPXk60d41xZ7kw=="],
|
|
196
|
+
}
|
|
197
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface RazlagaATCvetKode {
|
|
2
|
+
nivo: number;
|
|
3
|
+
/** opis nivoja iz pomenNivojevATCvet, na primer "terapevtska podskupina" */
|
|
4
|
+
pomenNivoja: string;
|
|
5
|
+
/** slovenski opis nivoja iz AtcvetRow, na primer "običajne kombinacije soli" */
|
|
6
|
+
opisNivoja: string;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Izračunaj starševske kode za dano ATCvet kodo
|
|
10
|
+
* Primer: "QA01AA01" => ["Q", "QA", "QA01", "QA01A", "QA01AA", "QA01AA01"]
|
|
11
|
+
*/
|
|
12
|
+
export declare function izracunajNivoje(koda: string): string[];
|
|
13
|
+
/**
|
|
14
|
+
* Vrne opis ATCvet kode na njenem nivoju
|
|
15
|
+
* @param koda ATCvet koda (npr. "QA01AA01")
|
|
16
|
+
* @returns Razlaga kode z nivojem, pomenom nivoja in opisom
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const rezultat = opisATCvetKode("QA01AA01");
|
|
20
|
+
* // Vrne: { nivo: 5, pomenNivoja: "kemijska učinkovina", opisNivoja: "..." }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export declare function opisATCvetKode(koda: string): RazlagaATCvetKode | null;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type RazlagaATCvetKode } from "./opisATCvetKode";
|
|
2
|
+
export type { RazlagaATCvetKode };
|
|
3
|
+
/**
|
|
4
|
+
* Funkcija vrne opise vseh nivojev za dano ATCvet kodo, urejene po nivoju
|
|
5
|
+
* @param koda ATCvet koda (npr. "QA01AA01")
|
|
6
|
+
* @returns Seznam razlag za vse nivoje kode
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* const rezultat = podatkiATCvetKode("QA01AC03");
|
|
10
|
+
* // Vrne:
|
|
11
|
+
* // [
|
|
12
|
+
* // { nivo: 0, pomenNivoja: "veterinarska uporaba", opisNivoja: "Veterinarska zdravila" },
|
|
13
|
+
* // { nivo: 1, pomenNivoja: "anatomska glavna skupina", opisNivoja: "ZDRAVILA ZA BOLEZNI PREBAVIL IN PRESNOVE" },
|
|
14
|
+
* // { nivo: 2, pomenNivoja: "terapevtska podskupina", opisNivoja: "ZDRAVILA V ZOBOZDRAVSTVU" },
|
|
15
|
+
* // { nivo: 3, pomenNivoja: "farmakološka podskupina", opisNivoja: "Zdravila v zobozdravstvu" },
|
|
16
|
+
* // { nivo: 5, pomenNivoja: "kemijska učinkovina", opisNivoja: "hidrokortizon" }
|
|
17
|
+
* // ]
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare function podatkiATCvetKode(koda: string): RazlagaATCvetKode[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pomeniNivojevATCvet: Array<[nivo: number, pomen: string]>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tipizacija za ATCVet JSON datoteko
|
|
3
|
+
*/
|
|
4
|
+
export interface AtcvetRow {
|
|
5
|
+
code: string;
|
|
6
|
+
desc_en: string;
|
|
7
|
+
desc_si: string;
|
|
8
|
+
level: 1 | 2 | 3 | 4 | 5;
|
|
9
|
+
parent?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface AtcvetMeta {
|
|
12
|
+
source: string;
|
|
13
|
+
generatedAt: string;
|
|
14
|
+
count: number;
|
|
15
|
+
}
|
|
16
|
+
export interface AtcvetFile {
|
|
17
|
+
meta: AtcvetMeta;
|
|
18
|
+
rows: AtcvetRow[];
|
|
19
|
+
}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Knjižnica veterinarskih zdravil registriranih v Sloveniji in šifrant ATCvet
|
|
3
|
+
*
|
|
4
|
+
* @packageDocumentation
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Šifrant ATCvet klasifikacije
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* const atc = AtcVet.find(a => a.code === "QJ01CA04");
|
|
11
|
+
* // { code: "QJ01CA04", level: 5, desc_en: "amoxicillin", desc_si: "amoksicilin" }
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export { AtcVet } from "./generated/AtcVet";
|
|
15
|
+
/**
|
|
16
|
+
* Register vseh veterinarskih zdravil kot Map<id, Zdravilo>
|
|
17
|
+
* @example
|
|
18
|
+
* ```typescript
|
|
19
|
+
* const zdravilo = registerZdravil.get(123456);
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export { registerZdravil } from "./register/registerZdravil";
|
|
23
|
+
/**
|
|
24
|
+
* Poišče zdravila v registru po podobnosti imena
|
|
25
|
+
*
|
|
26
|
+
* @param vhodniNaziv - Iskalni niz (ime zdravila)
|
|
27
|
+
* @param opts - Opcije iskanja: { limit?, minOcena?, isciMed? }
|
|
28
|
+
* @returns { zadetki, najboljsi } - Seznam zadetkov in najboljši zadetek (če je enolično določen)
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const { zadetki, najboljsi } = uganiZdravilo("citramox 500");
|
|
32
|
+
* if (najboljsi) {
|
|
33
|
+
* console.log(najboljsi.ime); // "CITRAMOX 500 mg/g ..."
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export { uganiZdravilo } from "./register/uganiZdravilo";
|
|
38
|
+
/**
|
|
39
|
+
* Poišče zdravila po podobnosti imena in vrne polne utemeljitve
|
|
40
|
+
*
|
|
41
|
+
* @param vhodniNaziv - Iskalni niz (ime zdravila)
|
|
42
|
+
* @param opts - Opcije iskanja: { limit?, minOcena?, isciMed? }
|
|
43
|
+
* @returns Seznam zdravil z utemeljitvami (ocene po kategorijah), sortirano po oceni padajoče
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* const rezultati = uganiZdraviloInUtemelji("baytril 50", { limit: 5 });
|
|
47
|
+
* for (const r of rezultati) {
|
|
48
|
+
* console.log(r.zdravilo.ime, r.utemeljitev.ocena);
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export { uganiZdraviloInUtemelji } from "./register/uganiZdravilo";
|
|
53
|
+
/**
|
|
54
|
+
* Minimalna ocena podobnosti za vključitev v rezultate iskanja (privzeto 500)
|
|
55
|
+
*/
|
|
56
|
+
export { MIN_OCENA_PODOBNOSTI } from "./register/MIN_OCENA_PODOBNOSTI";
|
|
57
|
+
/**
|
|
58
|
+
* Normalizira ime zdravila za primerjavo
|
|
59
|
+
*
|
|
60
|
+
* Pretvori v male črke, normalizira enote (mg, ml, tbl...), teže, decimalne vejice itd.
|
|
61
|
+
*
|
|
62
|
+
* @param naziv - Izvorni naziv zdravila
|
|
63
|
+
* @returns Normaliziran naziv
|
|
64
|
+
* @example
|
|
65
|
+
* ```typescript
|
|
66
|
+
* normalizirajNaziv("AMOXICILLIN 50,5 mg/ml za pse");
|
|
67
|
+
* // "amoxicillin 50.5mg/ml pse"
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
export { normalizirajNaziv } from "./register/helper/normalizirajNaziv";
|
|
71
|
+
/**
|
|
72
|
+
* Razčleni ime zdravila na sestavne dele
|
|
73
|
+
*
|
|
74
|
+
* Razčleni na besede, doze, težo, količino in živalske vrste.
|
|
75
|
+
*
|
|
76
|
+
* @param naziv - Izvorni naziv zdravila
|
|
77
|
+
* @returns Objekt z razčlenjenimi sestavinami
|
|
78
|
+
* @example
|
|
79
|
+
* ```typescript
|
|
80
|
+
* razcleniNaziv("BAYTRIL 50 mg/ml za pse in mačke 7tbl");
|
|
81
|
+
* // {
|
|
82
|
+
* // izvorni_naziv: "BAYTRIL 50 mg/ml za pse in mačke 7tbl",
|
|
83
|
+
* // normaliziran_naziv: "baytril 50mg/ml pse mačke 7tbl",
|
|
84
|
+
* // besede: ["baytril"],
|
|
85
|
+
* // doze: ["50mg/ml"],
|
|
86
|
+
* // teza: null,
|
|
87
|
+
* // kolicina: "7tbl",
|
|
88
|
+
* // zivalskeVrste: ["pse", "mačke"]
|
|
89
|
+
* // }
|
|
90
|
+
* ```
|
|
91
|
+
*/
|
|
92
|
+
export { razcleniNaziv } from "./register/helper/razcleniNaziv";
|
|
93
|
+
/**
|
|
94
|
+
* Oceni podobnost med dvema razčlenjenima nazivoma zdravil
|
|
95
|
+
*
|
|
96
|
+
* @param razclembaVhoda - Razčlenjen vhodni naziv (iskalni niz)
|
|
97
|
+
* @param razclembaRegistra - Razčlenjen naziv iz registra zdravil
|
|
98
|
+
* @returns Utemeljitev z delnimi ocenami (besede, doze, vrste...) in skupno oceno
|
|
99
|
+
* @example
|
|
100
|
+
* ```typescript
|
|
101
|
+
* const vhod = razcleniNaziv("baytril 50");
|
|
102
|
+
* const register = razcleniNaziv("BAYTRIL 50 mg/ml raztopina za injiciranje");
|
|
103
|
+
* const ocena = oceniPodobnost(vhod, register);
|
|
104
|
+
* console.log(ocena.ocena); // skupna ocena podobnosti
|
|
105
|
+
* ```
|
|
106
|
+
*/
|
|
107
|
+
export { oceniPodobnost } from "./register/helper/oceniPodobnost";
|
|
108
|
+
/**
|
|
109
|
+
* Pretvori rezultate iskanja v poenostavljeno obliko
|
|
110
|
+
*
|
|
111
|
+
* @param rezultati - Rezultati iz uganiZdraviloInUtemelji
|
|
112
|
+
* @returns { zadetki, najboljsi } - Poenostavljen seznam in najboljši zadetek
|
|
113
|
+
* @example
|
|
114
|
+
* ```typescript
|
|
115
|
+
* const rezultati = uganiZdraviloInUtemelji("citramox");
|
|
116
|
+
* const { zadetki, najboljsi } = oblikujRezultatIskanja(rezultati);
|
|
117
|
+
* ```
|
|
118
|
+
*/
|
|
119
|
+
export { oblikujRezultatIskanja } from "./register/helper/oblikujRezultatIskanja";
|
|
120
|
+
/**
|
|
121
|
+
* Vrne seznam zdravil z dano ATCvet kodo (ali prefiksom)
|
|
122
|
+
*
|
|
123
|
+
* Seznam je urejen po ATCvet kodah.
|
|
124
|
+
*
|
|
125
|
+
* @param atcVetKoda - ATCvet koda ali njen prefiks (npr. "QJ01", "QJ01CA04")
|
|
126
|
+
* @returns Seznam zdravil z ustrezno ATCvet kodo
|
|
127
|
+
* @example
|
|
128
|
+
* ```typescript
|
|
129
|
+
* const zdravila = zdravilaZaAtcVetKodo("QJ01CA04");
|
|
130
|
+
* // Vrne vsa zdravila z amoksicilinom
|
|
131
|
+
*
|
|
132
|
+
* const antibiotiki = zdravilaZaAtcVetKodo("QJ01");
|
|
133
|
+
* // Vrne vsa zdravila za sistemsko zdravljenje bakterijskih infekcij
|
|
134
|
+
* ```
|
|
135
|
+
*/
|
|
136
|
+
export { zdravilaZaAtcVetKodo } from "./register/zdravilaZaAtcVetKodo";
|
|
137
|
+
/**
|
|
138
|
+
* Preveri, ali je zdravilo vakcina za določeno živalsko vrsto
|
|
139
|
+
*
|
|
140
|
+
* @param zdravilo - Zdravilo iz registra
|
|
141
|
+
* @param zival - Živalska vrsta (npr. "psi", "mačke", "govedo")
|
|
142
|
+
* @returns Seznam bolezni, proti katerim ščiti, ali false če ni vakcina
|
|
143
|
+
* @example
|
|
144
|
+
* ```typescript
|
|
145
|
+
* const rabisin = registerZdravil.get(123);
|
|
146
|
+
* const bolezni = zdraviloJeVakcinaZa(rabisin, "psi");
|
|
147
|
+
* if (bolezni) {
|
|
148
|
+
* console.log(bolezni); // ["steklina"]
|
|
149
|
+
* }
|
|
150
|
+
* ```
|
|
151
|
+
*/
|
|
152
|
+
export { zdraviloJeVakcinaZa } from "./register/zdraviloJeVakcinaZa";
|
|
153
|
+
/**
|
|
154
|
+
* Vrne zdravila z vsaj eno skupno učinkovino
|
|
155
|
+
*
|
|
156
|
+
* Učinkovine pridobi iz podatkov zdravila in iz ATCvet kode na nivoju 5.
|
|
157
|
+
* Seznam je urejen po podobnosti z vhodnim zdravilom.
|
|
158
|
+
*
|
|
159
|
+
* @param zdravilo - Zdravilo, za katerega iščemo podobna
|
|
160
|
+
* @returns Seznam zdravil z vsaj eno skupno učinkovino (brez vhodnega zdravila)
|
|
161
|
+
* @example
|
|
162
|
+
* ```typescript
|
|
163
|
+
* const baytril = registerZdravil.get(123);
|
|
164
|
+
* const podobna = podobnaZdravilaPoUcinkovinah(baytril);
|
|
165
|
+
* // Vrne zdravila z enrofloksacinom
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
export { podobnaZdravilaPoUcinkovinah } from "./register/podobnaZdravilaPoUcinkovinah";
|
|
169
|
+
/**
|
|
170
|
+
* Vrne zdravila z enako ATCvet kodo na danem nivoju
|
|
171
|
+
*
|
|
172
|
+
* Seznam je urejen po podobnosti z vhodnim zdravilom.
|
|
173
|
+
*
|
|
174
|
+
* Nivoji ATCvet:
|
|
175
|
+
* - 1: anatomska glavna skupina (npr. QJ = zdravila za sistemsko zdravljenje infekcij)
|
|
176
|
+
* - 2: terapevtska podskupina (npr. QJ01 = antibakterijska zdravila)
|
|
177
|
+
* - 3: farmakološka podskupina (npr. QJ01C = betalaktamski antibiotiki)
|
|
178
|
+
* - 4: kemijska podskupina (npr. QJ01CA = širokospektralni penicilini)
|
|
179
|
+
* - 5: kemijska učinkovina (npr. QJ01CA04 = amoksicilin)
|
|
180
|
+
*
|
|
181
|
+
* @param zdravilo - Zdravilo, za katerega iščemo podobna
|
|
182
|
+
* @param nivo - ATCvet nivo za primerjavo (1-5), privzeto 5
|
|
183
|
+
* @returns Seznam zdravil z enako ATCvet kodo na danem nivoju (brez vhodnega zdravila)
|
|
184
|
+
* @example
|
|
185
|
+
* ```typescript
|
|
186
|
+
* const zdravilo = registerZdravil.get(123);
|
|
187
|
+
* const podobna = podobnaZdravilaPoATC(zdravilo, 4);
|
|
188
|
+
* // Vrne zdravila z enako kemijsko podskupino
|
|
189
|
+
* ```
|
|
190
|
+
*/
|
|
191
|
+
export { podobnaZdravilaPoATC } from "./register/podobnaZdravilaPoATC";
|
|
192
|
+
/**
|
|
193
|
+
* Vrne opise vseh nivojev za dano ATCvet kodo
|
|
194
|
+
*
|
|
195
|
+
* @param koda - ATCvet koda (npr. "QJ01CA04")
|
|
196
|
+
* @returns Seznam opisov za vsak nivo (0-5)
|
|
197
|
+
* @example
|
|
198
|
+
* ```typescript
|
|
199
|
+
* podatkiATCvetKode("QJ01CA04");
|
|
200
|
+
* // [
|
|
201
|
+
* // { nivo: 0, pomenNivoja: "veterinarska uporaba", opisNivoja: "Veterinarska zdravila" },
|
|
202
|
+
* // { nivo: 1, pomenNivoja: "anatomska glavna skupina", opisNivoja: "ZDRAVILA ZA SISTEMSKO ZDRAVLJENJE INFEKCIJ" },
|
|
203
|
+
* // { nivo: 2, pomenNivoja: "terapevtska podskupina", opisNivoja: "ZDRAVILA ZA SISTEMSKO ZDRAVLJENJE BAKTERIJSKIH INFEKCIJ" },
|
|
204
|
+
* // { nivo: 3, pomenNivoja: "farmakološka podskupina", opisNivoja: "Betalaktamski antibiotiki, penicilini" },
|
|
205
|
+
* // { nivo: 4, pomenNivoja: "kemijska podskupina", opisNivoja: "Širokospektralni penicilini" },
|
|
206
|
+
* // { nivo: 5, pomenNivoja: "kemijska učinkovina", opisNivoja: "amoksicilin" }
|
|
207
|
+
* // ]
|
|
208
|
+
* ```
|
|
209
|
+
*/
|
|
210
|
+
export { podatkiATCvetKode } from "./atcvet/podatkiATCvetKode";
|
|
211
|
+
/**
|
|
212
|
+
* Vrne opis posamezne ATCvet kode (najvišji nivo)
|
|
213
|
+
*
|
|
214
|
+
* @param koda - ATCvet koda
|
|
215
|
+
* @returns Opis za najvišji nivo kode ali null če koda ne obstaja
|
|
216
|
+
* @example
|
|
217
|
+
* ```typescript
|
|
218
|
+
* opisATCvetKode("QJ01CA04");
|
|
219
|
+
* // { nivo: 5, pomenNivoja: "kemijska učinkovina", opisNivoja: "amoksicilin" }
|
|
220
|
+
* ```
|
|
221
|
+
*/
|
|
222
|
+
export { opisATCvetKode } from "./atcvet/opisATCvetKode";
|
|
223
|
+
/**
|
|
224
|
+
* Seznam pomenov nivojev ATCvet klasifikacije
|
|
225
|
+
* @example
|
|
226
|
+
* ```typescript
|
|
227
|
+
* // [
|
|
228
|
+
* // [0, "veterinarska uporaba"],
|
|
229
|
+
* // [1, "anatomska glavna skupina"],
|
|
230
|
+
* // [2, "terapevtska podskupina"],
|
|
231
|
+
* // [3, "farmakološka podskupina"],
|
|
232
|
+
* // [4, "kemijska podskupina"],
|
|
233
|
+
* // [5, "kemijska učinkovina"]
|
|
234
|
+
* // ]
|
|
235
|
+
* ```
|
|
236
|
+
*/
|
|
237
|
+
export { pomeniNivojevATCvet } from "./atcvet/pomeniNivojevATCvet";
|
|
238
|
+
export type { Zdravilo } from "./register/types/Zdravilo";
|
|
239
|
+
export type { RazlagaATCvetKode } from "./atcvet/opisATCvetKode";
|
|
240
|
+
export type { AtcvetRow } from "./atcvet/types/AtcvetFile";
|
|
241
|
+
export type { RegisterZdravil } from "./register/types/RegisterZdravil";
|
|
242
|
+
export type { UganiZdraviloOpts } from "./register/uganiZdravilo";
|
|
243
|
+
export type { RazclenjeniNaziv } from "./register/helper/normalizirajNaziv";
|
|
244
|
+
export type { UtemeljitevOcene } from "./register/helper/oceniPodobnost";
|