@flusys/nestjs-entity-builder 9.0.0

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 (114) hide show
  1. package/README.md +111 -0
  2. package/config/entity-builder.constants.d.ts +6 -0
  3. package/config/event-actions.d.ts +8 -0
  4. package/config/index.d.ts +3 -0
  5. package/config/message-keys.d.ts +542 -0
  6. package/controllers/entity-definition.controller.d.ts +40 -0
  7. package/controllers/field-definition.controller.d.ts +22 -0
  8. package/controllers/flow-definition.controller.d.ts +51 -0
  9. package/controllers/flow-execution.controller.d.ts +21 -0
  10. package/controllers/flow-runtime.controller.d.ts +24 -0
  11. package/controllers/index.d.ts +5 -0
  12. package/docs/entity-builder-swagger.config.d.ts +3 -0
  13. package/docs/index.d.ts +1 -0
  14. package/dtos/entity-definition.dto.d.ts +58 -0
  15. package/dtos/field-definition.dto.d.ts +42 -0
  16. package/dtos/flow.dto.d.ts +76 -0
  17. package/dtos/index.d.ts +3 -0
  18. package/dtos/schema-change.dto.d.ts +53 -0
  19. package/entities/entity-definition.entity.d.ts +15 -0
  20. package/entities/field-definition.entity.d.ts +23 -0
  21. package/entities/flow-definition.entity.d.ts +14 -0
  22. package/entities/flow-execution.entity.d.ts +19 -0
  23. package/entities/flow-version.entity.d.ts +10 -0
  24. package/entities/index.d.ts +14 -0
  25. package/entities/schema-change-log.entity.d.ts +15 -0
  26. package/enums/ddl-operation.enum.d.ts +13 -0
  27. package/enums/entity-status.enum.d.ts +5 -0
  28. package/enums/field-type.enum.d.ts +15 -0
  29. package/enums/index.d.ts +3 -0
  30. package/fesm/21.js +576 -0
  31. package/fesm/362.js +1074 -0
  32. package/fesm/458.js +649 -0
  33. package/fesm/582.js +1247 -0
  34. package/fesm/677.js +7534 -0
  35. package/fesm/719.js +3597 -0
  36. package/fesm/794.js +979 -0
  37. package/fesm/913.js +1620 -0
  38. package/fesm/config/index.js +126 -0
  39. package/fesm/controllers/index.js +27 -0
  40. package/fesm/docs/index.js +82 -0
  41. package/fesm/dtos/index.js +327 -0
  42. package/fesm/entities/index.js +18 -0
  43. package/fesm/enums/index.js +97 -0
  44. package/fesm/guards/index.js +226 -0
  45. package/fesm/index.js +548 -0
  46. package/fesm/interfaces/index.js +80 -0
  47. package/fesm/modules/index.js +25 -0
  48. package/fesm/rule-engine/index.js +21 -0
  49. package/fesm/runtime.js +85 -0
  50. package/fesm/services/index.js +526 -0
  51. package/flow-engine/flow-api-key.d.ts +6 -0
  52. package/flow-engine/flow-code-sandbox.d.ts +5 -0
  53. package/flow-engine/flow-engine.d.ts +22 -0
  54. package/flow-engine/flow-graph.validator.d.ts +20 -0
  55. package/flow-engine/flow-http.client.d.ts +15 -0
  56. package/flow-engine/flow-input.validator.d.ts +7 -0
  57. package/flow-engine/flow-node-handlers.d.ts +5 -0
  58. package/flow-engine/flow-rate-limiter.d.ts +8 -0
  59. package/flow-engine/flow-reference.d.ts +7 -0
  60. package/flow-engine/flow-run.types.d.ts +131 -0
  61. package/flow-engine/flow.errors.d.ts +27 -0
  62. package/flow-engine/flow.types.d.ts +315 -0
  63. package/flow-engine/index.d.ts +4 -0
  64. package/flow-engine/redact.d.ts +3 -0
  65. package/flow-engine/ssrf-guard.d.ts +6 -0
  66. package/guards/flow-access.guard.d.ts +11 -0
  67. package/guards/index.d.ts +1 -0
  68. package/index.d.ts +11 -0
  69. package/interfaces/entity-builder-module.interface.d.ts +28 -0
  70. package/interfaces/field-definition.interface.d.ts +33 -0
  71. package/interfaces/flow-definition.interface.d.ts +24 -0
  72. package/interfaces/generic-record.interface.d.ts +15 -0
  73. package/interfaces/index.d.ts +5 -0
  74. package/interfaces/reference-provider.interface.d.ts +8 -0
  75. package/interfaces/schema-dialect-adapter.interface.d.ts +15 -0
  76. package/modules/entity-builder.module.d.ts +10 -0
  77. package/modules/index.d.ts +1 -0
  78. package/package.json +93 -0
  79. package/rule-engine/index.d.ts +3 -0
  80. package/rule-engine/rule-engine.service.d.ts +40 -0
  81. package/rule-engine/rule-evaluation-context.interface.d.ts +28 -0
  82. package/rule-engine/rule-ip.d.ts +3 -0
  83. package/rule-engine/rule-permission.d.ts +10 -0
  84. package/rule-engine/rule-regex.d.ts +4 -0
  85. package/rule-engine/rule-values.d.ts +5 -0
  86. package/rule-engine/rule.interface.d.ts +79 -0
  87. package/services/database-error.mapper.d.ts +2 -0
  88. package/services/definition-cache.service.d.ts +8 -0
  89. package/services/entity-builder-config.service.d.ts +12 -0
  90. package/services/entity-builder-datasource.provider.d.ts +24 -0
  91. package/services/entity-definition.service.d.ts +17 -0
  92. package/services/entity-flow-scaffold.d.ts +27 -0
  93. package/services/entity-permission.service.d.ts +8 -0
  94. package/services/field-definition.service.d.ts +17 -0
  95. package/services/field-type-conversion.d.ts +15 -0
  96. package/services/field-value-validator.d.ts +17 -0
  97. package/services/flow-definition.service.d.ts +62 -0
  98. package/services/flow-execution.service.d.ts +38 -0
  99. package/services/flow-executor.service.d.ts +41 -0
  100. package/services/flow-reference.provider.d.ts +13 -0
  101. package/services/flow-runtime.service.d.ts +30 -0
  102. package/services/generic-entity-service.factory.d.ts +12 -0
  103. package/services/generic-entity.service.d.ts +67 -0
  104. package/services/identifier-rules.d.ts +9 -0
  105. package/services/index.d.ts +26 -0
  106. package/services/reference-rewrite.d.ts +7 -0
  107. package/services/reference-scanner.service.d.ts +10 -0
  108. package/services/schema-change-executor.service.d.ts +39 -0
  109. package/services/schema-change.types.d.ts +59 -0
  110. package/services/schema-columns.d.ts +26 -0
  111. package/services/schema-dialect-adapter.service.d.ts +13 -0
  112. package/services/schema-evolution.service.d.ts +67 -0
  113. package/services/schema-registry.service.d.ts +13 -0
  114. package/services/schema-sync.service.d.ts +28 -0
