@muni-sanfer/types-gestor-documental 0.0.1-beta.4 → 0.0.1-beta.41

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 (232) hide show
  1. package/dist/base/entities.d.ts +1024 -4
  2. package/dist/base/entities.js +248 -1
  3. package/dist/contracts/accessRequest.contract.d.ts +109 -0
  4. package/dist/contracts/accessRequest.contract.js +12 -0
  5. package/dist/contracts/archivalSeries.contract.d.ts +56 -0
  6. package/dist/contracts/archivalSeries.contract.js +11 -0
  7. package/dist/contracts/audit.contract.d.ts +32 -0
  8. package/dist/contracts/audit.contract.js +8 -0
  9. package/dist/contracts/caseFile.contract.d.ts +124 -1
  10. package/dist/contracts/caseFile.contract.js +10 -0
  11. package/dist/contracts/dataProtection.contract.d.ts +256 -0
  12. package/dist/contracts/dataProtection.contract.js +23 -0
  13. package/dist/contracts/desk.contract.d.ts +88 -0
  14. package/dist/contracts/desk.contract.js +13 -0
  15. package/dist/contracts/document.contract.d.ts +219 -3
  16. package/dist/contracts/document.contract.js +15 -0
  17. package/dist/contracts/documentTemplate.contract.d.ts +58 -0
  18. package/dist/contracts/documentTemplate.contract.js +12 -0
  19. package/dist/contracts/documentType.contract.d.ts +13 -1
  20. package/dist/contracts/draftingRequest.contract.d.ts +94 -0
  21. package/dist/contracts/draftingRequest.contract.js +11 -0
  22. package/dist/contracts/holiday.contract.d.ts +30 -0
  23. package/dist/contracts/holiday.contract.js +9 -0
  24. package/dist/contracts/index.d.ts +265 -1
  25. package/dist/contracts/index.js +69 -0
  26. package/dist/contracts/indicators.contract.d.ts +103 -0
  27. package/dist/contracts/indicators.contract.js +15 -0
  28. package/dist/contracts/internalReview.contract.d.ts +86 -0
  29. package/dist/contracts/internalReview.contract.js +12 -0
  30. package/dist/contracts/issuingEntity.contract.d.ts +52 -0
  31. package/dist/contracts/issuingEntity.contract.js +11 -0
  32. package/dist/contracts/mailIntake.contract.d.ts +61 -0
  33. package/dist/contracts/mailIntake.contract.js +15 -0
  34. package/dist/contracts/partsOffice.contract.d.ts +263 -0
  35. package/dist/contracts/partsOffice.contract.js +27 -0
  36. package/dist/contracts/push.contract.d.ts +59 -0
  37. package/dist/contracts/push.contract.js +14 -0
  38. package/dist/contracts/registerBook.contract.d.ts +27 -0
  39. package/dist/contracts/registerBook.contract.js +8 -0
  40. package/dist/contracts/repositoryExport.contract.d.ts +57 -0
  41. package/dist/contracts/repositoryExport.contract.js +13 -0
  42. package/dist/contracts/retention.contract.d.ts +58 -0
  43. package/dist/contracts/retention.contract.js +11 -0
  44. package/dist/contracts/scan.contract.d.ts +63 -0
  45. package/dist/contracts/scan.contract.js +12 -0
  46. package/dist/contracts/signatureBatch.contract.d.ts +109 -0
  47. package/dist/contracts/signatureBatch.contract.js +12 -0
  48. package/dist/contracts/signatureCheck.contract.d.ts +14 -0
  49. package/dist/contracts/signatureCheck.contract.js +7 -0
  50. package/dist/contracts/textSnippet.contract.d.ts +51 -0
  51. package/dist/contracts/textSnippet.contract.js +11 -0
  52. package/dist/contracts/transparency.contract.d.ts +96 -0
  53. package/dist/contracts/transparency.contract.js +12 -0
  54. package/dist/contracts/workFolder.contract.d.ts +114 -0
  55. package/dist/contracts/workFolder.contract.js +16 -0
  56. package/dist/entities/accessRequest/accessRequest.entity.d.ts +73 -0
  57. package/dist/entities/accessRequest/accessRequest.entity.js +2 -0
  58. package/dist/entities/accessRequest/index.d.ts +1 -0
  59. package/dist/entities/accessRequest/index.js +17 -0
  60. package/dist/entities/archivalSeries/archivalSeries.entity.d.ts +32 -0
  61. package/dist/entities/archivalSeries/archivalSeries.entity.js +2 -0
  62. package/dist/entities/archivalSeries/index.d.ts +1 -0
  63. package/dist/entities/archivalSeries/index.js +17 -0
  64. package/dist/entities/audit/audit.entity.d.ts +30 -0
  65. package/dist/entities/audit/audit.entity.js +2 -0
  66. package/dist/entities/audit/index.d.ts +1 -0
  67. package/dist/entities/audit/index.js +17 -0
  68. package/dist/entities/caseFile/caseFile.entity.d.ts +135 -0
  69. package/dist/entities/dataProtection/dataProtection.entity.d.ts +180 -0
  70. package/dist/entities/dataProtection/dataProtection.entity.js +2 -0
  71. package/dist/entities/dataProtection/index.d.ts +1 -0
  72. package/dist/entities/dataProtection/index.js +17 -0
  73. package/dist/entities/desk/desk.entity.d.ts +25 -0
  74. package/dist/entities/desk/desk.entity.js +2 -0
  75. package/dist/entities/desk/index.d.ts +1 -0
  76. package/dist/entities/desk/index.js +17 -0
  77. package/dist/entities/document/document.entity.d.ts +436 -1
  78. package/dist/entities/documentTemplate/documentTemplate.entity.d.ts +51 -0
  79. package/dist/entities/documentTemplate/documentTemplate.entity.js +2 -0
  80. package/dist/entities/documentTemplate/index.d.ts +1 -0
  81. package/dist/entities/documentTemplate/index.js +17 -0
  82. package/dist/entities/documentType/documentType.entity.d.ts +25 -0
  83. package/dist/entities/draftingRequest/draftingRequest.entity.d.ts +76 -0
  84. package/dist/entities/draftingRequest/draftingRequest.entity.js +2 -0
  85. package/dist/entities/draftingRequest/index.d.ts +1 -0
  86. package/dist/entities/draftingRequest/index.js +17 -0
  87. package/dist/entities/holiday/holiday.entity.d.ts +10 -0
  88. package/dist/entities/holiday/holiday.entity.js +2 -0
  89. package/dist/entities/holiday/index.d.ts +1 -0
  90. package/dist/entities/holiday/index.js +17 -0
  91. package/dist/entities/index.d.ts +23 -0
  92. package/dist/entities/index.js +23 -0
  93. package/dist/entities/indicators/index.d.ts +1 -0
  94. package/dist/entities/indicators/index.js +17 -0
  95. package/dist/entities/indicators/indicators.entity.d.ts +152 -0
  96. package/dist/entities/indicators/indicators.entity.js +2 -0
  97. package/dist/entities/internalReview/index.d.ts +1 -0
  98. package/dist/entities/internalReview/index.js +17 -0
  99. package/dist/entities/internalReview/internalReview.entity.d.ts +59 -0
  100. package/dist/entities/internalReview/internalReview.entity.js +2 -0
  101. package/dist/entities/issuingEntity/index.d.ts +1 -0
  102. package/dist/entities/issuingEntity/index.js +17 -0
  103. package/dist/entities/issuingEntity/issuingEntity.entity.d.ts +20 -0
  104. package/dist/entities/issuingEntity/issuingEntity.entity.js +2 -0
  105. package/dist/entities/mailIntake/index.d.ts +1 -0
  106. package/dist/entities/mailIntake/index.js +17 -0
  107. package/dist/entities/mailIntake/mailIntake.entity.d.ts +51 -0
  108. package/dist/entities/mailIntake/mailIntake.entity.js +2 -0
  109. package/dist/entities/partsOffice/index.d.ts +1 -0
  110. package/dist/entities/partsOffice/index.js +17 -0
  111. package/dist/entities/partsOffice/partsOffice.entity.d.ts +137 -0
  112. package/dist/entities/partsOffice/partsOffice.entity.js +2 -0
  113. package/dist/entities/push/index.d.ts +1 -0
  114. package/dist/entities/push/index.js +17 -0
  115. package/dist/entities/push/push.entity.d.ts +28 -0
  116. package/dist/entities/push/push.entity.js +2 -0
  117. package/dist/entities/registerBook/index.d.ts +1 -0
  118. package/dist/entities/registerBook/index.js +17 -0
  119. package/dist/entities/registerBook/registerBook.entity.d.ts +48 -0
  120. package/dist/entities/registerBook/registerBook.entity.js +2 -0
  121. package/dist/entities/repositoryExport/index.d.ts +1 -0
  122. package/dist/entities/repositoryExport/index.js +17 -0
  123. package/dist/entities/repositoryExport/repositoryExport.entity.d.ts +124 -0
  124. package/dist/entities/repositoryExport/repositoryExport.entity.js +2 -0
  125. package/dist/entities/retention/index.d.ts +1 -0
  126. package/dist/entities/retention/index.js +17 -0
  127. package/dist/entities/retention/retention.entity.d.ts +49 -0
  128. package/dist/entities/retention/retention.entity.js +2 -0
  129. package/dist/entities/scan/index.d.ts +1 -0
  130. package/dist/entities/scan/index.js +17 -0
  131. package/dist/entities/scan/scan.entity.d.ts +29 -0
  132. package/dist/entities/scan/scan.entity.js +2 -0
  133. package/dist/entities/signatureBatch/index.d.ts +1 -0
  134. package/dist/entities/signatureBatch/index.js +17 -0
  135. package/dist/entities/signatureBatch/signatureBatch.entity.d.ts +107 -0
  136. package/dist/entities/signatureBatch/signatureBatch.entity.js +2 -0
  137. package/dist/entities/signatureCheck/index.d.ts +1 -0
  138. package/dist/entities/signatureCheck/index.js +17 -0
  139. package/dist/entities/signatureCheck/signatureCheck.entity.d.ts +60 -0
  140. package/dist/entities/signatureCheck/signatureCheck.entity.js +2 -0
  141. package/dist/entities/textSnippet/index.d.ts +1 -0
  142. package/dist/entities/textSnippet/index.js +17 -0
  143. package/dist/entities/textSnippet/textSnippet.entity.d.ts +20 -0
  144. package/dist/entities/textSnippet/textSnippet.entity.js +2 -0
  145. package/dist/entities/transparency/index.d.ts +1 -0
  146. package/dist/entities/transparency/index.js +17 -0
  147. package/dist/entities/transparency/transparency.entity.d.ts +77 -0
  148. package/dist/entities/transparency/transparency.entity.js +2 -0
  149. package/dist/entities/workFolder/index.d.ts +1 -0
  150. package/dist/entities/workFolder/index.js +17 -0
  151. package/dist/entities/workFolder/workFolder.entity.d.ts +83 -0
  152. package/dist/entities/workFolder/workFolder.entity.js +2 -0
  153. package/package.json +1 -1
  154. package/src/base/entities.ts +1197 -4
  155. package/src/contracts/accessRequest.contract.ts +81 -0
  156. package/src/contracts/archivalSeries.contract.ts +59 -0
  157. package/src/contracts/audit.contract.ts +30 -0
  158. package/src/contracts/caseFile.contract.ts +107 -2
  159. package/src/contracts/dataProtection.contract.ts +197 -0
  160. package/src/contracts/desk.contract.ts +72 -0
  161. package/src/contracts/document.contract.ts +202 -2
  162. package/src/contracts/documentTemplate.contract.ts +61 -0
  163. package/src/contracts/documentType.contract.ts +29 -3
  164. package/src/contracts/draftingRequest.contract.ts +73 -0
  165. package/src/contracts/holiday.contract.ts +16 -0
  166. package/src/contracts/index.ts +96 -1
  167. package/src/contracts/indicators.contract.ts +80 -0
  168. package/src/contracts/internalReview.contract.ts +66 -0
  169. package/src/contracts/issuingEntity.contract.ts +55 -0
  170. package/src/contracts/mailIntake.contract.ts +49 -0
  171. package/src/contracts/partsOffice.contract.ts +199 -0
  172. package/src/contracts/push.contract.ts +41 -0
  173. package/src/contracts/registerBook.contract.ts +24 -0
  174. package/src/contracts/repositoryExport.contract.ts +54 -0
  175. package/src/contracts/retention.contract.ts +44 -0
  176. package/src/contracts/scan.contract.ts +52 -0
  177. package/src/contracts/signatureBatch.contract.ts +96 -0
  178. package/src/contracts/signatureCheck.contract.ts +11 -0
  179. package/src/contracts/textSnippet.contract.ts +53 -0
  180. package/src/contracts/transparency.contract.ts +55 -0
  181. package/src/contracts/workFolder.contract.ts +75 -0
  182. package/src/entities/accessRequest/accessRequest.entity.ts +78 -0
  183. package/src/entities/accessRequest/index.ts +1 -0
  184. package/src/entities/archivalSeries/archivalSeries.entity.ts +37 -0
  185. package/src/entities/archivalSeries/index.ts +1 -0
  186. package/src/entities/audit/audit.entity.ts +41 -0
  187. package/src/entities/audit/index.ts +1 -0
  188. package/src/entities/caseFile/caseFile.entity.ts +132 -0
  189. package/src/entities/dataProtection/dataProtection.entity.ts +191 -0
  190. package/src/entities/dataProtection/index.ts +1 -0
  191. package/src/entities/desk/desk.entity.ts +28 -0
  192. package/src/entities/desk/index.ts +1 -0
  193. package/src/entities/document/document.entity.ts +412 -0
  194. package/src/entities/documentTemplate/documentTemplate.entity.ts +58 -0
  195. package/src/entities/documentTemplate/index.ts +1 -0
  196. package/src/entities/documentType/documentType.entity.ts +19 -0
  197. package/src/entities/draftingRequest/draftingRequest.entity.ts +78 -0
  198. package/src/entities/draftingRequest/index.ts +1 -0
  199. package/src/entities/holiday/holiday.entity.ts +11 -0
  200. package/src/entities/holiday/index.ts +1 -0
  201. package/src/entities/index.ts +23 -0
  202. package/src/entities/indicators/index.ts +1 -0
  203. package/src/entities/indicators/indicators.entity.ts +157 -0
  204. package/src/entities/internalReview/index.ts +1 -0
  205. package/src/entities/internalReview/internalReview.entity.ts +57 -0
  206. package/src/entities/issuingEntity/index.ts +1 -0
  207. package/src/entities/issuingEntity/issuingEntity.entity.ts +24 -0
  208. package/src/entities/mailIntake/index.ts +1 -0
  209. package/src/entities/mailIntake/mailIntake.entity.ts +55 -0
  210. package/src/entities/partsOffice/index.ts +1 -0
  211. package/src/entities/partsOffice/partsOffice.entity.ts +138 -0
  212. package/src/entities/push/index.ts +1 -0
  213. package/src/entities/push/push.entity.ts +31 -0
  214. package/src/entities/registerBook/index.ts +1 -0
  215. package/src/entities/registerBook/registerBook.entity.ts +52 -0
  216. package/src/entities/repositoryExport/index.ts +1 -0
  217. package/src/entities/repositoryExport/repositoryExport.entity.ts +86 -0
  218. package/src/entities/retention/index.ts +1 -0
  219. package/src/entities/retention/retention.entity.ts +53 -0
  220. package/src/entities/scan/index.ts +1 -0
  221. package/src/entities/scan/scan.entity.ts +32 -0
  222. package/src/entities/signatureBatch/index.ts +1 -0
  223. package/src/entities/signatureBatch/signatureBatch.entity.ts +110 -0
  224. package/src/entities/signatureCheck/index.ts +1 -0
  225. package/src/entities/signatureCheck/signatureCheck.entity.ts +63 -0
  226. package/src/entities/textSnippet/index.ts +1 -0
  227. package/src/entities/textSnippet/textSnippet.entity.ts +24 -0
  228. package/src/entities/transparency/index.ts +1 -0
  229. package/src/entities/transparency/transparency.entity.ts +78 -0
  230. package/src/entities/workFolder/index.ts +1 -0
  231. package/src/entities/workFolder/workFolder.entity.ts +84 -0
  232. package/tsconfig.json +1 -3
