@flusys/nestjs-form-builder 7.1.0 → 8.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 (118) hide show
  1. package/config/index.d.ts +3 -3
  2. package/controllers/form-result.controller.d.ts +3 -3
  3. package/controllers/form.controller.d.ts +3 -3
  4. package/controllers/index.d.ts +2 -2
  5. package/docs/form-builder-swagger.config.d.ts +2 -2
  6. package/docs/index.d.ts +1 -1
  7. package/dtos/form.dto.d.ts +1 -1
  8. package/dtos/index.d.ts +2 -2
  9. package/entities/form-with-company.entity.d.ts +1 -1
  10. package/entities/form.entity.d.ts +1 -1
  11. package/entities/index.d.ts +7 -7
  12. package/enums/index.d.ts +1 -1
  13. package/fesm/262.js +1841 -0
  14. package/fesm/98.js +807 -0
  15. package/fesm/config/index.js +98 -3
  16. package/fesm/controllers/index.js +14 -2
  17. package/fesm/docs/index.js +171 -1
  18. package/fesm/dtos/index.js +571 -2
  19. package/fesm/entities/index.js +342 -10
  20. package/fesm/enums/index.js +38 -1
  21. package/fesm/index.js +482 -10
  22. package/fesm/interfaces/index.js +17 -3
  23. package/fesm/modules/index.js +178 -1
  24. package/fesm/runtime.js +85 -0
  25. package/fesm/services/index.js +35 -4
  26. package/index.d.ts +10 -10
  27. package/interfaces/form-builder-module.interface.d.ts +3 -3
  28. package/interfaces/form-result.interface.d.ts +1 -1
  29. package/interfaces/form.interface.d.ts +2 -2
  30. package/interfaces/index.d.ts +3 -3
  31. package/modules/form-builder.module.d.ts +2 -2
  32. package/modules/index.d.ts +1 -1
  33. package/package.json +26 -36
  34. package/services/form-builder-config.service.d.ts +4 -4
  35. package/services/form-builder-datasource.provider.d.ts +3 -3
  36. package/services/form-result.service.d.ts +6 -6
  37. package/services/form.service.d.ts +7 -7
  38. package/services/index.d.ts +4 -4
  39. package/utils/index.d.ts +2 -2
  40. package/utils/permission.utils.d.ts +1 -1
  41. package/cjs/config/event-actions.js +0 -33
  42. package/cjs/config/form-builder.constants.js +0 -13
  43. package/cjs/config/index.js +0 -20
  44. package/cjs/config/message-keys.js +0 -38
  45. package/cjs/controllers/form-result.controller.js +0 -281
  46. package/cjs/controllers/form-result.controller.spec.js +0 -257
  47. package/cjs/controllers/form.controller.js +0 -231
  48. package/cjs/controllers/form.controller.spec.js +0 -212
  49. package/cjs/controllers/index.js +0 -19
  50. package/cjs/docs/form-builder-swagger.config.js +0 -150
  51. package/cjs/docs/form-builder-swagger.config.spec.js +0 -75
  52. package/cjs/docs/index.js +0 -11
  53. package/cjs/dtos/form-result.dto.js +0 -248
  54. package/cjs/dtos/form.dto.js +0 -270
  55. package/cjs/dtos/index.js +0 -19
  56. package/cjs/entities/form-result.entity.js +0 -100
  57. package/cjs/entities/form-with-company.entity.js +0 -65
  58. package/cjs/entities/form.entity.js +0 -127
  59. package/cjs/entities/index.js +0 -52
  60. package/cjs/entities/index.spec.js +0 -18
  61. package/cjs/enums/form-access-type.enum.js +0 -19
  62. package/cjs/enums/index.js +0 -18
  63. package/cjs/index.js +0 -28
  64. package/cjs/interfaces/form-builder-module.interface.js +0 -4
  65. package/cjs/interfaces/form-result.interface.js +0 -4
  66. package/cjs/interfaces/form.interface.js +0 -4
  67. package/cjs/interfaces/index.js +0 -20
  68. package/cjs/modules/form-builder.module.js +0 -136
  69. package/cjs/modules/form-builder.module.spec.js +0 -133
  70. package/cjs/modules/index.js +0 -18
  71. package/cjs/services/form-builder-config.service.js +0 -69
  72. package/cjs/services/form-builder-config.service.spec.js +0 -121
  73. package/cjs/services/form-builder-datasource.provider.js +0 -125
  74. package/cjs/services/form-builder-datasource.provider.spec.js +0 -147
  75. package/cjs/services/form-result.service.js +0 -366
  76. package/cjs/services/form-result.service.spec.js +0 -823
  77. package/cjs/services/form.service.js +0 -341
  78. package/cjs/services/form.service.spec.js +0 -746
  79. package/cjs/services/index.js +0 -21
  80. package/cjs/utils/computed-field.utils.js +0 -199
  81. package/cjs/utils/computed-field.utils.spec.js +0 -1205
  82. package/cjs/utils/index.js +0 -19
  83. package/cjs/utils/permission.utils.js +0 -44
  84. package/cjs/utils/permission.utils.spec.js +0 -118
  85. package/fesm/config/event-actions.js +0 -12
  86. package/fesm/config/form-builder.constants.js +0 -3
  87. package/fesm/config/message-keys.js +0 -20
  88. package/fesm/controllers/form-result.controller.js +0 -271
  89. package/fesm/controllers/form-result.controller.spec.js +0 -253
  90. package/fesm/controllers/form.controller.js +0 -221
  91. package/fesm/controllers/form.controller.spec.js +0 -208
  92. package/fesm/docs/form-builder-swagger.config.js +0 -146
  93. package/fesm/docs/form-builder-swagger.config.spec.js +0 -71
  94. package/fesm/dtos/form-result.dto.js +0 -215
  95. package/fesm/dtos/form.dto.js +0 -243
  96. package/fesm/entities/form-result.entity.js +0 -90
  97. package/fesm/entities/form-with-company.entity.js +0 -55
  98. package/fesm/entities/form.entity.js +0 -117
  99. package/fesm/entities/index.spec.js +0 -14
  100. package/fesm/enums/form-access-type.enum.js +0 -9
  101. package/fesm/interfaces/form-builder-module.interface.js +0 -3
  102. package/fesm/interfaces/form-result.interface.js +0 -6
  103. package/fesm/interfaces/form.interface.js +0 -3
  104. package/fesm/modules/form-builder.module.js +0 -126
  105. package/fesm/modules/form-builder.module.spec.js +0 -129
  106. package/fesm/services/form-builder-config.service.js +0 -59
  107. package/fesm/services/form-builder-config.service.spec.js +0 -117
  108. package/fesm/services/form-builder-datasource.provider.js +0 -74
  109. package/fesm/services/form-builder-datasource.provider.spec.js +0 -143
  110. package/fesm/services/form-result.service.js +0 -356
  111. package/fesm/services/form-result.service.spec.js +0 -778
  112. package/fesm/services/form.service.js +0 -331
  113. package/fesm/services/form.service.spec.js +0 -701
  114. package/fesm/utils/computed-field.utils.js +0 -195
  115. package/fesm/utils/computed-field.utils.spec.js +0 -1201
  116. package/fesm/utils/index.js +0 -2
  117. package/fesm/utils/permission.utils.js +0 -42
  118. package/fesm/utils/permission.utils.spec.js +0 -114
