@andes/fhir 1.12.0 → 1.12.1-beta.2

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 (127) hide show
  1. package/LICENSE +674 -674
  2. package/README.md +2 -2
  3. package/{src → dist}/data/patient.json +192 -192
  4. package/dist/helpers/patientFactory.d.ts +26 -0
  5. package/dist/{src/helpers → helpers}/patientFactory.js +35 -31
  6. package/dist/index.d.ts +15 -0
  7. package/dist/index.js +55 -52
  8. package/dist/lib/allergyIntolerance.d.ts +29 -0
  9. package/dist/{src/lib → lib}/allergyIntolerance.js +39 -40
  10. package/dist/lib/bundle.d.ts +14 -0
  11. package/dist/{src/lib → lib}/bundle.js +25 -26
  12. package/dist/lib/composition.d.ts +47 -0
  13. package/dist/{src/lib → lib}/composition.js +152 -152
  14. package/dist/lib/condition.d.ts +53 -0
  15. package/dist/{src/lib → lib}/condition.js +79 -80
  16. package/dist/lib/config.d.ts +9 -0
  17. package/dist/{src/lib → lib}/config.js +27 -21
  18. package/dist/lib/config.test.d.ts +1 -0
  19. package/dist/lib/config.test.js +19 -0
  20. package/dist/lib/device.d.ts +22 -0
  21. package/dist/{src/lib → lib}/device.js +38 -39
  22. package/dist/lib/device.test.d.ts +1 -0
  23. package/dist/lib/device.test.js +9 -0
  24. package/dist/lib/document-reference.d.ts +71 -0
  25. package/dist/{src/lib → lib}/document-reference.js +106 -107
  26. package/dist/lib/immunization.d.ts +44 -0
  27. package/dist/{src/lib → lib}/immunization.js +67 -68
  28. package/dist/lib/medication.d.ts +25 -0
  29. package/{src/lib/medication.ts → dist/lib/medication.js} +64 -61
  30. package/dist/lib/medicationRequest.d.ts +42 -0
  31. package/{src/lib/medicationRequest.ts → dist/lib/medicationRequest.js} +103 -100
  32. package/dist/lib/medicationStatement.d.ts +47 -0
  33. package/dist/{src/lib → lib}/medicationStatement.js +55 -56
  34. package/dist/lib/organization.d.ts +6 -0
  35. package/dist/lib/organization.js +93 -0
  36. package/dist/lib/patient.d.ts +14 -0
  37. package/dist/lib/patient.js +465 -0
  38. package/dist/lib/patient.test.d.ts +1 -0
  39. package/dist/{src/lib → lib}/patient.test.js +132 -113
  40. package/dist/lib/practitioner.d.ts +6 -0
  41. package/dist/lib/practitioner.js +186 -0
  42. package/dist/types/andes/organization.types.d.ts +39 -0
  43. package/dist/types/andes/organization.types.js +2 -0
  44. package/dist/types/andes/patient.types.d.ts +57 -0
  45. package/dist/types/andes/patient.types.js +2 -0
  46. package/dist/types/andes/practitioner.types.d.ts +72 -0
  47. package/dist/types/andes/practitioner.types.js +3 -0
  48. package/package.json +56 -45
  49. package/.circleci/config.yml +0 -72
  50. package/.editorconfig +0 -14
  51. package/.env.example +0 -2
  52. package/.gitattributes +0 -1
  53. package/.github/CODEOWNERS +0 -1
  54. package/.github/labeler.yml +0 -11
  55. package/.github/pull_request_template.md +0 -28
  56. package/.github/workflows/build_test.yml +0 -14
  57. package/.github/workflows/has_conflicts.yml +0 -13
  58. package/.vscode/settings.json +0 -2
  59. package/CHANGELOG.md +0 -351
  60. package/coverage/clover.xml +0 -209
  61. package/coverage/coverage-final.json +0 -5
  62. package/coverage/lcov-report/base.css +0 -224
  63. package/coverage/lcov-report/block-navigation.js +0 -87
  64. package/coverage/lcov-report/config.ts.html +0 -136
  65. package/coverage/lcov-report/device.ts.html +0 -193
  66. package/coverage/lcov-report/favicon.png +0 -0
  67. package/coverage/lcov-report/helpers/index.html +0 -116
  68. package/coverage/lcov-report/helpers/patientFactory.ts.html +0 -124
  69. package/coverage/lcov-report/index.html +0 -131
  70. package/coverage/lcov-report/lib/config.ts.html +0 -136
  71. package/coverage/lcov-report/lib/device.ts.html +0 -193
  72. package/coverage/lcov-report/lib/index.html +0 -146
  73. package/coverage/lcov-report/lib/patient.ts.html +0 -1318
  74. package/coverage/lcov-report/patient.ts.html +0 -1207
  75. package/coverage/lcov-report/prettify.css +0 -1
  76. package/coverage/lcov-report/prettify.js +0 -2
  77. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  78. package/coverage/lcov-report/sorter.js +0 -210
  79. package/coverage/lcov.info +0 -425
  80. package/dist/index.js.map +0 -1
  81. package/dist/src/data/patient.json +0 -192
  82. package/dist/src/helpers/patientFactory.js.map +0 -1
  83. package/dist/src/lib/allergyIntolerance.js.map +0 -1
  84. package/dist/src/lib/bundle.js.map +0 -1
  85. package/dist/src/lib/composition.js.map +0 -1
  86. package/dist/src/lib/condition.js.map +0 -1
  87. package/dist/src/lib/config.js.map +0 -1
  88. package/dist/src/lib/config.test.js +0 -13
  89. package/dist/src/lib/config.test.js.map +0 -1
  90. package/dist/src/lib/device.js.map +0 -1
  91. package/dist/src/lib/device.test.js +0 -10
  92. package/dist/src/lib/device.test.js.map +0 -1
  93. package/dist/src/lib/document-reference.js.map +0 -1
  94. package/dist/src/lib/immunization.js.map +0 -1
  95. package/dist/src/lib/medication.js +0 -65
  96. package/dist/src/lib/medication.js.map +0 -1
  97. package/dist/src/lib/medicationRequest.js +0 -103
  98. package/dist/src/lib/medicationRequest.js.map +0 -1
  99. package/dist/src/lib/medicationStatement.js.map +0 -1
  100. package/dist/src/lib/organization.js +0 -91
  101. package/dist/src/lib/organization.js.map +0 -1
  102. package/dist/src/lib/patient.js +0 -397
  103. package/dist/src/lib/patient.js.map +0 -1
  104. package/dist/src/lib/patient.test.js.map +0 -1
  105. package/dist/src/lib/practitioner.js +0 -161
  106. package/dist/src/lib/practitioner.js.map +0 -1
  107. package/index.ts +0 -30
  108. package/jest.config.js +0 -12
  109. package/release.config.js +0 -74
  110. package/src/helpers/patientFactory.ts +0 -13
  111. package/src/lib/allergyIntolerance.ts +0 -36
  112. package/src/lib/bundle.ts +0 -19
  113. package/src/lib/composition.ts +0 -153
  114. package/src/lib/condition.ts +0 -80
  115. package/src/lib/config.test.ts +0 -13
  116. package/src/lib/config.ts +0 -17
  117. package/src/lib/device.test.ts +0 -9
  118. package/src/lib/device.ts +0 -36
  119. package/src/lib/document-reference.ts +0 -102
  120. package/src/lib/immunization.ts +0 -64
  121. package/src/lib/medicationStatement.ts +0 -52
  122. package/src/lib/organization.ts +0 -89
  123. package/src/lib/patient.test.ts +0 -101
  124. package/src/lib/patient.ts +0 -411
  125. package/src/lib/practitioner.ts +0 -157
  126. package/tsconfig.test.json +0 -18
  127. package/tslint.json +0 -139