@@ -1,5 +1,5 @@
1
- import { type DocumentAccessLevel, type DocumentAttachmentEntity, type DocumentDeliveryEntity, type DocumentEntity, type DocumentInstruction, type DocumentParticipantEntity, type DocumentStatus } from '../base/entities';
2
- import { type DocumentAnnulResponseEntity, type DocumentCloseDeliveryResponseEntity, type DocumentCreateResponseEntity, type DocumentDeriveResponseEntity, type DocumentDiscardResponseEntity, type DocumentGetAllResponseEntity, type DocumentGetByIdResponseEntity, type DocumentGetSummaryResponseEntity, type DocumentInboxItemEntity, type DocumentPublicFileResponseEntity, type DocumentReassignResponseEntity, type DocumentReviewResponseEntity, type DocumentUpdateResponseEntity, type DocumentVerifyResponseEntity } from '../entities';
1
+ import { type DocumentAccessAction, type DocumentAccessLevel, type DocumentAttachmentEntity, type DocumentDeliveryEntity, type DocumentEntity, type DocumentInstruction, type DocumentParticipantEntity, type DocumentStatus } from '../base/entities';
2
+ import { type DocumentAnnulResponseEntity, type DocumentCloseDeliveryResponseEntity, type DocumentCreateResponseEntity, type DocumentDeriveResponseEntity, type DocumentDiscardResponseEntity, type DocumentEmailCopyIssuedEntity, type DocumentEmailCopyViewEntity, type DocumentReminderEntity, type DocumentGetAllResponseEntity, type DocumentGetByIdResponseEntity, type DocumentGetSummaryResponseEntity, type DocumentInboxItemEntity, type DocumentPublicFileResponseEntity, type DocumentReassignResponseEntity, type DocumentReviewResponseEntity, type DocumentSignManyResponseEntity, type DocumentAgendaResponseEntity, type DocumentComposeResponseEntity, type DocumentComposition, type DocumentTrailExportEntity, type DocumentUpdateResponseEntity, type DocumentVerifyResponseEntity, type DocumentCommentResponseEntity, type DocumentCommentsResponseEntity, type DocumentVersionResponseEntity, type DocumentDraftReviewResponseEntity } from '../entities';
3
3
  import { type RpcPage } from './contract';
