@precisa-saude/fhir 0.10.1 → 0.11.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/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @precisa-saude/fhir
2
2
 
3
- Tipos FHIR R4, 180+ definições de biomarcadores com códigos LOINC, faixas de referência (SBPC/ML, SBC, SBD), conversores e importadores para o contexto clínico brasileiro.
3
+ Tipos FHIR R4, 200+ definições de biomarcadores com códigos LOINC, faixas de referência (SBPC/ML, SBC, SBD), conversores e importadores para o contexto clínico brasileiro.
4
4
 
5
5
  ## Instalação
6
6
 
@@ -49,7 +49,7 @@ import { getDefinitionByCode, getAllDefinitions } from '@precisa-saude/fhir';
49
49
  const def = getDefinitionByCode('HDL');
50
50
  // { code: 'HDL', loinc: '2085-9', names: { pt: [...], en: [...] }, ... }
51
51
 
52
- const all = getAllDefinitions(); // 180+ definições
52
+ const all = getAllDefinitions(); // 200+ definições
53
53
  ```
54
54
 
55
55
  ## Sub-path imports
@@ -69,7 +69,8 @@ import { validateFHIRObservation } from '@precisa-saude/fhir/validators';
69
69
 
70
70
  | Sub-path | Descrição |
71
71
  | ------------------- | --------------------------------------------------------------------- |
72
- | `/biomarkers` | 180+ definições com códigos LOINC, nomes pt/en, categorias |
72
+ | `/biomarkers` | 200+ definições com códigos LOINC, nomes pt/en, sub-categorias |
73
+ | `/category-groups` | Agrupamento de 10 categorias clínicas top-level sobre as 20 sub |
73
74
  | `/reference-ranges` | Faixas de referência por sexo/idade/gestação (SBPC/ML, SBC, SBD, OMS) |
74
75
  | `/converter` | Converte dados laboratoriais para FHIR R4 Bundle |
75
76
  | `/importer` | Importa FHIR Bundle de volta para estruturas internas |
@@ -30,7 +30,7 @@
30
30
 
31
31
 
32
32
 
33
- var _chunk2EVQ2ESBcjs = require('./chunk-2EVQ2ESB.cjs');
33
+ var _chunkEW5GLFSCcjs = require('./chunk-EW5GLFSC.cjs');
34
34
 
35
35
 
36
36
 
@@ -63,5 +63,5 @@ var _chunk2EVQ2ESBcjs = require('./chunk-2EVQ2ESB.cjs');
63
63
 
64
64
 
65
65
 
66
- exports.BIOMARKER_DEFINITIONS = _chunk2EVQ2ESBcjs.BIOMARKER_DEFINITIONS; exports.CAC_INDICATOR_CODES = _chunk2EVQ2ESBcjs.CAC_INDICATOR_CODES; exports.DEXA_CATEGORIES = _chunk2EVQ2ESBcjs.DEXA_CATEGORIES; exports.DEXA_INDICATOR_CODES = _chunk2EVQ2ESBcjs.DEXA_INDICATOR_CODES; exports.codeToLoinc = _chunk2EVQ2ESBcjs.codeToLoinc; exports.filterVisibleBiomarkers = _chunk2EVQ2ESBcjs.filterVisibleBiomarkers; exports.findCodeByName = _chunk2EVQ2ESBcjs.findCodeByName; exports.generateCacFullReference = _chunk2EVQ2ESBcjs.generateCacFullReference; exports.generateDexaFullReference = _chunk2EVQ2ESBcjs.generateDexaFullReference; exports.generateFilteredLLMReference = _chunk2EVQ2ESBcjs.generateFilteredLLMReference; exports.generateLLMReference = _chunk2EVQ2ESBcjs.generateLLMReference; exports.getAllCodes = _chunk2EVQ2ESBcjs.getAllCodes; exports.getAllDefinitions = _chunk2EVQ2ESBcjs.getAllDefinitions; exports.getAllLoincCodes = _chunk2EVQ2ESBcjs.getAllLoincCodes; exports.getAllSearchPatterns = _chunk2EVQ2ESBcjs.getAllSearchPatterns; exports.getBiomarkersByCategory = _chunk2EVQ2ESBcjs.getBiomarkersByCategory; exports.getBiomarkersForCategories = _chunk2EVQ2ESBcjs.getBiomarkersForCategories; exports.getDefinitionByCode = _chunk2EVQ2ESBcjs.getDefinitionByCode; exports.getDefinitionByLoinc = _chunk2EVQ2ESBcjs.getDefinitionByLoinc; exports.getDefinitionsBySex = _chunk2EVQ2ESBcjs.getDefinitionsBySex; exports.getSexForCode = _chunk2EVQ2ESBcjs.getSexForCode; exports.getVisibleDefinitions = _chunk2EVQ2ESBcjs.getVisibleDefinitions; exports.isBiomarkerVisible = _chunk2EVQ2ESBcjs.isBiomarkerVisible; exports.isCacDocument = _chunk2EVQ2ESBcjs.isCacDocument; exports.isDexaDocument = _chunk2EVQ2ESBcjs.isDexaDocument; exports.isValidCode = _chunk2EVQ2ESBcjs.isValidCode; exports.isValidLoinc = _chunk2EVQ2ESBcjs.isValidLoinc; exports.loincToCode = _chunk2EVQ2ESBcjs.loincToCode; exports.normalizeCode = _chunk2EVQ2ESBcjs.normalizeCode; exports.toBiomarkerTests = _chunk2EVQ2ESBcjs.toBiomarkerTests; exports.validateLoincNameMatch = _chunk2EVQ2ESBcjs.validateLoincNameMatch;
66
+ exports.BIOMARKER_DEFINITIONS = _chunkEW5GLFSCcjs.BIOMARKER_DEFINITIONS; exports.CAC_INDICATOR_CODES = _chunkEW5GLFSCcjs.CAC_INDICATOR_CODES; exports.DEXA_CATEGORIES = _chunkEW5GLFSCcjs.DEXA_CATEGORIES; exports.DEXA_INDICATOR_CODES = _chunkEW5GLFSCcjs.DEXA_INDICATOR_CODES; exports.codeToLoinc = _chunkEW5GLFSCcjs.codeToLoinc; exports.filterVisibleBiomarkers = _chunkEW5GLFSCcjs.filterVisibleBiomarkers; exports.findCodeByName = _chunkEW5GLFSCcjs.findCodeByName; exports.generateCacFullReference = _chunkEW5GLFSCcjs.generateCacFullReference; exports.generateDexaFullReference = _chunkEW5GLFSCcjs.generateDexaFullReference; exports.generateFilteredLLMReference = _chunkEW5GLFSCcjs.generateFilteredLLMReference; exports.generateLLMReference = _chunkEW5GLFSCcjs.generateLLMReference; exports.getAllCodes = _chunkEW5GLFSCcjs.getAllCodes; exports.getAllDefinitions = _chunkEW5GLFSCcjs.getAllDefinitions; exports.getAllLoincCodes = _chunkEW5GLFSCcjs.getAllLoincCodes; exports.getAllSearchPatterns = _chunkEW5GLFSCcjs.getAllSearchPatterns; exports.getBiomarkersByCategory = _chunkEW5GLFSCcjs.getBiomarkersByCategory; exports.getBiomarkersForCategories = _chunkEW5GLFSCcjs.getBiomarkersForCategories; exports.getDefinitionByCode = _chunkEW5GLFSCcjs.getDefinitionByCode; exports.getDefinitionByLoinc = _chunkEW5GLFSCcjs.getDefinitionByLoinc; exports.getDefinitionsBySex = _chunkEW5GLFSCcjs.getDefinitionsBySex; exports.getSexForCode = _chunkEW5GLFSCcjs.getSexForCode; exports.getVisibleDefinitions = _chunkEW5GLFSCcjs.getVisibleDefinitions; exports.isBiomarkerVisible = _chunkEW5GLFSCcjs.isBiomarkerVisible; exports.isCacDocument = _chunkEW5GLFSCcjs.isCacDocument; exports.isDexaDocument = _chunkEW5GLFSCcjs.isDexaDocument; exports.isValidCode = _chunkEW5GLFSCcjs.isValidCode; exports.isValidLoinc = _chunkEW5GLFSCcjs.isValidLoinc; exports.loincToCode = _chunkEW5GLFSCcjs.loincToCode; exports.normalizeCode = _chunkEW5GLFSCcjs.normalizeCode; exports.toBiomarkerTests = _chunkEW5GLFSCcjs.toBiomarkerTests; exports.validateLoincNameMatch = _chunkEW5GLFSCcjs.validateLoincNameMatch;
67
67
  //# sourceMappingURL=biomarkers.cjs.map
@@ -30,7 +30,7 @@ import {
30
30
  normalizeCode,
31
31
  toBiomarkerTests,
32
32
  validateLoincNameMatch
33
- } from "./chunk-I6H35QXI.js";
33
+ } from "./chunk-ICSMWCVT.js";
34
34
  export {
35
35
  BIOMARKER_DEFINITIONS,
36
36
  CAC_INDICATOR_CODES,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getDefinitionByLoinc,
3
3
  loincToCode
4
- } from "./chunk-I6H35QXI.js";
4
+ } from "./chunk-ICSMWCVT.js";
5
5
  import {
6
6
  validateFHIRImportBundle
7
7
  } from "./chunk-N3ZCOLG2.js";
@@ -150,4 +150,4 @@ export {
150
150
  mapFHIRObservationToInternal,
151
151
  processImportBundle
152
152
  };
153
- //# sourceMappingURL=chunk-S6VJHXJF.js.map
153
+ //# sourceMappingURL=chunk-4YQOKZX7.js.map
@@ -2382,6 +2382,210 @@ var BIOMARKER_DEFINITIONS = [
2382
2382
  pt: ["Z-Score Corpo Total", "Z-Score", "Escore Z", "Z-Score DMO", "Z-Score Densidade \xD3ssea"]
2383
2383
  },
2384
2384
  unit: "score"
2385
+ },
2386
+ // ============================================================================
2387
+ // CARDIOVASCULAR MARKERS — Insuficiência cardíaca e dano miocárdico
2388
+ // ============================================================================
2389
+ {
2390
+ category: "coracao",
2391
+ code: "NTproBNP",
2392
+ loinc: "33762-6",
2393
+ names: {
2394
+ en: ["NT-proBNP", "N-Terminal pro B-Type Natriuretic Peptide", "NT-pro-BNP"],
2395
+ pt: ["NT-proBNP", "Pept\xEDdeo Natriur\xE9tico Tipo B N-Terminal", "Pr\xF3-BNP N-Terminal"]
2396
+ },
2397
+ unit: "pg/mL"
2398
+ },
2399
+ {
2400
+ category: "coracao",
2401
+ code: "BNP",
2402
+ loinc: "30934-4",
2403
+ names: {
2404
+ en: ["BNP", "B-Type Natriuretic Peptide", "Brain Natriuretic Peptide"],
2405
+ pt: ["BNP", "Pept\xEDdeo Natriur\xE9tico Tipo B", "Pept\xEDdeo Natriur\xE9tico Cerebral"]
2406
+ },
2407
+ unit: "pg/mL"
2408
+ },
2409
+ {
2410
+ category: "coracao",
2411
+ code: "TroponinI",
2412
+ loinc: "49563-0",
2413
+ names: {
2414
+ en: ["Troponin I", "cTnI", "Cardiac Troponin I", "hs-TnI", "High-Sensitivity Troponin I"],
2415
+ pt: ["Troponina I", "cTnI", "Troponina I Card\xEDaca", "Troponina I Ultrassens\xEDvel"]
2416
+ },
2417
+ unit: "ng/mL"
2418
+ },
2419
+ {
2420
+ category: "coracao",
2421
+ code: "TroponinT",
2422
+ loinc: "6598-7",
2423
+ names: {
2424
+ en: ["Troponin T", "cTnT", "Cardiac Troponin T", "hs-TnT", "High-Sensitivity Troponin T"],
2425
+ pt: ["Troponina T", "cTnT", "Troponina T Card\xEDaca", "Troponina T Ultrassens\xEDvel"]
2426
+ },
2427
+ unit: "ng/mL"
2428
+ },
2429
+ // ============================================================================
2430
+ // COAGULATION — Coagulação
2431
+ // ============================================================================
2432
+ {
2433
+ category: "sangue",
2434
+ code: "DDimer",
2435
+ loinc: "48066-5",
2436
+ names: {
2437
+ en: ["D-Dimer", "D Dimer", "Fibrin D-Dimer"],
2438
+ pt: ["D\xEDmero-D", "D\xEDmero D", "D-D\xEDmero"]
2439
+ },
2440
+ unit: "ng/mL"
2441
+ },
2442
+ {
2443
+ category: "sangue",
2444
+ code: "Fibrinogen",
2445
+ loinc: "3255-7",
2446
+ names: {
2447
+ en: ["Fibrinogen", "Fibrinogen Activity"],
2448
+ pt: ["Fibrinog\xEAnio", "Atividade do Fibrinog\xEAnio"]
2449
+ },
2450
+ unit: "mg/dL"
2451
+ },
2452
+ // ============================================================================
2453
+ // HEMATOLOGY — Hematologia adicional
2454
+ // ============================================================================
2455
+ {
2456
+ category: "figado",
2457
+ code: "LDH",
2458
+ loinc: "2532-0",
2459
+ names: {
2460
+ en: ["Lactate Dehydrogenase", "LDH", "LD"],
2461
+ pt: ["Desidrogenase L\xE1tica", "DHL", "LDH", "Lactato Desidrogenase"]
2462
+ },
2463
+ unit: "U/L"
2464
+ },
2465
+ // ============================================================================
2466
+ // ENDOCRINE — Eixo cálcio/fósforo
2467
+ // ============================================================================
2468
+ {
2469
+ category: "hormonios",
2470
+ code: "PTH",
2471
+ loinc: "2731-8",
2472
+ names: {
2473
+ en: ["Parathyroid Hormone", "PTH", "Intact PTH"],
2474
+ pt: ["Paratorm\xF4nio", "PTH", "Horm\xF4nio da Paratireoide", "PTH Intacto"]
2475
+ },
2476
+ unit: "pg/mL"
2477
+ },
2478
+ // ============================================================================
2479
+ // IMMUNOLOGY — Complemento e imunoglobulinas
2480
+ // ============================================================================
2481
+ {
2482
+ category: "autoimunidade",
2483
+ code: "IgM",
2484
+ loinc: "2472-9",
2485
+ names: {
2486
+ en: ["Immunoglobulin M", "IgM", "Total IgM"],
2487
+ pt: ["Imunoglobulina M", "IgM", "IgM Total"]
2488
+ },
2489
+ unit: "mg/dL"
2490
+ },
2491
+ {
2492
+ category: "autoimunidade",
2493
+ code: "C3",
2494
+ loinc: "4485-3",
2495
+ names: {
2496
+ en: ["Complement C3", "C3"],
2497
+ pt: ["Complemento C3", "C3", "Fra\xE7\xE3o C3 do Complemento"]
2498
+ },
2499
+ unit: "mg/dL"
2500
+ },
2501
+ {
2502
+ category: "autoimunidade",
2503
+ code: "C4",
2504
+ loinc: "4498-6",
2505
+ names: {
2506
+ en: ["Complement C4", "C4"],
2507
+ pt: ["Complemento C4", "C4", "Fra\xE7\xE3o C4 do Complemento"]
2508
+ },
2509
+ unit: "mg/dL"
2510
+ },
2511
+ // ============================================================================
2512
+ // TUMOR MARKERS — Marcadores tumorais adicionais
2513
+ // ============================================================================
2514
+ {
2515
+ category: "marcadores-tumorais",
2516
+ code: "CA199",
2517
+ loinc: "24108-3",
2518
+ names: {
2519
+ en: ["CA 19-9", "Carbohydrate Antigen 19-9", "CA19-9"],
2520
+ pt: ["CA 19-9", "Ant\xEDgeno Carboidrato 19-9", "CA19-9"]
2521
+ },
2522
+ unit: "U/mL"
2523
+ },
2524
+ {
2525
+ category: "marcadores-tumorais",
2526
+ code: "CA153",
2527
+ loinc: "6875-9",
2528
+ names: {
2529
+ en: ["CA 15-3", "Cancer Antigen 15-3", "CA15-3"],
2530
+ pt: ["CA 15-3", "Ant\xEDgeno C\xE2ncer 15-3", "CA15-3"]
2531
+ },
2532
+ sex: "female",
2533
+ unit: "U/mL"
2534
+ },
2535
+ {
2536
+ category: ["saude-feminina", "marcadores-tumorais"],
2537
+ code: "BetaHCG",
2538
+ loinc: "19080-1",
2539
+ names: {
2540
+ en: ["Beta-hCG", "Beta Human Chorionic Gonadotropin", "\u03B2-hCG Quantitative", "hCG"],
2541
+ pt: [
2542
+ "Beta-hCG",
2543
+ "Beta Gonadotrofina Cori\xF4nica Humana",
2544
+ "\u03B2-hCG Quantitativo",
2545
+ "hCG",
2546
+ "Gonadotrofina Cori\xF4nica"
2547
+ ]
2548
+ },
2549
+ unit: "mIU/mL"
2550
+ },
2551
+ // ============================================================================
2552
+ // RENAL — Filtração glomerular alternativa
2553
+ // ============================================================================
2554
+ {
2555
+ category: "rins",
2556
+ code: "CystatinC",
2557
+ loinc: "33863-2",
2558
+ names: {
2559
+ en: ["Cystatin C", "Cystatin-C"],
2560
+ pt: ["Cistatina C", "Cistatina-C"]
2561
+ },
2562
+ unit: "mg/L"
2563
+ },
2564
+ // ============================================================================
2565
+ // NUTRIENTS — Oligoelementos adicionais
2566
+ // ============================================================================
2567
+ {
2568
+ category: "nutrientes",
2569
+ code: "Selenium",
2570
+ loinc: "5697-7",
2571
+ names: {
2572
+ en: ["Selenium", "Se"],
2573
+ pt: ["Sel\xEAnio", "Se"]
2574
+ },
2575
+ unit: "\xB5g/L"
2576
+ },
2577
+ // ============================================================================
2578
+ // METABOLIC — Cetonas séricas
2579
+ // ============================================================================
2580
+ {
2581
+ category: "pancreas",
2582
+ code: "BetaHydroxybutyrate",
2583
+ loinc: "53060-0",
2584
+ names: {
2585
+ en: ["Beta-Hydroxybutyrate", "\u03B2-Hydroxybutyrate", "BHB", "Ketone Bodies"],
2586
+ pt: ["Beta-Hidroxibutirato", "\u03B2-Hidroxibutirato", "BHB", "Corpos Cet\xF4nicos"]
2587
+ },
2588
+ unit: "mmol/L"
2385
2589
  }
2386
2590
  ];
2387
2591
  var loincToCodeMap = /* @__PURE__ */ new Map();
@@ -2689,4 +2893,4 @@ function getBiomarkersForCategories(categories, options) {
2689
2893
 
2690
2894
 
2691
2895
  exports.BIOMARKER_DEFINITIONS = BIOMARKER_DEFINITIONS; exports.loincToCode = loincToCode; exports.codeToLoinc = codeToLoinc; exports.isValidLoinc = isValidLoinc; exports.isValidCode = isValidCode; exports.normalizeCode = normalizeCode; exports.getSexForCode = getSexForCode; exports.getDefinitionsBySex = getDefinitionsBySex; exports.getDefinitionByCode = getDefinitionByCode; exports.getDefinitionByLoinc = getDefinitionByLoinc; exports.getAllDefinitions = getAllDefinitions; exports.getVisibleDefinitions = getVisibleDefinitions; exports.getAllCodes = getAllCodes; exports.getAllLoincCodes = getAllLoincCodes; exports.generateLLMReference = generateLLMReference; exports.toBiomarkerTests = toBiomarkerTests; exports.getAllSearchPatterns = getAllSearchPatterns; exports.generateFilteredLLMReference = generateFilteredLLMReference; exports.DEXA_INDICATOR_CODES = DEXA_INDICATOR_CODES; exports.DEXA_CATEGORIES = DEXA_CATEGORIES; exports.generateDexaFullReference = generateDexaFullReference; exports.isDexaDocument = isDexaDocument; exports.CAC_INDICATOR_CODES = CAC_INDICATOR_CODES; exports.generateCacFullReference = generateCacFullReference; exports.isCacDocument = isCacDocument; exports.findCodeByName = findCodeByName; exports.validateLoincNameMatch = validateLoincNameMatch; exports.isBiomarkerVisible = isBiomarkerVisible; exports.filterVisibleBiomarkers = filterVisibleBiomarkers; exports.getBiomarkersByCategory = getBiomarkersByCategory; exports.getBiomarkersForCategories = getBiomarkersForCategories;
2692
- //# sourceMappingURL=chunk-2EVQ2ESB.cjs.map
2896
+ //# sourceMappingURL=chunk-EW5GLFSC.cjs.map