@@ -1,80 +1,79 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.encode = void 0;
4
- /**
5
- *
6
- * @param registro Registro RUP a transformar a FHIR
7
- */
8
- function encode(patientReference, registro) {
9
- return {
10
- id: registro._id,
11
- category: [
12
- {
13
- coding: [
14
- {
15
- system: 'http://loinc.org',
16
- display: 'Problem',
17
- code: '75326-9'
18
- }
19
- ]
20
- }
21
- ],
22
- subject: {
23
- reference: patientReference
24
- },
25
- onsetDateTime: registro.createdAt.getFullYear(),
26
- resourceType: 'Condition',
27
- // Por el momento ponemos 'confirmed'
28
- verificationStatus: {
29
- coding: [
30
- {
31
- system: 'http://terminology.hl7.org//CodeSystem//condition-ver-status',
32
- code: 'confirmed'
33
- }
34
- ]
35
- },
36
- code: {
37
- coding: [
38
- {
39
- code: registro.concepto.conceptId,
40
- system: 'http://snomed.info/sct',
41
- display: registro.concepto.fsn
42
- }
43
- ]
44
- },
45
- recordedDate: registro.createdAt,
46
- meta: {
47
- profile: [
48
- 'http://hl7.org/fhir/uv/ips/StructureDefinition/condition-uv-ips'
49
- ]
50
- },
51
- text: {
52
- status: 'generated',
53
- div: `<div xmlns="http://www.w3.org/1999/xhtml"><p><b>Generated Narrative with Details</b></p><p><b>id</b>: Problema: </p><p>${registro.nombre}</p></div>`
54
- },
55
- severity: {
56
- coding: [
57
- {
58
- system: 'http://loinc.org',
59
- display: 'Moderate',
60
- code: 'LA6751-7'
61
- }
62
- ]
63
- },
64
- clinicalStatus: {
65
- coding: [
66
- {
67
- system: 'http://terminology.hl7.org/CodeSystem/condition-clinical',
68
- code: registro.valor.estado // [TODO] Tenemos este dato.
69
- },
70
- {
71
- system: 'http://terminology.hl7.org/CodeSystem/evolution',
72
- // code: registro.valor.evolucion.replace('<p>','').replace('</p>','') // [TODO] Tenemos este dato.
73
- code: registro.valor.evolucion // [TODO] Tenemos este dato.
74
- }
75
- ]
76
- }
77
- };
78
- }
79
- exports.encode = encode;
80
- //# sourceMappingURL=condition.js.map
1
+ "use strict";
2
+ /**
3
+ *
4
+ * @param registro Registro RUP a transformar a FHIR
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.encode = void 0;
8
+ function encode(patientReference, registro) {
9
+ return {
10
+ id: registro._id,
11
+ category: [
12
+ {
13
+ coding: [
14
+ {
15
+ system: 'http://loinc.org',
16
+ display: 'Problem',
17
+ code: '75326-9'
18
+ }
19
+ ]
20
+ }
21
+ ],
22
+ subject: {
23
+ reference: patientReference
24
+ },
25
+ onsetDateTime: registro.createdAt.getFullYear(), // [TODO] No va solo el año
26
+ resourceType: 'Condition',
27
+ // Por el momento ponemos 'confirmed'
28
+ verificationStatus: {
29
+ coding: [
30
+ {
31
+ system: 'http://terminology.hl7.org//CodeSystem//condition-ver-status',
32
+ code: 'confirmed'
33
+ }
34
+ ]
35
+ },
36
+ code: {
37
+ coding: [
38
+ {
39
+ code: registro.concepto.conceptId,
40
+ system: 'http://snomed.info/sct',
41
+ display: registro.concepto.fsn
42
+ }
43
+ ]
44
+ },
45
+ recordedDate: registro.createdAt,
46
+ meta: {
47
+ profile: [
48
+ 'http://hl7.org/fhir/uv/ips/StructureDefinition/condition-uv-ips'
49
+ ]
50
+ },
51
+ text: {
52
+ status: 'generated',
53
+ div: `<div xmlns="http://www.w3.org/1999/xhtml"><p><b>Generated Narrative with Details</b></p><p><b>id</b>: Problema: </p><p>${registro.nombre}</p></div>`
54
+ },
55
+ severity: {
56
+ coding: [
57
+ {
58
+ system: 'http://loinc.org',
59
+ display: 'Moderate',
60
+ code: 'LA6751-7'
61
+ }
62
+ ]
63
+ },
64
+ clinicalStatus: {
65
+ coding: [
66
+ {
67
+ system: 'http://terminology.hl7.org/CodeSystem/condition-clinical',
68
+ code: registro.valor.estado // [TODO] Tenemos este dato.
69
+ },
70
+ {
71
+ system: 'http://terminology.hl7.org/CodeSystem/evolution',
72
+ // code: registro.valor.evolucion.replace('<p>','').replace('</p>','') // [TODO] Tenemos este dato.
73
+ code: registro.valor.evolucion // [TODO] Tenemos este dato.
74
+ }
75
+ ]
76
+ }
77
+ };
78
+ }
79
+ exports.encode = encode;
@@ -0,0 +1,9 @@
1
+ export declare function initialize(config: {
2
+ dominio: string;
3
+ }): void;
4
+ export declare function getDominio(): string;
5
+ export declare function makeUrl(resource: string, id?: string | null): string;
6
+ /**
7
+ * Reseteo explícito para tests
8
+ */
9
+ export declare function __reset(): void;
@@ -1,21 +1,27 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeUrl = exports.getDominio = exports.initialize = void 0;
4
- let DOMINIO = 'andes.gob.ar';
5
- function initialize({ dominio }) {
6
- DOMINIO = dominio;
7
- }
8
- exports.initialize = initialize;
9
- function getDominio() {
10
- return DOMINIO;
11
- }
12
- exports.getDominio = getDominio;
13
- function makeUrl(resource, id = null) {
14
- let url = `${DOMINIO}/${resource}`;
15
- if (id) {
16
- url += `/${id}`;
17
- }
18
- return url;
19
- }
20
- exports.makeUrl = makeUrl;
21
- //# sourceMappingURL=config.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.__reset = exports.makeUrl = exports.getDominio = exports.initialize = void 0;
4
+ let DOMINIO = 'andes.gob.ar';
5
+ function initialize(config) {
6
+ DOMINIO = config.dominio;
7
+ }
8
+ exports.initialize = initialize;
9
+ function getDominio() {
10
+ return DOMINIO;
11
+ }
12
+ exports.getDominio = getDominio;
13
+ function makeUrl(resource, id) {
14
+ let url = `${DOMINIO}/${resource}`;
15
+ if (id) {
16
+ url += `/${id}`;
17
+ }
18
+ return url;
19
+ }
20
+ exports.makeUrl = makeUrl;
21
+ /**
22
+ * Reseteo explícito para tests
23
+ */
24
+ function __reset() {
25
+ DOMINIO = 'andes.gob.ar';
26
+ }
27
+ exports.__reset = __reset;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const config_1 = require("./config");
4
+ beforeEach(() => {
5
+ (0, config_1.__reset)(); // Resetea el dominio antes de cada test
6
+ });
7
+ test('Get default domain', () => {
8
+ expect((0, config_1.getDominio)()).toBe('andes.gob.ar');
9
+ });
10
+ test('Get default URL without id', () => {
11
+ expect((0, config_1.makeUrl)('patient')).toBe('andes.gob.ar/patient');
12
+ });
13
+ test('Get default URL with id', () => {
14
+ expect((0, config_1.makeUrl)('patient', '123456')).toBe('andes.gob.ar/patient/123456');
15
+ });
16
+ test('Initialize domain modifies getDominio', () => {
17
+ (0, config_1.initialize)({ dominio: 'nuevo-dominio.com' });
18
+ expect((0, config_1.getDominio)()).toBe('nuevo-dominio.com');
19
+ });
@@ -0,0 +1,22 @@
1
+ export declare function encode(): {
2
+ resourceType: string;
3
+ id: string;
4
+ identifier: {
5
+ system: string;
6
+ value: string;
7
+ }[];
8
+ type: {
9
+ coding: {
10
+ system: string;
11
+ code: string;
12
+ display: string;
13
+ }[];
14
+ };
15
+ owner: {
16
+ reference: string;
17
+ };
18
+ deviceName: {
19
+ name: string;
20
+ type: string;
21
+ }[];
22
+ };
@@ -1,39 +1,38 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.encode = void 0;
4
- const config_1 = require("./config");
5
- function encode() {
6
- /**
7
- * HARDCODE DEVICE
8
- */
9
- return {
10
- resourceType: 'Device',
11
- id: 'device-01',
12
- identifier: [
13
- {
14
- system: config_1.makeUrl('Device'),
15
- value: 'device-01'
16
- }
17
- ],
18
- type: {
19
- coding: [
20
- {
21
- system: 'http://snomed.info/sct',
22
- code: '462894001',
23
- display: 'software de aplicación de sistema de información de historias clínicas de pacientes (objeto físico)'
24
- }
25
- ]
26
- },
27
- owner: {
28
- reference: 'http://argentina.gob.ar/salud/refes/14999912399913'
29
- },
30
- deviceName: [
31
- {
32
- name: 'Sistema de Aplicaciones Neuquinas de Salud (ANDES)',
33
- type: 'manufacturer-name'
34
- }
35
- ]
36
- };
37
- }
38
- exports.encode = encode;
39
- //# sourceMappingURL=device.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.encode = void 0;
4
+ const config_1 = require("./config");
5
+ function encode() {
6
+ /**
7
+ * HARDCODE DEVICE
8
+ */
9
+ return {
10
+ resourceType: 'Device',
11
+ id: 'device-01',
12
+ identifier: [
13
+ {
14
+ system: (0, config_1.makeUrl)('Device'),
15
+ value: 'device-01'
16
+ }
17
+ ],
18
+ type: {
19
+ coding: [
20
+ {
21
+ system: 'http://snomed.info/sct',
22
+ code: '462894001',
23
+ display: 'software de aplicación de sistema de información de historias clínicas de pacientes (objeto físico)'
24
+ }
25
+ ]
26
+ },
27
+ owner: {
28
+ reference: 'http://argentina.gob.ar/salud/refes/14999912399913'
29
+ },
30
+ deviceName: [
31
+ {
32
+ name: 'Sistema de Aplicaciones Neuquinas de Salud (ANDES)',
33
+ type: 'manufacturer-name'
34
+ }
35
+ ]
36
+ };
37
+ }
38
+ exports.encode = encode;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const device_1 = require("./device");
4
+ test('Device type 1', () => {
5
+ expect((0, device_1.encode)().id).toBe('device-01');
6
+ });
7
+ test('Device Name', () => {
8
+ expect((0, device_1.encode)().deviceName[0].name).toBe('Sistema de Aplicaciones Neuquinas de Salud (ANDES)');
9
+ });
@@ -0,0 +1,71 @@
1
+ export declare function encode(ID: any, author: any, organization: any, patient: any, binaryURL: any): {
2
+ resourceType: string;
3
+ id: any;
4
+ meta: {
5
+ lastUpdated: string;
6
+ };
7
+ contained: {
8
+ resourceType: string;
9
+ id: any;
10
+ identifier: {
11
+ system: string;
12
+ value: any;
13
+ }[];
14
+ }[];
15
+ custodian: {
16
+ identifier: {
17
+ system: string;
18
+ value: string;
19
+ };
20
+ };
21
+ masterIdentifier: {
22
+ system: string;
23
+ value: any;
24
+ };
25
+ identifier: {
26
+ system: string;
27
+ value: any;
28
+ }[];
29
+ status: string;
30
+ type: {
31
+ coding: {
32
+ system: string;
33
+ code: string;
34
+ }[];
35
+ };
36
+ subject: {
37
+ reference: string;
38
+ };
39
+ securityLabel: {
40
+ coding: {
41
+ system: string;
42
+ code: string;
43
+ }[];
44
+ }[];
45
+ content: {
46
+ attachment: {
47
+ id: string;
48
+ url: any;
49
+ };
50
+ }[];
51
+ context: {
52
+ event: {
53
+ coding: {
54
+ system: string;
55
+ code: string;
56
+ }[];
57
+ }[];
58
+ facilityType: {
59
+ coding: {
60
+ system: string;
61
+ code: string;
62
+ }[];
63
+ };
64
+ practiceSetting: {
65
+ coding: {
66
+ system: string;
67
+ code: string;
68
+ }[];
69
+ };
70
+ };
71
+ };
@@ -1,107 +1,106 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.encode = void 0;
7
- const moment_1 = __importDefault(require("moment"));
8
- const config_1 = require("./config");
9
- function encode(ID, author, organization, patient, binaryURL) {
10
- return {
11
- resourceType: 'DocumentReference',
12
- id: ID,
13
- meta: {
14
- lastUpdated: moment_1.default().format()
15
- },
16
- contained: [
17
- {
18
- resourceType: 'Practitioner',
19
- id: author.id,
20
- identifier: [{
21
- system: config_1.makeUrl('Device'),
22
- value: author.id
23
- }]
24
- },
25
- {
26
- resourceType: 'Organization',
27
- id: organization.id,
28
- identifier: [{
29
- system: config_1.makeUrl('Organization'),
30
- value: organization.id
31
- }]
32
- }
33
- ],
34
- custodian: {
35
- identifier: {
36
- system: 'https://federador.msal.gob.ar/uri',
37
- value: config_1.makeUrl('Organization', organization.id)
38
- }
39
- },
40
- masterIdentifier: {
41
- system: config_1.makeUrl('documentos_versiones'),
42
- value: ID
43
- },
44
- identifier: [{
45
- system: config_1.makeUrl('documentos'),
46
- value: ID
47
- }],
48
- status: 'current',
49
- type: {
50
- coding: [
51
- {
52
- system: 'http://loinc.org',
53
- code: '60591-5'
54
- }
55
- ]
56
- },
57
- subject: {
58
- reference: config_1.makeUrl('Patient', patient.id),
59
- },
60
- // author: [
61
- // {
62
- // reference: makeUrl('Device', author.id),
63
- // },
64
- // {
65
- // reference: makeUrl('Organization', organization.id),
66
- // }
67
- // ],
68
- securityLabel: [{
69
- coding: [{
70
- system: 'https://saludddigital.gob.ar/nivelesconfidencialidad',
71
- code: 'N'
72
- }]
73
- }],
74
- content: [{
75
- attachment: {
76
- id: 'PRINCIPAL',
77
- url: binaryURL
78
- }
79
- }],
80
- context: {
81
- event: [{
82
- coding: [{
83
- system: 'https://saludddigital.gob.ar/tiposevento',
84
- code: 'CIR'
85
- }]
86
- }],
87
- // period: {
88
- // start: '2019-04-03T10:30:00+03:00',
89
- // end: '2019-04-05T10:30:00+03:00'
90
- // },
91
- facilityType: {
92
- coding: [{
93
- system: 'https://saludddigital.gob.ar/tipoprestador',
94
- code: 'INI'
95
- }]
96
- },
97
- practiceSetting: {
98
- coding: [{
99
- system: 'https://saludddigital.gob.ar/especialidades',
100
- code: 'CLM'
101
- }]
102
- }
103
- }
104
- };
105
- }
106
- exports.encode = encode;
107
- //# sourceMappingURL=document-reference.js.map
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.encode = void 0;
7
+ const moment_1 = __importDefault(require("moment"));
8
+ const config_1 = require("./config");
9
+ function encode(ID, author, organization, patient, binaryURL) {
10
+ return {
11
+ resourceType: 'DocumentReference',
12
+ id: ID,
13
+ meta: {
14
+ lastUpdated: (0, moment_1.default)().format()
15
+ },
16
+ contained: [
17
+ {
18
+ resourceType: 'Practitioner',
19
+ id: author.id,
20
+ identifier: [{
21
+ system: (0, config_1.makeUrl)('Device'),
22
+ value: author.id
23
+ }]
24
+ },
25
+ {
26
+ resourceType: 'Organization',
27
+ id: organization.id,
28
+ identifier: [{
29
+ system: (0, config_1.makeUrl)('Organization'),
30
+ value: organization.id
31
+ }]
32
+ }
33
+ ],
34
+ custodian: {
35
+ identifier: {
36
+ system: 'https://federador.msal.gob.ar/uri',
37
+ value: (0, config_1.makeUrl)('Organization', organization.id)
38
+ }
39
+ },
40
+ masterIdentifier: {
41
+ system: (0, config_1.makeUrl)('documentos_versiones'),
42
+ value: ID
43
+ },
44
+ identifier: [{
45
+ system: (0, config_1.makeUrl)('documentos'),
46
+ value: ID
47
+ }],
48
+ status: 'current',
49
+ type: {
50
+ coding: [
51
+ {
52
+ system: 'http://loinc.org',
53
+ code: '60591-5'
54
+ }
55
+ ]
56
+ },
57
+ subject: {
58
+ reference: (0, config_1.makeUrl)('Patient', patient.id),
59
+ },
60
+ // author: [
61
+ // {
62
+ // reference: makeUrl('Device', author.id),
63
+ // },
64
+ // {
65
+ // reference: makeUrl('Organization', organization.id),
66
+ // }
67
+ // ],
68
+ securityLabel: [{
69
+ coding: [{
70
+ system: 'https://saludddigital.gob.ar/nivelesconfidencialidad',
71
+ code: 'N'
72
+ }]
73
+ }],
74
+ content: [{
75
+ attachment: {
76
+ id: 'PRINCIPAL',
77
+ url: binaryURL
78
+ }
79
+ }],
80
+ context: {
81
+ event: [{
82
+ coding: [{
83
+ system: 'https://saludddigital.gob.ar/tiposevento',
84
+ code: 'CIR'
85
+ }]
86
+ }],
87
+ // period: {
88
+ // start: '2019-04-03T10:30:00+03:00',
89
+ // end: '2019-04-05T10:30:00+03:00'
90
+ // },
91
+ facilityType: {
92
+ coding: [{
93
+ system: 'https://saludddigital.gob.ar/tipoprestador',
94
+ code: 'INI'
95
+ }]
96
+ },
97
+ practiceSetting: {
98
+ coding: [{
99
+ system: 'https://saludddigital.gob.ar/especialidades',
100
+ code: 'CLM'
101
+ }]
102
+ }
103
+ }
104
+ };
105
+ }
106
+ exports.encode = encode;