4
4
  /** Patrones NATS de `document`: `<servicio>.<recurso>.<acción>`. */
5
5
  export declare const DocumentPatterns: {
@@ -10,14 +10,29 @@ export declare const DocumentPatterns: {
10
10
  readonly create: "gestorDocumental.document.create";
11
11
  readonly update: "gestorDocumental.document.update";
12
12
  readonly review: "gestorDocumental.document.review";
13
+ readonly signMany: "gestorDocumental.document.signMany";
13
14
  readonly reassign: "gestorDocumental.document.reassign";
15
+ readonly requestDraftReview: "gestorDocumental.document.requestDraftReview";
16
+ readonly resolveDraftReview: "gestorDocumental.document.resolveDraftReview";
14
17
  readonly discard: "gestorDocumental.document.discard";
15
18
  readonly annul: "gestorDocumental.document.annul";
16
19
  readonly derive: "gestorDocumental.document.derive";
17
20
  readonly closeDelivery: "gestorDocumental.document.closeDelivery";
18
21
  readonly verify: "gestorDocumental.document.verify";
22
+ readonly getVersions: "gestorDocumental.document.getVersions";
23
+ readonly getVersionFile: "gestorDocumental.document.getVersionFile";
24
+ readonly getComments: "gestorDocumental.document.getComments";
25
+ readonly addComment: "gestorDocumental.document.addComment";
26
+ readonly resolveComment: "gestorDocumental.document.resolveComment";
19
27
  readonly getPublicFile: "gestorDocumental.document.getPublicFile";
20
28
  readonly getFilesFolder: "gestorDocumental.document.getFilesFolder";
29
+ readonly getAgenda: "gestorDocumental.document.getAgenda";
30
+ readonly exportTrail: "gestorDocumental.document.exportTrail";
31
+ readonly compose: "gestorDocumental.document.compose";
32
+ readonly issueEmailCopies: "gestorDocumental.document.issueEmailCopies";
33
+ readonly getEmailCopy: "gestorDocumental.document.getEmailCopy";
34
+ readonly getEmailCopyFile: "gestorDocumental.document.getEmailCopyFile";
35
+ readonly claimReminders: "gestorDocumental.document.claimReminders";
21
36
  };
22
37
  /**
23
38
  * Funcionario que hace la operación y sus áreas (direcciones y departamentos a los que pertenece o que dirige). Lo
@@ -27,9 +42,14 @@ export interface DocumentActor {
27
42
  employeeId: string;
28
43
  directorateCodes: number[];
29
44
  departmentIds: string[];
45
+ /**
46
+ * Jefaturas para las que revisa (revisora de jefatura): ve los documentos que les esperan. Lo resuelve el gateway
47
+ * solo donde hace falta (el detalle y el PDF).
48
+ */
49
+ reviewFor?: string[];
30
50
  }
