@solidxai/core 0.1.13-beta.7 → 0.1.13-beta.9

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 (259) hide show
  1. package/.claude/settings.local.json +16 -0
  2. package/CHANGELOG.md +1651 -0
  3. package/CLAUDE.md +26 -0
  4. package/dist/constants/draft-publish-fields.d.ts +2 -0
  5. package/dist/constants/draft-publish-fields.d.ts.map +1 -0
  6. package/dist/constants/draft-publish-fields.js +5 -0
  7. package/dist/constants/draft-publish-fields.js.map +1 -0
  8. package/dist/constants/media-file-types.d.ts +9 -0
  9. package/dist/constants/media-file-types.d.ts.map +1 -1
  10. package/dist/constants/media-file-types.js +27 -1
  11. package/dist/constants/media-file-types.js.map +1 -1
  12. package/dist/controllers/action-metadata.controller.d.ts +1 -1
  13. package/dist/controllers/action-metadata.controller.js +1 -1
  14. package/dist/controllers/agent-event.controller.d.ts +1 -1
  15. package/dist/controllers/agent-event.controller.js +1 -1
  16. package/dist/controllers/agent-session.controller.d.ts +1 -1
  17. package/dist/controllers/agent-session.controller.js +1 -1
  18. package/dist/controllers/dashboard-user-layout.controller.d.ts +1 -1
  19. package/dist/controllers/dashboard-user-layout.controller.js +1 -1
  20. package/dist/controllers/email-template.controller.d.ts +1 -1
  21. package/dist/controllers/email-template.controller.js +1 -1
  22. package/dist/controllers/export-template.controller.d.ts +1 -1
  23. package/dist/controllers/export-template.controller.d.ts.map +1 -1
  24. package/dist/controllers/export-template.controller.js +6 -4
  25. package/dist/controllers/export-template.controller.js.map +1 -1
  26. package/dist/controllers/export-transaction.controller.d.ts +1 -1
  27. package/dist/controllers/export-transaction.controller.js +1 -1
  28. package/dist/controllers/import-transaction-error-log.controller.d.ts +1 -1
  29. package/dist/controllers/import-transaction-error-log.controller.js +1 -1
  30. package/dist/controllers/import-transaction.controller.d.ts +1 -1
  31. package/dist/controllers/import-transaction.controller.d.ts.map +1 -1
  32. package/dist/controllers/import-transaction.controller.js +7 -7
  33. package/dist/controllers/import-transaction.controller.js.map +1 -1
  34. package/dist/controllers/list-of-values.controller.d.ts +1 -1
  35. package/dist/controllers/list-of-values.controller.js +1 -1
  36. package/dist/controllers/locale.controller.d.ts +1 -1
  37. package/dist/controllers/locale.controller.js +1 -1
  38. package/dist/controllers/mcp-audit-log.controller.d.ts +1 -1
  39. package/dist/controllers/mcp-audit-log.controller.js +1 -1
  40. package/dist/controllers/media.controller.d.ts +1 -1
  41. package/dist/controllers/media.controller.d.ts.map +1 -1
  42. package/dist/controllers/media.controller.js +12 -7
  43. package/dist/controllers/media.controller.js.map +1 -1
  44. package/dist/controllers/menu-item-metadata.controller.d.ts +1 -1
  45. package/dist/controllers/menu-item-metadata.controller.js +1 -1
  46. package/dist/controllers/model-sequence.controller.d.ts +1 -1
  47. package/dist/controllers/model-sequence.controller.js +1 -1
  48. package/dist/controllers/module-package.controller.d.ts.map +1 -1
  49. package/dist/controllers/module-package.controller.js +2 -3
  50. package/dist/controllers/module-package.controller.js.map +1 -1
  51. package/dist/controllers/mq-message-queue.controller.d.ts +1 -1
  52. package/dist/controllers/mq-message-queue.controller.js +1 -1
  53. package/dist/controllers/mq-message.controller.d.ts +1 -1
  54. package/dist/controllers/mq-message.controller.js +1 -1
  55. package/dist/controllers/permission-metadata.controller.d.ts +1 -1
  56. package/dist/controllers/permission-metadata.controller.js +1 -1
  57. package/dist/controllers/role-metadata.controller.d.ts +1 -1
  58. package/dist/controllers/role-metadata.controller.js +1 -1
  59. package/dist/controllers/saved-filters.controller.d.ts +1 -1
  60. package/dist/controllers/saved-filters.controller.js +1 -1
  61. package/dist/controllers/scheduled-job.controller.d.ts +1 -1
  62. package/dist/controllers/scheduled-job.controller.js +1 -1
  63. package/dist/controllers/security-rule.controller.d.ts +1 -1
  64. package/dist/controllers/security-rule.controller.js +1 -1
  65. package/dist/controllers/sms-template.controller.d.ts +1 -1
  66. package/dist/controllers/sms-template.controller.js +1 -1
  67. package/dist/controllers/user-activity-history.controller.d.ts +1 -1
  68. package/dist/controllers/user-activity-history.controller.js +1 -1
  69. package/dist/controllers/user-view-metadata.controller.d.ts +1 -1
  70. package/dist/controllers/user-view-metadata.controller.js +1 -1
  71. package/dist/controllers/user.controller.d.ts +2 -2
  72. package/dist/controllers/user.controller.js +2 -2
  73. package/dist/controllers/view-metadata.controller.d.ts +2 -2
  74. package/dist/controllers/view-metadata.controller.js +1 -1
  75. package/dist/controllers/workflow-definition.controller.d.ts +1 -1
  76. package/dist/controllers/workflow-definition.controller.js +1 -1
  77. package/dist/controllers/workflow-execution-artifact.controller.d.ts +1 -1
  78. package/dist/controllers/workflow-execution-artifact.controller.js +1 -1
  79. package/dist/controllers/workflow-execution-log.controller.d.ts +1 -1
  80. package/dist/controllers/workflow-execution-log.controller.js +1 -1
  81. package/dist/controllers/workflow-execution.controller.d.ts +1 -1
  82. package/dist/controllers/workflow-execution.controller.js +1 -1
  83. package/dist/controllers/workflow-secret.controller.d.ts +1 -1
  84. package/dist/controllers/workflow-secret.controller.js +1 -1
  85. package/dist/controllers/workflow-step-execution.controller.d.ts +1 -1
  86. package/dist/controllers/workflow-step-execution.controller.js +1 -1
  87. package/dist/controllers/workflow-trigger-execution.controller.d.ts +1 -1
  88. package/dist/controllers/workflow-trigger-execution.controller.js +1 -1
  89. package/dist/dtos/basic-filters.dto.d.ts +0 -1
  90. package/dist/dtos/basic-filters.dto.d.ts.map +1 -1
  91. package/dist/dtos/basic-filters.dto.js +1 -6
  92. package/dist/dtos/basic-filters.dto.js.map +1 -1
  93. package/dist/entities/common.entity.d.ts +4 -0
  94. package/dist/entities/common.entity.d.ts.map +1 -1
  95. package/dist/entities/common.entity.js +25 -1
  96. package/dist/entities/common.entity.js.map +1 -1
  97. package/dist/entities/user.entity.js +2 -2
  98. package/dist/entities/user.entity.js.map +1 -1
  99. package/dist/factories/mail.factory.d.ts.map +1 -1
  100. package/dist/factories/mail.factory.js +4 -0
  101. package/dist/factories/mail.factory.js.map +1 -1
  102. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.d.ts +1 -0
  103. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.d.ts.map +1 -1
  104. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.js +18 -11
  105. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.js.map +1 -1
  106. package/dist/helpers/file-download.helper.d.ts +9 -0
  107. package/dist/helpers/file-download.helper.d.ts.map +1 -0
  108. package/dist/helpers/file-download.helper.js +14 -0
  109. package/dist/helpers/file-download.helper.js.map +1 -0
  110. package/dist/helpers/model-metadata-helper.service.d.ts.map +1 -1
  111. package/dist/helpers/model-metadata-helper.service.js +30 -1
  112. package/dist/helpers/model-metadata-helper.service.js.map +1 -1
  113. package/dist/helpers/solid-registry.js +1 -1
  114. package/dist/helpers/solid-registry.js.map +1 -1
  115. package/dist/index.d.ts +2 -0
  116. package/dist/index.d.ts.map +1 -1
  117. package/dist/index.js +2 -0
  118. package/dist/index.js.map +1 -1
  119. package/dist/seeders/module-test-data.service.d.ts +3 -1
  120. package/dist/seeders/module-test-data.service.d.ts.map +1 -1
  121. package/dist/seeders/module-test-data.service.js +8 -2
  122. package/dist/seeders/module-test-data.service.js.map +1 -1
  123. package/dist/seeders/seed-data/solid-core-metadata.json +2 -0
  124. package/dist/services/authentication.service.d.ts +4 -1
  125. package/dist/services/authentication.service.d.ts.map +1 -1
  126. package/dist/services/authentication.service.js +52 -4
  127. package/dist/services/authentication.service.js.map +1 -1
  128. package/dist/services/chatter-message.service.d.ts +1 -0
  129. package/dist/services/chatter-message.service.d.ts.map +1 -1
  130. package/dist/services/chatter-message.service.js +8 -0
  131. package/dist/services/chatter-message.service.js.map +1 -1
  132. package/dist/services/crud-helper.service.d.ts +5 -2
  133. package/dist/services/crud-helper.service.d.ts.map +1 -1
  134. package/dist/services/crud-helper.service.js +30 -32
  135. package/dist/services/crud-helper.service.js.map +1 -1
  136. package/dist/services/crud.service.d.ts +11 -1
  137. package/dist/services/crud.service.d.ts.map +1 -1
  138. package/dist/services/crud.service.js +79 -66
  139. package/dist/services/crud.service.js.map +1 -1
  140. package/dist/services/datasource-introspection.service.d.ts.map +1 -1
  141. package/dist/services/datasource-introspection.service.js.map +1 -1
  142. package/dist/services/draft-publish-helper.service.d.ts +52 -0
  143. package/dist/services/draft-publish-helper.service.d.ts.map +1 -0
  144. package/dist/services/draft-publish-helper.service.js +368 -0
  145. package/dist/services/draft-publish-helper.service.js.map +1 -0
  146. package/dist/services/internationalisation-helper.service.d.ts +19 -0
  147. package/dist/services/internationalisation-helper.service.d.ts.map +1 -0
  148. package/dist/services/internationalisation-helper.service.js +107 -0
  149. package/dist/services/internationalisation-helper.service.js.map +1 -0
  150. package/dist/services/locale.service.d.ts +1 -1
  151. package/dist/services/media.service.d.ts +2 -1
  152. package/dist/services/media.service.d.ts.map +1 -1
  153. package/dist/services/media.service.js +28 -2
  154. package/dist/services/media.service.js.map +1 -1
  155. package/dist/services/metadata-validation.service.d.ts +7 -0
  156. package/dist/services/metadata-validation.service.d.ts.map +1 -0
  157. package/dist/services/metadata-validation.service.js +42 -0
  158. package/dist/services/metadata-validation.service.js.map +1 -0
  159. package/dist/services/model-metadata.service.d.ts.map +1 -1
  160. package/dist/services/model-metadata.service.js +2 -1
  161. package/dist/services/model-metadata.service.js.map +1 -1
  162. package/dist/services/object.utils.d.ts +2 -0
  163. package/dist/services/object.utils.d.ts.map +1 -0
  164. package/dist/services/object.utils.js +11 -0
  165. package/dist/services/object.utils.js.map +1 -0
  166. package/dist/services/settings/default-settings-provider.service.d.ts +10 -10
  167. package/dist/services/settings/default-settings-provider.service.d.ts.map +1 -1
  168. package/dist/services/settings/default-settings-provider.service.js +9 -5
  169. package/dist/services/settings/default-settings-provider.service.js.map +1 -1
  170. package/dist/services/user.service.d.ts +2 -2
  171. package/dist/services/user.service.d.ts.map +1 -1
  172. package/dist/services/user.service.js +9 -3
  173. package/dist/services/user.service.js.map +1 -1
  174. package/dist/services/view-metadata.service.d.ts +1 -2
  175. package/dist/services/view-metadata.service.d.ts.map +1 -1
  176. package/dist/services/view-metadata.service.js +3 -55
  177. package/dist/services/view-metadata.service.js.map +1 -1
  178. package/dist/services/workflow-definition.service.d.ts +1 -1
  179. package/dist/solid-core.module.d.ts.map +1 -1
  180. package/dist/solid-core.module.js +10 -1
  181. package/dist/solid-core.module.js.map +1 -1
  182. package/package.json +1 -1
  183. package/src/constants/draft-publish-fields.ts +5 -0
  184. package/src/constants/media-file-types.ts +50 -0
  185. package/src/controllers/export-template.controller.ts +5 -3
  186. package/src/controllers/import-transaction.controller.ts +6 -6
  187. package/src/controllers/media.controller.ts +17 -6
  188. package/src/controllers/module-package.controller.ts +2 -3
  189. package/src/dtos/basic-filters.dto.ts +0 -4
  190. package/src/entities/common.entity.ts +24 -0
  191. package/src/entities/user.entity.ts +2 -2
  192. package/src/factories/mail.factory.ts +7 -1
  193. package/src/helpers/field-crud-managers/MediaFieldCrudManager.ts +26 -12
  194. package/src/helpers/file-download.helper.ts +31 -0
  195. package/src/helpers/model-metadata-helper.service.ts +32 -1
  196. package/src/helpers/solid-registry.ts +1 -1
  197. package/src/index.ts +2 -0
  198. package/src/seeders/module-test-data.service.ts +6 -0
  199. package/src/seeders/seed-data/solid-core-metadata.json +2 -0
  200. package/src/services/1.js +6 -0
  201. package/src/services/authentication.service.ts +76 -5
  202. package/src/services/chatter-message.service.ts +16 -0
  203. package/src/services/crud-helper.service.ts +16 -34
  204. package/src/services/crud.service.ts +98 -103
  205. package/src/services/datasource-introspection.service.ts +5 -0
  206. package/src/services/draft-publish-helper.service.ts +529 -0
  207. package/src/services/internationalisation-helper.service.ts +148 -0
  208. package/src/services/media.service.ts +48 -3
  209. package/src/services/metadata-validation.service.ts +39 -0
  210. package/src/services/model-metadata.service.ts +4 -1
  211. package/src/services/object.utils.ts +10 -0
  212. package/src/services/settings/default-settings-provider.service.ts +15 -5
  213. package/src/services/user.service.ts +18 -3
  214. package/src/services/view-metadata.service.ts +5 -145
  215. package/src/solid-core.module.ts +16 -3
  216. package/src/testing/README.md +9 -0
  217. package/dist-tests/api/authenticate.spec.js +0 -119
  218. package/dist-tests/api/authenticate.spec.js.map +0 -1
  219. package/dist-tests/api/crud-service.findOne.cityMaster.spec.js +0 -97
  220. package/dist-tests/api/crud-service.findOne.cityMaster.spec.js.map +0 -1
  221. package/dist-tests/api/ping.spec.js +0 -21
  222. package/dist-tests/api/ping.spec.js.map +0 -1
  223. package/dist-tests/helpers/auth.js +0 -41
  224. package/dist-tests/helpers/auth.js.map +0 -1
  225. package/dist-tests/helpers/env.js +0 -11
  226. package/dist-tests/helpers/env.js.map +0 -1
  227. package/docs/agent-builder/notebook-lm-prompt-for-agent-builder.md +0 -136
  228. package/docs/agent-builder/team-ready-note-agent-builder.md +0 -305
  229. package/docs/agent-hub-grooming.md +0 -301
  230. package/docs/dashboards/AGENTIC_DASHBOARD_IMPLEMENTATION_PLAN.md +0 -438
  231. package/docs/dashboards/dashboard-curl-smoke-tests.txt +0 -146
  232. package/docs/dashboards/delete-legacy-dashboard-metadata.sql +0 -172
  233. package/docs/datasource-introspection-ddl-analysis.md +0 -326
  234. package/docs/datasource-introspection-implementation-plan.md +0 -306
  235. package/docs/grouping-enhancements.md +0 -89
  236. package/docs/java-spring/README.md +0 -3
  237. package/docs/java-spring/solid-core-module-deep-dive-report.md +0 -1317
  238. package/docs/module-package-import-handoff.md +0 -691
  239. package/docs/seed-changes.md +0 -65
  240. package/docs/test-data-workflow.md +0 -200
  241. package/docs/type-declaration-import-issue.md +0 -24
  242. package/docs/workflow/business-automation-example-notes.md +0 -309
  243. package/docs/workflow/control-flow-node-addition-sop.md +0 -324
  244. package/docs/workflow/data-engineering-pipeline-example-notes.md +0 -330
  245. package/docs/workflow/foreach-example-notes.md +0 -187
  246. package/docs/workflow/hello-world-example-notes.md +0 -271
  247. package/docs/workflow/kestra-concepts-plugins-blueprints.md +0 -315
  248. package/docs/workflow/loop-until-example-notes.md +0 -198
  249. package/docs/workflow/microservices-and-apis-example-notes.md +0 -264
  250. package/docs/workflow/samples.md +0 -25
  251. package/docs/workflow/what-is-kestra.md +0 -79
  252. package/docs/workflow/workflow-core-module-handoff-summary.md +0 -191
  253. package/docs/workflow/workflow-module-brd.md +0 -185
  254. package/docs/workflow/workflow-module-domain-model.md +0 -252
  255. package/docs/workflow/workflow-module-metadata-dsl.md +0 -302
  256. package/docs/workflow/workflow-module-technical-spec.md +0 -293
  257. package/docs/workflow/workflow-node-type-contracts.md +0 -635
  258. package/docs/workflow/workflow-node-ui-metadata-contract.md +0 -1262
  259. package/docs/workflow/workflow-solidx-model-field-spec.md +0 -284
