@solidxai/core 0.1.10-beta.24 → 0.1.10-beta.26

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 (230) hide show
  1. package/dist/controllers/action-metadata.controller.d.ts +1 -20
  2. package/dist/controllers/action-metadata.controller.d.ts.map +1 -1
  3. package/dist/controllers/agent-event.controller.d.ts +1 -20
  4. package/dist/controllers/agent-event.controller.d.ts.map +1 -1
  5. package/dist/controllers/agent-session.controller.d.ts +1 -20
  6. package/dist/controllers/agent-session.controller.d.ts.map +1 -1
  7. package/dist/controllers/ai-interaction.controller.d.ts +1 -20
  8. package/dist/controllers/ai-interaction.controller.d.ts.map +1 -1
  9. package/dist/controllers/chatter-message-details.controller.d.ts +1 -20
  10. package/dist/controllers/chatter-message-details.controller.d.ts.map +1 -1
  11. package/dist/controllers/chatter-message.controller.d.ts +1 -20
  12. package/dist/controllers/chatter-message.controller.d.ts.map +1 -1
  13. package/dist/controllers/dashboard-user-layout.controller.d.ts +1 -20
  14. package/dist/controllers/dashboard-user-layout.controller.d.ts.map +1 -1
  15. package/dist/controllers/email-template.controller.d.ts +1 -20
  16. package/dist/controllers/email-template.controller.d.ts.map +1 -1
  17. package/dist/controllers/export-template.controller.d.ts +1 -20
  18. package/dist/controllers/export-template.controller.d.ts.map +1 -1
  19. package/dist/controllers/export-transaction.controller.d.ts +1 -20
  20. package/dist/controllers/export-transaction.controller.d.ts.map +1 -1
  21. package/dist/controllers/import-transaction-error-log.controller.d.ts +1 -20
  22. package/dist/controllers/import-transaction-error-log.controller.d.ts.map +1 -1
  23. package/dist/controllers/import-transaction.controller.d.ts +1 -20
  24. package/dist/controllers/import-transaction.controller.d.ts.map +1 -1
  25. package/dist/controllers/list-of-values.controller.d.ts +1 -20
  26. package/dist/controllers/list-of-values.controller.d.ts.map +1 -1
  27. package/dist/controllers/locale.controller.d.ts +1 -20
  28. package/dist/controllers/locale.controller.d.ts.map +1 -1
  29. package/dist/controllers/mcp-audit-log.controller.d.ts +1 -20
  30. package/dist/controllers/mcp-audit-log.controller.d.ts.map +1 -1
  31. package/dist/controllers/media.controller.d.ts +1 -20
  32. package/dist/controllers/media.controller.d.ts.map +1 -1
  33. package/dist/controllers/menu-item-metadata.controller.d.ts +1 -20
  34. package/dist/controllers/menu-item-metadata.controller.d.ts.map +1 -1
  35. package/dist/controllers/model-metadata.controller.d.ts +10 -30
  36. package/dist/controllers/model-metadata.controller.d.ts.map +1 -1
  37. package/dist/controllers/model-metadata.controller.js +2 -2
  38. package/dist/controllers/model-sequence.controller.d.ts +1 -20
  39. package/dist/controllers/model-sequence.controller.d.ts.map +1 -1
  40. package/dist/controllers/module-metadata-explorer.controller.d.ts +171 -0
  41. package/dist/controllers/module-metadata-explorer.controller.d.ts.map +1 -0
  42. package/dist/controllers/module-metadata-explorer.controller.js +143 -0
  43. package/dist/controllers/module-metadata-explorer.controller.js.map +1 -0
  44. package/dist/controllers/module-metadata.controller.d.ts +5 -0
  45. package/dist/controllers/module-metadata.controller.d.ts.map +1 -1
  46. package/dist/controllers/module-metadata.controller.js +12 -0
  47. package/dist/controllers/module-metadata.controller.js.map +1 -1
  48. package/dist/controllers/module-package.controller.d.ts +622 -0
  49. package/dist/controllers/module-package.controller.d.ts.map +1 -0
  50. package/dist/controllers/module-package.controller.js +150 -0
  51. package/dist/controllers/module-package.controller.js.map +1 -0
  52. package/dist/controllers/mq-message-queue.controller.d.ts +1 -20
  53. package/dist/controllers/mq-message-queue.controller.d.ts.map +1 -1
  54. package/dist/controllers/mq-message.controller.d.ts +1 -20
  55. package/dist/controllers/mq-message.controller.d.ts.map +1 -1
  56. package/dist/controllers/permission-metadata.controller.d.ts +1 -20
  57. package/dist/controllers/permission-metadata.controller.d.ts.map +1 -1
  58. package/dist/controllers/role-metadata.controller.d.ts +1 -20
  59. package/dist/controllers/role-metadata.controller.d.ts.map +1 -1
  60. package/dist/controllers/saved-filters.controller.d.ts +1 -20
  61. package/dist/controllers/saved-filters.controller.d.ts.map +1 -1
  62. package/dist/controllers/scheduled-job.controller.d.ts +1 -20
  63. package/dist/controllers/scheduled-job.controller.d.ts.map +1 -1
  64. package/dist/controllers/security-rule.controller.d.ts +1 -20
  65. package/dist/controllers/security-rule.controller.d.ts.map +1 -1
  66. package/dist/controllers/sms-template.controller.d.ts +1 -20
  67. package/dist/controllers/sms-template.controller.d.ts.map +1 -1
  68. package/dist/controllers/user-activity-history.controller.d.ts +1 -20
  69. package/dist/controllers/user-activity-history.controller.d.ts.map +1 -1
  70. package/dist/controllers/user-view-metadata.controller.d.ts +1 -20
  71. package/dist/controllers/user-view-metadata.controller.d.ts.map +1 -1
  72. package/dist/controllers/user.controller.d.ts +1 -20
  73. package/dist/controllers/user.controller.d.ts.map +1 -1
  74. package/dist/controllers/view-metadata.controller.d.ts +1 -20
  75. package/dist/controllers/view-metadata.controller.d.ts.map +1 -1
  76. package/dist/dtos/confirm-module-package-import.dto.d.ts +4 -0
  77. package/dist/dtos/confirm-module-package-import.dto.d.ts.map +1 -0
  78. package/dist/dtos/confirm-module-package-import.dto.js +34 -0
  79. package/dist/dtos/confirm-module-package-import.dto.js.map +1 -0
  80. package/dist/dtos/metadata-explorer-references-query.dto.d.ts +10 -0
  81. package/dist/dtos/metadata-explorer-references-query.dto.d.ts.map +1 -0
  82. package/dist/dtos/metadata-explorer-references-query.dto.js +69 -0
  83. package/dist/dtos/metadata-explorer-references-query.dto.js.map +1 -0
  84. package/dist/dtos/metadata-explorer-search-query.dto.d.ts +8 -0
  85. package/dist/dtos/metadata-explorer-search-query.dto.d.ts.map +1 -0
  86. package/dist/dtos/metadata-explorer-search-query.dto.js +55 -0
  87. package/dist/dtos/metadata-explorer-search-query.dto.js.map +1 -0
  88. package/dist/dtos/metadata-explorer-write.dto.d.ts +4 -0
  89. package/dist/dtos/metadata-explorer-write.dto.d.ts.map +1 -0
  90. package/dist/dtos/metadata-explorer-write.dto.js +30 -0
  91. package/dist/dtos/metadata-explorer-write.dto.js.map +1 -0
  92. package/dist/dtos/run-module-package-build.dto.d.ts +5 -0
  93. package/dist/dtos/run-module-package-build.dto.d.ts.map +1 -0
  94. package/dist/dtos/run-module-package-build.dto.js +38 -0
  95. package/dist/dtos/run-module-package-build.dto.js.map +1 -0
  96. package/dist/dtos/run-module-package-seed.dto.d.ts +4 -0
  97. package/dist/dtos/run-module-package-seed.dto.d.ts.map +1 -0
  98. package/dist/dtos/run-module-package-seed.dto.js +34 -0
  99. package/dist/dtos/run-module-package-seed.dto.js.map +1 -0
  100. package/dist/helpers/command.service.js +1 -1
  101. package/dist/helpers/command.service.js.map +1 -1
  102. package/dist/helpers/module-metadata-helper.service.d.ts +2 -0
  103. package/dist/helpers/module-metadata-helper.service.d.ts.map +1 -1
  104. package/dist/helpers/module-metadata-helper.service.js +14 -12
  105. package/dist/helpers/module-metadata-helper.service.js.map +1 -1
  106. package/dist/helpers/module.helper.d.ts.map +1 -1
  107. package/dist/helpers/module.helper.js +11 -6
  108. package/dist/helpers/module.helper.js.map +1 -1
  109. package/dist/helpers/typeorm-migration-helpers.d.ts +12 -0
  110. package/dist/helpers/typeorm-migration-helpers.d.ts.map +1 -0
  111. package/dist/helpers/typeorm-migration-helpers.js +119 -0
  112. package/dist/helpers/typeorm-migration-helpers.js.map +1 -0
  113. package/dist/index.d.ts +8 -0
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +8 -0
  116. package/dist/index.js.map +1 -1
  117. package/dist/seeders/module-metadata-seeder.service.d.ts +1 -0
  118. package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
  119. package/dist/seeders/module-metadata-seeder.service.js +57 -38
  120. package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
  121. package/dist/seeders/module-test-data.service.js +1 -1
  122. package/dist/seeders/module-test-data.service.js.map +1 -1
  123. package/dist/seeders/seed-data/solid-core-metadata.json +2364 -1106
  124. package/dist/services/crud-helper.service.d.ts +18 -0
  125. package/dist/services/crud-helper.service.d.ts.map +1 -1
  126. package/dist/services/crud-helper.service.js +67 -1
  127. package/dist/services/crud-helper.service.js.map +1 -1
  128. package/dist/services/crud.service.d.ts +1 -21
  129. package/dist/services/crud.service.d.ts.map +1 -1
  130. package/dist/services/crud.service.js +23 -87
  131. package/dist/services/crud.service.js.map +1 -1
  132. package/dist/services/genai/ingest-metadata.service.js +2 -2
  133. package/dist/services/genai/ingest-metadata.service.js.map +1 -1
  134. package/dist/services/media.service.d.ts +1 -20
  135. package/dist/services/media.service.d.ts.map +1 -1
  136. package/dist/services/mediaStorageProviders/file-s3-storage-provider.d.ts.map +1 -1
  137. package/dist/services/mediaStorageProviders/file-s3-storage-provider.js +31 -2
  138. package/dist/services/mediaStorageProviders/file-s3-storage-provider.js.map +1 -1
  139. package/dist/services/mediaStorageProviders/file-storage-provider.d.ts.map +1 -1
  140. package/dist/services/mediaStorageProviders/file-storage-provider.js +5 -1
  141. package/dist/services/mediaStorageProviders/file-storage-provider.js.map +1 -1
  142. package/dist/services/model-metadata.service.d.ts +15 -30
  143. package/dist/services/model-metadata.service.d.ts.map +1 -1
  144. package/dist/services/model-metadata.service.js +249 -29
  145. package/dist/services/model-metadata.service.js.map +1 -1
  146. package/dist/services/module-metadata-explorer.service.d.ts +161 -0
  147. package/dist/services/module-metadata-explorer.service.d.ts.map +1 -0
  148. package/dist/services/module-metadata-explorer.service.js +485 -0
  149. package/dist/services/module-metadata-explorer.service.js.map +1 -0
  150. package/dist/services/module-metadata.service.d.ts +7 -0
  151. package/dist/services/module-metadata.service.d.ts.map +1 -1
  152. package/dist/services/module-metadata.service.js +121 -2
  153. package/dist/services/module-metadata.service.js.map +1 -1
  154. package/dist/services/module-package.service.d.ts +266 -0
  155. package/dist/services/module-package.service.d.ts.map +1 -0
  156. package/dist/services/module-package.service.js +980 -0
  157. package/dist/services/module-package.service.js.map +1 -0
  158. package/dist/services/settings/default-settings-provider.service.d.ts +18 -0
  159. package/dist/services/settings/default-settings-provider.service.d.ts.map +1 -1
  160. package/dist/services/settings/default-settings-provider.service.js +10 -0
  161. package/dist/services/settings/default-settings-provider.service.js.map +1 -1
  162. package/dist/solid-core.module.d.ts.map +1 -1
  163. package/dist/solid-core.module.js +10 -2
  164. package/dist/solid-core.module.js.map +1 -1
  165. package/dist-tests/api/authenticate.spec.js +119 -0
  166. package/dist-tests/api/authenticate.spec.js.map +1 -0
  167. package/dist-tests/api/crud-service.findOne.cityMaster.spec.js +97 -0
  168. package/dist-tests/api/crud-service.findOne.cityMaster.spec.js.map +1 -0
  169. package/dist-tests/api/ping.spec.js +21 -0
  170. package/dist-tests/api/ping.spec.js.map +1 -0
  171. package/dist-tests/helpers/auth.js +41 -0
  172. package/dist-tests/helpers/auth.js.map +1 -0
  173. package/dist-tests/helpers/env.js +11 -0
  174. package/dist-tests/helpers/env.js.map +1 -0
  175. package/docs/dashboards/AGENTIC_DASHBOARD_IMPLEMENTATION_PLAN.md +438 -0
  176. package/docs/dashboards/dashboard-curl-smoke-tests.txt +146 -0
  177. package/docs/dashboards/delete-legacy-dashboard-metadata.sql +172 -0
  178. package/docs/grouping-enhancements.md +89 -0
  179. package/docs/java-spring/README.md +3 -0
  180. package/docs/java-spring/solid-core-module-deep-dive-report.md +1317 -0
  181. package/docs/module-package-import-handoff.md +691 -0
  182. package/docs/seed-changes.md +65 -0
  183. package/docs/test-data-workflow.md +200 -0
  184. package/docs/type-declaration-import-issue.md +24 -0
  185. package/package.json +2 -1
  186. package/src/controllers/module-metadata-explorer.controller.ts +83 -0
  187. package/src/controllers/module-metadata.controller.ts +6 -0
  188. package/src/controllers/module-package.controller.ts +102 -0
  189. package/src/dtos/confirm-module-package-import.dto.ts +12 -0
  190. package/src/dtos/metadata-explorer-references-query.dto.ts +39 -0
  191. package/src/dtos/metadata-explorer-search-query.dto.ts +28 -0
  192. package/src/dtos/metadata-explorer-write.dto.ts +11 -0
  193. package/src/dtos/run-module-package-build.dto.ts +14 -0
  194. package/src/dtos/run-module-package-seed.dto.ts +12 -0
  195. package/src/helpers/command.service.ts +1 -1
  196. package/src/helpers/module-metadata-helper.service.ts +19 -21
  197. package/src/helpers/module.helper.ts +12 -9
  198. package/src/helpers/typeorm-migration-helpers.ts +163 -0
  199. package/src/index.ts +8 -0
  200. package/src/seeders/module-metadata-seeder.service.ts +63 -38
  201. package/src/seeders/module-test-data.service.ts +1 -1
  202. package/src/seeders/seed-data/solid-core-metadata.json +2365 -1107
  203. package/src/services/crud-helper.service.ts +79 -1
  204. package/src/services/crud.service.ts +26 -119
  205. package/src/services/dashboard-providers/README.md +1 -1
  206. package/src/services/genai/ingest-metadata.service.ts +3 -3
  207. package/src/services/mediaStorageProviders/file-s3-storage-provider.ts +37 -2
  208. package/src/services/mediaStorageProviders/file-storage-provider.ts +5 -1
  209. package/src/services/model-metadata.service.ts +302 -98
  210. package/src/services/module-metadata-explorer.service.ts +670 -0
  211. package/src/services/module-metadata.service.ts +136 -10
  212. package/src/services/module-package.service.ts +1171 -0
  213. package/src/services/settings/default-settings-provider.service.ts +10 -0
  214. package/src/solid-core.module.ts +10 -2
  215. package/.claude/settings.local.json +0 -15
  216. package/CLAUDE.md +0 -26
  217. package/dist/services/database/database-bootstrap.service.d.ts +0 -12
  218. package/dist/services/database/database-bootstrap.service.d.ts.map +0 -1
  219. package/dist/services/database/database-bootstrap.service.js +0 -115
  220. package/dist/services/database/database-bootstrap.service.js.map +0 -1
  221. package/sql/default/mariadb/proc_CleanupModelMetadata.sql +0 -153
  222. package/sql/default/mariadb/proc_CleanupModuleMetadata.sql +0 -56
  223. package/sql/default/mssql/proc_CleanupModuleMetadata.sql +0 -78
  224. package/sql/default/mysql/proc_CleanupModelMetadata.sql +0 -153
  225. package/sql/default/mysql/proc_CleanupModuleMetadata.sql +0 -56
  226. package/sql/default/postgres/proc_CleanupModelMetadata.sql +0 -148
  227. package/sql/default/postgres/proc_CleanupModuleMetadata.sql +0 -50
  228. package/sql/default/postgres/scratchpad.sql.txt +0 -12
  229. package/src/services/1.js +0 -6
  230. package/src/services/database/database-bootstrap.service.ts +0 -91
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ConfirmModulePackageImportDto = void 0;
13
+ const openapi = require("@nestjs/swagger");
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_validator_1 = require("class-validator");
16
+ class ConfirmModulePackageImportDto {
17
+ constructor() {
18
+ this.overwriteExisting = false;
19
+ }
20
+ static _OPENAPI_METADATA_FACTORY() {
21
+ return { overwriteExisting: { required: false, type: () => Boolean, default: false } };
22
+ }
23
+ }
24
+ exports.ConfirmModulePackageImportDto = ConfirmModulePackageImportDto;
25
+ __decorate([
26
+ (0, swagger_1.ApiPropertyOptional)({
27
+ description: 'Allow overwriting an existing module folder in solid-api and solid-ui.',
28
+ default: false,
29
+ }),
30
+ (0, class_validator_1.IsOptional)(),
31
+ (0, class_validator_1.IsBoolean)(),
32
+ __metadata("design:type", Boolean)
33
+ ], ConfirmModulePackageImportDto.prototype, "overwriteExisting", void 0);
34
+ //# sourceMappingURL=confirm-module-package-import.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"confirm-module-package-import.dto.js","sourceRoot":"","sources":["../../src/dtos/confirm-module-package-import.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAAsD;AACtD,qDAAwD;AAExD,MAAa,6BAA6B;IAA1C;QAOI,sBAAiB,GAAa,KAAK,CAAC;KACvC;;qFADiC,KAAK;;CACtC;AARD,sEAQC;AADG;IANC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,wEAAwE;QACrF,OAAO,EAAE,KAAK;KACjB,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;wEACwB","sourcesContent":["import { ApiPropertyOptional } from '@nestjs/swagger';\nimport { IsBoolean, IsOptional } from 'class-validator';\n\nexport class ConfirmModulePackageImportDto {\n @ApiPropertyOptional({\n description: 'Allow overwriting an existing module folder in solid-api and solid-ui.',\n default: false,\n })\n @IsOptional()\n @IsBoolean()\n overwriteExisting?: boolean = false;\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import { PaginationQueryDto } from "./pagination-query.dto";
2
+ export declare class MetadataExplorerReferencesQueryDto extends PaginationQueryDto {
3
+ needle?: string;
4
+ sectionKey?: string;
5
+ excludePath?: string;
6
+ exact?: boolean;
7
+ matchKeys?: boolean;
8
+ matchValues?: boolean;
9
+ }
10
+ //# sourceMappingURL=metadata-explorer-references-query.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-explorer-references-query.dto.d.ts","sourceRoot":"","sources":["../../src/dtos/metadata-explorer-references-query.dto.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,qBAAa,kCAAmC,SAAQ,kBAAkB;IAItE,MAAM,CAAC,EAAE,MAAM,CAAC;IAKhB,UAAU,CAAC,EAAE,MAAM,CAAC;IAKpB,WAAW,CAAC,EAAE,MAAM,CAAC;IAMrB,KAAK,CAAC,EAAE,OAAO,CAAQ;IAMvB,SAAS,CAAC,EAAE,OAAO,CAAQ;IAM3B,WAAW,CAAC,EAAE,OAAO,CAAQ;CAChC"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MetadataExplorerReferencesQueryDto = void 0;
13
+ const openapi = require("@nestjs/swagger");
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_transformer_1 = require("class-transformer");
16
+ const class_validator_1 = require("class-validator");
17
+ const pagination_query_dto_1 = require("./pagination-query.dto");
18
+ class MetadataExplorerReferencesQueryDto extends pagination_query_dto_1.PaginationQueryDto {
19
+ constructor() {
20
+ super(...arguments);
21
+ this.exact = true;
22
+ this.matchKeys = true;
23
+ this.matchValues = true;
24
+ }
25
+ static _OPENAPI_METADATA_FACTORY() {
26
+ return { needle: { required: false, type: () => String }, sectionKey: { required: false, type: () => String }, excludePath: { required: false, type: () => String }, exact: { required: false, type: () => Boolean, default: true }, matchKeys: { required: false, type: () => Boolean, default: true }, matchValues: { required: false, type: () => Boolean, default: true } };
27
+ }
28
+ }
29
+ exports.MetadataExplorerReferencesQueryDto = MetadataExplorerReferencesQueryDto;
30
+ __decorate([
31
+ (0, swagger_1.ApiProperty)({ description: "Value or key to locate references for", required: false, type: String }),
32
+ (0, class_validator_1.IsString)(),
33
+ (0, class_validator_1.IsOptional)(),
34
+ __metadata("design:type", String)
35
+ ], MetadataExplorerReferencesQueryDto.prototype, "needle", void 0);
36
+ __decorate([
37
+ (0, swagger_1.ApiProperty)({ description: "Optional section key to scope the reference search", required: false, type: String }),
38
+ (0, class_validator_1.IsString)(),
39
+ (0, class_validator_1.IsOptional)(),
40
+ __metadata("design:type", String)
41
+ ], MetadataExplorerReferencesQueryDto.prototype, "sectionKey", void 0);
42
+ __decorate([
43
+ (0, swagger_1.ApiProperty)({ description: "Optional JSON path to exclude from results", required: false, type: String }),
44
+ (0, class_validator_1.IsString)(),
45
+ (0, class_validator_1.IsOptional)(),
46
+ __metadata("design:type", String)
47
+ ], MetadataExplorerReferencesQueryDto.prototype, "excludePath", void 0);
48
+ __decorate([
49
+ (0, swagger_1.ApiProperty)({ description: "Whether to match the full key/value exactly", required: false, type: Boolean, default: true }),
50
+ (0, class_transformer_1.Type)(() => Boolean),
51
+ (0, class_validator_1.IsBoolean)(),
52
+ (0, class_validator_1.IsOptional)(),
53
+ __metadata("design:type", Boolean)
54
+ ], MetadataExplorerReferencesQueryDto.prototype, "exact", void 0);
55
+ __decorate([
56
+ (0, swagger_1.ApiProperty)({ description: "Whether object keys should be considered when finding references", required: false, type: Boolean, default: true }),
57
+ (0, class_transformer_1.Type)(() => Boolean),
58
+ (0, class_validator_1.IsBoolean)(),
59
+ (0, class_validator_1.IsOptional)(),
60
+ __metadata("design:type", Boolean)
61
+ ], MetadataExplorerReferencesQueryDto.prototype, "matchKeys", void 0);
62
+ __decorate([
63
+ (0, swagger_1.ApiProperty)({ description: "Whether primitive values should be considered when finding references", required: false, type: Boolean, default: true }),
64
+ (0, class_transformer_1.Type)(() => Boolean),
65
+ (0, class_validator_1.IsBoolean)(),
66
+ (0, class_validator_1.IsOptional)(),
67
+ __metadata("design:type", Boolean)
68
+ ], MetadataExplorerReferencesQueryDto.prototype, "matchValues", void 0);
69
+ //# sourceMappingURL=metadata-explorer-references-query.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-explorer-references-query.dto.js","sourceRoot":"","sources":["../../src/dtos/metadata-explorer-references-query.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAA8C;AAC9C,yDAAyC;AACzC,qDAAkE;AAClE,iEAA4D;AAE5D,MAAa,kCAAmC,SAAQ,yCAAkB;IAA1E;;QAoBI,UAAK,GAAa,IAAI,CAAC;QAMvB,cAAS,GAAa,IAAI,CAAC;QAM3B,gBAAW,GAAa,IAAI,CAAC;KAChC;;qOAbqB,IAAI,gEAMA,IAAI,kEAMF,IAAI;;CAC/B;AAjCD,gFAiCC;AA7BG;IAHC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACpG,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;kEACG;AAKhB;IAHC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,oDAAoD,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACjH,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;sEACO;AAKpB;IAHC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,4CAA4C,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzG,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;uEACQ;AAMrB;IAJC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,6CAA6C,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC1H,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACnB,IAAA,2BAAS,GAAE;IACX,IAAA,4BAAU,GAAE;;iEACU;AAMvB;IAJC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,kEAAkE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC/I,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACnB,IAAA,2BAAS,GAAE;IACX,IAAA,4BAAU,GAAE;;qEACc;AAM3B;IAJC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,uEAAuE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACpJ,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACnB,IAAA,2BAAS,GAAE;IACX,IAAA,4BAAU,GAAE;;uEACgB","sourcesContent":["import { ApiProperty } from \"@nestjs/swagger\";\nimport { Type } from \"class-transformer\";\nimport { IsBoolean, IsOptional, IsString } from \"class-validator\";\nimport { PaginationQueryDto } from \"./pagination-query.dto\";\n\nexport class MetadataExplorerReferencesQueryDto extends PaginationQueryDto {\n @ApiProperty({ description: \"Value or key to locate references for\", required: false, type: String })\n @IsString()\n @IsOptional()\n needle?: string;\n\n @ApiProperty({ description: \"Optional section key to scope the reference search\", required: false, type: String })\n @IsString()\n @IsOptional()\n sectionKey?: string;\n\n @ApiProperty({ description: \"Optional JSON path to exclude from results\", required: false, type: String })\n @IsString()\n @IsOptional()\n excludePath?: string;\n\n @ApiProperty({ description: \"Whether to match the full key/value exactly\", required: false, type: Boolean, default: true })\n @Type(() => Boolean)\n @IsBoolean()\n @IsOptional()\n exact?: boolean = true;\n\n @ApiProperty({ description: \"Whether object keys should be considered when finding references\", required: false, type: Boolean, default: true })\n @Type(() => Boolean)\n @IsBoolean()\n @IsOptional()\n matchKeys?: boolean = true;\n\n @ApiProperty({ description: \"Whether primitive values should be considered when finding references\", required: false, type: Boolean, default: true })\n @Type(() => Boolean)\n @IsBoolean()\n @IsOptional()\n matchValues?: boolean = true;\n}\n"]}
@@ -0,0 +1,8 @@
1
+ import { PaginationQueryDto } from "./pagination-query.dto";
2
+ export declare class MetadataExplorerSearchQueryDto extends PaginationQueryDto {
3
+ query?: string;
4
+ sectionKey?: string;
5
+ exact?: boolean;
6
+ previewLength?: number;
7
+ }
8
+ //# sourceMappingURL=metadata-explorer-search-query.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-explorer-search-query.dto.d.ts","sourceRoot":"","sources":["../../src/dtos/metadata-explorer-search-query.dto.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAE5D,qBAAa,8BAA+B,SAAQ,kBAAkB;IAIlE,KAAK,CAAC,EAAE,MAAM,CAAC;IAKf,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB,KAAK,CAAC,EAAE,OAAO,CAAS;IAMxB,aAAa,CAAC,EAAE,MAAM,CAAO;CAChC"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MetadataExplorerSearchQueryDto = void 0;
13
+ const openapi = require("@nestjs/swagger");
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_transformer_1 = require("class-transformer");
16
+ const class_validator_1 = require("class-validator");
17
+ const pagination_query_dto_1 = require("./pagination-query.dto");
18
+ class MetadataExplorerSearchQueryDto extends pagination_query_dto_1.PaginationQueryDto {
19
+ constructor() {
20
+ super(...arguments);
21
+ this.exact = false;
22
+ this.previewLength = 120;
23
+ }
24
+ static _OPENAPI_METADATA_FACTORY() {
25
+ return { query: { required: false, type: () => String }, sectionKey: { required: false, type: () => String }, exact: { required: false, type: () => Boolean, default: false }, previewLength: { required: false, type: () => Number, default: 120, minimum: 20 } };
26
+ }
27
+ }
28
+ exports.MetadataExplorerSearchQueryDto = MetadataExplorerSearchQueryDto;
29
+ __decorate([
30
+ (0, swagger_1.ApiProperty)({ description: "Search query string", required: false, type: String }),
31
+ (0, class_validator_1.IsString)(),
32
+ (0, class_validator_1.IsOptional)(),
33
+ __metadata("design:type", String)
34
+ ], MetadataExplorerSearchQueryDto.prototype, "query", void 0);
35
+ __decorate([
36
+ (0, swagger_1.ApiProperty)({ description: "Optional section key to scope the search", required: false, type: String }),
37
+ (0, class_validator_1.IsString)(),
38
+ (0, class_validator_1.IsOptional)(),
39
+ __metadata("design:type", String)
40
+ ], MetadataExplorerSearchQueryDto.prototype, "sectionKey", void 0);
41
+ __decorate([
42
+ (0, swagger_1.ApiProperty)({ description: "Whether to match the full value exactly", required: false, type: Boolean, default: false }),
43
+ (0, class_transformer_1.Type)(() => Boolean),
44
+ (0, class_validator_1.IsBoolean)(),
45
+ (0, class_validator_1.IsOptional)(),
46
+ __metadata("design:type", Boolean)
47
+ ], MetadataExplorerSearchQueryDto.prototype, "exact", void 0);
48
+ __decorate([
49
+ (0, swagger_1.ApiProperty)({ description: "Maximum preview length for match snippets", required: false, type: Number, default: 120 }),
50
+ (0, class_transformer_1.Type)(() => Number),
51
+ (0, class_validator_1.Min)(20),
52
+ (0, class_validator_1.IsOptional)(),
53
+ __metadata("design:type", Number)
54
+ ], MetadataExplorerSearchQueryDto.prototype, "previewLength", void 0);
55
+ //# sourceMappingURL=metadata-explorer-search-query.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-explorer-search-query.dto.js","sourceRoot":"","sources":["../../src/dtos/metadata-explorer-search-query.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAA8C;AAC9C,yDAAyC;AACzC,qDAAuE;AACvE,iEAA4D;AAE5D,MAAa,8BAA+B,SAAQ,yCAAkB;IAAtE;;QAeI,UAAK,GAAa,KAAK,CAAC;QAMxB,kBAAa,GAAY,GAAG,CAAC;KAChC;;8KAPqB,KAAK;;CAO1B;AAtBD,wEAsBC;AAlBG;IAHC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,qBAAqB,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAClF,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;6DACE;AAKf;IAHC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,0CAA0C,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACvG,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;;kEACO;AAMpB;IAJC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,yCAAyC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACvH,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACnB,IAAA,2BAAS,GAAE;IACX,IAAA,4BAAU,GAAE;;6DACW;AAMxB;IAJC,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,2CAA2C,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IACtH,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,IAAA,qBAAG,EAAC,EAAE,CAAC;IACP,IAAA,4BAAU,GAAE;;qEACgB","sourcesContent":["import { ApiProperty } from \"@nestjs/swagger\";\nimport { Type } from \"class-transformer\";\nimport { IsBoolean, IsOptional, IsString, Min } from \"class-validator\";\nimport { PaginationQueryDto } from \"./pagination-query.dto\";\n\nexport class MetadataExplorerSearchQueryDto extends PaginationQueryDto {\n @ApiProperty({ description: \"Search query string\", required: false, type: String })\n @IsString()\n @IsOptional()\n query?: string;\n\n @ApiProperty({ description: \"Optional section key to scope the search\", required: false, type: String })\n @IsString()\n @IsOptional()\n sectionKey?: string;\n\n @ApiProperty({ description: \"Whether to match the full value exactly\", required: false, type: Boolean, default: false })\n @Type(() => Boolean)\n @IsBoolean()\n @IsOptional()\n exact?: boolean = false;\n\n @ApiProperty({ description: \"Maximum preview length for match snippets\", required: false, type: Number, default: 120 })\n @Type(() => Number)\n @Min(20)\n @IsOptional()\n previewLength?: number = 120;\n}\n"]}
@@ -0,0 +1,4 @@
1
+ export declare class MetadataExplorerWriteDto {
2
+ value?: any;
3
+ }
4
+ //# sourceMappingURL=metadata-explorer-write.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-explorer-write.dto.d.ts","sourceRoot":"","sources":["../../src/dtos/metadata-explorer-write.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,wBAAwB;IAMjC,KAAK,CAAC,EAAE,GAAG,CAAC;CACf"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MetadataExplorerWriteDto = void 0;
13
+ const openapi = require("@nestjs/swagger");
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_validator_1 = require("class-validator");
16
+ class MetadataExplorerWriteDto {
17
+ static _OPENAPI_METADATA_FACTORY() {
18
+ return { value: { required: false, type: () => Object } };
19
+ }
20
+ }
21
+ exports.MetadataExplorerWriteDto = MetadataExplorerWriteDto;
22
+ __decorate([
23
+ (0, swagger_1.ApiProperty)({
24
+ description: "Arbitrary JSON value to persist for the full metadata document or a section",
25
+ required: false,
26
+ }),
27
+ (0, class_validator_1.IsOptional)(),
28
+ __metadata("design:type", Object)
29
+ ], MetadataExplorerWriteDto.prototype, "value", void 0);
30
+ //# sourceMappingURL=metadata-explorer-write.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata-explorer-write.dto.js","sourceRoot":"","sources":["../../src/dtos/metadata-explorer-write.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAA8C;AAC9C,qDAA6C;AAE7C,MAAa,wBAAwB;;;;CAOpC;AAPD,4DAOC;AADG;IALC,IAAA,qBAAW,EAAC;QACT,WAAW,EAAE,6EAA6E;QAC1F,QAAQ,EAAE,KAAK;KAClB,CAAC;IACD,IAAA,4BAAU,GAAE;;uDACD","sourcesContent":["import { ApiProperty } from \"@nestjs/swagger\";\nimport { IsOptional } from \"class-validator\";\n\nexport class MetadataExplorerWriteDto {\n @ApiProperty({\n description: \"Arbitrary JSON value to persist for the full metadata document or a section\",\n required: false,\n })\n @IsOptional()\n value?: any;\n}\n"]}
@@ -0,0 +1,5 @@
1
+ export declare class RunModulePackageBuildDto {
2
+ buildSolidApi?: boolean;
3
+ buildSolidUi?: boolean;
4
+ }
5
+ //# sourceMappingURL=run-module-package-build.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-module-package-build.dto.d.ts","sourceRoot":"","sources":["../../src/dtos/run-module-package-build.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,wBAAwB;IAIjC,aAAa,CAAC,EAAE,OAAO,CAAQ;IAK/B,YAAY,CAAC,EAAE,OAAO,CAAQ;CACjC"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RunModulePackageBuildDto = void 0;
13
+ const openapi = require("@nestjs/swagger");
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_validator_1 = require("class-validator");
16
+ class RunModulePackageBuildDto {
17
+ constructor() {
18
+ this.buildSolidApi = true;
19
+ this.buildSolidUi = true;
20
+ }
21
+ static _OPENAPI_METADATA_FACTORY() {
22
+ return { buildSolidApi: { required: false, type: () => Boolean, default: true }, buildSolidUi: { required: false, type: () => Boolean, default: true } };
23
+ }
24
+ }
25
+ exports.RunModulePackageBuildDto = RunModulePackageBuildDto;
26
+ __decorate([
27
+ (0, swagger_1.ApiPropertyOptional)({ default: true }),
28
+ (0, class_validator_1.IsOptional)(),
29
+ (0, class_validator_1.IsBoolean)(),
30
+ __metadata("design:type", Boolean)
31
+ ], RunModulePackageBuildDto.prototype, "buildSolidApi", void 0);
32
+ __decorate([
33
+ (0, swagger_1.ApiPropertyOptional)({ default: true }),
34
+ (0, class_validator_1.IsOptional)(),
35
+ (0, class_validator_1.IsBoolean)(),
36
+ __metadata("design:type", Boolean)
37
+ ], RunModulePackageBuildDto.prototype, "buildSolidUi", void 0);
38
+ //# sourceMappingURL=run-module-package-build.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-module-package-build.dto.js","sourceRoot":"","sources":["../../src/dtos/run-module-package-build.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAAsD;AACtD,qDAAwD;AAExD,MAAa,wBAAwB;IAArC;QAII,kBAAa,GAAa,IAAI,CAAC;QAK/B,iBAAY,GAAa,IAAI,CAAC;KACjC;;iFAN6B,IAAI,mEAKL,IAAI;;CAChC;AAVD,4DAUC;AANG;IAHC,IAAA,6BAAmB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACtC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;+DACmB;AAK/B;IAHC,IAAA,6BAAmB,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACtC,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;8DACkB","sourcesContent":["import { ApiPropertyOptional } from '@nestjs/swagger';\nimport { IsBoolean, IsOptional } from 'class-validator';\n\nexport class RunModulePackageBuildDto {\n @ApiPropertyOptional({ default: true })\n @IsOptional()\n @IsBoolean()\n buildSolidApi?: boolean = true;\n\n @ApiPropertyOptional({ default: true })\n @IsOptional()\n @IsBoolean()\n buildSolidUi?: boolean = true;\n}\n"]}
@@ -0,0 +1,4 @@
1
+ export declare class RunModulePackageSeedDto {
2
+ seedGlobalMetadata?: boolean;
3
+ }
4
+ //# sourceMappingURL=run-module-package-seed.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-module-package-seed.dto.d.ts","sourceRoot":"","sources":["../../src/dtos/run-module-package-seed.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,uBAAuB;IAOhC,kBAAkB,CAAC,EAAE,OAAO,CAAS;CACxC"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.RunModulePackageSeedDto = void 0;
13
+ const openapi = require("@nestjs/swagger");
14
+ const swagger_1 = require("@nestjs/swagger");
15
+ const class_validator_1 = require("class-validator");
16
+ class RunModulePackageSeedDto {
17
+ constructor() {
18
+ this.seedGlobalMetadata = false;
19
+ }
20
+ static _OPENAPI_METADATA_FACTORY() {
21
+ return { seedGlobalMetadata: { required: false, type: () => Boolean, default: false } };
22
+ }
23
+ }
24
+ exports.RunModulePackageSeedDto = RunModulePackageSeedDto;
25
+ __decorate([
26
+ (0, swagger_1.ApiPropertyOptional)({
27
+ description: 'Whether to seed global metadata as part of the module seed run.',
28
+ default: false,
29
+ }),
30
+ (0, class_validator_1.IsOptional)(),
31
+ (0, class_validator_1.IsBoolean)(),
32
+ __metadata("design:type", Boolean)
33
+ ], RunModulePackageSeedDto.prototype, "seedGlobalMetadata", void 0);
34
+ //# sourceMappingURL=run-module-package-seed.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-module-package-seed.dto.js","sourceRoot":"","sources":["../../src/dtos/run-module-package-seed.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,6CAAsD;AACtD,qDAAwD;AAExD,MAAa,uBAAuB;IAApC;QAOI,uBAAkB,GAAa,KAAK,CAAC;KACxC;;sFADkC,KAAK;;CACvC;AARD,0DAQC;AADG;IANC,IAAA,6BAAmB,EAAC;QACjB,WAAW,EAAE,iEAAiE;QAC9E,OAAO,EAAE,KAAK;KACjB,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,2BAAS,GAAE;;mEACyB","sourcesContent":["import { ApiPropertyOptional } from '@nestjs/swagger';\nimport { IsBoolean, IsOptional } from 'class-validator';\n\nexport class RunModulePackageSeedDto {\n @ApiPropertyOptional({\n description: 'Whether to seed global metadata as part of the module seed run.',\n default: false,\n })\n @IsOptional()\n @IsBoolean()\n seedGlobalMetadata?: boolean = false;\n}\n"]}
@@ -49,7 +49,7 @@ let CommandService = CommandService_1 = class CommandService {
49
49
  child.on('close', (code) => {
50
50
  if (code !== 0) {
51
51
  this.logger.error(`Command failed with code ${code}: ${command}`, stderr);
52
- reject(new Error(stderr || `Command failed with exit code ${code}`));
52
+ reject(new Error([stderr, stdout].filter(Boolean).join('\n').trim() || `Command failed with exit code ${code}`));
53
53
  return;
54
54
  }
55
55
  resolve(stdout);
@@ -1 +1 @@
1
- {"version":3,"file":"command.service.js","sourceRoot":"","sources":["../../src/helpers/command.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoD;AACpD,iDAAsC;AAS/B,IAAM,cAAc,sBAApB,MAAM,cAAc;IAApB;QACY,WAAM,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,CAAC,CAAC;IAgE5D,CAAC;IA1DS,mBAAmB,CAAC,GAAW;QAGrC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAE7B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACzC,OAAO,IAAI,OAAO,GAAG,CAAC;QACxB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAKD,KAAK,CAAC,sBAAsB,CAAC,eAAgC;QAC3D,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAErE,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;YAG/C,MAAM,SAAS,GAAG,SAAS;gBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAChD,CAAC,CAAC,IAAI,CAAC;YAET,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE,SAAS,EAAE;gBACtC,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,GAAG,EAAE,eAAe,CAAC,GAAG;aACzB,CAAC,CAAC;YAEH,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC/B,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC/B,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;gBAChE,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,IAAI,KAAK,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;oBAC1E,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,iCAAiC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACrE,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAjEY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;GACA,cAAc,CAiE1B","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\nimport { spawn } from 'child_process';\n\nexport type CommandWithArgs = {\n command: string;\n args: string[];\n cwd?: string;\n};\n\n@Injectable()\nexport class CommandService {\n private readonly logger = new Logger(CommandService.name);\n\n /**\n * Escape an argument for Windows CMD shell\n * Wraps in double quotes and escapes internal double quotes\n */\n private escapeArgForWindows(arg: string): string {\n // If arg contains special characters, wrap in double quotes\n // and escape internal double quotes with backslash\n if (/[{}\\s\"^&|<>]/.test(arg)) {\n // Escape internal double quotes with backslash for CMD\n const escaped = arg.replace(/\"/g, '\\\\\"');\n return `\"${escaped}\"`;\n }\n return arg;\n }\n\n /**\n * Execute a command with arguments array (cross-platform compatible)\n */\n async executeCommandWithArgs(commandWithArgs: CommandWithArgs): Promise<string> {\n const { command, args } = commandWithArgs;\n this.logger.debug(`Executing command: ${command} ${args.join(' ')}`);\n\n return new Promise<string>((resolve, reject) => {\n const isWindows = process.platform === 'win32';\n\n // On Windows with shell: true, we need to escape args containing special characters\n const spawnArgs = isWindows\n ? args.map(arg => this.escapeArgForWindows(arg))\n : args;\n\n const child = spawn(command, spawnArgs, {\n shell: isWindows, // Use shell on Windows to handle .cmd files\n stdio: ['pipe', 'pipe', 'pipe'],\n cwd: commandWithArgs.cwd,\n });\n\n let stdout = '';\n let stderr = '';\n\n child.stdout.on('data', (data) => {\n stdout += data.toString();\n });\n\n child.stderr.on('data', (data) => {\n stderr += data.toString();\n });\n\n child.on('error', (error) => {\n this.logger.error(`Error executing command: ${command}`, error);\n reject(error);\n });\n\n child.on('close', (code) => {\n if (code !== 0) {\n this.logger.error(`Command failed with code ${code}: ${command}`, stderr);\n reject(new Error(stderr || `Command failed with exit code ${code}`));\n return;\n }\n resolve(stdout);\n });\n });\n }\n}\n"]}
1
+ {"version":3,"file":"command.service.js","sourceRoot":"","sources":["../../src/helpers/command.service.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoD;AACpD,iDAAsC;AAS/B,IAAM,cAAc,sBAApB,MAAM,cAAc;IAApB;QACY,WAAM,GAAG,IAAI,eAAM,CAAC,gBAAc,CAAC,IAAI,CAAC,CAAC;IAgE5D,CAAC;IA1DS,mBAAmB,CAAC,GAAW;QAGrC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAE7B,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACzC,OAAO,IAAI,OAAO,GAAG,CAAC;QACxB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAKD,KAAK,CAAC,sBAAsB,CAAC,eAAgC;QAC3D,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,eAAe,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAErE,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;YAG/C,MAAM,SAAS,GAAG,SAAS;gBACzB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAChD,CAAC,CAAC,IAAI,CAAC;YAET,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,OAAO,EAAE,SAAS,EAAE;gBACtC,KAAK,EAAE,SAAS;gBAChB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC/B,GAAG,EAAE,eAAe,CAAC,GAAG;aACzB,CAAC,CAAC;YAEH,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAEhB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC/B,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC/B,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;gBAChE,MAAM,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBACzB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;oBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,IAAI,KAAK,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;oBAC1E,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,iCAAiC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACjH,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAjEY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;GACA,cAAc,CAiE1B","sourcesContent":["import { Injectable, Logger } from '@nestjs/common';\nimport { spawn } from 'child_process';\n\nexport type CommandWithArgs = {\n command: string;\n args: string[];\n cwd?: string;\n};\n\n@Injectable()\nexport class CommandService {\n private readonly logger = new Logger(CommandService.name);\n\n /**\n * Escape an argument for Windows CMD shell\n * Wraps in double quotes and escapes internal double quotes\n */\n private escapeArgForWindows(arg: string): string {\n // If arg contains special characters, wrap in double quotes\n // and escape internal double quotes with backslash\n if (/[{}\\s\"^&|<>]/.test(arg)) {\n // Escape internal double quotes with backslash for CMD\n const escaped = arg.replace(/\"/g, '\\\\\"');\n return `\"${escaped}\"`;\n }\n return arg;\n }\n\n /**\n * Execute a command with arguments array (cross-platform compatible)\n */\n async executeCommandWithArgs(commandWithArgs: CommandWithArgs): Promise<string> {\n const { command, args } = commandWithArgs;\n this.logger.debug(`Executing command: ${command} ${args.join(' ')}`);\n\n return new Promise<string>((resolve, reject) => {\n const isWindows = process.platform === 'win32';\n\n // On Windows with shell: true, we need to escape args containing special characters\n const spawnArgs = isWindows\n ? args.map(arg => this.escapeArgForWindows(arg))\n : args;\n\n const child = spawn(command, spawnArgs, {\n shell: isWindows, // Use shell on Windows to handle .cmd files\n stdio: ['pipe', 'pipe', 'pipe'],\n cwd: commandWithArgs.cwd,\n });\n\n let stdout = '';\n let stderr = '';\n\n child.stdout.on('data', (data) => {\n stdout += data.toString();\n });\n\n child.stderr.on('data', (data) => {\n stderr += data.toString();\n });\n\n child.on('error', (error) => {\n this.logger.error(`Error executing command: ${command}`, error);\n reject(error);\n });\n\n child.on('close', (code) => {\n if (code !== 0) {\n this.logger.error(`Command failed with code ${code}: ${command}`, stderr);\n reject(new Error([stderr, stdout].filter(Boolean).join('\\n').trim() || `Command failed with exit code ${code}`));\n return;\n }\n resolve(stdout);\n });\n });\n }\n}\n"]}
@@ -5,6 +5,8 @@ export declare class ModuleMetadataHelperService {
5
5
  constructor(fileService: DiskFileService);
6
6
  getModuleMetadataConfiguration(configFilePath: string): Promise<any>;
7
7
  getModulePath(moduleName: string): Promise<string>;
8
+ getSolidUiModulePath(moduleName: string): Promise<string>;
9
+ private resolveModuleMetadataFolderPath;
8
10
  getModuleMetadataFilePath(moduleName: string): Promise<string>;
9
11
  getModuleMetadataFolderPath(moduleName: string): Promise<string>;
10
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"module-metadata-helper.service.d.ts","sourceRoot":"","sources":["../../src/helpers/module-metadata-helper.service.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBACa,2BAA2B;IAExB,OAAO,CAAC,QAAQ,CAAC,WAAW;IADxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgD;gBAC1C,WAAW,EAAE,eAAe;IAOnD,8BAA8B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAepE,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOlD,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmC9D,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAiBzE"}
1
+ {"version":3,"file":"module-metadata-helper.service.d.ts","sourceRoot":"","sources":["../../src/helpers/module-metadata-helper.service.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,qBACa,2BAA2B;IAExB,OAAO,CAAC,QAAQ,CAAC,WAAW;IADxC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgD;gBAC1C,WAAW,EAAE,eAAe;IAOnD,8BAA8B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAepE,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAOlD,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS/D,OAAO,CAAC,+BAA+B;IAKjC,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA6B9D,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAOzE"}
@@ -74,17 +74,23 @@ let ModuleMetadataHelperService = ModuleMetadataHelperService_1 = class ModuleMe
74
74
  }
75
75
  return path.resolve(process.cwd(), 'src', moduleName);
76
76
  }
77
- async getModuleMetadataFilePath(moduleName) {
77
+ async getSolidUiModulePath(moduleName) {
78
78
  if (!moduleName) {
79
79
  return '';
80
80
  }
81
81
  const dashModuleName = (0, lodash_1.kebabCase)(moduleName);
82
- const folderPath = path.resolve(process.cwd(), 'module-metadata', dashModuleName);
83
- const filePath = path.join(folderPath, `${dashModuleName}-metadata.json`);
84
- const fileExists = await this.fileService.exists(filePath);
85
- if (fileExists) {
86
- return filePath;
82
+ return path.resolve(process.cwd(), '..', 'solid-ui', 'src', dashModuleName);
83
+ }
84
+ resolveModuleMetadataFolderPath(moduleName) {
85
+ const dashModuleName = (0, lodash_1.kebabCase)(moduleName);
86
+ return path.resolve(process.cwd(), 'src', dashModuleName, 'metadata');
87
+ }
88
+ async getModuleMetadataFilePath(moduleName) {
89
+ if (!moduleName) {
90
+ return '';
87
91
  }
92
+ const dashModuleName = (0, lodash_1.kebabCase)(moduleName);
93
+ const filePath = path.join(this.resolveModuleMetadataFolderPath(dashModuleName), `${dashModuleName}-metadata.json`);
88
94
  if (dashModuleName === constants_1.SOLID_CORE_MODULE_NAME) {
89
95
  const fallbackPath = path.resolve(process.cwd(), 'src', 'seeders', 'seed-data', `${dashModuleName}-metadata.json`);
90
96
  const fallbackExists = await this.fileService.exists(fallbackPath);
@@ -99,17 +105,13 @@ let ModuleMetadataHelperService = ModuleMetadataHelperService_1 = class ModuleMe
99
105
  return consumingProjectFallbackPath;
100
106
  }
101
107
  }
102
- this.logger.error(`Module metadata file not found for module: ${moduleName} at path: ${filePath}`);
103
- return '';
108
+ return filePath;
104
109
  }
105
110
  async getModuleMetadataFolderPath(moduleName) {
106
111
  if (!moduleName) {
107
112
  return '';
108
113
  }
109
- const dashModuleName = (0, lodash_1.kebabCase)(moduleName);
110
- const folderPath = path.resolve(process.cwd(), 'module-metadata', dashModuleName);
111
- const exists = await this.fileService.exists(folderPath);
112
- return exists ? folderPath : '';
114
+ return this.resolveModuleMetadataFolderPath(moduleName);
113
115
  }
114
116
  };
115
117
  exports.ModuleMetadataHelperService = ModuleMetadataHelperService;
@@ -1 +1 @@
1
- {"version":3,"file":"module-metadata-helper.service.js","sourceRoot":"","sources":["../../src/helpers/module-metadata-helper.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { kebabCase } from 'lodash';\nimport { Injectable, Logger } from \"@nestjs/common\";\nimport * as fs from 'fs/promises'; // Use the Promise-based version of fs for async/await\nimport * as path from 'path'; // To handle file paths\nimport { SOLID_CORE_MODULE_NAME } from \"src/constants\";\nimport { DiskFileService } from \"src/services/file\";\n\n@Injectable()\nexport class ModuleMetadataHelperService {\n private readonly logger = new Logger(ModuleMetadataHelperService.name);\n constructor(private readonly fileService: DiskFileService) { }\n // async getModuleMetadataConfig(moduleName: string): Promise<ModuleMetadata> {\n // const filePath = this.getModuleMetadataFilePath(moduleName);\n // const metadata = await this.getModuleMetadata(filePath);\n // return metadata;\n // }\n\n async getModuleMetadataConfiguration(configFilePath: string): Promise<any> {\n if (!configFilePath) {\n return null;\n }\n try {\n const fileContent = await fs.readFile(configFilePath, 'utf8');\n return JSON.parse(fileContent);\n }\n catch (error: any) {\n this.logger.error(`module metadata configuration non existent at: ${configFilePath}`);\n }\n\n return null;\n }\n\n async getModulePath(moduleName: string): Promise<string> {\n if (!moduleName) {\n return '';\n }\n return path.resolve(process.cwd(), 'src', moduleName);\n }\n\n async getModuleMetadataFilePath(moduleName: string): Promise<string> {\n if (!moduleName) {\n return '';\n }\n const dashModuleName = kebabCase(moduleName);\n const folderPath = path.resolve(process.cwd(), 'module-metadata', dashModuleName);\n const filePath = path.join(folderPath, `${dashModuleName}-metadata.json`);\n\n // Check if filePath exists\n const fileExists = await this.fileService.exists(filePath);\n if (fileExists) {\n return filePath;\n }\n\n // If the module is solid-core, try the fallback path, in case the current root directory is the solid core project\n if (dashModuleName === SOLID_CORE_MODULE_NAME) {\n const fallbackPath = path.resolve(process.cwd(), 'src', 'seeders', 'seed-data', `${dashModuleName}-metadata.json`);\n const fallbackExists = await this.fileService.exists(fallbackPath);\n if (fallbackExists) {\n this.logger.debug(`Fallback path: ${fallbackPath}`);\n return fallbackPath;\n }\n\n const consumingProjectFallbackPath = path.resolve(process.cwd(), 'node_modules', '@solidxai', 'core', 'src', 'seeders', 'seed-data', `${dashModuleName}-metadata.json`);\n const consumingProjectFallbackExists = await this.fileService.exists(consumingProjectFallbackPath);\n if (consumingProjectFallbackExists) {\n this.logger.debug(`Fallback path: ${consumingProjectFallbackPath}`);\n return consumingProjectFallbackPath;\n }\n }\n\n this.logger.error(`Module metadata file not found for module: ${moduleName} at path: ${filePath}`);\n return '';\n }\n\n async getModuleMetadataFolderPath(moduleName: string): Promise<string> {\n if (!moduleName) {\n return '';\n }\n\n const dashModuleName = kebabCase(moduleName);\n\n const folderPath = path.resolve(\n process.cwd(),\n 'module-metadata',\n dashModuleName,\n );\n\n const exists = await this.fileService.exists(folderPath);\n return exists ? folderPath : '';\n }\n\n}\n"]}
1
+ {"version":3,"file":"module-metadata-helper.service.js","sourceRoot":"","sources":["../../src/helpers/module-metadata-helper.service.ts"],"names":[],"mappings":"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","sourcesContent":["import { kebabCase } from 'lodash';\nimport { Injectable, Logger } from \"@nestjs/common\";\nimport * as fs from 'fs/promises'; // Use the Promise-based version of fs for async/await\nimport * as path from 'path'; // To handle file paths\nimport { SOLID_CORE_MODULE_NAME } from \"src/constants\";\nimport { DiskFileService } from \"src/services/file\";\n\n@Injectable()\nexport class ModuleMetadataHelperService {\n private readonly logger = new Logger(ModuleMetadataHelperService.name);\n constructor(private readonly fileService: DiskFileService) { }\n // async getModuleMetadataConfig(moduleName: string): Promise<ModuleMetadata> {\n // const filePath = this.getModuleMetadataFilePath(moduleName);\n // const metadata = await this.getModuleMetadata(filePath);\n // return metadata;\n // }\n\n async getModuleMetadataConfiguration(configFilePath: string): Promise<any> {\n if (!configFilePath) {\n return null;\n }\n try {\n const fileContent = await fs.readFile(configFilePath, 'utf8');\n return JSON.parse(fileContent);\n }\n catch (error: any) {\n this.logger.error(`module metadata configuration non existent at: ${configFilePath}`);\n }\n\n return null;\n }\n\n async getModulePath(moduleName: string): Promise<string> {\n if (!moduleName) {\n return '';\n }\n return path.resolve(process.cwd(), 'src', moduleName);\n }\n\n async getSolidUiModulePath(moduleName: string): Promise<string> {\n if (!moduleName) {\n return '';\n }\n\n const dashModuleName = kebabCase(moduleName);\n return path.resolve(process.cwd(), '..', 'solid-ui', 'src', dashModuleName);\n }\n\n private resolveModuleMetadataFolderPath(moduleName: string): string {\n const dashModuleName = kebabCase(moduleName);\n return path.resolve(process.cwd(), 'src', dashModuleName, 'metadata');\n }\n\n async getModuleMetadataFilePath(moduleName: string): Promise<string> {\n if (!moduleName) {\n return '';\n }\n const dashModuleName = kebabCase(moduleName);\n const filePath = path.join(\n this.resolveModuleMetadataFolderPath(dashModuleName),\n `${dashModuleName}-metadata.json`,\n );\n\n if (dashModuleName === SOLID_CORE_MODULE_NAME) {\n const fallbackPath = path.resolve(process.cwd(), 'src', 'seeders', 'seed-data', `${dashModuleName}-metadata.json`);\n const fallbackExists = await this.fileService.exists(fallbackPath);\n if (fallbackExists) {\n this.logger.debug(`Fallback path: ${fallbackPath}`);\n return fallbackPath;\n }\n\n const consumingProjectFallbackPath = path.resolve(process.cwd(), 'node_modules', '@solidxai', 'core', 'src', 'seeders', 'seed-data', `${dashModuleName}-metadata.json`);\n const consumingProjectFallbackExists = await this.fileService.exists(consumingProjectFallbackPath);\n if (consumingProjectFallbackExists) {\n this.logger.debug(`Fallback path: ${consumingProjectFallbackPath}`);\n return consumingProjectFallbackPath;\n }\n }\n\n return filePath;\n }\n\n async getModuleMetadataFolderPath(moduleName: string): Promise<string> {\n if (!moduleName) {\n return '';\n }\n return this.resolveModuleMetadataFolderPath(moduleName);\n }\n\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"module.helper.d.ts","sourceRoot":"","sources":["../../src/helpers/module.helper.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,qBAAqB,QAAO,MAAM,EA6B9C,CAAA;AAED,eAAO,MAAM,oCAAoC,QAAO,MAAM,EAgC7D,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAO,MAAM,EAG3C,CAAA"}
1
+ {"version":3,"file":"module.helper.d.ts","sourceRoot":"","sources":["../../src/helpers/module.helper.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,qBAAqB,QAAO,MAAM,EA6B9C,CAAA;AAED,eAAO,MAAM,oCAAoC,QAAO,MAAM,EAmC7D,CAAA;AAED,eAAO,MAAM,kBAAkB,QAAO,MAAM,EAG3C,CAAA"}
@@ -59,20 +59,25 @@ const getDynamicModuleNames = () => {
59
59
  exports.getDynamicModuleNames = getDynamicModuleNames;
60
60
  const getDynamicModuleNamesBasedOnMetadata = () => {
61
61
  const dynamicModulesToExclude = process.env.SOLID_DYNAMIC_MODULES_TO_EXCLUDE?.split(',') || [];
62
- const moduleMetadataPath = path.join(process.cwd(), 'module-metadata');
62
+ const srcPath = path.join(process.cwd(), 'src');
63
63
  const coreModuleNames = (0, exports.getCoreModuleNames)();
64
64
  const allExcludedModules = [...new Set([...coreModuleNames, ...dynamicModulesToExclude])];
65
- if (!fs.existsSync(moduleMetadataPath)) {
66
- logger.warn(`Module metadata path does not exist: ${moduleMetadataPath}`);
65
+ if (!fs.existsSync(srcPath)) {
66
+ logger.warn(`Source path does not exist: ${srcPath}`);
67
67
  return [];
68
68
  }
69
- const moduleMetadataDirectories = fs.readdirSync(moduleMetadataPath, { withFileTypes: true });
70
- const enabledModules = moduleMetadataDirectories
69
+ const moduleDirectories = fs.readdirSync(srcPath, { withFileTypes: true });
70
+ const enabledModules = moduleDirectories
71
71
  .filter(dirent => {
72
72
  const isValidDirectory = dirent.isDirectory() && !allExcludedModules.includes(dirent.name);
73
73
  if (!isValidDirectory)
74
74
  return false;
75
- const fullPath = path.join(moduleMetadataPath, dirent.name, `${dirent.name}-metadata.json`);
75
+ const moduleManifestPath = path.join(srcPath, dirent.name, `${dirent.name}.module.ts`);
76
+ const moduleManifestStats = fs.statSync(moduleManifestPath, { throwIfNoEntry: false });
77
+ if (!moduleManifestStats || !moduleManifestStats.isFile()) {
78
+ return false;
79
+ }
80
+ const fullPath = path.join(srcPath, dirent.name, 'metadata', `${dirent.name}-metadata.json`);
76
81
  const stats = fs.statSync(fullPath, { throwIfNoEntry: false });
77
82
  return !!stats && stats.isFile();
78
83
  })
@@ -1 +1 @@
1
- {"version":3,"file":"module.helper.js","sourceRoot":"","sources":["../../src/helpers/module.helper.ts"],"names":[],"mappings":"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","sourcesContent":["import { Logger } from '@nestjs/common';\nimport * as fs from 'fs'; // Use the Promise-based version of fs for async/await\nimport * as path from 'path'; // To handle file paths\n\nconst logger = new Logger('module.helper');\n\nexport const getDynamicModuleNames = (): string[] => {\n const dynamicModulesToExclude = process.env.SOLID_DYNAMIC_MODULES_TO_EXCLUDE?.split(',') || [];\n\n // Adjust if 'src' is in a different location\n const srcPath = path.join(process.cwd(), 'src');\n const coreModuleNames = getCoreModuleNames();\n const allExcludedModules = [...new Set([...coreModuleNames, ...dynamicModulesToExclude])];\n\n const directories = fs.readdirSync(srcPath, { withFileTypes: true });\n // const enabledModules = directories\n // .filter(d => d.isDirectory() && !allExcludedModules.includes(d.name))\n // .map(d => d.name);\n\n const enabledModules = directories\n .filter(dirent => {\n const isValidDirectory = dirent.isDirectory() && !allExcludedModules.includes(dirent.name);\n\n if (!isValidDirectory) return false;\n\n const moduleManifestPath = path.join(srcPath, dirent.name, `${dirent.name}.module.ts`);\n const stats = fs.statSync(moduleManifestPath, { throwIfNoEntry: false });\n return !!stats && stats.isFile();\n })\n .map(dirent => dirent.name);\n\n // logger.debug(`Enabled dynamic modules:`, enabledModules);\n // console.log(`Dynamic Modules Are:`, enabledModules);\n\n return enabledModules;\n}\n\nexport const getDynamicModuleNamesBasedOnMetadata = (): string[] => {\n const dynamicModulesToExclude = process.env.SOLID_DYNAMIC_MODULES_TO_EXCLUDE?.split(',') || [];\n\n // Find a path that is ../${srcPath}/module-metadata save it in a variable.\n // const srcPath = path.join(process.cwd(), 'src');\n const moduleMetadataPath = path.join(process.cwd(), 'module-metadata');\n const coreModuleNames = getCoreModuleNames();\n const allExcludedModules = [...new Set([...coreModuleNames, ...dynamicModulesToExclude])];\n\n // if module-metadata path does not exist, return empty array\n if (!fs.existsSync(moduleMetadataPath)) {\n logger.warn(`Module metadata path does not exist: ${moduleMetadataPath}`);\n return [];\n }\n\n const moduleMetadataDirectories = fs.readdirSync(moduleMetadataPath, { withFileTypes: true });\n const enabledModules = moduleMetadataDirectories\n .filter(dirent => {\n const isValidDirectory = dirent.isDirectory() && !allExcludedModules.includes(dirent.name);\n\n if (!isValidDirectory) return false;\n\n const fullPath = path.join(moduleMetadataPath, dirent.name, `${dirent.name}-metadata.json`);\n\n const stats = fs.statSync(fullPath, { throwIfNoEntry: false });\n return !!stats && stats.isFile();\n })\n .map(dirent => dirent.name);\n\n // logger.debug(`Enabled dynamic modules basis src:`, enabledModules);\n // console.log(`Src Based Dynamic Modules Are:`, enabledModules);\n return enabledModules;\n}\n\nexport const getCoreModuleNames = (): string[] => {\n // return ['iam', 'common', 'queues', 'app-builder'];\n return ['solid-core'];\n}\n"]}
1
+ {"version":3,"file":"module.helper.js","sourceRoot":"","sources":["../../src/helpers/module.helper.ts"],"names":[],"mappings":"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","sourcesContent":["import { Logger } from '@nestjs/common';\nimport * as fs from 'fs'; // Use the Promise-based version of fs for async/await\nimport * as path from 'path'; // To handle file paths\n\nconst logger = new Logger('module.helper');\n\nexport const getDynamicModuleNames = (): string[] => {\n const dynamicModulesToExclude = process.env.SOLID_DYNAMIC_MODULES_TO_EXCLUDE?.split(',') || [];\n\n // Adjust if 'src' is in a different location\n const srcPath = path.join(process.cwd(), 'src');\n const coreModuleNames = getCoreModuleNames();\n const allExcludedModules = [...new Set([...coreModuleNames, ...dynamicModulesToExclude])];\n\n const directories = fs.readdirSync(srcPath, { withFileTypes: true });\n // const enabledModules = directories\n // .filter(d => d.isDirectory() && !allExcludedModules.includes(d.name))\n // .map(d => d.name);\n\n const enabledModules = directories\n .filter(dirent => {\n const isValidDirectory = dirent.isDirectory() && !allExcludedModules.includes(dirent.name);\n\n if (!isValidDirectory) return false;\n\n const moduleManifestPath = path.join(srcPath, dirent.name, `${dirent.name}.module.ts`);\n const stats = fs.statSync(moduleManifestPath, { throwIfNoEntry: false });\n return !!stats && stats.isFile();\n })\n .map(dirent => dirent.name);\n\n // logger.debug(`Enabled dynamic modules:`, enabledModules);\n // console.log(`Dynamic Modules Are:`, enabledModules);\n\n return enabledModules;\n}\n\nexport const getDynamicModuleNamesBasedOnMetadata = (): string[] => {\n const dynamicModulesToExclude = process.env.SOLID_DYNAMIC_MODULES_TO_EXCLUDE?.split(',') || [];\n\n const srcPath = path.join(process.cwd(), 'src');\n const coreModuleNames = getCoreModuleNames();\n const allExcludedModules = [...new Set([...coreModuleNames, ...dynamicModulesToExclude])];\n\n if (!fs.existsSync(srcPath)) {\n logger.warn(`Source path does not exist: ${srcPath}`);\n return [];\n }\n\n const moduleDirectories = fs.readdirSync(srcPath, { withFileTypes: true });\n const enabledModules = moduleDirectories\n .filter(dirent => {\n const isValidDirectory = dirent.isDirectory() && !allExcludedModules.includes(dirent.name);\n\n if (!isValidDirectory) return false;\n\n const moduleManifestPath = path.join(srcPath, dirent.name, `${dirent.name}.module.ts`);\n const moduleManifestStats = fs.statSync(moduleManifestPath, { throwIfNoEntry: false });\n if (!moduleManifestStats || !moduleManifestStats.isFile()) {\n return false;\n }\n\n const fullPath = path.join(srcPath, dirent.name, 'metadata', `${dirent.name}-metadata.json`);\n\n const stats = fs.statSync(fullPath, { throwIfNoEntry: false });\n return !!stats && stats.isFile();\n })\n .map(dirent => dirent.name);\n\n // logger.debug(`Enabled dynamic modules basis src:`, enabledModules);\n // console.log(`Src Based Dynamic Modules Are:`, enabledModules);\n return enabledModules;\n}\n\nexport const getCoreModuleNames = (): string[] => {\n // return ['iam', 'common', 'queues', 'app-builder'];\n return ['solid-core'];\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import { QueryRunner } from 'typeorm';
2
+ export declare function addColumnIfNotExists(queryRunner: QueryRunner, table: string, column: string, ddl: string): Promise<void>;
3
+ export declare function createUniqueIndexIfNotExists(queryRunner: QueryRunner, table: string, indexName: string, ddl: string): Promise<void>;
4
+ export declare function addConstraintIfNotExists(queryRunner: QueryRunner, constraintName: string, ddl: string): Promise<void>;
5
+ export declare function dropColumnIfExists(queryRunner: QueryRunner, table: string, column: string, ddl: string): Promise<void>;
6
+ export declare function dropUniqueIndexIfExists(queryRunner: QueryRunner, table: string, indexName: string, ddl: string): Promise<void>;
7
+ export declare function dropConstraintIfExists(queryRunner: QueryRunner, constraintName: string, ddl: string): Promise<void>;
8
+ export declare function createTableIfNotExists(queryRunner: QueryRunner, table: string, ddl: string): Promise<void>;
9
+ export declare function dropTableIfExists(queryRunner: QueryRunner, table: string, ddl: string): Promise<void>;
10
+ export declare function createIndexIfNotExists(queryRunner: QueryRunner, table: string, indexName: string, ddl: string): Promise<void>;
11
+ export declare function dropIndexIfExists(queryRunner: QueryRunner, table: string, indexName: string, ddl: string): Promise<void>;
12
+ //# sourceMappingURL=typeorm-migration-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeorm-migration-helpers.d.ts","sourceRoot":"","sources":["../../src/helpers/typeorm-migration-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,wBAAsB,oBAAoB,CACxC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,4BAA4B,CAChD,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,wBAAsB,wBAAwB,CAC5C,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAUf;AAED,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAYf;AAED,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAYf"}