31
51
  /** Bandeja desde la que se lista. Todas son del funcionario (`actor`), salvo `all`. */
32
- export type DocumentBucket = 'created' | 'sent' | 'toVisa' | 'toSign' | 'participated' | 'all';
52
+ export type DocumentBucket = 'created' | 'sent' | 'toVisa' | 'toSign' | 'participated' | 'toReview' | 'all';
33
53
  /**
34
54
  * Destinatario de un documento o de una derivación: una persona o un área completa. El gateway resuelve el nombre del
35
55
  * área y quiénes la integran hoy; el navegador solo indica cuál es.
@@ -58,6 +78,10 @@ export type DocumentReviewAction = 'Visa' | 'Sign' | 'Reject';
58
78
  */
59
79
  export interface DocumentWritePayload extends Pick<DocumentEntity, 'subject' | 'documentTypeId'> {
60
80
  keywords: string[];
81
+ /** Qué cambió, si el guardado crea una versión nueva (otro PDF, otro texto u otro asunto). */
82
+ versionNote?: string | null;
83
+ /** Al crearlo: solicitud de redacción que atiende (la tomó quien redacta). */
84
+ draftingRequestId?: string | null;
61
85
  accessLevel?: DocumentAccessLevel;
62
86
  hasSensitiveData?: boolean;
63
87
  directorateCodeReference?: number | null;
@@ -68,18 +92,80 @@ export interface DocumentWritePayload extends Pick<DocumentEntity, 'subject' | '
68
92
  };
69
93
  attachments?: Pick<DocumentAttachmentEntity, 'name' | 'type' | 'fileId' | 'url'>[];
70
94
  visaEmployeeIds: string[];
95
+ visaStages?: number[] | null;
96
+ restartFlow?: boolean;
97
+ composition?: DocumentComposition | null;
71
98
  signatureEmployeeIds: string[];
72
99
  signatureSheet?: boolean;
73
100
  recipients?: DocumentRecipientInput[];
74
101
  responseDueAt?: string | null;
75
102
  replyToDocumentId?: string | null;
103
+ externalRecipients?: DocumentExternalRecipientInput[];
104
+ restrictionEndsAt?: string | null;
105
+ emailCopies?: DocumentEmailCopyInput[];
76
106
  action?: 'Submit';
77
107
  actor: DocumentActor;
78
108
  }