package/CLAUDE.md ADDED
@@ -0,0 +1,26 @@
1
+ # This is the SolidX API project.
2
+ This is included as a dependency in consuming projects.
3
+
4
+ # SolidX UI
5
+ # The corresponding UI project is at the below path:
6
+ /Users/oswald/projects/Solid_Starters/solid-core-ui
7
+
8
+ # SolidX Docs
9
+ # The documentation project is at the below path:
10
+ /Users/oswald/projects/solidxai-docs
11
+
12
+ # SolidX Agent
13
+ # The agent project which has the skills for helping users configure, build and use SolidX is at the below path:
14
+ /Users/oswald/projects/Solid_Starters/agent
15
+
16
+ # SolidX Control Plane Commands
17
+ # The control plane commands for managing SolidX instances are in the below path:
18
+ /Users/oswald/projects/Solid_Starters/solidctl
19
+
20
+ # Testing reference project
21
+ # This is the reference library management project that is used for testing and development of SolidX features. It is located at the below path:
22
+ /Users/oswald/projects/Solid_Starters/solid-library-management
23
+
24
+ # Code Builder project
25
+ # This is the project that contains the code builder which generates code based on user input and templates. It is located at the below path:
26
+ /Users/oswald/projects/Solid_Starters/solid-code-builder
@@ -0,0 +1,2 @@
1
+ export declare const DRAFT_PUBLISH_VERSIONING_FIELD_NAMES: readonly ["isPublished", "isLatest", "initialEntityVersionId", "publishedTracker"];
2
+ //# sourceMappingURL=draft-publish-fields.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draft-publish-fields.d.ts","sourceRoot":"","sources":["../../src/constants/draft-publish-fields.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oCAAoC,oFAAqF,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DRAFT_PUBLISH_VERSIONING_FIELD_NAMES = void 0;
4
+ exports.DRAFT_PUBLISH_VERSIONING_FIELD_NAMES = ['isPublished', 'isLatest', 'initialEntityVersionId', 'publishedTracker'];
5
+ //# sourceMappingURL=draft-publish-fields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draft-publish-fields.js","sourceRoot":"","sources":["../../src/constants/draft-publish-fields.ts"],"names":[],"mappings":";;;AAIa,QAAA,oCAAoC,GAAG,CAAC,aAAa,EAAE,UAAU,EAAE,wBAAwB,EAAE,kBAAkB,CAAU,CAAC","sourcesContent":["// The versioning columns CommonEntity adds for draft/publish support. These don't exist on\n// legacy tables (see LegacyCommonEntityWithExistingId) and don't carry over when a new draft\n// version is copied from its source entity, so both of those call sites share this list rather\n// than each hand-enumerating the same four names.\nexport const DRAFT_PUBLISH_VERSIONING_FIELD_NAMES = ['isPublished', 'isLatest', 'initialEntityVersionId', 'publishedTracker'] as const;\n"]}
@@ -1,5 +1,14 @@
1
1
  export type MediaCategory = 'image' | 'audio' | 'video' | 'file' | 'pdf';