package/fesm/458.js ADDED
@@ -0,0 +1,649 @@
1
+ export const __rspack_esm_id = 458;
2
+ export const __rspack_esm_ids = [458];
3
+ export const __webpack_modules__ = {
4
+ 4249(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
5
+
6
+ // EXPORTS
7
+ __webpack_require__.d(__webpack_exports__, {
8
+ l: () => (/* reexport */ EntityBuilderModule)
9
+ });
10
+
11
+ // EXTERNAL MODULE: external "@flusys/nestjs-shared/modules"
12
+ var modules_ = __webpack_require__(1236);
13
+ // EXTERNAL MODULE: external "@nestjs/common"
14
+ var common_ = __webpack_require__(6157);
15
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/config/entity-builder.constants.ts
16
+ var entity_builder_constants = __webpack_require__(6576);
17
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/config/event-actions.ts
18
+ var event_actions = __webpack_require__(982);
19
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/controllers/index.ts + 7 modules
20
+ var controllers = __webpack_require__(6384);
21
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/interfaces/reference-provider.interface.ts
22
+ var reference_provider_interface = __webpack_require__(2492);
23
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/rule-engine/index.ts + 1 modules
24
+ var rule_engine = __webpack_require__(8429);
25
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/index.ts + 3 modules
26
+ var services = __webpack_require__(8752);
27
+ ;// CONCATENATED MODULE: ./projects/nestjs-entity-builder/src/modules/entity-builder.module.ts
28
+ function _ts_decorate(decorators, target, key, desc) {
29
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
30
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
31
+ r = Reflect.decorate(decorators, target, key, desc);
32
+ } else {
33
+ for(var i = decorators.length - 1; i >= 0; i--){
34
+ if (d = decorators[i]) {
35
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
36
+ }
37
+ }
38
+ }
39
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
40
+ }
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+ class EntityBuilderModule {
50
+ static CONTROLLERS = [
51
+ controllers/* .EntityDefinitionController */.hv,
52
+ controllers/* .FieldDefinitionController */.GX,
53
+ controllers/* .FlowDefinitionController */.W8,
54
+ controllers/* .FlowExecutionController */.VU,
55
+ controllers/* .FlowRuntimeController */.bw
56
+ ];
57
+ static EXPORTS = [
58
+ services/* .EntityBuilderConfigService */.E,
59
+ services/* .EntityBuilderDataSourceProvider */.DR,
60
+ services/* .SchemaDialectAdapterService */.Io,
61
+ services/* .SchemaRegistryService */.Cy,
62
+ services/* .SchemaSyncService */.WQ,
63
+ services/* .DefinitionCacheService */.Vo,
64
+ services/* .SchemaChangeExecutor */.TQ,
65
+ services/* .SchemaEvolutionService */._X,
66
+ services/* .ReferenceScannerService */.tH,
67
+ services/* .EntityDefinitionService */.oc,
68
+ services/* .FieldDefinitionService */.J,
69
+ services/* .GenericEntityServiceFactory */.GR,
70
+ services/* .EntityPermissionService */.u4,
71
+ rule_engine/* .RuleEngineService */.iI,
72
+ services/* .FlowDefinitionService */.Tk,
73
+ services/* .FlowExecutorService */.FT,
74
+ services/* .FlowRuntimeService */.a$
75
+ ];
76
+ static forRoot(options) {
77
+ return {
78
+ module: EntityBuilderModule,
79
+ global: options.global ?? false,
80
+ imports: [
81
+ modules_.CacheModule,
82
+ modules_.UtilsModule
83
+ ],
84
+ controllers: options.includeController !== false ? this.CONTROLLERS : [],
85
+ providers: [
86
+ ...this.buildProviders(options),
87
+ ...options.providers ?? []
88
+ ],
89
+ exports: this.EXPORTS
90
+ };
91
+ }
92
+ static forRootAsync(options) {
93
+ return {
94
+ module: EntityBuilderModule,
95
+ global: options.global ?? false,
96
+ imports: [
97
+ ...options.imports || [],
98
+ modules_.CacheModule,
99
+ modules_.UtilsModule
100
+ ],
101
+ controllers: options.includeController !== false ? this.CONTROLLERS : [],
102
+ providers: [
103
+ ...this.buildAsyncProviders(options),
104
+ ...this.buildProviders(),
105
+ ...options.providers ?? []
106
+ ],
107
+ exports: this.EXPORTS
108
+ };
109
+ }
110
+ static buildProviders(options) {
111
+ const providers = [
112
+ services/* .EntityBuilderConfigService */.E,
113
+ services/* .EntityBuilderDataSourceProvider */.DR,
114
+ services/* .SchemaDialectAdapterService */.Io,
115
+ services/* .SchemaRegistryService */.Cy,
116
+ services/* .SchemaSyncService */.WQ,
117
+ services/* .DefinitionCacheService */.Vo,
118
+ services/* .SchemaChangeExecutor */.TQ,
119
+ services/* .SchemaEvolutionService */._X,
120
+ services/* .ReferenceScannerService */.tH,
121
+ services/* .EntityDefinitionService */.oc,
122
+ services/* .FieldDefinitionService */.J,
123
+ services/* .GenericEntityServiceFactory */.GR,
124
+ services/* .EntityPermissionService */.u4,
125
+ rule_engine/* .RuleEngineService */.iI,
126
+ services/* .FlowDefinitionService */.Tk,
127
+ services/* .FlowExecutionService */.AJ,
128
+ services/* .FlowExecutorService */.FT,
129
+ services/* .FlowRuntimeService */.a$,
130
+ services/* .FlowReferenceProvider */.Ly,
131
+ {
132
+ provide: reference_provider_interface/* .FLOW_REFERENCE_PROVIDER */.$,
133
+ useExisting: services/* .FlowReferenceProvider */.Ly
134
+ }
135
+ ];
136
+ if (options) {
137
+ providers.unshift({
138
+ provide: entity_builder_constants/* .ENTITY_BUILDER_MODULE_OPTIONS */.CP,
139
+ useValue: options
140
+ });
141
+ }
142
+ providers.push((0,modules_.createModuleEventsProvider)(event_actions/* .ENTITY_BUILDER_EVENT_MODULE */.S, entity_builder_constants/* .ENTITY_BUILDER_MODULE_OPTIONS */.CP));
143
+ return providers;
144
+ }
145
+ static buildAsyncProviders(options) {
146
+ if (options.useFactory) {
147
+ return [
148
+ {
149
+ provide: entity_builder_constants/* .ENTITY_BUILDER_MODULE_OPTIONS */.CP,
150
+ useFactory: async (...args)=>({
151
+ ...options,
152
+ config: await options.useFactory(...args)
153
+ }),
154
+ inject: options.inject || []
155
+ }
156
+ ];
157
+ }
158
+ const factoryClass = options.useClass || options.useExisting;
159
+ if (!factoryClass) {
160
+ if (!options.config) {
161
+ throw new Error('EntityBuilderModule.forRootAsync() needs useFactory, useClass, useExisting or a static config.');
162
+ }
163
+ return [
164
+ {
165
+ provide: entity_builder_constants/* .ENTITY_BUILDER_MODULE_OPTIONS */.CP,
166
+ useValue: {
167
+ ...options
168
+ }
169
+ }
170
+ ];
171
+ }
172
+ const providers = [
173
+ {
174
+ provide: entity_builder_constants/* .ENTITY_BUILDER_MODULE_OPTIONS */.CP,
175
+ useFactory: async (factory)=>({
176
+ ...options,
177
+ config: await factory.createEntityBuilderOptions()
178
+ }),
179
+ inject: [
180
+ factoryClass
181
+ ]
182
+ }
183
+ ];
184
+ if (options.useClass) {
185
+ providers.push({
186
+ provide: options.useClass,
187
+ useClass: options.useClass
188
+ });
189
+ }
190
+ return providers;
191
+ }
192
+ }
193
+ EntityBuilderModule = _ts_decorate([
194
+ (0,common_.Module)({})
195
+ ], EntityBuilderModule);
196
+
197
+ ;// CONCATENATED MODULE: ./projects/nestjs-entity-builder/src/modules/index.ts
198
+
199
+
200
+
201
+ },
202
+ 8752(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
203
+
204
+ // EXPORTS
205
+ __webpack_require__.d(__webpack_exports__, {
206
+ zb: () => (/* reexport */ generic_entity_service/* .ACTOR_BRANCH_METADATA_KEY */.zb),
207
+ Fz: () => (/* reexport */ (/* inlined export .DRAFT_TEST_RETAIN */200)),
208
+ Vo: () => (/* reexport */ definition_cache_service/* .DefinitionCacheService */.V),
209
+ IP: () => (/* reexport */ entity_flow_scaffold/* .ENTITY_FLOW_PATHS */.IP),
210
+ E: () => (/* reexport */ entity_builder_config_service/* .EntityBuilderConfigService */.E),
211
+ DR: () => (/* reexport */ entity_builder_datasource_provider/* .EntityBuilderDataSourceProvider */.D),
212
+ oc: () => (/* reexport */ entity_definition_service/* .EntityDefinitionService */.o),
213
+ u4: () => (/* reexport */ entity_permission_service/* .EntityPermissionService */.u),
214
+ J: () => (/* reexport */ field_definition_service/* .FieldDefinitionService */.J),
215
+ Tk: () => (/* reexport */ flow_definition_service/* .FlowDefinitionService */.Tk),
216
+ AJ: () => (/* reexport */ flow_execution_service/* .FlowExecutionService */.A),
217
+ FT: () => (/* reexport */ flow_executor_service/* .FlowExecutorService */.F),
218
+ Ly: () => (/* reexport */ FlowReferenceProvider),
219
+ a$: () => (/* reexport */ flow_runtime_service/* .FlowRuntimeService */.a),
220
+ GK: () => (/* reexport */ generic_entity_service/* .GenericEntityService */.GK),
221
+ GR: () => (/* reexport */ generic_entity_service_factory/* .GenericEntityServiceFactory */.G),
222
+ gW: () => (/* reexport */ schema_columns/* .NON_INDEXABLE_FIELD_TYPES */.gW),
223
+ xJ: () => (/* reexport */ identifier_rules/* .RESERVED_WORDS */.xJ),
224
+ tH: () => (/* reexport */ reference_scanner_service/* .ReferenceScannerService */.t),
225
+ mq: () => (/* reexport */ schema_columns/* .SYSTEM_COLUMN_NAMES */.mq),
226
+ TQ: () => (/* reexport */ schema_change_executor_service/* .SchemaChangeExecutor */.T),
227
+ Io: () => (/* reexport */ schema_dialect_adapter_service/* .SchemaDialectAdapterService */.I),
228
+ _X: () => (/* reexport */ schema_evolution_service/* .SchemaEvolutionService */._),
229
+ Cy: () => (/* reexport */ schema_registry_service/* .SchemaRegistryService */.C),
230
+ WQ: () => (/* reexport */ schema_sync_service/* .SchemaSyncService */.W),
231
+ DG: () => (/* reexport */ generic_entity_service/* .actorMetadata */.DG),
232
+ $6: () => (/* reexport */ schema_columns/* .addUnique */.$6),
233
+ fY: () => (/* reexport */ identifier_rules/* .assertIndexableField */.fY),
234
+ kV: () => (/* reexport */ identifier_rules/* .assertValidIdentifier */.kV),
235
+ HK: () => (/* reexport */ schema_columns/* .auditColumns */.HK),
236
+ CO: () => (/* reexport */ entity_flow_scaffold/* .buildEntityFlow */.CO),
237
+ fu: () => (/* reexport */ schema_columns/* .buildFieldColumn */.fu),
238
+ Rm: () => (/* reexport */ schema_columns/* .buildSystemColumns */.Rm),
239
+ Er: () => (/* reexport */ flow_definition_service/* .defaultFlowPermissionCode */.Er),
240
+ an: () => (/* reexport */ schema_change_types/* .describeImpact */.a),
241
+ x2: () => (/* reexport */ entity_flow_scaffold/* .entityFlowSlug */.x2),
242
+ HQ: () => (/* reexport */ schema_dialect_adapter_service/* .fitIdentifier */.H),
243
+ YW: () => (/* reexport */ flow_definition_service/* .flowNotFound */.YW),
244
+ gl: () => (/* reexport */ flow_executor_service/* .flowTimeout */.g),
245
+ mo: () => (/* reexport */ schema_columns/* .indexName */.mo),
246
+ C5: () => (/* reexport */ schema_evolution_service/* .isDestructiveSchemaAction */.C),
247
+ d4: () => (/* reexport */ schema_columns/* .isIndexableFieldType */.d4),
248
+ HF: () => (/* reexport */ flow_definition_service/* .isPublished */.HF),
249
+ Eq: () => (/* reexport */ database_error_mapper/* .mapDatabaseError */.E),
250
+ iw: () => (/* reexport */ database_error_mapper/* .mapSchemaError */.i),
251
+ v7: () => (/* reexport */ schema_columns/* .plainIndex */.v7),
252
+ IM: () => (/* reexport */ field_type_conversion/* .planTypeConversion */.I),
253
+ e1: () => (/* reexport */ schema_change_executor_service/* .relationTargetCodes */.e),
254
+ Sd: () => (/* reexport */ flow_runtime_service/* .requestInfo */.S),
255
+ G7: () => (/* reexport */ schema_columns/* .sameColumns */.G7),
256
+ eY: () => (/* reexport */ flow_definition_service/* .snapshotOf */.eY),
257
+ OG: () => (/* reexport */ schema_columns/* .softDeleteColumn */.OG),
258
+ cg: () => (/* reexport */ schema_columns/* .sqlTypeFor */.cg),
259
+ uy: () => (/* reexport */ schema_columns/* .tableUnique */.uy),
260
+ RK: () => (/* reexport */ flow_definition_service/* .toFlowSettings */.RK),
261
+ jp: () => (/* reexport */ schema_columns/* .typeFamily */.jp),
262
+ eV: () => (/* reexport */ field_value_validator/* .validateRecord */.e),
263
+ lw: () => (/* reexport */ flow_definition_service/* .workingCopy */.lw)
264
+ });
265
+
266
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/entity-builder-config.service.ts
267
+ var entity_builder_config_service = __webpack_require__(4281);
268
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/entity-builder-datasource.provider.ts
269
+ var entity_builder_datasource_provider = __webpack_require__(424);
270
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/schema-dialect-adapter.service.ts
271
+ var schema_dialect_adapter_service = __webpack_require__(7259);
272
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/schema-registry.service.ts
273
+ var schema_registry_service = __webpack_require__(2134);
274
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/schema-sync.service.ts
275
+ var schema_sync_service = __webpack_require__(3474);
276
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/entity-definition.service.ts
277
+ var entity_definition_service = __webpack_require__(1296);
278
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/field-definition.service.ts
279
+ var field_definition_service = __webpack_require__(9487);
280
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/generic-entity.service.ts
281
+ var generic_entity_service = __webpack_require__(3998);
282
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/generic-entity-service.factory.ts
283
+ var generic_entity_service_factory = __webpack_require__(7705);
284
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/entity-permission.service.ts
285
+ var entity_permission_service = __webpack_require__(1462);
286
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/definition-cache.service.ts
287
+ var definition_cache_service = __webpack_require__(2931);
288
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/schema-change-executor.service.ts
289
+ var schema_change_executor_service = __webpack_require__(6605);
290
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/schema-change.types.ts
291
+ var schema_change_types = __webpack_require__(7827);
292
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/schema-columns.ts
293
+ var schema_columns = __webpack_require__(5313);
294
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/field-type-conversion.ts
295
+ var field_type_conversion = __webpack_require__(4984);
296
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/identifier-rules.ts
297
+ var identifier_rules = __webpack_require__(413);
298
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/schema-evolution.service.ts
299
+ var schema_evolution_service = __webpack_require__(3606);
300
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/reference-scanner.service.ts
301
+ var reference_scanner_service = __webpack_require__(921);
302
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/field-value-validator.ts
303
+ var field_value_validator = __webpack_require__(3525);
304
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/database-error.mapper.ts
305
+ var database_error_mapper = __webpack_require__(8323);
306
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/flow-definition.service.ts + 1 modules
307
+ var flow_definition_service = __webpack_require__(4921);
308
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/flow-execution.service.ts
309
+ var flow_execution_service = __webpack_require__(7810);
310
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/flow-executor.service.ts + 5 modules
311
+ var flow_executor_service = __webpack_require__(4698);
312
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/flow-runtime.service.ts
313
+ var flow_runtime_service = __webpack_require__(2300);
314
+ // EXTERNAL MODULE: external "@flusys/nestjs-shared/utils"
315
+ var utils_ = __webpack_require__(9216);
316
+ // EXTERNAL MODULE: external "@nestjs/common"
317
+ var common_ = __webpack_require__(6157);
318
+ // EXTERNAL MODULE: external "typeorm"
319
+ var external_typeorm_ = __webpack_require__(7158);
320
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/config/message-keys.ts
321
+ var message_keys = __webpack_require__(5732);
322
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/entities/flow-definition.entity.ts
323
+ var flow_definition_entity = __webpack_require__(3770);
324
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/entities/flow-version.entity.ts
325
+ var flow_version_entity = __webpack_require__(2399);
326
+ ;// CONCATENATED MODULE: ./projects/nestjs-entity-builder/src/services/reference-rewrite.ts
327
+ /** Pure JSON string helpers for finding and rewriting `<prefix>.<field>` references inside definitions. */ function mapStrings(value, fn) {
328
+ if (typeof value === 'string') return fn(value);
329
+ if (Array.isArray(value)) return value.map((v)=>mapStrings(v, fn));
330
+ if (value && typeof value === 'object') {
331
+ return Object.fromEntries(Object.entries(value).map(([k, v])=>[
332
+ k,
333
+ mapStrings(v, fn)
334
+ ]));
335
+ }
336
+ return value;
337
+ }
338
+ function anyString(value, test) {
339
+ if (typeof value === 'string') return test(value);
340
+ if (Array.isArray(value)) return value.some((v)=>anyString(v, test));
341
+ if (value && typeof value === 'object') return Object.values(value).some((v)=>anyString(v, test));
342
+ return false;
343
+ }
344
+ const escapeRe = (s)=>s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
345
+ /**
346
+ * `<prefix>.<field>`, `<prefix>.<field>.x` or `{{ <prefix>.<field> }}` inside a template - but not
347
+ * `<prefix>.<field>_2`. The prefix is a regex source (e.g. `context\.find\.items\.\d+`), captured so a rewrite keeps it.
348
+ */ const referencePatternSource = (prefixSource, field, flags = '')=>new RegExp(`(^|\\{\\{\\s*)(${prefixSource})\\.${escapeRe(field)}(?!\\w)`, flags);
349
+ const replaceReferenceSource = (s, prefixSource, from, to)=>s.replace(referencePatternSource(prefixSource, from, 'g'), (_match, lead, prefix)=>`${lead}${prefix}.${to}`);
350
+
351
+ ;// CONCATENATED MODULE: ./projects/nestjs-entity-builder/src/flow-engine/flow-reference.ts
352
+
353
+ const entityOf = (node)=>node.config?.entityCode;
354
+ const childrenOf = (node)=>{
355
+ if (node.type !== 'entity_insert') return [];
356
+ const children = node.config?.children;
357
+ return Array.isArray(children) ? children.filter((c)=>!!c && typeof c === 'object') : [];
358
+ };
359
+ const isLookupOn = (value, entityCode)=>!!value && typeof value === 'object' && !Array.isArray(value) && value.type === 'lookup' && value.entity === entityCode;
360
+ function anyLookup(value, entityCode, test) {
361
+ if (Array.isArray(value)) return value.some((v)=>anyLookup(v, entityCode, test));
362
+ if (!value || typeof value !== 'object') return false;
363
+ if (isLookupOn(value, entityCode) && test(value)) return true;
364
+ return Object.values(value).some((v)=>anyLookup(v, entityCode, test));
365
+ }
366
+ function mapLookups(value, entityCode, fn) {
367
+ if (Array.isArray(value)) return value.map((v)=>mapLookups(v, entityCode, fn));
368
+ if (!value || typeof value !== 'object') return value;
369
+ const mapped = Object.fromEntries(Object.entries(value).map(([k, v])=>[
370
+ k,
371
+ mapLookups(v, entityCode, fn)
372
+ ]));
373
+ return isLookupOn(mapped, entityCode) ? fn(mapped) : mapped;
374
+ }
375
+ const lookupUsesField = (lookup, field)=>lookup.field === field || lookup.sort?.field === field || !!lookup.filter && field in lookup.filter;
376
+ const childUsesField = (child, field)=>child.parentField === field || !!child.fields && typeof child.fields === 'object' && field in child.fields;
377
+ function flowUsesEntity(nodes, entityCode) {
378
+ return nodes.some((n)=>entityOf(n) === entityCode || childrenOf(n).some((c)=>c.entityCode === entityCode) || anyLookup(n.config, entityCode, ()=>true));
379
+ }
380
+ const ITEM = '\\.items\\.\\d+';
381
+ /** Regex sources of every output path that holds a record of the entity. */ function recordPrefixes(nodes, entityCode) {
382
+ const out = [];
383
+ for (const node of nodes){
384
+ const base = `context\\.${escapeRe(node.id)}`;
385
+ if (entityOf(node) === entityCode) {
386
+ if (node.type === 'entity_get') out.push(base);
387
+ else if (node.type === 'entity_insert' || node.type === 'entity_update') out.push(`${base}(?:${ITEM})?`);
388
+ else if (node.type === 'entity_query') out.push(`${base}${ITEM}`);
389
+ }
390
+ for (const child of childrenOf(node)){
391
+ if (child.entityCode === entityCode && typeof child.as === 'string' && child.as) out.push(`${base}(?:${ITEM})?\\.${escapeRe(child.as)}\\.\\d+`);
392
+ }
393
+ }
394
+ return out;
395
+ }
396
+ function flowRefersToField(nodes, entityCode, field) {
397
+ const patterns = recordPrefixes(nodes, entityCode).map((prefix)=>referencePatternSource(prefix, field));
398
+ return nodes.some((node)=>{
399
+ if (entityOf(node) === entityCode) {
400
+ const c = node.config;
401
+ if (c.fields && field in c.fields) return true;
402
+ if (c.filter && field in c.filter) return true;
403
+ if (c.sort?.field === field) return true;
404
+ }
405
+ if (childrenOf(node).some((child)=>child.entityCode === entityCode && childUsesField(child, field))) return true;
406
+ if (anyLookup(node.config, entityCode, (lookup)=>lookupUsesField(lookup, field))) return true;
407
+ return patterns.length > 0 && anyString(node.config, (s)=>patterns.some((p)=>p.test(s)));
408
+ });
409
+ }
410
+ function rewriteFlowField(nodes, entityCode, from, to) {
411
+ const prefixes = recordPrefixes(nodes, entityCode);
412
+ let changed = false;
413
+ const renameKey = (map)=>{
414
+ if (!map || !(from in map)) return map;
415
+ changed = true;
416
+ return Object.fromEntries(Object.entries(map).map(([k, v])=>[
417
+ k === from ? to : k,
418
+ v
419
+ ]));
420
+ };
421
+ const renameChild = (child)=>{
422
+ if (child.entityCode !== entityCode || !childUsesField(child, from)) return child;
423
+ changed = true;
424
+ return {
425
+ ...child,
426
+ ...child.fields && from in child.fields ? {
427
+ fields: renameKey(child.fields)
428
+ } : {},
429
+ ...child.parentField === from ? {
430
+ parentField: to
431
+ } : {}
432
+ };
433
+ };
434
+ const rewritten = nodes.map((node)=>{
435
+ let config = node.config;
436
+ if (entityOf(node) === entityCode) {
437
+ const next = {
438
+ ...config
439
+ };
440
+ if (next['fields']) next['fields'] = renameKey(next['fields']);
441
+ if (next['filter']) next['filter'] = renameKey(next['filter']);
442
+ const sort = next['sort'];
443
+ if (sort?.field === from) {
444
+ next['sort'] = {
445
+ ...sort,
446
+ field: to
447
+ };
448
+ changed = true;
449
+ }
450
+ config = next;
451
+ }
452
+ const children = childrenOf(node);
453
+ if (children.some((child)=>child.entityCode === entityCode && childUsesField(child, from))) {
454
+ config = {
455
+ ...config,
456
+ children: children.map(renameChild)
457
+ };
458
+ }
459
+ config = mapLookups(config, entityCode, (lookup)=>{
460
+ if (!lookupUsesField(lookup, from)) return lookup;
461
+ changed = true;
462
+ return {
463
+ ...lookup,
464
+ ...lookup.filter ? {
465
+ filter: renameKey(lookup.filter)
466
+ } : {},
467
+ ...lookup.field === from ? {
468
+ field: to
469
+ } : {},
470
+ ...lookup.sort?.field === from ? {
471
+ sort: {
472
+ ...lookup.sort,
473
+ field: to
474
+ }
475
+ } : {}
476
+ };
477
+ });
478
+ if (prefixes.length) {
479
+ config = mapStrings(config, (s)=>{
480
+ const out = prefixes.reduce((acc, prefix)=>replaceReferenceSource(acc, prefix, from, to), s);
481
+ if (out !== s) changed = true;
482
+ return out;
483
+ });
484
+ }
485
+ return config === node.config ? node : {
486
+ ...node,
487
+ config
488
+ };
489
+ });
490
+ return {
491
+ nodes: rewritten,
492
+ changed
493
+ };
494
+ }
495
+
496
+ ;// CONCATENATED MODULE: ./projects/nestjs-entity-builder/src/services/flow-reference.provider.ts
497
+ function _ts_decorate(decorators, target, key, desc) {
498
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
499
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
500
+ r = Reflect.decorate(decorators, target, key, desc);
501
+ } else {
502
+ for(var i = decorators.length - 1; i >= 0; i--){
503
+ if (d = decorators[i]) {
504
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
505
+ }
506
+ }
507
+ }
508
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
509
+ }
510
+ function _ts_metadata(metadataKey, metadataValue) {
511
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
512
+ return Reflect.metadata(metadataKey, metadataValue);
513
+ }
514
+ }
515
+ function _ts_param(paramIndex, decorator) {
516
+ return function(target, key) {
517
+ decorator(target, key, paramIndex);
518
+ };
519
+ }
520
+
521
+
522
+
523
+
524
+
525
+
526
+
527
+
528
+ class FlowReferenceProvider {
529
+ provider;
530
+ constructor(provider){
531
+ this.provider = provider;
532
+ }
533
+ async flows() {
534
+ return (await this.repo(flow_definition_entity/* .FlowDefinition */.G)).find({
535
+ where: {
536
+ deletedAt: (0,external_typeorm_.IsNull)()
537
+ }
538
+ });
539
+ }
540
+ async repo(entity, manager) {
541
+ return manager ? manager.getRepository(entity) : this.provider.getRepository(entity);
542
+ }
543
+ async findEntityReferences(entityCode) {
544
+ return (await this.flows()).filter((f)=>flowUsesEntity(f.nodes, entityCode) || !!f.draft && flowUsesEntity(f.draft.nodes, entityCode)).map((f)=>({
545
+ kind: 'flow',
546
+ id: f.id,
547
+ name: f.name,
548
+ detail: (0,utils_.messageRef)(message_keys/* .SCHEMA_IMPACT_MESSAGES.FLOW_ON_ENTITY */.aB.FLOW_ON_ENTITY, {
549
+ slug: f.slug
550
+ })
551
+ }));
552
+ }
553
+ async findFieldReferences(entityCode, fieldCode) {
554
+ return (await this.flows()).filter((f)=>flowRefersToField(f.nodes, entityCode, fieldCode) || !!f.draft && flowRefersToField(f.draft.nodes, entityCode, fieldCode)).map((f)=>({
555
+ kind: 'flow',
556
+ id: f.id,
557
+ name: f.name,
558
+ detail: (0,utils_.messageRef)(message_keys/* .SCHEMA_IMPACT_MESSAGES.FLOW_USES_FIELD */.aB.FLOW_USES_FIELD, {
559
+ slug: f.slug,
560
+ field: fieldCode
561
+ })
562
+ }));
563
+ }
564
+ async rewriteFieldReferences(entityCode, from, to, manager) {
565
+ let count = 0;
566
+ const flows = await this.repo(flow_definition_entity/* .FlowDefinition */.G, manager);
567
+ // Deleted flows too: one restored later must not bring the old field name back.
568
+ for (const flow of (await flows.find({
569
+ withDeleted: true
570
+ }))){
571
+ // The published flow and its unpublished draft both keep working after the rename.
572
+ const live = rewriteFlowField(flow.nodes, entityCode, from, to);
573
+ const draft = flow.draft ? rewriteFlowField(flow.draft.nodes, entityCode, from, to) : null;
574
+ if (!live.changed && !draft?.changed) continue;
575
+ await flows.update(flow.id, {
576
+ nodes: live.nodes,
577
+ ...draft?.changed ? {
578
+ draft: {
579
+ ...flow.draft,
580
+ nodes: draft.nodes
581
+ }
582
+ } : {}
583
+ });
584
+ count++;
585
+ }
586
+ // A version restored later must not bring the old field name back.
587
+ const versions = await this.repo(flow_version_entity/* .FlowVersion */.p, manager);
588
+ for (const version of (await versions.find({
589
+ select: {
590
+ id: true,
591
+ definition: true
592
+ }
593
+ }))){
594
+ const { nodes, changed } = rewriteFlowField(version.definition.nodes, entityCode, from, to);
595
+ if (changed) await versions.update(version.id, {
596
+ definition: {
597
+ ...version.definition,
598
+ nodes
599
+ }
600
+ });
601
+ }
602
+ return count;
603
+ }
604
+ }
605
+ FlowReferenceProvider = _ts_decorate([
606
+ (0,common_.Injectable)({
607
+ scope: common_.Scope.REQUEST
608
+ }),
609
+ _ts_param(0, (0,common_.Inject)(entity_builder_datasource_provider/* .EntityBuilderDataSourceProvider */.D)),
610
+ _ts_metadata("design:type", Function),
611
+ _ts_metadata("design:paramtypes", [
612
+ typeof entity_builder_datasource_provider/* .EntityBuilderDataSourceProvider */.D === "undefined" ? Object : entity_builder_datasource_provider/* .EntityBuilderDataSourceProvider */.D
613
+ ])
614
+ ], FlowReferenceProvider);
615
+
616
+ // EXTERNAL MODULE: ./projects/nestjs-entity-builder/src/services/entity-flow-scaffold.ts
617
+ var entity_flow_scaffold = __webpack_require__(8271);
618
+ ;// CONCATENATED MODULE: ./projects/nestjs-entity-builder/src/services/index.ts
619
+
620
+
621
+
622
+
623
+
624
+
625
+
626
+
627
+
628
+
629
+
630
+
631
+
632
+
633
+
634
+
635
+
636
+
637
+
638
+
639
+
640
+
641
+
642
+
643
+
644
+
645
+
646
+
647
+ },
648
+
649
+ };