tricc-oo 1.6.18__py3-none-any.whl → 1.6.19__py3-none-any.whl
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.
- tricc_oo/converters/datadictionnary.py +1 -1
- tricc_oo/strategies/output/xls_form.py +68 -64
- tricc_oo/strategies/output/xlsform_cht.py +3 -3
- {tricc_oo-1.6.18.dist-info → tricc_oo-1.6.19.dist-info}/METADATA +1 -1
- {tricc_oo-1.6.18.dist-info → tricc_oo-1.6.19.dist-info}/RECORD +8 -8
- {tricc_oo-1.6.18.dist-info → tricc_oo-1.6.19.dist-info}/WHEEL +0 -0
- {tricc_oo-1.6.18.dist-info → tricc_oo-1.6.19.dist-info}/licenses/LICENSE +0 -0
- {tricc_oo-1.6.18.dist-info → tricc_oo-1.6.19.dist-info}/top_level.txt +0 -0
|
@@ -101,7 +101,7 @@ def check_and_add_concept(code_system: CodeSystem, code: str, display: str, attr
|
|
|
101
101
|
for p in new_concept.property:
|
|
102
102
|
if p.code == k:
|
|
103
103
|
# TODO support other type of Codesystem Concept Property Value
|
|
104
|
-
existing_attributes
|
|
104
|
+
existing_attributes = True
|
|
105
105
|
if p.valueString != v:
|
|
106
106
|
logger.warning(f"conflicting value for concept `{concept.code}` property ` {k}`: {p.valueString} != {v}")
|
|
107
107
|
if not existing_attributes:
|
|
@@ -127,6 +127,7 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
127
127
|
"df_calculate": self.df_calculate,
|
|
128
128
|
"calculates": self.calculates,
|
|
129
129
|
}
|
|
130
|
+
|
|
130
131
|
|
|
131
132
|
def generate_export(self, node, **kwargs):
|
|
132
133
|
return generate_xls_form_export(self, node, **kwargs)
|
|
@@ -374,12 +375,14 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
374
375
|
|
|
375
376
|
def get_tricc_operation_expression(self, operation):
|
|
376
377
|
ref_expressions = []
|
|
378
|
+
original_references = []
|
|
377
379
|
if not hasattr(operation, "reference"):
|
|
378
380
|
return self.get_tricc_operation_operand(operation)
|
|
379
381
|
|
|
380
382
|
operator = getattr(operation, "operator", "")
|
|
381
383
|
coalesce_fallback = OPERATOR_COALESCE_FALLBACK[operator] if operator in OPERATOR_COALESCE_FALLBACK else "''"
|
|
382
384
|
for r in operation.reference:
|
|
385
|
+
original_references.append(r)
|
|
383
386
|
if isinstance(r, list):
|
|
384
387
|
r_expr = [
|
|
385
388
|
(
|
|
@@ -400,43 +403,43 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
400
403
|
# build lower level
|
|
401
404
|
if hasattr(self, f"tricc_operation_{operation.operator}"):
|
|
402
405
|
callable = getattr(self, f"tricc_operation_{operation.operator}")
|
|
403
|
-
return callable(ref_expressions)
|
|
406
|
+
return callable(ref_expressions, original_references)
|
|
404
407
|
else:
|
|
405
408
|
raise NotImplementedError(
|
|
406
409
|
f"This type of opreation '{operation.operator}' is not supported in this strategy"
|
|
407
410
|
)
|
|
408
411
|
|
|
409
|
-
def tricc_operation_count(self, ref_expressions):
|
|
412
|
+
def tricc_operation_count(self, ref_expressions, original_references=None):
|
|
410
413
|
return f"count-selected({self.clean_coalesce(ref_expressions[0])})"
|
|
411
414
|
|
|
412
|
-
def tricc_operation_multiplied(self, ref_expressions):
|
|
415
|
+
def tricc_operation_multiplied(self, ref_expressions, original_references=None):
|
|
413
416
|
return "*".join(map(str, ref_expressions))
|
|
414
417
|
|
|
415
|
-
def tricc_operation_divided(self, ref_expressions):
|
|
418
|
+
def tricc_operation_divided(self, ref_expressions, original_references=None):
|
|
416
419
|
return f"{ref_expressions[0]} div {ref_expressions[1]}"
|
|
417
420
|
|
|
418
|
-
def tricc_operation_modulo(self, ref_expressions):
|
|
421
|
+
def tricc_operation_modulo(self, ref_expressions, original_references=None):
|
|
419
422
|
return f"{ref_expressions[0]} mod {ref_expressions[1]}"
|
|
420
423
|
|
|
421
|
-
def tricc_operation_coalesce(self, ref_expressions):
|
|
424
|
+
def tricc_operation_coalesce(self, ref_expressions, original_references=None):
|
|
422
425
|
return f"coalesce({','.join(map(self.clean_coalesce, ref_expressions))})"
|
|
423
426
|
|
|
424
|
-
def tricc_operation_module(self, ref_expressions):
|
|
427
|
+
def tricc_operation_module(self, ref_expressions, original_references=None):
|
|
425
428
|
return f"{ref_expressions[0]} mod {ref_expressions[1]}"
|
|
426
429
|
|
|
427
|
-
def tricc_operation_minus(self, ref_expressions):
|
|
430
|
+
def tricc_operation_minus(self, ref_expressions, original_references=None):
|
|
428
431
|
if len(ref_expressions) > 1:
|
|
429
432
|
return " - ".join(map(str, ref_expressions))
|
|
430
433
|
elif len(ref_expressions) == 1:
|
|
431
434
|
return f"-{ref_expressions[0]}"
|
|
432
435
|
|
|
433
|
-
def tricc_operation_plus(self, ref_expressions):
|
|
436
|
+
def tricc_operation_plus(self, ref_expressions, original_references=None):
|
|
434
437
|
return " + ".join(map(str, ref_expressions))
|
|
435
438
|
|
|
436
|
-
def tricc_operation_not(self, ref_expressions):
|
|
439
|
+
def tricc_operation_not(self, ref_expressions, original_references=None):
|
|
437
440
|
return f"not({ref_expressions[0]})"
|
|
438
441
|
|
|
439
|
-
def tricc_operation_and(self, ref_expressions):
|
|
442
|
+
def tricc_operation_and(self, ref_expressions, original_references=None):
|
|
440
443
|
if len(ref_expressions) == 1:
|
|
441
444
|
return ref_expressions[0]
|
|
442
445
|
if len(ref_expressions) > 1:
|
|
@@ -448,7 +451,7 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
448
451
|
else:
|
|
449
452
|
return "1"
|
|
450
453
|
|
|
451
|
-
def tricc_operation_or(self, ref_expressions):
|
|
454
|
+
def tricc_operation_or(self, ref_expressions, original_references=None):
|
|
452
455
|
if len(ref_expressions) == 1:
|
|
453
456
|
return ref_expressions[0]
|
|
454
457
|
if len(ref_expressions) > 1:
|
|
@@ -460,7 +463,7 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
460
463
|
else:
|
|
461
464
|
return "1"
|
|
462
465
|
|
|
463
|
-
def tricc_operation_native(self, ref_expressions):
|
|
466
|
+
def tricc_operation_native(self, ref_expressions, original_references=None):
|
|
464
467
|
|
|
465
468
|
if len(ref_expressions) > 0:
|
|
466
469
|
if ref_expressions[0].startswith(("'", "`",)):
|
|
@@ -477,22 +480,22 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
477
480
|
else:
|
|
478
481
|
return f"{ref_expressions[0]}({','.join(map(str, ref_expressions[1:]))})"
|
|
479
482
|
|
|
480
|
-
def tricc_operation_istrue(self, ref_expressions):
|
|
483
|
+
def tricc_operation_istrue(self, ref_expressions, original_references=None):
|
|
481
484
|
if str(BOOLEAN_MAP[str(TRICC_TRUE_VALUE)]).isnumeric():
|
|
482
485
|
return f"{ref_expressions[0]}>={BOOLEAN_MAP[str(TRICC_TRUE_VALUE)]}"
|
|
483
486
|
else:
|
|
484
487
|
return f"{ref_expressions[0]}={BOOLEAN_MAP[str(TRICC_TRUE_VALUE)]}"
|
|
485
488
|
|
|
486
|
-
def tricc_operation_isfalse(self, ref_expressions):
|
|
489
|
+
def tricc_operation_isfalse(self, ref_expressions, original_references=None):
|
|
487
490
|
if str(BOOLEAN_MAP[str(TRICC_FALSE_VALUE)]).isnumeric():
|
|
488
491
|
return f"{ref_expressions[0]}={BOOLEAN_MAP[str(TRICC_FALSE_VALUE)]}"
|
|
489
492
|
else:
|
|
490
493
|
return f"{ref_expressions[0]}={BOOLEAN_MAP[str(TRICC_FALSE_VALUE)]}"
|
|
491
494
|
|
|
492
|
-
def tricc_operation_parenthesis(self, ref_expressions):
|
|
495
|
+
def tricc_operation_parenthesis(self, ref_expressions, original_references=None):
|
|
493
496
|
return f"({ref_expressions[0]})"
|
|
494
497
|
|
|
495
|
-
def tricc_operation_selected(self, ref_expressions):
|
|
498
|
+
def tricc_operation_selected(self, ref_expressions, original_references=None):
|
|
496
499
|
parts = []
|
|
497
500
|
for s in ref_expressions[1:]:
|
|
498
501
|
# for option with numeric value
|
|
@@ -508,49 +511,49 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
508
511
|
else:
|
|
509
512
|
return self.tricc_operation_or(parts)
|
|
510
513
|
|
|
511
|
-
def tricc_operation_more_or_equal(self, ref_expressions):
|
|
514
|
+
def tricc_operation_more_or_equal(self, ref_expressions, original_references=None):
|
|
512
515
|
return f"{ref_expressions[0]}>={ref_expressions[1]}"
|
|
513
516
|
|
|
514
|
-
def tricc_operation_less_or_equal(self, ref_expressions):
|
|
517
|
+
def tricc_operation_less_or_equal(self, ref_expressions, original_references=None):
|
|
515
518
|
return f"{ref_expressions[0]}<={ref_expressions[1]}"
|
|
516
519
|
|
|
517
|
-
def tricc_operation_more(self, ref_expressions):
|
|
520
|
+
def tricc_operation_more(self, ref_expressions, original_references=None):
|
|
518
521
|
return f"{ref_expressions[0]}>{ref_expressions[1]}"
|
|
519
522
|
|
|
520
|
-
def tricc_operation_less(self, ref_expressions):
|
|
523
|
+
def tricc_operation_less(self, ref_expressions, original_references=None):
|
|
521
524
|
return f"{ref_expressions[0]}<{ref_expressions[1]}"
|
|
522
525
|
|
|
523
|
-
def tricc_operation_between(self, ref_expressions):
|
|
526
|
+
def tricc_operation_between(self, ref_expressions, original_references=None):
|
|
524
527
|
return f"{ref_expressions[0]}>={ref_expressions[1]} and {ref_expressions[0]} < {ref_expressions[2]}"
|
|
525
528
|
|
|
526
|
-
def tricc_operation_equal(self, ref_expressions):
|
|
529
|
+
def tricc_operation_equal(self, ref_expressions, original_references=None):
|
|
527
530
|
return f"{ref_expressions[0]}={ref_expressions[1]}"
|
|
528
531
|
|
|
529
|
-
def tricc_operation_not_equal(self, ref_expressions):
|
|
532
|
+
def tricc_operation_not_equal(self, ref_expressions, original_references=None):
|
|
530
533
|
return f"{ref_expressions[0]}!={ref_expressions[1]}"
|
|
531
534
|
|
|
532
|
-
def tricc_operation_isnull(self, ref_expressions):
|
|
535
|
+
def tricc_operation_isnull(self, ref_expressions, original_references=None):
|
|
533
536
|
return f"{ref_expressions[0]}=''"
|
|
534
537
|
|
|
535
|
-
def tricc_operation_isnotnull(self, ref_expressions):
|
|
538
|
+
def tricc_operation_isnotnull(self, ref_expressions, original_references=None):
|
|
536
539
|
return f"{ref_expressions[0]}!=''"
|
|
537
540
|
|
|
538
|
-
def tricc_operation_isnottrue(self, ref_expressions):
|
|
541
|
+
def tricc_operation_isnottrue(self, ref_expressions, original_references=None):
|
|
539
542
|
if str(BOOLEAN_MAP[str(TRICC_TRUE_VALUE)]).isnumeric():
|
|
540
543
|
return f"{ref_expressions[0]}<{BOOLEAN_MAP[str(TRICC_TRUE_VALUE)]}"
|
|
541
544
|
else:
|
|
542
545
|
return f"{ref_expressions[0]}!={BOOLEAN_MAP[str(TRICC_TRUE_VALUE)]}"
|
|
543
546
|
|
|
544
|
-
def tricc_operation_isnotfalse(self, ref_expressions):
|
|
547
|
+
def tricc_operation_isnotfalse(self, ref_expressions, original_references=None):
|
|
545
548
|
if str(BOOLEAN_MAP[str(TRICC_FALSE_VALUE)]).isnumeric():
|
|
546
549
|
return f"{ref_expressions[0]}>{BOOLEAN_MAP[str(TRICC_FALSE_VALUE)]}"
|
|
547
550
|
else:
|
|
548
551
|
return f"{ref_expressions[0]}!={BOOLEAN_MAP[str(TRICC_FALSE_VALUE)]}"
|
|
549
552
|
|
|
550
|
-
def tricc_operation_notexist(self, ref_expressions):
|
|
553
|
+
def tricc_operation_notexist(self, ref_expressions, original_references=None):
|
|
551
554
|
return f"{ref_expressions[0]}=''"
|
|
552
555
|
|
|
553
|
-
def tricc_operation_case(self, ref_expressions):
|
|
556
|
+
def tricc_operation_case(self, ref_expressions, original_references=None):
|
|
554
557
|
ifs = 0
|
|
555
558
|
parts = []
|
|
556
559
|
else_found = False
|
|
@@ -573,7 +576,7 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
573
576
|
exp += ")"
|
|
574
577
|
return exp
|
|
575
578
|
|
|
576
|
-
def tricc_operation_ifs(self, ref_expressions):
|
|
579
|
+
def tricc_operation_ifs(self, ref_expressions, original_references=None):
|
|
577
580
|
ifs = 0
|
|
578
581
|
parts = []
|
|
579
582
|
else_found = False
|
|
@@ -598,19 +601,19 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
598
601
|
def get_empty_label(self):
|
|
599
602
|
return "."
|
|
600
603
|
|
|
601
|
-
def tricc_operation_if(self, ref_expressions):
|
|
604
|
+
def tricc_operation_if(self, ref_expressions, original_references=None):
|
|
602
605
|
return f"if({ref_expressions[0]},{ref_expressions[1]},{ref_expressions[2]})"
|
|
603
606
|
|
|
604
|
-
def tricc_operation_contains(self, ref_expressions):
|
|
607
|
+
def tricc_operation_contains(self, ref_expressions, original_references=None):
|
|
605
608
|
return f"contains({self.clean_coalesce(ref_expressions[0])}, {self.clean_coalesce(ref_expressions[1])})"
|
|
606
609
|
|
|
607
|
-
def tricc_operation_exists(self, ref_expressions):
|
|
610
|
+
def tricc_operation_exists(self, ref_expressions, original_references=None):
|
|
608
611
|
parts = []
|
|
609
612
|
for ref in ref_expressions:
|
|
610
613
|
parts.append(self.tricc_operation_not_equal([self.tricc_operation_coalesce([ref, "''"]), "''"]))
|
|
611
614
|
return self.tricc_operation_and(parts)
|
|
612
615
|
|
|
613
|
-
def tricc_operation_cast_number(self, ref_expressions):
|
|
616
|
+
def tricc_operation_cast_number(self, ref_expressions, original_references=None):
|
|
614
617
|
if isinstance(
|
|
615
618
|
ref_expressions[0],
|
|
616
619
|
(
|
|
@@ -637,7 +640,7 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
637
640
|
else:
|
|
638
641
|
return f"number({ref_expressions[0]})"
|
|
639
642
|
|
|
640
|
-
def tricc_operation_cast_integer(self, ref_expressions):
|
|
643
|
+
def tricc_operation_cast_integer(self, ref_expressions, original_references=None):
|
|
641
644
|
if isinstance(
|
|
642
645
|
ref_expressions[0],
|
|
643
646
|
(
|
|
@@ -664,18 +667,18 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
664
667
|
else:
|
|
665
668
|
return f"int({ref_expressions[0]})"
|
|
666
669
|
|
|
667
|
-
def tricc_operation_zscore(self, ref_expressions):
|
|
670
|
+
def tricc_operation_zscore(self, ref_expressions, original_references=None):
|
|
668
671
|
y, ll, m, s = self.get_zscore_params(ref_expressions)
|
|
669
672
|
# return ((Math.pow((y / m), l) - 1) / (s * l));
|
|
670
673
|
return f"(pow({y} div ({m}), {ll}) -1) div (({s}) div ({ll}))"
|
|
671
674
|
|
|
672
|
-
def tricc_operation_datetime_to_decimal(self, ref_expressions):
|
|
675
|
+
def tricc_operation_datetime_to_decimal(self, ref_expressions, original_references=None):
|
|
673
676
|
return f"decimal-date-time({ref_expressions[0]})"
|
|
674
677
|
|
|
675
|
-
def tricc_operation_round(self, ref_expressions):
|
|
678
|
+
def tricc_operation_round(self, ref_expressions, original_references=None):
|
|
676
679
|
return f"round({ref_expressions[0]})"
|
|
677
680
|
|
|
678
|
-
def tricc_operation_izscore(self, ref_expressions):
|
|
681
|
+
def tricc_operation_izscore(self, ref_expressions, original_references=None):
|
|
679
682
|
z, ll, m, s = self.get_zscore_params(ref_expressions)
|
|
680
683
|
# return (m * (z*s*l-1)^(1/l));
|
|
681
684
|
return f"pow({m} * ({z} * {s} * {ll} -1), 1 div {ll})"
|
|
@@ -747,35 +750,36 @@ class XLSFormStrategy(BaseOutPutStrategy):
|
|
|
747
750
|
else:
|
|
748
751
|
raise NotImplementedError(f"This type of node {r.__class__} is not supported within an operation")
|
|
749
752
|
|
|
750
|
-
def tricc_operation_concatenate(self, ref_expressions):
|
|
753
|
+
def tricc_operation_concatenate(self, ref_expressions, original_references=None):
|
|
751
754
|
return f"concat({','.join(map(str, ref_expressions))})"
|
|
752
755
|
|
|
753
|
-
def tricc_operation_diagnosis_list(self, ref_expressions):
|
|
756
|
+
def tricc_operation_diagnosis_list(self, ref_expressions, original_references=None):
|
|
754
757
|
from tricc_oo.converters.datadictionnary import lookup_codesystems_code
|
|
758
|
+
|
|
755
759
|
parts = []
|
|
756
|
-
for
|
|
757
|
-
if
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
code =
|
|
765
|
-
concept = lookup_codesystems_code(self.codesystems, code)
|
|
766
|
-
if concept:
|
|
767
|
-
display = concept.get("display", code)
|
|
768
|
-
else:
|
|
769
|
-
logger.warning(f"Diagnosis code '{code}' not found in codesystems")
|
|
770
|
-
display = code
|
|
771
|
-
if expr.startswith("${"):
|
|
772
|
-
condition = f"{expr} = 1"
|
|
773
|
-
else:
|
|
774
|
-
condition = f"${{{expr}}} = 1"
|
|
775
|
-
# Always include comma after diagnosis name
|
|
776
|
-
parts.append(f"if({condition}, '{display},', '')")
|
|
760
|
+
for i, orig_ref in enumerate(original_references):
|
|
761
|
+
expr = ref_expressions[i] if ref_expressions and i < len(ref_expressions) else None
|
|
762
|
+
|
|
763
|
+
code = None
|
|
764
|
+
# Use only original references for code lookup
|
|
765
|
+
if isinstance(orig_ref, TriccReference):
|
|
766
|
+
code = orig_ref.value
|
|
767
|
+
elif issubclass(type(orig_ref), TriccNodeBaseModel):
|
|
768
|
+
code = orig_ref.name
|
|
777
769
|
else:
|
|
778
|
-
logger.
|
|
770
|
+
logger.critical(f"Unexpected reference type: {type(orig_ref)}, value: {orig_ref}")
|
|
771
|
+
exit(1)
|
|
772
|
+
|
|
773
|
+
concept = lookup_codesystems_code(self.project.code_systems, code)
|
|
774
|
+
if concept:
|
|
775
|
+
display = getattr(concept, 'display', code)
|
|
776
|
+
else:
|
|
777
|
+
logger.warning(f"Diagnosis code '{code}' not found in codesystems")
|
|
778
|
+
display = code
|
|
779
|
+
|
|
780
|
+
# Always include comma after diagnosis name
|
|
781
|
+
parts.append(f"if({expr} = 1, '{display},', '')")
|
|
782
|
+
|
|
779
783
|
if parts:
|
|
780
784
|
return f"concat({','.join(parts)})"
|
|
781
785
|
return "''"
|
|
@@ -840,7 +840,7 @@ class XLSFormCHTStrategy(XLSFormCDSSStrategy):
|
|
|
840
840
|
logger.error(f"Failed to download ODK Validate JAR: {str(e)}")
|
|
841
841
|
return None
|
|
842
842
|
|
|
843
|
-
def tricc_operation_zscore(self, ref_expressions):
|
|
843
|
+
def tricc_operation_zscore(self, ref_expressions, original_references=None):
|
|
844
844
|
y, ll, m, s = self.get_zscore_params(ref_expressions)
|
|
845
845
|
# return ((Math.pow((y / m), l) - 1) / (s * l));
|
|
846
846
|
return f"""cht:extension-lib('{
|
|
@@ -853,7 +853,7 @@ class XLSFormCHTStrategy(XLSFormCDSSStrategy):
|
|
|
853
853
|
self.clean_coalesce(ref_expressions[3])
|
|
854
854
|
})"""
|
|
855
855
|
|
|
856
|
-
def tricc_operation_izscore(self, ref_expressions):
|
|
856
|
+
def tricc_operation_izscore(self, ref_expressions, original_references=None):
|
|
857
857
|
z, ll, m, s = self.get_zscore_params(ref_expressions)
|
|
858
858
|
# return (m * (z*s*l-1)^(1/l));
|
|
859
859
|
return f"""cht:extension-lib('{
|
|
@@ -866,7 +866,7 @@ class XLSFormCHTStrategy(XLSFormCDSSStrategy):
|
|
|
866
866
|
self.clean_coalesce(ref_expressions[3])
|
|
867
867
|
}, true"""
|
|
868
868
|
|
|
869
|
-
def tricc_operation_drug_dosage(self, ref_expressions):
|
|
869
|
+
def tricc_operation_drug_dosage(self, ref_expressions, original_references=None):
|
|
870
870
|
# drug name
|
|
871
871
|
# age
|
|
872
872
|
# weight
|
|
@@ -5,7 +5,7 @@ tricc_oo/__init__.py,sha256=oWCE1ubmC_6iqaWOMgTei4eXVQgV202Ia-tXS1NnW_4,139
|
|
|
5
5
|
tricc_oo/converters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
6
|
tricc_oo/converters/codesystem_to_ocl.py,sha256=V_oZNVUVaYHgzJtDiBMSrvIJnBWmDNFBDTTHEkOfpXk,6151
|
|
7
7
|
tricc_oo/converters/cql_to_operation.py,sha256=1vNmGkI9OhGNTH6EH5hC1SnVVbIG5ps8dksGhZ0Vgw8,14543
|
|
8
|
-
tricc_oo/converters/datadictionnary.py,sha256=
|
|
8
|
+
tricc_oo/converters/datadictionnary.py,sha256=JPcqjlohZJL1R6-fXzpFUNoOFe_W3OnG2uSjsOQN5-Y,3693
|
|
9
9
|
tricc_oo/converters/drawio_type_map.py,sha256=Zp8J9iHNSJkIVrmRSM0_d4vA1X8wFPLKb8nCMPUMXKU,9114
|
|
10
10
|
tricc_oo/converters/tricc_to_xls_form.py,sha256=39hwWgYNitGE-AuKtjUwNLz39tEpwc7nd9gT_gw5wjc,3842
|
|
11
11
|
tricc_oo/converters/utils.py,sha256=JZrtrvvOfXwdkw49pKauzinOcauWwsy-CVcw36TjyLo,1684
|
|
@@ -36,16 +36,16 @@ tricc_oo/strategies/output/fhir_form.py,sha256=hbL921pe1Doun4IQrJuZ_Sq2fCh98G3gr
|
|
|
36
36
|
tricc_oo/strategies/output/html_form.py,sha256=qSleEZOMV_-Z04y-i-ucyd5rgAYWAyjPwMrw0IHtCRM,8604
|
|
37
37
|
tricc_oo/strategies/output/openmrs_form.py,sha256=ne6TwAyhafR-WDs27QTKKFl85VD5sij_VEJtK6ZjOIE,28996
|
|
38
38
|
tricc_oo/strategies/output/spice.py,sha256=QMeoismVC3PdbvwTK0PtUjWX9jl9780fbQIXn76fMXw,10761
|
|
39
|
-
tricc_oo/strategies/output/xls_form.py,sha256=
|
|
39
|
+
tricc_oo/strategies/output/xls_form.py,sha256=CafduxDYH88myZa471_d0Ya0FEPQV0ArS8zSdfTeY-k,33335
|
|
40
40
|
tricc_oo/strategies/output/xlsform_cdss.py,sha256=X00Lt5MzV8TX14dR4dFI1MqllI5S1e13bKbeysWM9uA,17435
|
|
41
|
-
tricc_oo/strategies/output/xlsform_cht.py,sha256=
|
|
41
|
+
tricc_oo/strategies/output/xlsform_cht.py,sha256=lY1xIDxqYxl_lYNVCl3msXZL88No49yEVCpahcHGOn0,28675
|
|
42
42
|
tricc_oo/strategies/output/xlsform_cht_hf.py,sha256=xm6SKirV3nMZvM2w54_zJcXAeAgAkq-EEqGEjnOWv6c,988
|
|
43
43
|
tricc_oo/visitors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
44
44
|
tricc_oo/visitors/tricc.py,sha256=ArvDNcuzIQNJpYyT1vB_B9Gxc2m5YAxg9ss_orpMqK0,111780
|
|
45
45
|
tricc_oo/visitors/utils.py,sha256=j83aAq5s5atXi3OC0jc_uJd54a8XrHHmizeeEbWZQJg,421
|
|
46
46
|
tricc_oo/visitors/xform_pd.py,sha256=ryAnI3V9x3eTmJ2LNsUZfvl0_yfCqo6oBgeSu-WPqaE,9613
|
|
47
|
-
tricc_oo-1.6.
|
|
48
|
-
tricc_oo-1.6.
|
|
49
|
-
tricc_oo-1.6.
|
|
50
|
-
tricc_oo-1.6.
|
|
51
|
-
tricc_oo-1.6.
|
|
47
|
+
tricc_oo-1.6.19.dist-info/licenses/LICENSE,sha256=Pz2eACSxkhsGfW9_iN60pgy-enjnbGTj8df8O3ebnQQ,16726
|
|
48
|
+
tricc_oo-1.6.19.dist-info/METADATA,sha256=F67u0ot5zTwh4H5_-RJUCHXcEaGG3LITv2JsqH8woFE,8600
|
|
49
|
+
tricc_oo-1.6.19.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
|
|
50
|
+
tricc_oo-1.6.19.dist-info/top_level.txt,sha256=NvbfMNAiy9m4b1unBsqpeOQWh4IgA1Xa33BtKA4abxk,15
|
|
51
|
+
tricc_oo-1.6.19.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|