109
+ /** Persona u organización fuera del Estado que recibe una copia por correo. */
110
+ export interface DocumentEmailCopyInput {
111
+ name: string;
112
+ email: string;
113
+ }
114
+ /** Destinatario externo: una institución de DocDigital y, si se indica, uno de sus usuarios. */
115
+ export interface DocumentExternalRecipientInput {
116
+ entityId: number;
117
+ userId?: number | null;
118
+ }
79
119
  /**
80
120
  * Qué se envía y qué se responde en cada patrón. Generado desde los handlers y los DTO del microservicio.
81
121
  */
122
+ /** Una lectura que queda en el registro de accesos del documento. */
123
+ export interface DocumentAccessInput {
124
+ action: DocumentAccessAction;
125
+ fullName: string;
126
+ }
82
127
  export interface DocumentContract {
128
+ /**
129
+ * Arma el PDF de un documento redactado con una plantilla oficial: membrete, estructura y espacio libre para el
130
+ * número, las visaciones, las firmas y el QR. Con `preview` lo entrega para verlo; si no, lo sube y entrega su
131
+ * `fileId` para guardarlo como el PDF del documento.
132
+ */
133
+ [DocumentPatterns.compose]: {
134
+ payload: {
135
+ documentTypeId: string;
136
+ subject: string;
137
+ composition: DocumentComposition;
138
+ visaCount: number;
139
+ signatureCount: number;
140
+ signatureSheet?: boolean;
141
+ /** Unidad que emite, para el membrete. */
142
+ issuingUnitName?: string | null;
143
+ preview?: boolean;
144
+ actor: DocumentActor;
145
+ };
146
+ response: DocumentComposeResponseEntity;
147
+ };
148
+ /** Plazos del funcionario entre `from` y `to` (hasta 62 días), y lo que tiene vencido sin atender. */
149
+ [DocumentPatterns.getAgenda]: {
150
+ payload: {
151
+ from: string;
152
+ to: string;
153
+ actor: DocumentActor;
154
+ };
155
+ response: DocumentAgendaResponseEntity;
156
+ };
157
+ /**
158
+ * Trazabilidad del documento en PDF: datos, flujo, hechos y huella de sus archivos. Con las mismas reglas de acceso
159
+ * del detalle. `generatedBy`: quién la descarga (va al pie).
160
+ */
161
+ [DocumentPatterns.exportTrail]: {
162
+ payload: Pick<DocumentEntity, 'id'> & {
163
+ actor?: DocumentActor;
164
+ viewAll?: boolean;
165
+ generatedBy: string;
166
+ };
167
+ response: DocumentTrailExportEntity;
168
+ };
83
169
  [DocumentPatterns.getAll]: {
84
170
  payload: {
85
171
  pagination?: {
@@ -93,6 +179,12 @@ export interface DocumentContract {
93
179
  documentTypeId?: string;
94
180
  dateFrom?: string;
95
181
  dateTo?: string;
182
+ number?: number;
183
+ year?: number;
184
+ signerEmployeeId?: string;
185
+ authorEmployeeId?: string;
186
+ directorateCodeReference?: number;
187
+ text?: string;
96
188
  };
97
189
  actor?: DocumentActor;
98
190
  };
@@ -123,6 +215,7 @@ export interface DocumentContract {
123
215
  payload: Pick<DocumentEntity, 'id'> & {
124
216
  actor?: DocumentActor;
125
217
  viewAll?: boolean;
218
+ access?: DocumentAccessInput;
126
219
  };
127
220
  response: DocumentGetByIdResponseEntity;
128
221
  };
@@ -149,10 +242,49 @@ export interface DocumentContract {
149
242
  };
150
243
  response: DocumentReviewResponseEntity;
151
244
  };
245
+ /**
246
+ * Firma con un solo OTP varios documentos que el funcionario tiene en su turno de firma (los de un lote, o los que
247
+ * marcó en su bandeja). Cada uno queda firmado aparte; los que no caben en la solicitud quedan en `remaining`.
248
+ */
249
+ [DocumentPatterns.signMany]: {
250
+ payload: {
251
+ ids: DocumentEntity['id'][];
252
+ observation?: string | null;
253
+ signer: {
254
+ rut: string;
255
+ fullName: string;
256
+ role: string;
257
+ areaName: string;
258
+ };
259
+ otp?: string;
260
+ actor: DocumentActor;
261
+ };
262
+ response: DocumentSignManyResponseEntity;
263
+ };
152
264
  /**
153
265
  * Pasa un turno pendiente (de visación o de firma) a otro funcionario, por ausencia o por error, y lo deja en la
154
266
  * trazabilidad con su motivo. Puede hacerlo quien redactó el documento; con `anyDocument`, quien lleva el registro.
155
267
  */
268
+ /** El redactor pide la revisión del borrador; el gateway resuelve quién dirige hoy la dirección revisora. */
269
+ [DocumentPatterns.requestDraftReview]: {
270
+ payload: Pick<DocumentEntity, 'id'> & {
271
+ reviewer: {
272
+ employeeId: string;
273
+ fullName: string;
274
+ };
275
+ actor: DocumentActor;
276
+ };
277
+ response: DocumentDraftReviewResponseEntity;
278
+ };
279
+ /** La jefatura revisora aprueba o devuelve (con observaciones); el redactor puede retirar la solicitud. */
280
+ [DocumentPatterns.resolveDraftReview]: {
281
+ payload: Pick<DocumentEntity, 'id'> & {
282
+ decision: 'Approve' | 'Reject' | 'Cancel';
283
+ observation?: string | null;
284
+ actor: DocumentActor;
285
+ };
286
+ response: DocumentDraftReviewResponseEntity;
287
+ };
156
288
  [DocumentPatterns.reassign]: {
157
289
  payload: Pick<DocumentEntity, 'id'> & {
158
290
  participantId: DocumentParticipantEntity['id'];
@@ -188,6 +320,7 @@ export interface DocumentContract {
188
320
  instruction: DocumentInstruction;
189
321
  note?: string | null;
190
322
  dueAt?: string | null;
323
+ dueBusinessDays?: number | null;
191
324
  actor: DocumentActor;
192
325
  viewAll?: boolean;
193
326
  };
@@ -202,6 +335,58 @@ export interface DocumentContract {
202
335
  };
203
336
  response: DocumentCloseDeliveryResponseEntity;
204
337
  };
338
+ /** Versiones del documento, de la más reciente a la primera, con quién visó o firmó cada una. */
339
+ [DocumentPatterns.getVersions]: {
340
+ payload: {
341
+ id: string;
342
+ actor?: DocumentActor;
343
+ viewAll?: boolean;
344
+ };
345
+ response: DocumentVersionResponseEntity[];
346
+ };
347
+ /** El PDF original de una versión (sin estampar), con las mismas reglas de acceso. */
348
+ [DocumentPatterns.getVersionFile]: {
349
+ payload: {
350
+ id: string;
351
+ number: number;
352
+ actor?: DocumentActor;
353
+ viewAll?: boolean;
354
+ };
355
+ response: DocumentPublicFileResponseEntity;
356
+ };
357
+ /** Comentarios de redacción: los ven el redactor y quienes tienen un turno (y quien ve todo el historial). */
358
+ [DocumentPatterns.getComments]: {
359
+ payload: {
360
+ id: string;
361
+ actor?: DocumentActor;
362
+ viewAll?: boolean;
363
+ };
364
+ response: DocumentCommentsResponseEntity;
365
+ };
366
+ /** Comenta el redactor o quien tiene un turno, mientras el documento no termina, sobre la versión vigente. */
367
+ [DocumentPatterns.addComment]: {
368
+ payload: {
369
+ id: string;
370
+ section?: string | null;
371
+ quote?: string | null;
372
+ text: string;
373
+ actor: DocumentActor & {
374
+ fullName: string;
375
+ };
376
+ };
377
+ response: DocumentCommentResponseEntity;
378
+ };
379
+ /** Lo marca como resuelto el redactor o quien lo escribió, con una nota opcional. */
380
+ [DocumentPatterns.resolveComment]: {
381
+ payload: {
382
+ commentId: string;
383
+ note?: string | null;
384
+ actor: DocumentActor & {
385
+ fullName: string;
386
+ };
387
+ };
388
+ response: DocumentCommentResponseEntity;
389
+ };
205
390
  /** Comprobación pública de un documento con el código que lleva impreso. No exige sesión. */
206
391
  [DocumentPatterns.verify]: {
207
392
  payload: {
@@ -216,6 +401,37 @@ export interface DocumentContract {
216
401
  };
217
402
  response: DocumentPublicFileResponseEntity;
218
403
  };
404
+ /**
405
+ * Emite las copias por correo pendientes de estos documentos, si ya corresponde (finalizado y, si va por DocDigital,
406
+ * despachado): genera el enlace de cada una. Se puede pedir de más: lo ya emitido no se repite.
407
+ */
408
+ [DocumentPatterns.issueEmailCopies]: {
409
+ payload: {
410
+ documentIds: string[];
411
+ };
412
+ response: DocumentEmailCopyIssuedEntity[];
413
+ };
414
+ /** Sin sesión, con el token de la copia: el documento y quién lo emitió. */
415
+ [DocumentPatterns.getEmailCopy]: {
416
+ payload: {
417
+ token: string;
418
+ };
419
+ response: DocumentEmailCopyViewEntity;
420
+ };
421
+ /**
422
+ * Recordatorios de plazos que corresponde enviar ahora: lo que vence en un día hábil y lo vencido sin atender. Cada
423
+ * uno se entrega una sola vez (queda marcado al reclamarlo), aunque lo pidan varias instancias del gateway a la vez.
424
+ */
425
+ [DocumentPatterns.claimReminders]: {
426
+ payload: Record<string, never>;
427
+ response: DocumentReminderEntity[];
428
+ };
429
+ [DocumentPatterns.getEmailCopyFile]: {
430
+ payload: {
431
+ token: string;
432
+ };
433
+ response: DocumentPublicFileResponseEntity;
434
+ };
219
435
  /** Carpeta de Drive de los documentos y sus anexos: el gateway la pide antes de subir cada archivo. */
220
436
  [DocumentPatterns.getFilesFolder]: {
221
437
  payload: Record<string, never>;
@@ -10,12 +10,27 @@ exports.DocumentPatterns = {
10
10
  create: 'gestorDocumental.document.create',
11
11
  update: 'gestorDocumental.document.update',
12
12
  review: 'gestorDocumental.document.review',
13
+ signMany: 'gestorDocumental.document.signMany',
13
14
  reassign: 'gestorDocumental.document.reassign',
15
+ requestDraftReview: 'gestorDocumental.document.requestDraftReview',
16
+ resolveDraftReview: 'gestorDocumental.document.resolveDraftReview',
14
17
  discard: 'gestorDocumental.document.discard',
15
18
  annul: 'gestorDocumental.document.annul',
16
19
  derive: 'gestorDocumental.document.derive',
17
20
  closeDelivery: 'gestorDocumental.document.closeDelivery',
18
21
  verify: 'gestorDocumental.document.verify',
22
+ getVersions: 'gestorDocumental.document.getVersions',
23
+ getVersionFile: 'gestorDocumental.document.getVersionFile',
24
+ getComments: 'gestorDocumental.document.getComments',
25
+ addComment: 'gestorDocumental.document.addComment',
26
+ resolveComment: 'gestorDocumental.document.resolveComment',
19
27
  getPublicFile: 'gestorDocumental.document.getPublicFile',
20
28
  getFilesFolder: 'gestorDocumental.document.getFilesFolder',
29
+ getAgenda: 'gestorDocumental.document.getAgenda',
30
+ exportTrail: 'gestorDocumental.document.exportTrail',
31
+ compose: 'gestorDocumental.document.compose',
32
+ issueEmailCopies: 'gestorDocumental.document.issueEmailCopies',
33
+ getEmailCopy: 'gestorDocumental.document.getEmailCopy',
34
+ getEmailCopyFile: 'gestorDocumental.document.getEmailCopyFile',
35
+ claimReminders: 'gestorDocumental.document.claimReminders',
21
36
  };
@@ -0,0 +1,58 @@
1
+ import { type DocumentTemplateEntity } from '../base/entities';
2
+ import { type DocumentTemplateAvailableResponseEntity, type DocumentTemplateContent, type DocumentTemplateCreateResponseEntity, type DocumentTemplateGetAllResponseEntity, type DocumentTemplateGetByIdResponseEntity, type DocumentTemplateUpdateResponseEntity } from '../entities';
3
+ import { type RpcPage } from './contract';
4
+ /** Patrones NATS de `documentTemplate` (plantillas propias del editor): `<servicio>.<recurso>.<acción>`. */
5
+ export declare const DocumentTemplatePatterns: {
6
+ readonly getAll: "gestorDocumental.documentTemplate.getAll";
7
+ readonly getById: "gestorDocumental.documentTemplate.getById";
8
+ readonly create: "gestorDocumental.documentTemplate.create";
9
+ readonly update: "gestorDocumental.documentTemplate.update";
10
+ readonly setEnabled: "gestorDocumental.documentTemplate.setEnabled";
11
+ readonly getAvailable: "gestorDocumental.documentTemplate.getAvailable";
12
+ };
13
+ /** Datos de una plantilla propia al crearla o editarla. */
14
+ export interface DocumentTemplateWritePayload {
15
+ name: string;
16
+ description?: string | null;
17
+ documentTypeIds?: string[];
18
+ content: DocumentTemplateContent;
19
+ enabled?: boolean;
20
+ }
21
+ export interface DocumentTemplateContract {
22
+ [DocumentTemplatePatterns.getAll]: {
23
+ payload: {
24
+ pagination?: {
25
+ page?: number;
26
+ limit?: number;
27
+ };
28
+ filters?: {
29
+ search?: string;
30
+ enabled?: boolean;
31
+ };
32
+ };
33
+ response: RpcPage<DocumentTemplateGetAllResponseEntity[]>;
34
+ };
35
+ [DocumentTemplatePatterns.getById]: {
36
+ payload: Pick<DocumentTemplateEntity, 'id'>;
37
+ response: DocumentTemplateGetByIdResponseEntity;
38
+ };
39
+ [DocumentTemplatePatterns.create]: {
40
+ payload: DocumentTemplateWritePayload;
41
+ response: DocumentTemplateCreateResponseEntity;
42
+ };
43
+ [DocumentTemplatePatterns.update]: {
44
+ payload: DocumentTemplateWritePayload & Pick<DocumentTemplateEntity, 'id'>;
45
+ response: DocumentTemplateUpdateResponseEntity;
46
+ };
47
+ [DocumentTemplatePatterns.setEnabled]: {
48
+ payload: Pick<DocumentTemplateEntity, 'id' | 'enabled'>;
49
+ response: DocumentTemplateUpdateResponseEntity;
50
+ };
51
+ /** Las habilitadas que se ofrecen al redactar un documento del tipo (las de todos los tipos y las suyas). */
52
+ [DocumentTemplatePatterns.getAvailable]: {
53
+ payload: {
54
+ documentTypeId: string;
55
+ };
56
+ response: DocumentTemplateAvailableResponseEntity[];
57
+ };
58
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DocumentTemplatePatterns = void 0;
4
+ /** Patrones NATS de `documentTemplate` (plantillas propias del editor): `<servicio>.<recurso>.<acción>`. */
5
+ exports.DocumentTemplatePatterns = {
6
+ getAll: 'gestorDocumental.documentTemplate.getAll',
7
+ getById: 'gestorDocumental.documentTemplate.getById',
8
+ create: 'gestorDocumental.documentTemplate.create',
9
+ update: 'gestorDocumental.documentTemplate.update',
10
+ setEnabled: 'gestorDocumental.documentTemplate.setEnabled',
11
+ getAvailable: 'gestorDocumental.documentTemplate.getAvailable',
12
+ };
@@ -14,7 +14,7 @@ export declare const DocumentTypePatterns: {
14
14
  * momento de redactar (su jefatura o, con subrogancia activa, el subrogante). El nombre de la dirección lo resuelve
15
15
  * el gateway; el navegador solo indica cuál es.
16
16
  */
17
- export type DocumentFlowStepInput = {
17
+ export type DocumentFlowStepInput = ({
18
18
  role: DocumentParticipantRole;
19
19
  type: 'Employee';
20
20
  employeeId: string;
@@ -23,6 +23,8 @@ export type DocumentFlowStepInput = {
23
23
  type: 'DirectorateHead';
24
24
  directorateCodeReference: number;
25
25
  name: string;
26
+ }) & {
27
+ withPrevious?: boolean;
26
28
  };
27
29
  /** Datos de un tipo documental al crearlo o editarlo. */
28
30
  export interface DocumentTypeWritePayload {
@@ -32,7 +34,16 @@ export interface DocumentTypeWritePayload {
32
34
  description?: string | null;
33
35
  nextCorrelative?: number;
34
36
  resetsYearly?: boolean;
37
+ numbered?: boolean;
38
+ /** Transparencia Activa: sus documentos se publican cada mes, en esta sección del Portal. */
39
+ activeTransparency?: boolean;
40
+ transparencySection?: string | null;
35
41
  directorateCodeReference?: number | null;
42
+ draftReviewDirectorateCode?: number | null;
43
+ draftReviewDirectorateName?: string | null;
44
+ archivalSeriesId?: string | null;
45
+ issuingEntityId?: string | null;
46
+ sharesNumberingWithId?: string | null;
36
47
  enabled?: boolean;
37
48
  flowSteps?: DocumentFlowStepInput[];
38
49
  }
@@ -50,6 +61,7 @@ export interface DocumentTypeContract {
50
61
  search?: string;
51
62
  enabled?: boolean;
52
63
  category?: DocumentCategory;
64
+ usableByDirectorates?: number[];
53
65
  };
54
66
  };
55
67
  response: RpcPage<DocumentTypeGetAllResponseEntity[]>;
@@ -0,0 +1,94 @@
1
+ import { type DraftingRequestDetailEntity, type DraftingRequestListItemEntity } from '../entities';
2
+ import { type RpcPage } from './contract';
3
+ /** Patrones NATS de `draftingRequest`: solicitudes de redacción entre áreas. */
4
+ export declare const DraftingRequestPatterns: {
5
+ readonly getAll: "gestorDocumental.draftingRequest.getAll";
6
+ readonly getById: "gestorDocumental.draftingRequest.getById";
7
+ readonly create: "gestorDocumental.draftingRequest.create";
8
+ readonly act: "gestorDocumental.draftingRequest.act";
9
+ readonly getAttachmentFile: "gestorDocumental.draftingRequest.getAttachmentFile";
10
+ };
11
+ /** Quien consulta o actúa: el funcionario de la sesión, con su nombre. */
12
+ export interface DraftingRequestActor {
13
+ employeeId: string;
14
+ fullName: string;
15
+ }
16
+ /**
17
+ * Bandeja: las que le llegaron a su dirección, las que tomó o las que pidió. `state`: abiertas (sin tomar, tomadas o
18
+ * en redacción), cerradas (atendidas, devueltas o retiradas) o todas.
19
+ */
20
+ export type DraftingRequestBox = 'received' | 'taken' | 'sent';
21
+ export interface DraftingRequestCreatePayload {
22
+ subject: string;
23
+ details: string;
24
+ documentTypeId?: string | null;
25
+ dueAt?: string | null;
26
+ attachments?: {
27
+ fileId: string;
28
+ name: string;
29
+ }[];
30
+ /** Dirección a la que se pide, con el nombre que le pone el gateway. */
31
+ targetDirectorateCode: number;
32
+ targetDirectorateName: string;
33
+ /** Quienes la integran hoy, resueltos por el gateway (sin quien la pide). */
34
+ recipientEmployeeIds: string[];
35
+ requesterAreaName?: string | null;
36
+ actor: DraftingRequestActor;
37
+ }
38
+ /** Lo que se hace con una solicitud, un paso a la vez. */
39
+ export type DraftingRequestAction = {
40
+ type: 'take';
41
+ } | {
42
+ type: 'release';
43
+ note?: string | null;
44
+ } | {
45
+ type: 'decline';
46
+ note: string;
47
+ } | {
48
+ type: 'cancel';
49
+ note?: string | null;
50
+ };
51
+ export interface DraftingRequestContract {
52
+ [DraftingRequestPatterns.getAll]: {
53
+ payload: {
54
+ box: DraftingRequestBox;
55
+ state?: 'open' | 'closed' | 'all';
56
+ search?: string;
57
+ page?: number;
58
+ limit?: number;
59
+ actor: Pick<DraftingRequestActor, 'employeeId'>;
60
+ };
61
+ response: RpcPage<DraftingRequestListItemEntity[]>;
62
+ };
63
+ [DraftingRequestPatterns.getById]: {
64
+ payload: {
65
+ id: string;
66
+ actor: Pick<DraftingRequestActor, 'employeeId'>;
67
+ };
68
+ response: DraftingRequestDetailEntity;
69
+ };
70
+ [DraftingRequestPatterns.create]: {
71
+ payload: DraftingRequestCreatePayload;
72
+ response: DraftingRequestDetailEntity;
73
+ };
74
+ [DraftingRequestPatterns.act]: {
75
+ payload: {
76
+ id: string;
77
+ action: DraftingRequestAction;
78
+ actor: DraftingRequestActor;
79
+ };
80
+ response: DraftingRequestDetailEntity;
81
+ };
82
+ /** Archivo adjunto, con las mismas reglas de acceso del detalle. */
83
+ [DraftingRequestPatterns.getAttachmentFile]: {
84
+ payload: {
85
+ id: string;
86
+ attachmentId: string;
87
+ actor: Pick<DraftingRequestActor, 'employeeId'>;
88
+ };
89
+ response: {
90
+ fileId: string;
91
+ fileName: string;
92
+ };
93
+ };
94
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DraftingRequestPatterns = void 0;
4
+ /** Patrones NATS de `draftingRequest`: solicitudes de redacción entre áreas. */
5
+ exports.DraftingRequestPatterns = {
6
+ getAll: 'gestorDocumental.draftingRequest.getAll',
7
+ getById: 'gestorDocumental.draftingRequest.getById',
8
+ create: 'gestorDocumental.draftingRequest.create',
9
+ act: 'gestorDocumental.draftingRequest.act',
10
+ getAttachmentFile: 'gestorDocumental.draftingRequest.getAttachmentFile',
11
+ };
@@ -0,0 +1,30 @@
1
+ import { type HolidayRemoveResponseEntity, type HolidayResponseEntity } from '../entities';
2
+ /** Patrones NATS de `holiday`: feriados para contar días hábiles. */
3
+ export declare const HolidayPatterns: {
4
+ readonly getAll: "gestorDocumental.holiday.getAll";
5
+ readonly create: "gestorDocumental.holiday.create";
6
+ readonly remove: "gestorDocumental.holiday.remove";
7
+ };
8
+ export interface HolidayContract {
9
+ /** Feriados de un año, en orden. */
10
+ [HolidayPatterns.getAll]: {
11
+ payload: {
12
+ year: number;
13
+ };
14
+ response: HolidayResponseEntity[];
15
+ };
16
+ /** `date` como «AAAA-MM-DD». */
17
+ [HolidayPatterns.create]: {
18
+ payload: {
19
+ date: string;
20
+ name: string;
21
+ };
22
+ response: HolidayResponseEntity;
23
+ };
24
+ [HolidayPatterns.remove]: {
25
+ payload: {
26
+ id: string;
27
+ };
28
+ response: HolidayRemoveResponseEntity;
29
+ };
30
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HolidayPatterns = void 0;
4
+ /** Patrones NATS de `holiday`: feriados para contar días hábiles. */
5
+ exports.HolidayPatterns = {
6
+ getAll: 'gestorDocumental.holiday.getAll',
7
+ create: 'gestorDocumental.holiday.create',
8
+ remove: 'gestorDocumental.holiday.remove',
9
+ };