2
2
  export declare const DANGEROUS_EXTENSIONS: Set<string>;
3
+ export declare const DANGEROUS_MIME_TYPES: Set<string>;
4
+ export declare function getLowercaseFileExtension(fileName?: string | null): string | undefined;
5
+ export interface UploadedFileLike {
6
+ mimetype?: string;
7
+ originalname?: string;
8
+ filename?: string;
9
+ }
10
+ export declare function getUploadedFileName(file?: UploadedFileLike | null): string;
11
+ export declare function isDangerousMediaFile(file?: UploadedFileLike | null): boolean;
3
12
  export declare const EXT_TO_MEDIA_TYPE: Record<string, MediaCategory>;
4
13
  export declare const INLINE_SAFE_EXTENSIONS: Set<string>;
5
14
  //# sourceMappingURL=media-file-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"media-file-types.d.ts","sourceRoot":"","sources":["../../src/constants/media-file-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAazE,eAAO,MAAM,oBAAoB,aAI/B,CAAC;AASH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAM3D,CAAC;AAMF,eAAO,MAAM,sBAAsB,aAKjC,CAAC"}
1
+ {"version":3,"file":"media-file-types.d.ts","sourceRoot":"","sources":["../../src/constants/media-file-types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAazE,eAAO,MAAM,oBAAoB,aAI/B,CAAC;AAQH,eAAO,MAAM,oBAAoB,aAE/B,CAAC;AAEH,wBAAgB,yBAAyB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAWtF;AAGD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,wBAAgB,mBAAmB,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,IAAI,GAAG,MAAM,CAE1E;AAQD,wBAAgB,oBAAoB,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAO5E;AASD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAM3D,CAAC;AAMF,eAAO,MAAM,sBAAsB,aAKjC,CAAC"}
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.INLINE_SAFE_EXTENSIONS = exports.EXT_TO_MEDIA_TYPE = exports.DANGEROUS_EXTENSIONS = void 0;
3
+ exports.INLINE_SAFE_EXTENSIONS = exports.EXT_TO_MEDIA_TYPE = exports.DANGEROUS_MIME_TYPES = exports.DANGEROUS_EXTENSIONS = void 0;
4
+ exports.getLowercaseFileExtension = getLowercaseFileExtension;
5
+ exports.getUploadedFileName = getUploadedFileName;
6
+ exports.isDangerousMediaFile = isDangerousMediaFile;
4
7
  const IMAGE_EXTENSIONS = ['png', 'jpg', 'jpeg', 'webp', 'gif', 'bmp', 'tiff', 'heic', 'heif'];
5
8
  const AUDIO_EXTENSIONS = ['mp3', 'wav', 'ogg', 'aac', 'm4a', 'flac', 'webm'];
6
9
  const VIDEO_EXTENSIONS = ['mp4', 'mov', 'avi', 'mkv', 'mpeg', 'mpg', '3gp', '3g2', 'webm', 'ogg'];
@@ -11,6 +14,29 @@ exports.DANGEROUS_EXTENSIONS = new Set([
11
14
  'js', 'mjs', 'php', 'phtml', 'jsp', 'asp', 'aspx',
12
15
  'exe', 'sh', 'bat', 'cmd', 'ps1', 'jar', 'dll',
13
16
  ]);
17
+ exports.DANGEROUS_MIME_TYPES = new Set([
18
+ 'image/svg+xml', 'text/html', 'application/xhtml+xml',
19
+ ]);
20
+ function getLowercaseFileExtension(fileName) {
21
+ if (!fileName) {
22
+ return undefined;
23
+ }
24
+ const lastDotIndex = fileName.lastIndexOf('.');
25
+ if (lastDotIndex < 0 || lastDotIndex === fileName.length - 1) {
26
+ return undefined;
27
+ }
28
+ return fileName.slice(lastDotIndex + 1).toLowerCase();
29
+ }
30
+ function getUploadedFileName(file) {
31
+ return file?.originalname ?? file?.filename ?? '';
32
+ }
33
+ function isDangerousMediaFile(file) {
34
+ const ext = getLowercaseFileExtension(getUploadedFileName(file));
35
+ if (ext && exports.DANGEROUS_EXTENSIONS.has(ext)) {
36
+ return true;
37
+ }
38
+ return exports.DANGEROUS_MIME_TYPES.has((file?.mimetype || '').toLowerCase().trim());
39
+ }
14
40
  exports.EXT_TO_MEDIA_TYPE = {
15
41
  ...Object.fromEntries(IMAGE_EXTENSIONS.map((ext) => [ext, 'image'])),
16
42
  ...Object.fromEntries(AUDIO_EXTENSIONS.map((ext) => [ext, 'audio'])),
@@ -1 +1 @@
1
- {"version":3,"file":"media-file-types.js","sourceRoot":"","sources":["../../src/constants/media-file-types.ts"],"names":[],"mappings":";;;AAEA,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC9F,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC7E,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAClG,MAAM,mBAAmB,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AAC1H,MAAM,aAAa,GAAG,KAAK,CAAC;AAOf,QAAA,oBAAoB,GAAG,IAAI,GAAG,CAAC;IACxC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK;IACpC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;IACjD,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;CACjD,CAAC,CAAC;AASU,QAAA,iBAAiB,GAAkC;IAC5D,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAgB,CAAC,CAAC,CAAC;IAC7E,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAgB,CAAC,CAAC,CAAC;IAC7E,GAAG,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,OAAgB,CAAC,CAAC,CAAC;IAC7E,GAAG,MAAM,CAAC,WAAW,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,MAAe,CAAC,CAAC,CAAC;IAC/E,CAAC,aAAa,CAAC,EAAE,KAAK;CACzB,CAAC;AAMW,QAAA,sBAAsB,GAAG,IAAI,GAAG,CAAS;IAClD,GAAG,gBAAgB;IACnB,GAAG,gBAAgB;IACnB,GAAG,gBAAgB;IACnB,aAAa;CAChB,CAAC,CAAC","sourcesContent":["export type MediaCategory = 'image' | 'audio' | 'video' | 'file' | 'pdf';\n\nconst IMAGE_EXTENSIONS = ['png', 'jpg', 'jpeg', 'webp', 'gif', 'bmp', 'tiff', 'heic', 'heif'];\nconst AUDIO_EXTENSIONS = ['mp3', 'wav', 'ogg', 'aac', 'm4a', 'flac', 'webm'];\nconst VIDEO_EXTENSIONS = ['mp4', 'mov', 'avi', 'mkv', 'mpeg', 'mpg', '3gp', '3g2', 'webm', 'ogg'];\nconst DOCUMENT_EXTENSIONS = ['txt', 'md', 'csv', 'json', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'zip', 'rar', '7z'];\nconst PDF_EXTENSION = 'pdf';\n\n/**\n * Extensions that must never be accepted as media uploads, regardless of declared mimetype or\n * admin-configured mediaTypes allowlist. Checked before any other resolution so a spoofed\n * Content-Type (e.g. application/octet-stream on an .html file) can't bypass this.\n */\nexport const DANGEROUS_EXTENSIONS = new Set([\n 'html', 'htm', 'xhtml', 'svg', 'xml',\n 'js', 'mjs', 'php', 'phtml', 'jsp', 'asp', 'aspx',\n 'exe', 'sh', 'bat', 'cmd', 'ps1', 'jar', 'dll',\n]);\n\n/**\n * Single source of truth for extension -> coarse media category. Shared by upload-time\n * validation (MediaFieldCrudManager) and serve-time header hardening (ServeStaticModule), so\n * both agree on which extensions belong to which category and neither drifts out of sync.\n * webm/ogg are shared between AUDIO_EXTENSIONS and VIDEO_EXTENSIONS - last one wins here, they\n * default to 'video' since that's the more common upload case.\n */\nexport const EXT_TO_MEDIA_TYPE: Record<string, MediaCategory> = {\n ...Object.fromEntries(IMAGE_EXTENSIONS.map((ext) => [ext, 'image' as const])),\n ...Object.fromEntries(AUDIO_EXTENSIONS.map((ext) => [ext, 'audio' as const])),\n ...Object.fromEntries(VIDEO_EXTENSIONS.map((ext) => [ext, 'video' as const])),\n ...Object.fromEntries(DOCUMENT_EXTENSIONS.map((ext) => [ext, 'file' as const])),\n [PDF_EXTENSION]: 'pdf',\n};\n\n/**\n * Extensions safe to serve inline with their natural Content-Type; everything else served from\n * media-files-storage is forced to application/octet-stream + Content-Disposition: attachment.\n */\nexport const INLINE_SAFE_EXTENSIONS = new Set<string>([\n ...IMAGE_EXTENSIONS,\n ...AUDIO_EXTENSIONS,\n ...VIDEO_EXTENSIONS,\n PDF_EXTENSION,\n]);\n"]}
1
+ {"version":3,"file":"media-file-types.js","sourceRoot":"","sources":["../../src/constants/media-file-types.ts"],"names":[],"mappings":"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","sourcesContent":["export type MediaCategory = 'image' | 'audio' | 'video' | 'file' | 'pdf';\n\nconst IMAGE_EXTENSIONS = ['png', 'jpg', 'jpeg', 'webp', 'gif', 'bmp', 'tiff', 'heic', 'heif'];\nconst AUDIO_EXTENSIONS = ['mp3', 'wav', 'ogg', 'aac', 'm4a', 'flac', 'webm'];\nconst VIDEO_EXTENSIONS = ['mp4', 'mov', 'avi', 'mkv', 'mpeg', 'mpg', '3gp', '3g2', 'webm', 'ogg'];\nconst DOCUMENT_EXTENSIONS = ['txt', 'md', 'csv', 'json', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'zip', 'rar', '7z'];\nconst PDF_EXTENSION = 'pdf';\n\n/**\n * Extensions that must never be accepted as media uploads, regardless of declared mimetype or\n * admin-configured mediaTypes allowlist. Checked before any other resolution so a spoofed\n * Content-Type (e.g. application/octet-stream on an .html file) can't bypass this.\n */\nexport const DANGEROUS_EXTENSIONS = new Set([\n 'html', 'htm', 'xhtml', 'svg', 'xml',\n 'js', 'mjs', 'php', 'phtml', 'jsp', 'asp', 'aspx',\n 'exe', 'sh', 'bat', 'cmd', 'ps1', 'jar', 'dll',\n]);\n\n\n/**\n * Mimetypes that are never safe to accept, regardless of extension. These render as active\n * content in a browser (svg can carry <script>), so they are rejected even when the filename\n * looks harmless. Kept alongside DANGEROUS_EXTENSIONS so upload paths check both.\n */\nexport const DANGEROUS_MIME_TYPES = new Set([\n 'image/svg+xml', 'text/html', 'application/xhtml+xml',\n]);\n\nexport function getLowercaseFileExtension(fileName?: string | null): string | undefined {\n if (!fileName) {\n return undefined;\n }\n\n const lastDotIndex = fileName.lastIndexOf('.');\n if (lastDotIndex < 0 || lastDotIndex === fileName.length - 1) {\n return undefined;\n }\n\n return fileName.slice(lastDotIndex + 1).toLowerCase();\n}\n\n/** Minimal shape of an uploaded file, so this module stays free of framework imports. */\nexport interface UploadedFileLike {\n mimetype?: string;\n originalname?: string;\n filename?: string;\n}\n\n/** originalname is the client-supplied name; filename is multer's on-disk name. */\nexport function getUploadedFileName(file?: UploadedFileLike | null): string {\n return file?.originalname ?? file?.filename ?? '';\n}\n\n/**\n * Single predicate for \"must never be stored\". Shared by every upload entry point\n * (MediaFieldCrudManager, chatter attachments) so the rules can't drift between them.\n * Extension is checked before mimetype so a spoofed Content-Type (e.g.\n * application/octet-stream on an .html file) can't bypass it.\n */\nexport function isDangerousMediaFile(file?: UploadedFileLike | null): boolean {\n const ext = getLowercaseFileExtension(getUploadedFileName(file));\n if (ext && DANGEROUS_EXTENSIONS.has(ext)) {\n return true;\n }\n\n return DANGEROUS_MIME_TYPES.has((file?.mimetype || '').toLowerCase().trim());\n}\n\n/**\n * Single source of truth for extension -> coarse media category. Shared by upload-time\n * validation (MediaFieldCrudManager) and serve-time header hardening (ServeStaticModule), so\n * both agree on which extensions belong to which category and neither drifts out of sync.\n * webm/ogg are shared between AUDIO_EXTENSIONS and VIDEO_EXTENSIONS - last one wins here, they\n * default to 'video' since that's the more common upload case.\n */\nexport const EXT_TO_MEDIA_TYPE: Record<string, MediaCategory> = {\n ...Object.fromEntries(IMAGE_EXTENSIONS.map((ext) => [ext, 'image' as const])),\n ...Object.fromEntries(AUDIO_EXTENSIONS.map((ext) => [ext, 'audio' as const])),\n ...Object.fromEntries(VIDEO_EXTENSIONS.map((ext) => [ext, 'video' as const])),\n ...Object.fromEntries(DOCUMENT_EXTENSIONS.map((ext) => [ext, 'file' as const])),\n [PDF_EXTENSION]: 'pdf',\n};\n\n/**\n * Extensions safe to serve inline with their natural Content-Type; everything else served from\n * media-files-storage is forced to application/octet-stream + Content-Disposition: attachment.\n */\nexport const INLINE_SAFE_EXTENSIONS = new Set<string>([\n ...IMAGE_EXTENSIONS,\n ...AUDIO_EXTENSIONS,\n ...VIDEO_EXTENSIONS,\n PDF_EXTENSION,\n]);\n"]}
@@ -11,6 +11,6 @@ export declare class ActionMetadataController {
11
11
  findMany(query: any, solidRequestContext: SolidRequestContextDto): Promise<any>;
12
12
  findOne(id: string, query: any, solidRequestContext: SolidRequestContextDto): Promise<import("..").ActionMetadata>;
13
13
  deleteMany(ids: number[], solidRequestContext: SolidRequestContextDto): Promise<any>;
14
- delete(id: number, solidRequestContext: SolidRequestContextDto): Promise<import("..").ActionMetadata>;
14
+ delete(id: number, solidRequestContext: SolidRequestContextDto): Promise<import("..").ActionMetadata[]>;
15
15
  }
16
16
  //# sourceMappingURL=action-metadata.controller.d.ts.map
@@ -129,7 +129,7 @@ __decorate([
129
129
  __decorate([
130
130
  (0, swagger_1.ApiBearerAuth)("jwt"),
131
131
  (0, common_1.Delete)(':id'),
132
- openapi.ApiResponse({ status: 200, type: require("../entities/action-metadata.entity").ActionMetadata }),
132
+ openapi.ApiResponse({ status: 200, type: [require("../entities/action-metadata.entity").ActionMetadata] }),
133
133
  __param(0, (0, common_1.Param)('id')),
134
134
  __param(1, (0, solid_request_context_decorator_1.SolidRequestContextDecorator)()),
135
135
  __metadata("design:type", Function),
@@ -11,6 +11,6 @@ export declare class AgentEventController {
11
11
  findMany(query: any): Promise<any>;
12
12
  findOne(id: string, query: any): Promise<import("..").AgentEvent>;
13
13
  deleteMany(ids: number[]): Promise<any>;
14
- delete(id: number): Promise<import("..").AgentEvent>;
14
+ delete(id: number): Promise<import("..").AgentEvent[]>;
15
15
  }
16
16
  //# sourceMappingURL=agent-event.controller.d.ts.map
@@ -133,7 +133,7 @@ __decorate([
133
133
  __decorate([
134
134
  (0, swagger_1.ApiBearerAuth)('jwt'),
135
135
  (0, common_1.Delete)(':id'),
136
- openapi.ApiResponse({ status: 200, type: require("../entities/agent-event.entity").AgentEvent }),
136
+ openapi.ApiResponse({ status: 200, type: [require("../entities/agent-event.entity").AgentEvent] }),
137
137
  __param(0, (0, common_1.Param)('id')),
138
138
  __metadata("design:type", Function),
139
139
  __metadata("design:paramtypes", [Number]),
@@ -11,6 +11,6 @@ export declare class AgentSessionController {
11
11
  findMany(query: any): Promise<any>;
12
12
  findOne(id: string, query: any): Promise<import("..").AgentSession>;
13
13
  deleteMany(ids: number[]): Promise<any>;
14
- delete(id: number): Promise<import("..").AgentSession>;
14
+ delete(id: number): Promise<import("..").AgentSession[]>;
15
15
  }
16
16
  //# sourceMappingURL=agent-session.controller.d.ts.map
@@ -133,7 +133,7 @@ __decorate([
133
133
  __decorate([
134
134
  (0, swagger_1.ApiBearerAuth)('jwt'),
135
135
  (0, common_1.Delete)(':id'),
136
- openapi.ApiResponse({ status: 200, type: require("../entities/agent-session.entity").AgentSession }),
136
+ openapi.ApiResponse({ status: 200, type: [require("../entities/agent-session.entity").AgentSession] }),
137
137
  __param(0, (0, common_1.Param)('id')),
138
138
  __metadata("design:type", Function),
139
139
  __metadata("design:paramtypes", [Number]),
@@ -19,6 +19,6 @@ export declare class DashboardUserLayoutController {
19
19
  findMany(query: any): Promise<any>;
20
20
  findOne(id: string, query: any): Promise<import("..").DashboardUserLayout>;
21
21
  deleteMany(ids: number[]): Promise<any>;
22
- delete(id: number): Promise<import("..").DashboardUserLayout>;
22
+ delete(id: number): Promise<import("..").DashboardUserLayout[]>;
23
23
  }
24
24
  //# sourceMappingURL=dashboard-user-layout.controller.d.ts.map
@@ -165,7 +165,7 @@ __decorate([
165
165
  __decorate([
166
166
  (0, swagger_1.ApiBearerAuth)("jwt"),
167
167
  (0, common_1.Delete)(':id'),
168
- openapi.ApiResponse({ status: 200, type: require("../entities/dashboard-user-layout.entity").DashboardUserLayout }),
168
+ openapi.ApiResponse({ status: 200, type: [require("../entities/dashboard-user-layout.entity").DashboardUserLayout] }),
169
169
  __param(0, (0, common_1.Param)('id')),
170
170
  __metadata("design:type", Function),
171
171
  __metadata("design:paramtypes", [Number]),
@@ -12,7 +12,7 @@ export declare class EmailTemplateController {
12
12
  findMany(query: any): Promise<any>;
13
13
  findOne(id: string, query: any): Promise<import("..").EmailTemplate>;
14
14
  deleteMany(ids: number[]): Promise<any>;
15
- delete(id: number): Promise<import("..").EmailTemplate>;
15
+ delete(id: number): Promise<import("..").EmailTemplate[]>;
16
16
  generateMailgenTemplate(templateType: string): any;
17
17
  }
18
18
  //# sourceMappingURL=email-template.controller.d.ts.map
@@ -190,7 +190,7 @@ __decorate([
190
190
  __decorate([
191
191
  (0, swagger_1.ApiBearerAuth)("jwt"),
192
192
  (0, common_1.Delete)(':id'),
193
- openapi.ApiResponse({ status: 200, type: require("../entities/email-template.entity").EmailTemplate }),
193
+ openapi.ApiResponse({ status: 200, type: [require("../entities/email-template.entity").EmailTemplate] }),
194
194
  __param(0, (0, common_1.Param)('id')),
195
195
  __metadata("design:type", Function),
196
196
  __metadata("design:paramtypes", [Number]),
@@ -14,7 +14,7 @@ export declare class ExportTemplateController {
14
14
  findMany(query: any): Promise<any>;
15
15
  findOne(id: string, query: any): Promise<import("..").ExportTemplate>;
16
16
  deleteMany(ids: number[]): Promise<any>;
17
- delete(id: number): Promise<import("..").ExportTemplate>;
17
+ delete(id: number): Promise<import("..").ExportTemplate[]>;
18
18
  startExportSync(dto: StartExportSyncDto, res: Response, activeUser: ActiveUserData): Promise<void>;
19
19
  startExportAsync(dto: StartExportSyncDto): Promise<import("..").ExportTransaction>;
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"export-template.controller.d.ts","sourceRoot":"","sources":["../../src/controllers/export-template.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAE3E,qBAEa,wBAAwB;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,qBAAqB;IAK3D,MAAM,CAAS,SAAS,EAAE,uBAAuB,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAOrG,UAAU,CAAS,UAAU,EAAE,uBAAuB,EAAE,EAAmB,UAAU,GAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAO;IAQnH,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,uBAAuB,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAO9H,aAAa,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,uBAAuB,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAgB/H,QAAQ,CAAU,KAAK,EAAE,GAAG;IAM5B,OAAO,CAAc,EAAE,EAAE,MAAM,EAAW,KAAK,EAAE,GAAG;IAKpD,UAAU,CAAS,GAAG,EAAE,MAAM,EAAE;IAMhC,MAAM,CAAc,EAAE,EAAE,MAAM;IAM9B,eAAe,CAAS,GAAG,EAAE,kBAAkB,EAAS,GAAG,EAAE,QAAQ,EAAiB,UAAU,EAAE,cAAc;IAsBhH,gBAAgB,CAAS,GAAG,EAAE,kBAAkB;CAUvD"}
1
+ {"version":3,"file":"export-template.controller.d.ts","sourceRoot":"","sources":["../../src/controllers/export-template.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAG3E,qBAEa,wBAAwB;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,qBAAqB;IAK3D,MAAM,CAAS,SAAS,EAAE,uBAAuB,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAOrG,UAAU,CAAS,UAAU,EAAE,uBAAuB,EAAE,EAAmB,UAAU,GAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAO;IAQnH,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,uBAAuB,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAO9H,aAAa,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,uBAAuB,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAgB/H,QAAQ,CAAU,KAAK,EAAE,GAAG;IAM5B,OAAO,CAAc,EAAE,EAAE,MAAM,EAAW,KAAK,EAAE,GAAG;IAKpD,UAAU,CAAS,GAAG,EAAE,MAAM,EAAE;IAMhC,MAAM,CAAc,EAAE,EAAE,MAAM;IAM9B,eAAe,CAAS,GAAG,EAAE,kBAAkB,EAAS,GAAG,EAAE,QAAQ,EAAiB,UAAU,EAAE,cAAc;IAuBhH,gBAAgB,CAAS,GAAG,EAAE,kBAAkB;CAUvD"}
@@ -22,6 +22,7 @@ const create_export_template_dto_1 = require("../dtos/create-export-template.dto
22
22
  const update_export_template_dto_1 = require("../dtos/update-export-template.dto");
23
23
  const export_dto_1 = require("../dtos/export.dto");
24
24
  const active_user_decorator_1 = require("../decorators/active-user.decorator");
25
+ const file_download_helper_1 = require("../helpers/file-download.helper");
25
26
  let ExportTemplateController = class ExportTemplateController {
26
27
  constructor(service) {
27
28
  this.service = service;
@@ -61,9 +62,10 @@ let ExportTemplateController = class ExportTemplateController {
61
62
  if (exportFileInfo.exportStream === null) {
62
63
  throw new common_1.InternalServerErrorException("Export stream is null");
63
64
  }
64
- res.setHeader('Content-Disposition', `attachment; filename="${exportFileInfo.fileName}"`);
65
- res.setHeader('Content-Type', exportFileInfo.mimeType);
66
- res.setHeader('Access-Control-Expose-Headers', 'Content-Disposition, Content-Type');
65
+ (0, file_download_helper_1.setFileDownloadHeaders)(res, {
66
+ fileName: exportFileInfo.fileName,
67
+ mimeType: exportFileInfo.mimeType,
68
+ });
67
69
  exportFileInfo.exportStream.pipe(res);
68
70
  }
69
71
  async startExportAsync(dto) {
@@ -163,7 +165,7 @@ __decorate([
163
165
  __decorate([
164
166
  (0, swagger_1.ApiBearerAuth)("jwt"),
165
167
  (0, common_1.Delete)(':id'),
166
- openapi.ApiResponse({ status: 200, type: require("../entities/export-template.entity").ExportTemplate }),
168
+ openapi.ApiResponse({ status: 200, type: [require("../entities/export-template.entity").ExportTemplate] }),
167
169
  __param(0, (0, common_1.Param)('id')),
168
170
  __metadata("design:type", Function),
169
171
  __metadata("design:paramtypes", [Number]),
@@ -1 +1 @@
1
- {"version":3,"file":"export-template.controller.js","sourceRoot":"","sources":["../../src/controllers/export-template.controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { Controller, Post, Body, Param, UploadedFiles, UseInterceptors, Put, Get, Query, Delete, Patch, Res, InternalServerErrorException } from '@nestjs/common';\nimport { AnyFilesInterceptor } from \"@nestjs/platform-express\";\nimport { ApiBearerAuth, ApiQuery, ApiTags } from '@nestjs/swagger';\nimport { ExportTemplateService } from '../services/export-template.service';\nimport { CreateExportTemplateDto } from '../dtos/create-export-template.dto';\nimport { UpdateExportTemplateDto } from '../dtos/update-export-template.dto';\nimport { Response } from 'express';\nimport { StartExportSyncDto } from 'src/dtos/export.dto';\nimport { ActiveUser } from 'src/decorators/active-user.decorator';\nimport { ActiveUserData } from 'src/interfaces/active-user-data.interface';\n\n@ApiTags('Solid Core') \n@Controller('export-template') //FIXME: Change this to the model plural name \nexport class ExportTemplateController { \n constructor(private readonly service: ExportTemplateService) {}\n\n @ApiBearerAuth(\"jwt\")\n @Post()\n @UseInterceptors(AnyFilesInterceptor())\n create(@Body() createDto: CreateExportTemplateDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.create(createDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/bulk')\n @UseInterceptors(AnyFilesInterceptor())\n insertMany(@Body() createDtos: CreateExportTemplateDto[], @UploadedFiles() filesArray: Express.Multer.File[][] = []) {\n return this.service.insertMany(createDtos, filesArray);\n }\n\n\n @ApiBearerAuth(\"jwt\")\n @Put(':id')\n @UseInterceptors(AnyFilesInterceptor())\n update(@Param('id') id: number, @Body() updateDto: UpdateExportTemplateDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Patch(':id')\n @UseInterceptors(AnyFilesInterceptor())\n partialUpdate(@Param('id') id: number, @Body() updateDto: UpdateExportTemplateDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files, true);\n }\n \n @ApiBearerAuth(\"jwt\")\n @ApiQuery({ name: 'showSoftDeleted', required: false, type: Boolean })\n @ApiQuery({ name: 'showOnlySoftDeleted', required: false, type: Boolean })\n @ApiQuery({ name: 'limit', required: false, type: Number })\n @ApiQuery({ name: 'offset', required: false, type: Number })\n @ApiQuery({ name: 'fields', required: false, type: Array })\n @ApiQuery({ name: 'sort', required: false, type: Array }) \n @ApiQuery({ name: 'groupBy', required: false, type: Array })\n @ApiQuery({ name: 'populate', required: false, type: Array })\n @ApiQuery({ name: 'populateMedia', required: false, type: Array })\n @ApiQuery({ name: 'filters', required: false, type: Array })\n @Get()\n async findMany(@Query() query: any) { \n return this.service.find(query); \n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id')\n async findOne(@Param('id') id: string, @Query() query: any) {\n return this.service.findOne(+id, query);\n }\n\n @Delete('/bulk')\n async deleteMany(@Body() ids: number[]) {\n return this.service.deleteMany(ids);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Delete(':id')\n async delete(@Param('id') id: number) {\n return this.service.delete(id);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/startExport/sync')\n async startExportSync(@Body() dto: StartExportSyncDto, @Res() res: Response, @ActiveUser() activeUser: ActiveUserData) {\n const { filters, ...rest } = dto;\n let updateDto = { ...rest };\n // Check if templateName is present → create template\n if (updateDto?.templateName) {\n const newTemplate = await this.service.create(updateDto, []);\n updateDto = { ...updateDto, id: newTemplate.id };\n }\n const exportFileInfo = await this.service.startExportSync(updateDto, filters, activeUser);\n if (exportFileInfo.exportStream === null) {\n throw new InternalServerErrorException(\"Export stream is null\");\n }\n // ✅ Set response headers for streaming\n res.setHeader('Content-Disposition', `attachment; filename=\"${exportFileInfo.fileName}\"`);\n res.setHeader('Content-Type', exportFileInfo.mimeType);\n res.setHeader('Access-Control-Expose-Headers', 'Content-Disposition, Content-Type');\n // Pipe the strea to the response as an excel file\n exportFileInfo.exportStream.pipe(res);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/startExport/async')\n async startExportAsync(@Body() dto: StartExportSyncDto) {\n const { filters, ...rest } = dto;\n let updateDto = { ...rest };\n if (updateDto.templateName) {\n const newTemplate = await this.service.create(updateDto, []);\n updateDto = { ...updateDto, id: newTemplate.id };\n }\n return this.service.startExportAsync(updateDto, filters);\n }\n\n}\n"]}
1
+ {"version":3,"file":"export-template.controller.js","sourceRoot":"","sources":["../../src/controllers/export-template.controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { Controller, Post, Body, Param, UploadedFiles, UseInterceptors, Put, Get, Query, Delete, Patch, Res, InternalServerErrorException } from '@nestjs/common';\nimport { AnyFilesInterceptor } from \"@nestjs/platform-express\";\nimport { ApiBearerAuth, ApiQuery, ApiTags } from '@nestjs/swagger';\nimport { ExportTemplateService } from '../services/export-template.service';\nimport { CreateExportTemplateDto } from '../dtos/create-export-template.dto';\nimport { UpdateExportTemplateDto } from '../dtos/update-export-template.dto';\nimport { Response } from 'express';\nimport { StartExportSyncDto } from 'src/dtos/export.dto';\nimport { ActiveUser } from 'src/decorators/active-user.decorator';\nimport { ActiveUserData } from 'src/interfaces/active-user-data.interface';\nimport { setFileDownloadHeaders } from 'src/helpers/file-download.helper';\n\n@ApiTags('Solid Core') \n@Controller('export-template') //FIXME: Change this to the model plural name \nexport class ExportTemplateController { \n constructor(private readonly service: ExportTemplateService) {}\n\n @ApiBearerAuth(\"jwt\")\n @Post()\n @UseInterceptors(AnyFilesInterceptor())\n create(@Body() createDto: CreateExportTemplateDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.create(createDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/bulk')\n @UseInterceptors(AnyFilesInterceptor())\n insertMany(@Body() createDtos: CreateExportTemplateDto[], @UploadedFiles() filesArray: Express.Multer.File[][] = []) {\n return this.service.insertMany(createDtos, filesArray);\n }\n\n\n @ApiBearerAuth(\"jwt\")\n @Put(':id')\n @UseInterceptors(AnyFilesInterceptor())\n update(@Param('id') id: number, @Body() updateDto: UpdateExportTemplateDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Patch(':id')\n @UseInterceptors(AnyFilesInterceptor())\n partialUpdate(@Param('id') id: number, @Body() updateDto: UpdateExportTemplateDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files, true);\n }\n \n @ApiBearerAuth(\"jwt\")\n @ApiQuery({ name: 'showSoftDeleted', required: false, type: Boolean })\n @ApiQuery({ name: 'showOnlySoftDeleted', required: false, type: Boolean })\n @ApiQuery({ name: 'limit', required: false, type: Number })\n @ApiQuery({ name: 'offset', required: false, type: Number })\n @ApiQuery({ name: 'fields', required: false, type: Array })\n @ApiQuery({ name: 'sort', required: false, type: Array }) \n @ApiQuery({ name: 'groupBy', required: false, type: Array })\n @ApiQuery({ name: 'populate', required: false, type: Array })\n @ApiQuery({ name: 'populateMedia', required: false, type: Array })\n @ApiQuery({ name: 'filters', required: false, type: Array })\n @Get()\n async findMany(@Query() query: any) { \n return this.service.find(query); \n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id')\n async findOne(@Param('id') id: string, @Query() query: any) {\n return this.service.findOne(+id, query);\n }\n\n @Delete('/bulk')\n async deleteMany(@Body() ids: number[]) {\n return this.service.deleteMany(ids);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Delete(':id')\n async delete(@Param('id') id: number) {\n return this.service.delete(id);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/startExport/sync')\n async startExportSync(@Body() dto: StartExportSyncDto, @Res() res: Response, @ActiveUser() activeUser: ActiveUserData) {\n const { filters, ...rest } = dto;\n let updateDto = { ...rest };\n // Check if templateName is present → create template\n if (updateDto?.templateName) {\n const newTemplate = await this.service.create(updateDto, []);\n updateDto = { ...updateDto, id: newTemplate.id };\n }\n const exportFileInfo = await this.service.startExportSync(updateDto, filters, activeUser);\n if (exportFileInfo.exportStream === null) {\n throw new InternalServerErrorException(\"Export stream is null\");\n }\n // ✅ Set response headers for streaming\n setFileDownloadHeaders(res, {\n fileName: exportFileInfo.fileName,\n mimeType: exportFileInfo.mimeType,\n });\n // Pipe the strea to the response as an excel file\n exportFileInfo.exportStream.pipe(res);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/startExport/async')\n async startExportAsync(@Body() dto: StartExportSyncDto) {\n const { filters, ...rest } = dto;\n let updateDto = { ...rest };\n if (updateDto.templateName) {\n const newTemplate = await this.service.create(updateDto, []);\n updateDto = { ...updateDto, id: newTemplate.id };\n }\n return this.service.startExportAsync(updateDto, filters);\n }\n\n}\n"]}
@@ -11,6 +11,6 @@ export declare class ExportTransactionController {
11
11
  findMany(query: any): Promise<any>;
12
12
  findOne(id: string, query: any): Promise<import("..").ExportTransaction>;
13
13
  deleteMany(ids: number[]): Promise<any>;
14
- delete(id: number): Promise<import("..").ExportTransaction>;
14
+ delete(id: number): Promise<import("..").ExportTransaction[]>;
15
15
  }
16
16
  //# sourceMappingURL=export-transaction.controller.d.ts.map
@@ -136,7 +136,7 @@ __decorate([
136
136
  __decorate([
137
137
  (0, swagger_1.ApiBearerAuth)("jwt"),
138
138
  (0, common_1.Delete)(':id'),
139
- openapi.ApiResponse({ status: 200, type: require("../entities/export-transaction.entity").ExportTransaction }),
139
+ openapi.ApiResponse({ status: 200, type: [require("../entities/export-transaction.entity").ExportTransaction] }),
140
140
  __param(0, (0, common_1.Param)('id')),
141
141
  __metadata("design:type", Function),
142
142
  __metadata("design:paramtypes", [Number]),
@@ -19,6 +19,6 @@ export declare class ImportTransactionErrorLogController {
19
19
  findMany(query: any): Promise<any>;
20
20
  findOne(id: string, query: any): Promise<import("..").ImportTransactionErrorLog>;
21
21
  deleteMany(ids: number[]): Promise<any>;
22
- delete(id: number): Promise<import("..").ImportTransactionErrorLog>;
22
+ delete(id: number): Promise<import("..").ImportTransactionErrorLog[]>;
23
23
  }
24
24
  //# sourceMappingURL=import-transaction-error-log.controller.d.ts.map
@@ -165,7 +165,7 @@ __decorate([
165
165
  __decorate([
166
166
  (0, swagger_1.ApiBearerAuth)("jwt"),
167
167
  (0, common_1.Delete)(':id'),
168
- openapi.ApiResponse({ status: 200, type: require("../entities/import-transaction-error-log.entity").ImportTransactionErrorLog }),
168
+ openapi.ApiResponse({ status: 200, type: [require("../entities/import-transaction-error-log.entity").ImportTransactionErrorLog] }),
169
169
  __param(0, (0, common_1.Param)('id')),
170
170
  __metadata("design:type", Function),
171
171
  __metadata("design:paramtypes", [Number]),
@@ -27,6 +27,6 @@ export declare class ImportTransactionController {
27
27
  startImportSync(id: string, activeUser: ActiveUserData): Promise<import("../services/import-transaction.service").ImportSyncResult>;
28
28
  startImportAsync(id: string): Promise<void>;
29
29
  deleteMany(ids: number[]): Promise<any>;
30
- delete(id: number): Promise<import("..").ImportTransaction>;
30
+ delete(id: number): Promise<import("..").ImportTransaction[]>;
31
31
  }
32
32
  //# sourceMappingURL=import-transaction.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"import-transaction.controller.d.ts","sourceRoot":"","sources":["../../src/controllers/import-transaction.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAChG,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAO3E,qBAEa,2BAA2B;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,wBAAwB;IAIxD,iBAAiB,CAA2B,eAAe,EAAE,MAAM,EAAmB,MAAM,EAAE,MAAM,EAAS,GAAG,EAAE,QAAQ;IAgB1H,qBAAqB,CAA2B,eAAe,EAAE,MAAM;IAQ7E,MAAM,CAAS,SAAS,EAAE,0BAA0B,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAOxG,UAAU,CAAS,UAAU,EAAE,0BAA0B,EAAE,EAAmB,UAAU,GAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAO;IAQtH,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,0BAA0B,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAOjI,aAAa,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,0BAA0B,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAMlI,WAAW,CAAS,GAAG,EAAE,MAAM,EAAE;;;;IAMjC,OAAO,CAAc,EAAE,EAAE,MAAM;;;;IAe/B,QAAQ,CAAU,KAAK,EAAE,GAAG;IAM5B,OAAO,CAAc,EAAE,EAAE,MAAM,EAAW,KAAK,EAAE,GAAG;IAMpD,oBAAoB,CAAc,EAAE,EAAE,MAAM;IAM5C,2BAA2B,CAAc,EAAE,EAAE,MAAM,EAAS,GAAG,EAAE,QAAQ;IAezE,eAAe,CAAc,EAAE,EAAE,MAAM,EAAgB,UAAU,EAAE,cAAc;IAOjF,gBAAgB,CAAc,EAAE,EAAE,MAAM;IAMxC,UAAU,CAAS,GAAG,EAAE,MAAM,EAAE;IAMhC,MAAM,CAAc,EAAE,EAAE,MAAM;CAIrC"}
1
+ {"version":3,"file":"import-transaction.controller.d.ts","sourceRoot":"","sources":["../../src/controllers/import-transaction.controller.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAChG,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAQ3E,qBAEa,2BAA2B;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,wBAAwB;IAIxD,iBAAiB,CAA2B,eAAe,EAAE,MAAM,EAAmB,MAAM,EAAE,MAAM,EAAS,GAAG,EAAE,QAAQ;IAiB1H,qBAAqB,CAA2B,eAAe,EAAE,MAAM;IAQ7E,MAAM,CAAS,SAAS,EAAE,0BAA0B,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAOxG,UAAU,CAAS,UAAU,EAAE,0BAA0B,EAAE,EAAmB,UAAU,GAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAO;IAQtH,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,0BAA0B,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAOjI,aAAa,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,0BAA0B,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IAMlI,WAAW,CAAS,GAAG,EAAE,MAAM,EAAE;;;;IAMjC,OAAO,CAAc,EAAE,EAAE,MAAM;;;;IAe/B,QAAQ,CAAU,KAAK,EAAE,GAAG;IAM5B,OAAO,CAAc,EAAE,EAAE,MAAM,EAAW,KAAK,EAAE,GAAG;IAMpD,oBAAoB,CAAc,EAAE,EAAE,MAAM;IAM5C,2BAA2B,CAAc,EAAE,EAAE,MAAM,EAAS,GAAG,EAAE,QAAQ;IAazE,eAAe,CAAc,EAAE,EAAE,MAAM,EAAgB,UAAU,EAAE,cAAc;IAOjF,gBAAgB,CAAc,EAAE,EAAE,MAAM;IAMxC,UAAU,CAAS,GAAG,EAAE,MAAM,EAAE;IAMhC,MAAM,CAAc,EAAE,EAAE,MAAM;CAIrC"}
@@ -21,6 +21,7 @@ const import_transaction_service_1 = require("../services/import-transaction.ser
21
21
  const create_import_transaction_dto_1 = require("../dtos/create-import-transaction.dto");
22
22
  const update_import_transaction_dto_1 = require("../dtos/update-import-transaction.dto");
23
23
  const active_user_decorator_1 = require("../decorators/active-user.decorator");
24
+ const file_download_helper_1 = require("../helpers/file-download.helper");
24
25
  var ShowSoftDeleted;
25
26
  (function (ShowSoftDeleted) {
26
27
  ShowSoftDeleted["INCLUSIVE"] = "inclusive";
@@ -35,9 +36,10 @@ let ImportTransactionController = class ImportTransactionController {
35
36
  if (importTemplateFileInfo.stream === null) {
36
37
  throw new common_1.InternalServerErrorException("Sample Import template stream is null");
37
38
  }
38
- res.setHeader('Content-Disposition', `attachment; filename="${importTemplateFileInfo.fileName}"`);
39
- res.setHeader('Content-Type', importTemplateFileInfo.mimeType);
40
- res.setHeader('Access-Control-Expose-Headers', 'Content-Disposition, Content-Type');
39
+ (0, file_download_helper_1.setFileDownloadHeaders)(res, {
40
+ fileName: importTemplateFileInfo.fileName,
41
+ mimeType: importTemplateFileInfo.mimeType,
42
+ });
41
43
  importTemplateFileInfo.stream.pipe(res);
42
44
  }
43
45
  async getImportInstructions(modelMetadataId) {
@@ -75,9 +77,7 @@ let ImportTransactionController = class ImportTransactionController {
75
77
  if (stream === null) {
76
78
  throw new common_1.InternalServerErrorException("Failed records stream is null");
77
79
  }
78
- res.setHeader('Content-Disposition', `attachment; filename="${fileName}"`);
79
- res.setHeader('Content-Type', mimeType);
80
- res.setHeader('Access-Control-Expose-Headers', 'Content-Disposition, Content-Type');
80
+ (0, file_download_helper_1.setFileDownloadHeaders)(res, { fileName, mimeType });
81
81
  stream.pipe(res);
82
82
  }
83
83
  async startImportSync(id, activeUser) {
@@ -257,7 +257,7 @@ __decorate([
257
257
  __decorate([
258
258
  (0, swagger_1.ApiBearerAuth)("jwt"),
259
259
  (0, common_1.Delete)(':id'),
260
- openapi.ApiResponse({ status: 200, type: require("../entities/import-transaction.entity").ImportTransaction }),
260
+ openapi.ApiResponse({ status: 200, type: [require("../entities/import-transaction.entity").ImportTransaction] }),
261
261
  __param(0, (0, common_1.Param)('id')),
262
262
  __metadata("design:type", Function),
263
263
  __metadata("design:paramtypes", [Number]),
@@ -1 +1 @@
1
- {"version":3,"file":"import-transaction.controller.js","sourceRoot":"","sources":["../../src/controllers/import-transaction.controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { Controller, Post, Body, Param, UploadedFiles, UseInterceptors, Put, Get, Query, Delete, Patch, InternalServerErrorException, Res } from '@nestjs/common';\nimport { AnyFilesInterceptor } from \"@nestjs/platform-express\";\nimport { ApiBearerAuth, ApiQuery, ApiTags } from '@nestjs/swagger';\nimport { ImportFormat, ImportTransactionService } from '../services/import-transaction.service';\nimport { CreateImportTransactionDto } from '../dtos/create-import-transaction.dto';\nimport { UpdateImportTransactionDto } from '../dtos/update-import-transaction.dto';\nimport { Response } from 'express';\nimport { ActiveUser } from 'src/decorators/active-user.decorator';\nimport { ActiveUserData } from 'src/interfaces/active-user-data.interface';\n\nenum ShowSoftDeleted {\n INCLUSIVE = \"inclusive\",\n EXCLUSIVE = \"exclusive\",\n}\n\n@ApiTags('Solid Core')\n@Controller('import-transaction')\nexport class ImportTransactionController {\n constructor(private readonly service: ImportTransactionService) {}\n\n @ApiBearerAuth(\"jwt\")\n @Get('/import-template/:modelMetadataId/:format')\n async getImportTemplate(@Param('modelMetadataId') modelMetadataId: number, @Param('format') format: string, @Res() res: Response) {\n const importTemplateFileInfo = await this.service.getImportTemplate(+modelMetadataId, format as ImportFormat);\n if (importTemplateFileInfo.stream === null) {\n throw new InternalServerErrorException(\"Sample Import template stream is null\");\n }\n\n // ✅ Set response headers for streaming\n res.setHeader('Content-Disposition', `attachment; filename=\"${importTemplateFileInfo.fileName}\"`);\n res.setHeader('Content-Type', importTemplateFileInfo.mimeType);\n res.setHeader('Access-Control-Expose-Headers', 'Content-Disposition, Content-Type');\n // Pipe the stream to the response as an excel file\n importTemplateFileInfo.stream.pipe(res);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get('/import-instructions/:modelMetadataId')\n async getImportInstructions(@Param('modelMetadataId') modelMetadataId: number) {\n // return this.service.getImportInstructions(modelMetadataId);\n return this.service.getImportInstructions(modelMetadataId);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post()\n @UseInterceptors(AnyFilesInterceptor())\n create(@Body() createDto: CreateImportTransactionDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.create(createDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/bulk')\n @UseInterceptors(AnyFilesInterceptor())\n insertMany(@Body() createDtos: CreateImportTransactionDto[], @UploadedFiles() filesArray: Express.Multer.File[][] = []) {\n return this.service.insertMany(createDtos, filesArray);\n }\n\n\n @ApiBearerAuth(\"jwt\")\n @Put(':id')\n @UseInterceptors(AnyFilesInterceptor())\n update(@Param('id') id: number, @Body() updateDto: UpdateImportTransactionDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Patch(':id')\n @UseInterceptors(AnyFilesInterceptor())\n partialUpdate(@Param('id') id: number, @Body() updateDto: UpdateImportTransactionDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files, true);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/bulk-recover')\n async recoverMany(@Body() ids: number[]) {\n return this.service.recoverMany(ids);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get('/recover/:id')\n async recover(@Param('id') id: number) {\n return this.service.recover(id);\n }\n \n @ApiBearerAuth(\"jwt\")\n @ApiQuery({ name: 'showSoftDeleted', required: false, enum: ShowSoftDeleted })\n @ApiQuery({ name: 'limit', required: false, type: Number })\n @ApiQuery({ name: 'offset', required: false, type: Number })\n @ApiQuery({ name: 'fields', required: false, type: Array })\n @ApiQuery({ name: 'sort', required: false, type: Array }) \n @ApiQuery({ name: 'groupBy', required: false, type: Array })\n @ApiQuery({ name: 'populate', required: false, type: Array })\n @ApiQuery({ name: 'populateMedia', required: false, type: Array })\n @ApiQuery({ name: 'filters', required: false, type: Array })\n @Get()\n async findMany(@Query() query: any) { \n return this.service.find(query); \n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id')\n async findOne(@Param('id') id: string, @Query() query: any) {\n return this.service.findOne(+id, query);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id/import-mapping-info')\n async getImportMappingInfo(@Param('id') id: string) {\n return this.service.getImportMappingInfo(+id);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id/export-failed-import-records')\n async exportFailedImportedImports(@Param('id') id: string, @Res() res: Response) {\n const {stream, fileName, mimeType} = await this.service.exportFailedImportedImports(+id);\n if (stream === null) {\n throw new InternalServerErrorException(\"Failed records stream is null\");\n }\n // ✅ Set response headers for streaming\n res.setHeader('Content-Disposition', `attachment; filename=\"${fileName}\"`);\n res.setHeader('Content-Type', mimeType);\n res.setHeader('Access-Control-Expose-Headers', 'Content-Disposition, Content-Type');\n // Pipe the strea to the response as an excel file\n stream.pipe(res);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post(':id/start-import/sync')\n async startImportSync(@Param('id') id: string, @ActiveUser() activeUser: ActiveUserData) {\n console.log(\"Active User in startImportSync:\", activeUser);\n return this.service.startImportSync(+id, activeUser);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post(':id/start-import/async')\n async startImportAsync(@Param('id') id: string) {\n return this.service.startImportAsync(+id);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Delete('/bulk')\n async deleteMany(@Body() ids: number[]) {\n return this.service.deleteMany(ids);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Delete(':id')\n async delete(@Param('id') id: number) {\n return this.service.delete(id);\n }\n\n}\n"]}
1
+ {"version":3,"file":"import-transaction.controller.js","sourceRoot":"","sources":["../../src/controllers/import-transaction.controller.ts"],"names":[],"mappings":"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","sourcesContent":["import { Controller, Post, Body, Param, UploadedFiles, UseInterceptors, Put, Get, Query, Delete, Patch, InternalServerErrorException, Res } from '@nestjs/common';\nimport { AnyFilesInterceptor } from \"@nestjs/platform-express\";\nimport { ApiBearerAuth, ApiQuery, ApiTags } from '@nestjs/swagger';\nimport { ImportFormat, ImportTransactionService } from '../services/import-transaction.service';\nimport { CreateImportTransactionDto } from '../dtos/create-import-transaction.dto';\nimport { UpdateImportTransactionDto } from '../dtos/update-import-transaction.dto';\nimport { Response } from 'express';\nimport { ActiveUser } from 'src/decorators/active-user.decorator';\nimport { ActiveUserData } from 'src/interfaces/active-user-data.interface';\nimport { setFileDownloadHeaders } from 'src/helpers/file-download.helper';\n\nenum ShowSoftDeleted {\n INCLUSIVE = \"inclusive\",\n EXCLUSIVE = \"exclusive\",\n}\n\n@ApiTags('Solid Core')\n@Controller('import-transaction')\nexport class ImportTransactionController {\n constructor(private readonly service: ImportTransactionService) {}\n\n @ApiBearerAuth(\"jwt\")\n @Get('/import-template/:modelMetadataId/:format')\n async getImportTemplate(@Param('modelMetadataId') modelMetadataId: number, @Param('format') format: string, @Res() res: Response) {\n const importTemplateFileInfo = await this.service.getImportTemplate(+modelMetadataId, format as ImportFormat);\n if (importTemplateFileInfo.stream === null) {\n throw new InternalServerErrorException(\"Sample Import template stream is null\");\n }\n\n // ✅ Set response headers for streaming\n setFileDownloadHeaders(res, {\n fileName: importTemplateFileInfo.fileName,\n mimeType: importTemplateFileInfo.mimeType,\n });\n // Pipe the stream to the response as an excel file\n importTemplateFileInfo.stream.pipe(res);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get('/import-instructions/:modelMetadataId')\n async getImportInstructions(@Param('modelMetadataId') modelMetadataId: number) {\n // return this.service.getImportInstructions(modelMetadataId);\n return this.service.getImportInstructions(modelMetadataId);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post()\n @UseInterceptors(AnyFilesInterceptor())\n create(@Body() createDto: CreateImportTransactionDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.create(createDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/bulk')\n @UseInterceptors(AnyFilesInterceptor())\n insertMany(@Body() createDtos: CreateImportTransactionDto[], @UploadedFiles() filesArray: Express.Multer.File[][] = []) {\n return this.service.insertMany(createDtos, filesArray);\n }\n\n\n @ApiBearerAuth(\"jwt\")\n @Put(':id')\n @UseInterceptors(AnyFilesInterceptor())\n update(@Param('id') id: number, @Body() updateDto: UpdateImportTransactionDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Patch(':id')\n @UseInterceptors(AnyFilesInterceptor())\n partialUpdate(@Param('id') id: number, @Body() updateDto: UpdateImportTransactionDto, @UploadedFiles() files: Array<Express.Multer.File>) {\n return this.service.update(id, updateDto, files, true);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post('/bulk-recover')\n async recoverMany(@Body() ids: number[]) {\n return this.service.recoverMany(ids);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get('/recover/:id')\n async recover(@Param('id') id: number) {\n return this.service.recover(id);\n }\n \n @ApiBearerAuth(\"jwt\")\n @ApiQuery({ name: 'showSoftDeleted', required: false, enum: ShowSoftDeleted })\n @ApiQuery({ name: 'limit', required: false, type: Number })\n @ApiQuery({ name: 'offset', required: false, type: Number })\n @ApiQuery({ name: 'fields', required: false, type: Array })\n @ApiQuery({ name: 'sort', required: false, type: Array }) \n @ApiQuery({ name: 'groupBy', required: false, type: Array })\n @ApiQuery({ name: 'populate', required: false, type: Array })\n @ApiQuery({ name: 'populateMedia', required: false, type: Array })\n @ApiQuery({ name: 'filters', required: false, type: Array })\n @Get()\n async findMany(@Query() query: any) { \n return this.service.find(query); \n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id')\n async findOne(@Param('id') id: string, @Query() query: any) {\n return this.service.findOne(+id, query);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id/import-mapping-info')\n async getImportMappingInfo(@Param('id') id: string) {\n return this.service.getImportMappingInfo(+id);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Get(':id/export-failed-import-records')\n async exportFailedImportedImports(@Param('id') id: string, @Res() res: Response) {\n const {stream, fileName, mimeType} = await this.service.exportFailedImportedImports(+id);\n if (stream === null) {\n throw new InternalServerErrorException(\"Failed records stream is null\");\n }\n // ✅ Set response headers for streaming\n setFileDownloadHeaders(res, { fileName, mimeType });\n // Pipe the strea to the response as an excel file\n stream.pipe(res);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post(':id/start-import/sync')\n async startImportSync(@Param('id') id: string, @ActiveUser() activeUser: ActiveUserData) {\n console.log(\"Active User in startImportSync:\", activeUser);\n return this.service.startImportSync(+id, activeUser);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Post(':id/start-import/async')\n async startImportAsync(@Param('id') id: string) {\n return this.service.startImportAsync(+id);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Delete('/bulk')\n async deleteMany(@Body() ids: number[]) {\n return this.service.deleteMany(ids);\n }\n\n @ApiBearerAuth(\"jwt\")\n @Delete(':id')\n async delete(@Param('id') id: number) {\n return this.service.delete(id);\n }\n\n}\n"]}
@@ -19,6 +19,6 @@ export declare class ListOfValuesController {
19
19
  findMany(query: any): Promise<any>;
20
20
  findOne(id: string, query: any): Promise<import("..").ListOfValues>;
21
21
  deleteMany(ids: number[]): Promise<any>;
22
- delete(id: number): Promise<import("..").ListOfValues>;
22
+ delete(id: number): Promise<import("..").ListOfValues[]>;
23
23
  }
24
24
  //# sourceMappingURL=list-of-values.controller.d.ts.map
@@ -165,7 +165,7 @@ __decorate([
165
165
  __decorate([
166
166
  (0, swagger_1.ApiBearerAuth)("jwt"),
167
167
  (0, common_1.Delete)(':id'),
168
- openapi.ApiResponse({ status: 200, type: require("../entities/list-of-values.entity").ListOfValues }),
168
+ openapi.ApiResponse({ status: 200, type: [require("../entities/list-of-values.entity").ListOfValues] }),
169
169
  __param(0, (0, common_1.Param)('id')),
170
170
  __metadata("design:type", Function),
171
171
  __metadata("design:paramtypes", [Number]),
@@ -19,6 +19,6 @@ export declare class LocaleController {
19
19
  findMany(query: any): Promise<any>;
20
20
  findOne(id: string, query: any): Promise<import("..").Locale>;
21
21
  deleteMany(ids: number[]): Promise<any>;
22
- delete(id: number): Promise<import("..").Locale>;
22
+ delete(id: number): Promise<import("..").Locale[]>;
23
23
  }
24
24
  //# sourceMappingURL=locale.controller.d.ts.map
@@ -165,7 +165,7 @@ __decorate([
165
165
  __decorate([
166
166
  (0, swagger_1.ApiBearerAuth)("jwt"),
167
167
  (0, common_1.Delete)(':id'),
168
- openapi.ApiResponse({ status: 200, type: require("../entities/locale.entity").Locale }),
168
+ openapi.ApiResponse({ status: 200, type: [require("../entities/locale.entity").Locale] }),
169
169
  __param(0, (0, common_1.Param)('id')),
170
170
  __metadata("design:type", Function),
171
171
  __metadata("design:paramtypes", [Number]),
@@ -11,6 +11,6 @@ export declare class McpAuditLogController {
11
11
  findMany(query: any): Promise<any>;
12
12
  findOne(id: string, query: any): Promise<import("..").McpAuditLog>;
13
13
  deleteMany(ids: number[]): Promise<any>;
14
- delete(id: number): Promise<import("..").McpAuditLog>;
14
+ delete(id: number): Promise<import("..").McpAuditLog[]>;
15
15
  }
16
16
  //# sourceMappingURL=mcp-audit-log.controller.d.ts.map
@@ -133,7 +133,7 @@ __decorate([
133
133
  __decorate([
134
134
  (0, swagger_1.ApiBearerAuth)('jwt'),
135
135
  (0, common_1.Delete)(':id'),
136
- openapi.ApiResponse({ status: 200, type: require("../entities/mcp-audit-log.entity").McpAuditLog }),
136
+ openapi.ApiResponse({ status: 200, type: [require("../entities/mcp-audit-log.entity").McpAuditLog] }),
137
137
  __param(0, (0, common_1.Param)('id')),
138
138
  __metadata("design:type", Function),
139
139
  __metadata("design:paramtypes", [Number]),
@@ -23,6 +23,6 @@ export declare class MediaController {
23
23
  download(id: string, disposition: string, res: Response, solidRequestContext: SolidRequestContextDto): Promise<void>;
24
24
  findOne(id: string, query: any, solidRequestContext: SolidRequestContextDto): Promise<import("..").Media>;
25
25
  deleteMany(ids: number[], solidRequestContext: SolidRequestContextDto): Promise<any>;
26
- delete(id: number, solidRequestContext: SolidRequestContextDto): Promise<import("..").Media>;
26
+ delete(id: number, solidRequestContext: SolidRequestContextDto): Promise<import("..").Media[]>;
27
27
  }
28
28
  //# sourceMappingURL=media.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"media.controller.d.ts","sourceRoot":"","sources":["../../src/controllers/media.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAOnC,qBAIa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAKlD,MAAM,CAAS,SAAS,EAAE,cAAc,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAkC,mBAAmB,EAAE,sBAAsB;IAOzK,UAAU,CAAS,UAAU,EAAE,cAAc,EAAE,EAAmB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAO,EAAkC,mBAAmB,EAAE,sBAAsB;IAQvL,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,cAAc,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAkC,mBAAmB,EAAE,sBAAsB;IAOlM,aAAa,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,cAAc,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAkC,mBAAmB,EAAE,sBAAsB;IASzM,MAAM,CAAkB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAU,SAAS,EAAE,cAAc,EAAkC,mBAAmB,EAAE,sBAAsB;IAQnK,WAAW,CAAS,GAAG,EAAE,MAAM,EAAE,EAAkC,mBAAmB,EAAE,sBAAsB;;;;IAM9G,OAAO,CAAc,EAAE,EAAE,MAAM,EAAkC,mBAAmB,EAAE,sBAAsB;;;;IAe5G,QAAQ,CAAU,KAAK,EAAE,GAAG,EAAkC,mBAAmB,EAAE,sBAAsB;IAQzG,QAAQ,CAAc,EAAE,EAAE,MAAM,EAAwB,WAAW,EAAE,MAAM,EAAS,GAAG,EAAE,QAAQ,EAAkC,mBAAmB,EAAE,sBAAsB;IAc9K,OAAO,CAAc,EAAE,EAAE,MAAM,EAAW,KAAK,EAAE,GAAG,EAAkC,mBAAmB,EAAE,sBAAsB;IAMjI,UAAU,CAAS,GAAG,EAAE,MAAM,EAAE,EAAkC,mBAAmB,EAAE,sBAAsB;IAM7G,MAAM,CAAc,EAAE,EAAE,MAAM,EAAkC,mBAAmB,EAAE,sBAAsB;CAKlH"}
1
+ {"version":3,"file":"media.controller.d.ts","sourceRoot":"","sources":["../../src/controllers/media.controller.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AASnC,qBAIa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,YAAY;IAKlD,MAAM,CAAS,SAAS,EAAE,cAAc,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAkC,mBAAmB,EAAE,sBAAsB;IAOzK,UAAU,CAAS,UAAU,EAAE,cAAc,EAAE,EAAmB,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,EAAO,EAAkC,mBAAmB,EAAE,sBAAsB;IAQvL,MAAM,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,cAAc,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAkC,mBAAmB,EAAE,sBAAsB;IAOlM,aAAa,CAAc,EAAE,EAAE,MAAM,EAAU,SAAS,EAAE,cAAc,EAAmB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAkC,mBAAmB,EAAE,sBAAsB;IASzM,MAAM,CAAkB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAU,SAAS,EAAE,cAAc,EAAkC,mBAAmB,EAAE,sBAAsB;IAQnK,WAAW,CAAS,GAAG,EAAE,MAAM,EAAE,EAAkC,mBAAmB,EAAE,sBAAsB;;;;IAM9G,OAAO,CAAc,EAAE,EAAE,MAAM,EAAkC,mBAAmB,EAAE,sBAAsB;;;;IAe5G,QAAQ,CAAU,KAAK,EAAE,GAAG,EAAkC,mBAAmB,EAAE,sBAAsB;IAQzG,QAAQ,CAAc,EAAE,EAAE,MAAM,EAAwB,WAAW,EAAE,MAAM,EAAS,GAAG,EAAE,QAAQ,EAAkC,mBAAmB,EAAE,sBAAsB;IAuB9K,OAAO,CAAc,EAAE,EAAE,MAAM,EAAW,KAAK,EAAE,GAAG,EAAkC,mBAAmB,EAAE,sBAAsB;IAMjI,UAAU,CAAS,GAAG,EAAE,MAAM,EAAE,EAAkC,mBAAmB,EAAE,sBAAsB;IAM7G,MAAM,CAAc,EAAE,EAAE,MAAM,EAAkC,mBAAmB,EAAE,sBAAsB;CAKlH"}