package/fesm/index.js CHANGED
@@ -1,20 +1,492 @@
1
+ export const __rspack_esm_id = 410;
2
+ export const __rspack_esm_ids = [410];
3
+ export const __webpack_modules__ = {
4
+ 511(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
5
+ /* import */ var _event_actions_js__rspack_import_0 = __webpack_require__(769);
6
+ /* import */ var _form_builder_constants_js__rspack_import_1 = __webpack_require__(512);
7
+ /* import */ var _message_keys_js__rspack_import_2 = __webpack_require__(137);
8
+
9
+
10
+
11
+
12
+ __webpack_require__.d(__webpack_exports__, {
13
+ Ql: () => (/* reexport safe */ _message_keys_js__rspack_import_2.Q),
14
+ T$: () => (/* reexport safe */ _event_actions_js__rspack_import_0.T$),
15
+ eF: () => (/* reexport safe */ _event_actions_js__rspack_import_0.eF),
16
+ ov: () => (/* reexport safe */ _event_actions_js__rspack_import_0.ov),
17
+ vx: () => (/* reexport safe */ _form_builder_constants_js__rspack_import_1.v),
18
+ yF: () => (/* reexport safe */ _message_keys_js__rspack_import_2.y)
19
+ });
20
+
21
+
22
+ },
23
+ 625(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
24
+
25
+ // EXPORTS
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ a: () => (/* reexport */ formBuilderSwaggerConfig)
28
+ });
29
+
30
+ ;// CONCATENATED MODULE: ./projects/nestjs-form-builder/src/docs/form-builder-swagger.config.ts
31
+ /** Schema properties to exclude when company feature is disabled */ const COMPANY_SCHEMA_EXCLUSIONS = [
32
+ {
33
+ schemaName: 'CreateFormDto',
34
+ properties: [
35
+ 'companyId'
36
+ ]
37
+ },
38
+ {
39
+ schemaName: 'UpdateFormDto',
40
+ properties: [
41
+ 'companyId'
42
+ ]
43
+ },
44
+ {
45
+ schemaName: 'FormQueryDto',
46
+ properties: [
47
+ 'companyId'
48
+ ]
49
+ },
50
+ {
51
+ schemaName: 'FormResponseDto',
52
+ properties: [
53
+ 'companyId'
54
+ ]
55
+ }
56
+ ];
57
+ /**
58
+ * Form Builder Module Swagger Configuration
59
+ * Use this with setupSwaggerDocs() from @flusys/nestjs-core
60
+ *
61
+ * @param bootstrapConfig - Bootstrap configuration to determine feature visibility
62
+ * @returns Swagger configuration with appropriate excludeSchemaProperties based on enableCompanyFeature
63
+ */ function formBuilderSwaggerConfig(bootstrapConfig) {
64
+ const enableCompanyFeature = bootstrapConfig?.enableCompanyFeature ?? true;
65
+ const isMultiTenant = bootstrapConfig?.databaseMode === 'multi-tenant';
66
+ const multiTenantNote = isMultiTenant ? `\n> **Multi-Tenant Mode**: Include \`x-tenant-id\` header to target a specific tenant database.\n` : '';
67
+ return {
68
+ title: 'Form Builder API',
69
+ description: `
70
+ # Form Builder API
71
+ ${multiTenantNote}
72
+
73
+ Dynamic form builder with schema versioning, conditional logic, and access control.
74
+
75
+ ## Features
76
+
77
+ ### 📋 Form Management
78
+ - Create and manage dynamic forms
79
+ - Schema versioning for form updates
80
+ - Slug-based URLs for sharing${enableCompanyFeature ? '\n- **Company isolation**' : ''}
81
+
82
+ ### 🔒 Access Control
83
+ - **Public**: No authentication required
84
+ - **Authenticated**: JWT authentication required
85
+ - **Action Group**: Permission-based access via IAM
86
+
87
+ ### 📊 Form Results
88
+ - Submit and track form responses
89
+ - Draft support for partial submissions
90
+ - Schema snapshot preservation${enableCompanyFeature ? '\n- **Company-level permissions**' : ''}
91
+
92
+ ### 🔀 Conditional Logic
93
+ - Show/hide fields based on values
94
+ - Show/hide sections dynamically
95
+ - Jump to sections based on conditions
96
+ - Conditional required validation
97
+ ${enableCompanyFeature ? `
98
+ ## Multi-Tenant Support
99
+
100
+ Forms and results are automatically isolated by:
101
+ - **Company ID**: Company-level data isolation
102
+
103
+ All queries automatically filter by current user's company context.
104
+ ` : ''}
105
+ ## Form Access Types
106
+
107
+ ### Public Forms
108
+ - No authentication required
109
+ - Anyone can view and submit
110
+ - Use \`/form-builder/form/public/:id\` to get form
111
+ - Use \`/form-builder/result/submit-public\` to submit
112
+
113
+ ### Authenticated Forms
114
+ - JWT authentication required
115
+ - User must be logged in
116
+ - Use \`/form-builder/form/authenticated/:id\` to get form
117
+ - Use \`/form-builder/result/submit\` to submit
118
+
119
+ ### Action Group Forms
120
+ - Permission-based access via IAM
121
+ - User must have specific permissions
122
+ - Use \`/form-builder/form/authenticated/:id\` to get form
123
+ - Use \`/form-builder/result/submit\` to submit
124
+
125
+ ## Draft Support
126
+
127
+ Save form progress and complete later:
128
+ 1. Submit with \`isDraft: true\` to save draft
129
+ 2. Get draft with \`/form-builder/result/my-draft\`
130
+ 3. Update draft with \`/form-builder/result/update-draft\`
131
+ 4. Finalize by setting \`isDraft: false\`
132
+
133
+ ## Response Format
134
+
135
+ All endpoints return standardized responses with success status, data, message, and timestamp.
136
+
137
+ ## Error Handling
138
+
139
+ Errors return structured responses with success false, error message, error code, and timestamp.
140
+
141
+ ## Common Error Codes
142
+
143
+ - **400 Bad Request**: Invalid input data
144
+ - **401 Unauthorized**: Missing or invalid authentication
145
+ - **403 Forbidden**: Insufficient permissions or wrong access type
146
+ - **404 Not Found**: Form or result not found
147
+ - **500 Internal Server Error**: Server error
148
+
149
+ ## API Endpoints
150
+
151
+ All form builder endpoints are prefixed with \`/form-builder\`:
152
+ - \`/form-builder/form/*\` - Form management
153
+ - \`/form-builder/result/*\` - Form result/submission management
154
+
155
+ ## Examples
156
+
157
+ ### Get Form Access Info
158
+
159
+ POST /form-builder/form/access-info/:id
160
+ Returns access type and requirements (no auth required)
161
+
162
+ ### Submit Public Form
163
+
164
+ POST /form-builder/result/submit-public with JSON body containing formId and formData
165
+
166
+ ### Submit Authenticated Form
167
+
168
+ POST /form-builder/result/submit with JWT token and JSON body containing formId and formData
169
+ `,
170
+ version: '1.0',
171
+ path: 'api/docs/form-builder',
172
+ bearerAuth: true,
173
+ excludeTags: [],
174
+ excludeSchemaProperties: enableCompanyFeature ? undefined : COMPANY_SCHEMA_EXCLUSIONS
175
+ };
176
+ }
177
+
178
+ ;// CONCATENATED MODULE: ./projects/nestjs-form-builder/src/docs/index.ts
179
+
180
+
181
+
182
+ },
183
+ 817(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
184
+ /* import */ var _form_access_type_enum_js__rspack_import_0 = __webpack_require__(376);
185
+
186
+
187
+ __webpack_require__.d(__webpack_exports__, {
188
+ h: () => (/* reexport safe */ _form_access_type_enum_js__rspack_import_0.h)
189
+ });
190
+
191
+
192
+ },
193
+ 851(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
194
+
195
+ // EXPORTS
196
+ __webpack_require__.d(__webpack_exports__, {
197
+ YD: () => (/* reexport */ dtos/* .CreateFormDto */.YD),
198
+ pZ: () => (/* reexport */ dtos/* .CreateFormResultDto */.pZ),
199
+ ov: () => (/* reexport */ config/* .FORM_BUILDER_EVENT_ACTIONS */.ov),
200
+ eF: () => (/* reexport */ config/* .FORM_BUILDER_EVENT_ENTITIES */.eF),
201
+ T$: () => (/* reexport */ config/* .FORM_BUILDER_EVENT_MODULE */.T$),
202
+ vx: () => (/* reexport */ config/* .FORM_BUILDER_MODULE_OPTIONS */.vx),
203
+ Ql: () => (/* reexport */ config/* .FORM_MESSAGES */.Ql),
204
+ yF: () => (/* reexport */ config/* .FORM_RESULT_MESSAGES */.yF),
205
+ lV: () => (/* reexport */ entities/* .Form */.lV),
206
+ Xe: () => (/* reexport */ dtos/* .FormAccessInfoResponseDto */.Xe),
207
+ hi: () => (/* reexport */ enums/* .FormAccessType */.h),
208
+ C7: () => (/* reexport */ entities/* .FormBase */.C7),
209
+ jS: () => (/* reexport */ services/* .FormBuilderConfigService */.jS),
210
+ _Z: () => (/* reexport */ services/* .FormBuilderDataSourceProvider */._Z),
211
+ S7: () => (/* reexport */ modules/* .FormBuilderModule */.S),
212
+ Xl: () => (/* reexport */ entities/* .FormCompanyEntities */.Xl),
213
+ Xq: () => (/* reexport */ controllers/* .FormController */.X),
214
+ t$: () => (/* reexport */ entities/* .FormCoreEntities */.t$),
215
+ bV: () => (/* reexport */ dtos/* .FormResponseDto */.bV),
216
+ ez: () => (/* reexport */ entities/* .FormResult */.ez),
217
+ Ye: () => (/* reexport */ controllers/* .FormResultController */.Y),
218
+ _$: () => (/* reexport */ dtos/* .FormResultResponseDto */._$),
219
+ vF: () => (/* reexport */ services/* .FormResultService */.vF),
220
+ ux: () => (/* reexport */ services/* .FormService */.ux),
221
+ Wl: () => (/* reexport */ entities/* .FormWithCompany */.Wl),
222
+ D5: () => (/* reexport */ dtos/* .GetMyDraftDto */.D5),
223
+ rp: () => (/* reexport */ dtos/* .GetResultsByFormDto */.rp),
224
+ M4: () => (/* reexport */ dtos/* .PublicFormResponseDto */.M4),
225
+ sH: () => (/* reexport */ dtos/* .SubmitFormDto */.sH),
226
+ CQ: () => (/* reexport */ dtos/* .UpdateDraftDto */.CQ),
227
+ jQ: () => (/* reexport */ dtos/* .UpdateFormDto */.jQ),
228
+ Uj: () => (/* reexport */ dtos/* .UpdateFormResultDto */.Uj),
229
+ XZ: () => (/* reexport */ computed_field_utils/* .calculateComputedFields */.X),
230
+ aY: () => (/* reexport */ docs/* .formBuilderSwaggerConfig */.a),
231
+ iO: () => (/* reexport */ entities.getFormBuilderEntitiesByConfig),
232
+ io: () => (/* reexport */ permission_utils/* .validateUserPermissions */.i)
233
+ });
234
+
235
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/config/index.ts
236
+ var config = __webpack_require__(511);
237
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/docs/index.ts + 1 modules
238
+ var docs = __webpack_require__(625);
239
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/controllers/index.ts + 3 modules
240
+ var controllers = __webpack_require__(585);
241
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/dtos/index.ts + 1 modules
242
+ var dtos = __webpack_require__(998);
243
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/entities/index.ts + 5 modules
244
+ var entities = __webpack_require__(532);
245
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/enums/index.ts
246
+ var enums = __webpack_require__(817);
247
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/modules/index.ts + 1 modules
248
+ var modules = __webpack_require__(106);
249
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/services/index.ts
250
+ var services = __webpack_require__(949);
251
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/utils/permission.utils.ts
252
+ var permission_utils = __webpack_require__(988);
253
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/utils/computed-field.utils.ts
254
+ var computed_field_utils = __webpack_require__(801);
255
+ ;// CONCATENATED MODULE: ./projects/nestjs-form-builder/src/utils/index.ts
256
+
257
+
258
+
259
+ ;// CONCATENATED MODULE: ./projects/nestjs-form-builder/src/index.ts
1
260
  // Config
2
- export * from './config/index';
261
+
3
262
  // Docs
4
- export * from './docs/index';
263
+
5
264
  // Controllers
6
- export * from './controllers/index';
265
+
7
266
  // DTOs
8
- export * from './dtos/index';
267
+
9
268
  // Entities
10
- export * from './entities/index';
269
+
11
270
  // Enums
12
- export * from './enums/index';
271
+
13
272
  // Interfaces
14
- export * from './interfaces/index';
273
+
15
274
  // Modules
16
- export * from './modules/index';
275
+
17
276
  // Services
18
- export * from './services/index';
277
+
19
278
  // Utils
20
- export * from './utils/index';
279
+
280
+
281
+
282
+ },
283
+ 106(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
284
+
285
+ // EXPORTS
286
+ __webpack_require__.d(__webpack_exports__, {
287
+ S: () => (/* reexport */ FormBuilderModule)
288
+ });
289
+
290
+ // EXTERNAL MODULE: external "@flusys/nestjs-shared/modules"
291
+ var modules_ = __webpack_require__(236);
292
+ // EXTERNAL MODULE: external "@nestjs/common"
293
+ var common_ = __webpack_require__(157);
294
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/config/form-builder.constants.ts
295
+ var form_builder_constants = __webpack_require__(512);
296
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/controllers/index.ts + 3 modules
297
+ var controllers = __webpack_require__(585);
298
+ // EXTERNAL MODULE: ./projects/nestjs-form-builder/src/services/index.ts
299
+ var services = __webpack_require__(949);
300
+ ;// CONCATENATED MODULE: ./projects/nestjs-form-builder/src/modules/form-builder.module.ts
301
+ function _ts_decorate(decorators, target, key, desc) {
302
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
303
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
304
+ r = Reflect.decorate(decorators, target, key, desc);
305
+ } else {
306
+ for(var i = decorators.length - 1; i >= 0; i--){
307
+ if (d = decorators[i]) {
308
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
309
+ }
310
+ }
311
+ }
312
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
313
+ }
314
+
315
+
316
+
317
+
318
+
319
+ class FormBuilderModule {
320
+ static CONTROLLERS = [
321
+ controllers/* .FormController */.X,
322
+ controllers/* .FormResultController */.Y
323
+ ];
324
+ static EXPORTS = [
325
+ services/* .FormBuilderConfigService */.jS,
326
+ services/* .FormBuilderDataSourceProvider */._Z,
327
+ services/* .FormService */.ux,
328
+ services/* .FormResultService */.vF
329
+ ];
330
+ /**
331
+ * Register FormBuilderModule synchronously
332
+ */ static forRoot(options) {
333
+ return {
334
+ module: FormBuilderModule,
335
+ global: options.global ?? false,
336
+ imports: [
337
+ modules_.CacheModule,
338
+ modules_.UtilsModule
339
+ ],
340
+ controllers: options.includeController !== false ? this.CONTROLLERS : [],
341
+ providers: this.buildProviders(options),
342
+ exports: this.EXPORTS
343
+ };
344
+ }
345
+ /**
346
+ * Register FormBuilderModule asynchronously
347
+ */ static forRootAsync(options) {
348
+ return {
349
+ module: FormBuilderModule,
350
+ global: options.global ?? false,
351
+ imports: [
352
+ ...options.imports || [],
353
+ modules_.CacheModule,
354
+ modules_.UtilsModule
355
+ ],
356
+ controllers: options.includeController !== false ? this.CONTROLLERS : [],
357
+ providers: [
358
+ ...this.buildAsyncProviders(options),
359
+ ...this.buildProviders()
360
+ ],
361
+ exports: this.EXPORTS
362
+ };
363
+ }
364
+ static buildProviders(options) {
365
+ const providers = [
366
+ services/* .FormBuilderConfigService */.jS,
367
+ services/* .FormBuilderDataSourceProvider */._Z,
368
+ services/* .FormService */.ux,
369
+ services/* .FormResultService */.vF
370
+ ];
371
+ if (options) {
372
+ providers.unshift({
373
+ provide: form_builder_constants/* .FORM_BUILDER_MODULE_OPTIONS */.v,
374
+ useValue: options
375
+ });
376
+ }
377
+ providers.push((0,modules_.createModuleEventsProvider)('form-builder', form_builder_constants/* .FORM_BUILDER_MODULE_OPTIONS */.v));
378
+ return providers;
379
+ }
380
+ static buildAsyncProviders(options) {
381
+ if (options.useFactory) {
382
+ return [
383
+ {
384
+ provide: form_builder_constants/* .FORM_BUILDER_MODULE_OPTIONS */.v,
385
+ useFactory: async (...args)=>({
386
+ ...options,
387
+ config: await options.useFactory(...args)
388
+ }),
389
+ inject: options.inject || []
390
+ }
391
+ ];
392
+ }
393
+ const factoryClass = options.useClass || options.useExisting;
394
+ if (!factoryClass) {
395
+ return [];
396
+ }
397
+ const providers = [
398
+ {
399
+ provide: form_builder_constants/* .FORM_BUILDER_MODULE_OPTIONS */.v,
400
+ useFactory: async (factory)=>({
401
+ ...options,
402
+ config: await factory.createFormBuilderOptions()
403
+ }),
404
+ inject: [
405
+ factoryClass
406
+ ]
407
+ }
408
+ ];
409
+ if (options.useClass) {
410
+ providers.push({
411
+ provide: options.useClass,
412
+ useClass: options.useClass
413
+ });
414
+ }
415
+ return providers;
416
+ }
417
+ }
418
+ FormBuilderModule = _ts_decorate([
419
+ (0,common_.Module)({})
420
+ ], FormBuilderModule);
421
+
422
+ ;// CONCATENATED MODULE: ./projects/nestjs-form-builder/src/modules/index.ts
423
+
424
+
425
+
426
+ },
427
+ 949(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
428
+ /* import */ var _form_builder_config_service_js__rspack_import_0 = __webpack_require__(781);
429
+ /* import */ var _form_builder_datasource_provider_js__rspack_import_1 = __webpack_require__(593);
430
+ /* import */ var _form_service_js__rspack_import_2 = __webpack_require__(148);
431
+ /* import */ var _form_result_service_js__rspack_import_3 = __webpack_require__(160);
432
+
433
+
434
+
435
+
436
+
437
+ __webpack_require__.d(__webpack_exports__, {
438
+ _Z: () => (/* reexport safe */ _form_builder_datasource_provider_js__rspack_import_1._),
439
+ jS: () => (/* reexport safe */ _form_builder_config_service_js__rspack_import_0.j),
440
+ ux: () => (/* reexport safe */ _form_service_js__rspack_import_2.u),
441
+ vF: () => (/* reexport safe */ _form_result_service_js__rspack_import_3.v)
442
+ });
443
+
444
+
445
+ },
446
+
447
+ };
448
+ import { __webpack_require__ } from './runtime.js';
449
+ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
450
+ import * as __rspack_chunk_1 from './262.js';
451
+ __webpack_require__.C(__rspack_chunk_1);
452
+ import * as __rspack_chunk_2 from './98.js';
453
+ __webpack_require__.C(__rspack_chunk_2);
454
+ import * as __rspack_chunk_3 from './index.js';
455
+ __webpack_require__.C(__rspack_chunk_3);
456
+ var __webpack_exports__ = __webpack_exec__(851);var __webpack_exports__CreateFormDto = __webpack_exports__.YD;
457
+ var __webpack_exports__CreateFormResultDto = __webpack_exports__.pZ;
458
+ var __webpack_exports__FORM_BUILDER_EVENT_ACTIONS = __webpack_exports__.ov;
459
+ var __webpack_exports__FORM_BUILDER_EVENT_ENTITIES = __webpack_exports__.eF;
460
+ var __webpack_exports__FORM_BUILDER_EVENT_MODULE = __webpack_exports__.T$;
461
+ var __webpack_exports__FORM_BUILDER_MODULE_OPTIONS = __webpack_exports__.vx;
462
+ var __webpack_exports__FORM_MESSAGES = __webpack_exports__.Ql;
463
+ var __webpack_exports__FORM_RESULT_MESSAGES = __webpack_exports__.yF;
464
+ var __webpack_exports__Form = __webpack_exports__.lV;
465
+ var __webpack_exports__FormAccessInfoResponseDto = __webpack_exports__.Xe;
466
+ var __webpack_exports__FormAccessType = __webpack_exports__.hi;
467
+ var __webpack_exports__FormBase = __webpack_exports__.C7;
468
+ var __webpack_exports__FormBuilderConfigService = __webpack_exports__.jS;
469
+ var __webpack_exports__FormBuilderDataSourceProvider = __webpack_exports__._Z;
470
+ var __webpack_exports__FormBuilderModule = __webpack_exports__.S7;
471
+ var __webpack_exports__FormCompanyEntities = __webpack_exports__.Xl;
472
+ var __webpack_exports__FormController = __webpack_exports__.Xq;
473
+ var __webpack_exports__FormCoreEntities = __webpack_exports__.t$;
474
+ var __webpack_exports__FormResponseDto = __webpack_exports__.bV;
475
+ var __webpack_exports__FormResult = __webpack_exports__.ez;
476
+ var __webpack_exports__FormResultController = __webpack_exports__.Ye;
477
+ var __webpack_exports__FormResultResponseDto = __webpack_exports__._$;
478
+ var __webpack_exports__FormResultService = __webpack_exports__.vF;
479
+ var __webpack_exports__FormService = __webpack_exports__.ux;
480
+ var __webpack_exports__FormWithCompany = __webpack_exports__.Wl;
481
+ var __webpack_exports__GetMyDraftDto = __webpack_exports__.D5;
482
+ var __webpack_exports__GetResultsByFormDto = __webpack_exports__.rp;
483
+ var __webpack_exports__PublicFormResponseDto = __webpack_exports__.M4;
484
+ var __webpack_exports__SubmitFormDto = __webpack_exports__.sH;
485
+ var __webpack_exports__UpdateDraftDto = __webpack_exports__.CQ;
486
+ var __webpack_exports__UpdateFormDto = __webpack_exports__.jQ;
487
+ var __webpack_exports__UpdateFormResultDto = __webpack_exports__.Uj;
488
+ var __webpack_exports__calculateComputedFields = __webpack_exports__.XZ;
489
+ var __webpack_exports__formBuilderSwaggerConfig = __webpack_exports__.aY;
490
+ var __webpack_exports__getFormBuilderEntitiesByConfig = __webpack_exports__.iO;
491
+ var __webpack_exports__validateUserPermissions = __webpack_exports__.io;
492
+ export { __webpack_exports__CreateFormDto as CreateFormDto, __webpack_exports__CreateFormResultDto as CreateFormResultDto, __webpack_exports__FORM_BUILDER_EVENT_ACTIONS as FORM_BUILDER_EVENT_ACTIONS, __webpack_exports__FORM_BUILDER_EVENT_ENTITIES as FORM_BUILDER_EVENT_ENTITIES, __webpack_exports__FORM_BUILDER_EVENT_MODULE as FORM_BUILDER_EVENT_MODULE, __webpack_exports__FORM_BUILDER_MODULE_OPTIONS as FORM_BUILDER_MODULE_OPTIONS, __webpack_exports__FORM_MESSAGES as FORM_MESSAGES, __webpack_exports__FORM_RESULT_MESSAGES as FORM_RESULT_MESSAGES, __webpack_exports__Form as Form, __webpack_exports__FormAccessInfoResponseDto as FormAccessInfoResponseDto, __webpack_exports__FormAccessType as FormAccessType, __webpack_exports__FormBase as FormBase, __webpack_exports__FormBuilderConfigService as FormBuilderConfigService, __webpack_exports__FormBuilderDataSourceProvider as FormBuilderDataSourceProvider, __webpack_exports__FormBuilderModule as FormBuilderModule, __webpack_exports__FormCompanyEntities as FormCompanyEntities, __webpack_exports__FormController as FormController, __webpack_exports__FormCoreEntities as FormCoreEntities, __webpack_exports__FormResponseDto as FormResponseDto, __webpack_exports__FormResult as FormResult, __webpack_exports__FormResultController as FormResultController, __webpack_exports__FormResultResponseDto as FormResultResponseDto, __webpack_exports__FormResultService as FormResultService, __webpack_exports__FormService as FormService, __webpack_exports__FormWithCompany as FormWithCompany, __webpack_exports__GetMyDraftDto as GetMyDraftDto, __webpack_exports__GetResultsByFormDto as GetResultsByFormDto, __webpack_exports__PublicFormResponseDto as PublicFormResponseDto, __webpack_exports__SubmitFormDto as SubmitFormDto, __webpack_exports__UpdateDraftDto as UpdateDraftDto, __webpack_exports__UpdateFormDto as UpdateFormDto, __webpack_exports__UpdateFormResultDto as UpdateFormResultDto, __webpack_exports__calculateComputedFields as calculateComputedFields, __webpack_exports__formBuilderSwaggerConfig as formBuilderSwaggerConfig, __webpack_exports__getFormBuilderEntitiesByConfig as getFormBuilderEntitiesByConfig, __webpack_exports__validateUserPermissions as validateUserPermissions };
@@ -1,3 +1,17 @@
1
- export * from './form.interface';
2
- export * from './form-result.interface';
3
- export * from './form-builder-module.interface';
1
+ export const __rspack_esm_id = 471;
2
+ export const __rspack_esm_ids = [471];
3
+ export const __webpack_modules__ = {
4
+ 945() {
5
+
6
+
7
+
8
+
9
+
10
+ },
11
+
12
+ };
13
+ import { __webpack_require__ } from '../runtime.js';
14
+ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
15
+ import * as __rspack_chunk_1 from './index.js';
16
+ __webpack_require__.C(__rspack_chunk_1);
17
+ var __webpack_exports__ = __webpack_exec__(945);