@flusys/nestjs-shared 7.0.2 → 8.0.0-beta.1
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.
- package/classes/api-controller.class.d.ts +4 -4
- package/classes/api-service.class.d.ts +7 -7
- package/classes/disabled-event-bus.class.d.ts +1 -1
- package/classes/domain-event.publisher.d.ts +1 -1
- package/classes/event-bus.registry.d.ts +1 -1
- package/classes/event-transports/event-transport.registry.d.ts +1 -1
- package/classes/event-transports/index.d.ts +2 -2
- package/classes/event-transports/kafka-transport.optional.d.ts +1 -1
- package/classes/event-transports/memory-transport.d.ts +1 -1
- package/classes/event-transports/rabbitmq-transport.optional.d.ts +1 -1
- package/classes/hybrid-event-bus.class.d.ts +1 -1
- package/classes/index.d.ts +11 -11
- package/constants/index.d.ts +2 -2
- package/constants/permissions.d.ts +12 -0
- package/decorators/api-response.decorator.d.ts +1 -1
- package/decorators/current-user.decorator.d.ts +1 -1
- package/decorators/index.d.ts +6 -6
- package/decorators/require-permission.decorator.d.ts +1 -1
- package/dtos/filter-and-pagination.dto.d.ts +1 -1
- package/dtos/index.d.ts +6 -6
- package/entities/index.d.ts +3 -3
- package/enums/index.d.ts +3 -3
- package/exceptions/index.d.ts +2 -2
- package/fesm/470.js +2713 -0
- package/fesm/509.js +793 -0
- package/fesm/667.js +606 -0
- package/fesm/67.js +808 -0
- package/fesm/720.js +914 -0
- package/{cjs/classes/event-transports/rabbitmq-transport.optional.js → fesm/chunks/123.js} +78 -55
- package/fesm/{classes/event-transports/kafka-transport.optional.js → chunks/37.js} +74 -41
- package/fesm/classes/index.js +62 -12
- package/fesm/constants/index.js +445 -17
- package/fesm/decorators/index.js +341 -6
- package/fesm/dtos/index.js +23 -6
- package/fesm/entities/index.js +336 -3
- package/fesm/enums/index.js +57 -3
- package/fesm/exceptions/index.js +280 -2
- package/fesm/guards/index.js +1003 -3
- package/fesm/index.js +1524 -14
- package/fesm/interceptors/index.js +924 -5
- package/fesm/interfaces/index.js +57 -11
- package/fesm/middlewares/index.js +33 -1
- package/fesm/modules/index.js +432 -9
- package/fesm/runtime.js +134 -0
- package/fesm/utils/index.js +1045 -8
- package/filters/global-exception.filter.d.ts +1 -1
- package/filters/index.d.ts +1 -1
- package/guards/index.d.ts +3 -3
- package/guards/jwt-auth.guard.d.ts +1 -1
- package/guards/optional-jwt-auth.guard.d.ts +1 -1
- package/guards/permission.guard.d.ts +2 -2
- package/index.d.ts +14 -14
- package/interceptors/delete-empty-id-from-body.interceptor.d.ts +1 -1
- package/interceptors/idempotency.interceptor.d.ts +2 -2
- package/interceptors/index.d.ts +5 -5
- package/interceptors/response-meta.interceptor.d.ts +1 -1
- package/interceptors/set-user-field-on-body.interceptor.d.ts +1 -1
- package/interceptors/slug.interceptor.d.ts +2 -2
- package/interfaces/ai-assistant-adapter.interface.d.ts +1 -1
- package/interfaces/api.interface.d.ts +2 -2
- package/interfaces/datasource.interface.d.ts +1 -1
- package/interfaces/event-manager-adapter.interface.d.ts +2 -2
- package/interfaces/index.d.ts +11 -11
- package/interfaces/module-config.interface.d.ts +1 -1
- package/interfaces/notification-adapter.interface.d.ts +1 -1
- package/middlewares/index.d.ts +1 -1
- package/middlewares/logger.middleware.d.ts +2 -2
- package/modules/cache/cache.module.d.ts +1 -1
- package/modules/datasource/index.d.ts +1 -1
- package/modules/datasource/multi-tenant-datasource.service.d.ts +4 -4
- package/modules/event-bus/event-bus.explorer.d.ts +2 -2
- package/modules/event-bus/event-bus.module.d.ts +2 -2
- package/modules/event-bus/module-events.provider.d.ts +1 -1
- package/modules/index.d.ts +9 -9
- package/modules/shared-permission-cache/shared-permission-cache.service.d.ts +3 -3
- package/modules/utils/utils.service.d.ts +1 -1
- package/package.json +30 -44
- package/utils/index.d.ts +8 -8
- package/utils/permission-cache-key.util.d.ts +1 -1
- package/utils/query-helpers.util.d.ts +2 -2
- package/utils/request.util.d.ts +1 -1
- package/cjs/classes/api-controller.class.js +0 -728
- package/cjs/classes/api-controller.class.spec.js +0 -684
- package/cjs/classes/api-service.class.js +0 -631
- package/cjs/classes/api-service.class.spec.js +0 -1137
- package/cjs/classes/disabled-event-bus.class.js +0 -15
- package/cjs/classes/disabled-event-bus.class.spec.js +0 -40
- package/cjs/classes/domain-event.publisher.js +0 -76
- package/cjs/classes/domain-event.publisher.spec.js +0 -234
- package/cjs/classes/event-bus.registry.js +0 -68
- package/cjs/classes/event-bus.registry.spec.js +0 -141
- package/cjs/classes/event-transports/event-transport.registry.js +0 -41
- package/cjs/classes/event-transports/event-transport.registry.spec.js +0 -31
- package/cjs/classes/event-transports/index.js +0 -23
- package/cjs/classes/event-transports/kafka-transport.optional.js +0 -151
- package/cjs/classes/event-transports/kafka-transport.optional.spec.js +0 -198
- package/cjs/classes/event-transports/memory-transport.js +0 -53
- package/cjs/classes/event-transports/memory-transport.spec.js +0 -57
- package/cjs/classes/event-transports/rabbitmq-transport.optional.spec.js +0 -255
- package/cjs/classes/handle-custome-db.js +0 -37
- package/cjs/classes/handle-custome-db.spec.js +0 -82
- package/cjs/classes/hybrid-cache.class.js +0 -96
- package/cjs/classes/hybrid-cache.class.spec.js +0 -168
- package/cjs/classes/hybrid-event-bus.class.js +0 -281
- package/cjs/classes/hybrid-event-bus.class.spec.js +0 -218
- package/cjs/classes/index.js +0 -28
- package/cjs/classes/winston.logger.class.js +0 -274
- package/cjs/classes/winston.logger.class.spec.js +0 -330
- package/cjs/constants/index.js +0 -88
- package/cjs/constants/message-keys.js +0 -68
- package/cjs/constants/permissions.js +0 -297
- package/cjs/decorators/api-response.decorator.js +0 -52
- package/cjs/decorators/api-response.decorator.spec.js +0 -126
- package/cjs/decorators/current-user.decorator.js +0 -16
- package/cjs/decorators/current-user.decorator.spec.js +0 -74
- package/cjs/decorators/index.js +0 -23
- package/cjs/decorators/log-action.decorator.js +0 -149
- package/cjs/decorators/log-action.decorator.spec.js +0 -353
- package/cjs/decorators/on-domain-event.decorator.js +0 -13
- package/cjs/decorators/on-domain-event.decorator.spec.js +0 -50
- package/cjs/decorators/public.decorator.js +0 -13
- package/cjs/decorators/public.decorator.spec.js +0 -50
- package/cjs/decorators/require-permission.decorator.js +0 -32
- package/cjs/decorators/require-permission.decorator.spec.js +0 -147
- package/cjs/dtos/delete.dto.js +0 -92
- package/cjs/dtos/filter-and-pagination.dto.js +0 -164
- package/cjs/dtos/get-by-ids.dto.js +0 -65
- package/cjs/dtos/identity-response.dto.js +0 -108
- package/cjs/dtos/index.js +0 -23
- package/cjs/dtos/pagination.dto.js +0 -67
- package/cjs/dtos/response-payload.dto.js +0 -369
- package/cjs/entities/identity.js +0 -100
- package/cjs/entities/index.js +0 -20
- package/cjs/entities/raw-type.js +0 -4
- package/cjs/entities/user-root.js +0 -189
- package/cjs/enums/index.js +0 -20
- package/cjs/enums/notification-type.enum.js +0 -17
- package/cjs/enums/participant-status.enum.js +0 -17
- package/cjs/enums/recurrence-type.enum.js +0 -18
- package/cjs/exceptions/base-app.exception.js +0 -151
- package/cjs/exceptions/base-app.exception.spec.js +0 -157
- package/cjs/exceptions/index.js +0 -19
- package/cjs/exceptions/permission.exception.js +0 -56
- package/cjs/exceptions/permission.exception.spec.js +0 -82
- package/cjs/filters/global-exception.filter.js +0 -279
- package/cjs/filters/global-exception.filter.spec.js +0 -440
- package/cjs/filters/index.js +0 -18
- package/cjs/guards/index.js +0 -20
- package/cjs/guards/jwt-auth.guard.js +0 -75
- package/cjs/guards/jwt-auth.guard.spec.js +0 -75
- package/cjs/guards/optional-jwt-auth.guard.js +0 -67
- package/cjs/guards/optional-jwt-auth.guard.spec.js +0 -55
- package/cjs/guards/permission.guard.js +0 -179
- package/cjs/guards/permission.guard.spec.js +0 -373
- package/cjs/index.js +0 -31
- package/cjs/interceptors/delete-empty-id-from-body.interceptor.js +0 -40
- package/cjs/interceptors/delete-empty-id-from-body.interceptor.spec.js +0 -107
- package/cjs/interceptors/idempotency.interceptor.js +0 -96
- package/cjs/interceptors/idempotency.interceptor.spec.js +0 -116
- package/cjs/interceptors/index.js +0 -22
- package/cjs/interceptors/response-meta.interceptor.js +0 -47
- package/cjs/interceptors/response-meta.interceptor.spec.js +0 -89
- package/cjs/interceptors/set-user-field-on-body.interceptor.js +0 -60
- package/cjs/interceptors/set-user-field-on-body.interceptor.spec.js +0 -128
- package/cjs/interceptors/slug.interceptor.js +0 -75
- package/cjs/interceptors/slug.interceptor.spec.js +0 -110
- package/cjs/interfaces/ai-assistant-adapter.interface.js +0 -24
- package/cjs/interfaces/api.interface.js +0 -4
- package/cjs/interfaces/datasource.interface.js +0 -4
- package/cjs/interfaces/event-bus.interface.js +0 -4
- package/cjs/interfaces/event-manager-adapter.interface.js +0 -11
- package/cjs/interfaces/identity.interface.js +0 -4
- package/cjs/interfaces/index.js +0 -28
- package/cjs/interfaces/logged-user-info.interface.js +0 -6
- package/cjs/interfaces/module-config.interface.js +0 -4
- package/cjs/interfaces/notification-adapter.interface.js +0 -11
- package/cjs/interfaces/permission-sync-adapter.interface.js +0 -11
- package/cjs/interfaces/permission.interface.js +0 -4
- package/cjs/middlewares/index.js +0 -18
- package/cjs/middlewares/logger.middleware.js +0 -264
- package/cjs/middlewares/logger.middleware.spec.js +0 -462
- package/cjs/modules/cache/cache.module.js +0 -39
- package/cjs/modules/cache/cache.module.spec.js +0 -48
- package/cjs/modules/datasource/index.js +0 -18
- package/cjs/modules/datasource/multi-tenant-datasource.service.js +0 -222
- package/cjs/modules/datasource/multi-tenant-datasource.service.spec.js +0 -381
- package/cjs/modules/event-bus/event-bus.explorer.js +0 -124
- package/cjs/modules/event-bus/event-bus.explorer.spec.js +0 -189
- package/cjs/modules/event-bus/event-bus.integration.spec.js +0 -253
- package/cjs/modules/event-bus/event-bus.module.js +0 -94
- package/cjs/modules/event-bus/event-bus.module.spec.js +0 -149
- package/cjs/modules/event-bus/module-events.provider.js +0 -39
- package/cjs/modules/event-bus/module-events.provider.spec.js +0 -56
- package/cjs/modules/index.js +0 -26
- package/cjs/modules/shared-permission-cache/shared-permission-cache.module.js +0 -32
- package/cjs/modules/shared-permission-cache/shared-permission-cache.service.js +0 -101
- package/cjs/modules/shared-permission-cache/shared-permission-cache.service.spec.js +0 -165
- package/cjs/modules/utils/utils.module.js +0 -32
- package/cjs/modules/utils/utils.service.js +0 -76
- package/cjs/modules/utils/utils.service.spec.js +0 -169
- package/cjs/utils/date-time.util.js +0 -94
- package/cjs/utils/date-time.util.spec.js +0 -84
- package/cjs/utils/event-pattern.util.js +0 -103
- package/cjs/utils/event-pattern.util.spec.js +0 -251
- package/cjs/utils/html-sanitizer.util.js +0 -64
- package/cjs/utils/html-sanitizer.util.spec.js +0 -76
- package/cjs/utils/index.js +0 -25
- package/cjs/utils/optional-module.util.js +0 -35
- package/cjs/utils/optional-module.util.spec.js +0 -14
- package/cjs/utils/permission-cache-key.util.js +0 -31
- package/cjs/utils/permission-cache-key.util.spec.js +0 -88
- package/cjs/utils/query-helpers.util.js +0 -60
- package/cjs/utils/query-helpers.util.spec.js +0 -209
- package/cjs/utils/request.util.js +0 -96
- package/cjs/utils/request.util.spec.js +0 -249
- package/cjs/utils/string.util.js +0 -63
- package/cjs/utils/string.util.spec.js +0 -63
- package/fesm/classes/api-controller.class.js +0 -718
- package/fesm/classes/api-controller.class.spec.js +0 -680
- package/fesm/classes/api-service.class.js +0 -621
- package/fesm/classes/api-service.class.spec.js +0 -1133
- package/fesm/classes/disabled-event-bus.class.js +0 -11
- package/fesm/classes/disabled-event-bus.class.spec.js +0 -36
- package/fesm/classes/domain-event.publisher.js +0 -63
- package/fesm/classes/domain-event.publisher.spec.js +0 -230
- package/fesm/classes/event-bus.registry.js +0 -64
- package/fesm/classes/event-bus.registry.spec.js +0 -137
- package/fesm/classes/event-transports/event-transport.registry.js +0 -35
- package/fesm/classes/event-transports/event-transport.registry.spec.js +0 -27
- package/fesm/classes/event-transports/index.js +0 -6
- package/fesm/classes/event-transports/kafka-transport.optional.spec.js +0 -194
- package/fesm/classes/event-transports/memory-transport.js +0 -49
- package/fesm/classes/event-transports/memory-transport.spec.js +0 -53
- package/fesm/classes/event-transports/rabbitmq-transport.optional.js +0 -174
- package/fesm/classes/event-transports/rabbitmq-transport.optional.spec.js +0 -251
- package/fesm/classes/handle-custome-db.js +0 -19
- package/fesm/classes/handle-custome-db.spec.js +0 -78
- package/fesm/classes/hybrid-cache.class.js +0 -81
- package/fesm/classes/hybrid-cache.class.spec.js +0 -164
- package/fesm/classes/hybrid-event-bus.class.js +0 -237
- package/fesm/classes/hybrid-event-bus.class.spec.js +0 -214
- package/fesm/classes/winston.logger.class.js +0 -228
- package/fesm/classes/winston.logger.class.spec.js +0 -327
- package/fesm/constants/message-keys.js +0 -49
- package/fesm/constants/permissions.js +0 -208
- package/fesm/decorators/api-response.decorator.js +0 -42
- package/fesm/decorators/api-response.decorator.spec.js +0 -122
- package/fesm/decorators/current-user.decorator.js +0 -18
- package/fesm/decorators/current-user.decorator.spec.js +0 -73
- package/fesm/decorators/log-action.decorator.js +0 -139
- package/fesm/decorators/log-action.decorator.spec.js +0 -349
- package/fesm/decorators/on-domain-event.decorator.js +0 -10
- package/fesm/decorators/on-domain-event.decorator.spec.js +0 -46
- package/fesm/decorators/public.decorator.js +0 -20
- package/fesm/decorators/public.decorator.spec.js +0 -46
- package/fesm/decorators/require-permission.decorator.js +0 -27
- package/fesm/decorators/require-permission.decorator.spec.js +0 -143
- package/fesm/dtos/delete.dto.js +0 -82
- package/fesm/dtos/filter-and-pagination.dto.js +0 -148
- package/fesm/dtos/get-by-ids.dto.js +0 -55
- package/fesm/dtos/identity-response.dto.js +0 -98
- package/fesm/dtos/pagination.dto.js +0 -57
- package/fesm/dtos/response-payload.dto.js +0 -336
- package/fesm/entities/identity.js +0 -90
- package/fesm/entities/raw-type.js +0 -1
- package/fesm/entities/user-root.js +0 -179
- package/fesm/enums/notification-type.enum.js +0 -7
- package/fesm/enums/participant-status.enum.js +0 -7
- package/fesm/enums/recurrence-type.enum.js +0 -8
- package/fesm/exceptions/base-app.exception.js +0 -115
- package/fesm/exceptions/base-app.exception.spec.js +0 -153
- package/fesm/exceptions/permission.exception.js +0 -35
- package/fesm/exceptions/permission.exception.spec.js +0 -78
- package/fesm/filters/global-exception.filter.js +0 -269
- package/fesm/filters/global-exception.filter.spec.js +0 -436
- package/fesm/filters/index.js +0 -1
- package/fesm/guards/jwt-auth.guard.js +0 -65
- package/fesm/guards/jwt-auth.guard.spec.js +0 -71
- package/fesm/guards/optional-jwt-auth.guard.js +0 -57
- package/fesm/guards/optional-jwt-auth.guard.spec.js +0 -51
- package/fesm/guards/permission.guard.js +0 -169
- package/fesm/guards/permission.guard.spec.js +0 -369
- package/fesm/interceptors/delete-empty-id-from-body.interceptor.js +0 -30
- package/fesm/interceptors/delete-empty-id-from-body.interceptor.spec.js +0 -103
- package/fesm/interceptors/idempotency.interceptor.js +0 -86
- package/fesm/interceptors/idempotency.interceptor.spec.js +0 -112
- package/fesm/interceptors/response-meta.interceptor.js +0 -37
- package/fesm/interceptors/response-meta.interceptor.spec.js +0 -85
- package/fesm/interceptors/set-user-field-on-body.interceptor.js +0 -39
- package/fesm/interceptors/set-user-field-on-body.interceptor.spec.js +0 -124
- package/fesm/interceptors/slug.interceptor.js +0 -65
- package/fesm/interceptors/slug.interceptor.spec.js +0 -106
- package/fesm/interfaces/ai-assistant-adapter.interface.js +0 -3
- package/fesm/interfaces/api.interface.js +0 -1
- package/fesm/interfaces/datasource.interface.js +0 -1
- package/fesm/interfaces/event-bus.interface.js +0 -1
- package/fesm/interfaces/event-manager-adapter.interface.js +0 -1
- package/fesm/interfaces/identity.interface.js +0 -1
- package/fesm/interfaces/logged-user-info.interface.js +0 -3
- package/fesm/interfaces/module-config.interface.js +0 -5
- package/fesm/interfaces/notification-adapter.interface.js +0 -1
- package/fesm/interfaces/permission-sync-adapter.interface.js +0 -1
- package/fesm/interfaces/permission.interface.js +0 -1
- package/fesm/middlewares/logger.middleware.js +0 -235
- package/fesm/middlewares/logger.middleware.spec.js +0 -459
- package/fesm/modules/cache/cache.module.js +0 -29
- package/fesm/modules/cache/cache.module.spec.js +0 -44
- package/fesm/modules/datasource/index.js +0 -1
- package/fesm/modules/datasource/multi-tenant-datasource.service.js +0 -212
- package/fesm/modules/datasource/multi-tenant-datasource.service.spec.js +0 -377
- package/fesm/modules/event-bus/event-bus.explorer.js +0 -114
- package/fesm/modules/event-bus/event-bus.explorer.spec.js +0 -185
- package/fesm/modules/event-bus/event-bus.integration.spec.js +0 -249
- package/fesm/modules/event-bus/event-bus.module.js +0 -84
- package/fesm/modules/event-bus/event-bus.module.spec.js +0 -145
- package/fesm/modules/event-bus/module-events.provider.js +0 -26
- package/fesm/modules/event-bus/module-events.provider.spec.js +0 -52
- package/fesm/modules/shared-permission-cache/shared-permission-cache.module.js +0 -22
- package/fesm/modules/shared-permission-cache/shared-permission-cache.service.js +0 -91
- package/fesm/modules/shared-permission-cache/shared-permission-cache.service.spec.js +0 -161
- package/fesm/modules/utils/utils.module.js +0 -22
- package/fesm/modules/utils/utils.service.js +0 -66
- package/fesm/modules/utils/utils.service.spec.js +0 -165
- package/fesm/utils/date-time.util.js +0 -70
- package/fesm/utils/date-time.util.spec.js +0 -80
- package/fesm/utils/event-pattern.util.js +0 -91
- package/fesm/utils/event-pattern.util.spec.js +0 -247
- package/fesm/utils/html-sanitizer.util.js +0 -69
- package/fesm/utils/html-sanitizer.util.spec.js +0 -72
- package/fesm/utils/optional-module.util.js +0 -25
- package/fesm/utils/optional-module.util.spec.js +0 -10
- package/fesm/utils/permission-cache-key.util.js +0 -10
- package/fesm/utils/permission-cache-key.util.spec.js +0 -84
- package/fesm/utils/query-helpers.util.js +0 -85
- package/fesm/utils/query-helpers.util.spec.js +0 -205
- package/fesm/utils/request.util.js +0 -81
- package/fesm/utils/request.util.spec.js +0 -245
- package/fesm/utils/string.util.js +0 -71
- package/fesm/utils/string.util.spec.js +0 -59
package/fesm/index.js
CHANGED
|
@@ -1,14 +1,1524 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
3
|
-
export
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
export const __rspack_esm_id = 410;
|
|
2
|
+
export const __rspack_esm_ids = [410];
|
|
3
|
+
export const __webpack_modules__ = {
|
|
4
|
+
768(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
5
|
+
|
|
6
|
+
// EXPORTS
|
|
7
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
8
|
+
l: () => (/* reexport */ Identity),
|
|
9
|
+
q: () => (/* reexport */ UserRoot)
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
// EXTERNAL MODULE: external "typeorm"
|
|
13
|
+
var external_typeorm_ = __webpack_require__(158);
|
|
14
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/entities/identity.ts
|
|
15
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
16
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
17
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
18
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
19
|
+
} else {
|
|
20
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
21
|
+
if (d = decorators[i]) {
|
|
22
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
27
|
+
}
|
|
28
|
+
function _ts_metadata(metadataKey, metadataValue) {
|
|
29
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
30
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
class Identity {
|
|
35
|
+
id;
|
|
36
|
+
createdAt;
|
|
37
|
+
updatedAt;
|
|
38
|
+
deletedAt = null;
|
|
39
|
+
createdById = null;
|
|
40
|
+
updatedById = null;
|
|
41
|
+
deletedById = null;
|
|
42
|
+
}
|
|
43
|
+
_ts_decorate([
|
|
44
|
+
(0,external_typeorm_.PrimaryGeneratedColumn)('uuid'),
|
|
45
|
+
_ts_metadata("design:type", String)
|
|
46
|
+
], Identity.prototype, "id", void 0);
|
|
47
|
+
_ts_decorate([
|
|
48
|
+
(0,external_typeorm_.CreateDateColumn)({
|
|
49
|
+
name: 'created_at',
|
|
50
|
+
type: 'timestamp',
|
|
51
|
+
select: false
|
|
52
|
+
}),
|
|
53
|
+
_ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
|
|
54
|
+
], Identity.prototype, "createdAt", void 0);
|
|
55
|
+
_ts_decorate([
|
|
56
|
+
(0,external_typeorm_.UpdateDateColumn)({
|
|
57
|
+
name: 'updated_at',
|
|
58
|
+
type: 'timestamp',
|
|
59
|
+
select: false
|
|
60
|
+
}),
|
|
61
|
+
_ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
|
|
62
|
+
], Identity.prototype, "updatedAt", void 0);
|
|
63
|
+
_ts_decorate([
|
|
64
|
+
(0,external_typeorm_.DeleteDateColumn)({
|
|
65
|
+
name: 'deleted_at',
|
|
66
|
+
type: 'timestamp',
|
|
67
|
+
select: false,
|
|
68
|
+
nullable: true
|
|
69
|
+
}),
|
|
70
|
+
_ts_metadata("design:type", Object)
|
|
71
|
+
], Identity.prototype, "deletedAt", void 0);
|
|
72
|
+
_ts_decorate([
|
|
73
|
+
(0,external_typeorm_.Column)({
|
|
74
|
+
name: 'created_by_id',
|
|
75
|
+
type: 'uuid',
|
|
76
|
+
select: false,
|
|
77
|
+
nullable: true
|
|
78
|
+
}),
|
|
79
|
+
_ts_metadata("design:type", Object)
|
|
80
|
+
], Identity.prototype, "createdById", void 0);
|
|
81
|
+
_ts_decorate([
|
|
82
|
+
(0,external_typeorm_.Column)({
|
|
83
|
+
name: 'updated_by_id',
|
|
84
|
+
type: 'uuid',
|
|
85
|
+
select: false,
|
|
86
|
+
nullable: true
|
|
87
|
+
}),
|
|
88
|
+
_ts_metadata("design:type", Object)
|
|
89
|
+
], Identity.prototype, "updatedById", void 0);
|
|
90
|
+
_ts_decorate([
|
|
91
|
+
(0,external_typeorm_.Column)({
|
|
92
|
+
name: 'deleted_by_id',
|
|
93
|
+
type: 'uuid',
|
|
94
|
+
select: false,
|
|
95
|
+
nullable: true
|
|
96
|
+
}),
|
|
97
|
+
_ts_metadata("design:type", Object)
|
|
98
|
+
], Identity.prototype, "deletedById", void 0);
|
|
99
|
+
|
|
100
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/classes/handle-custome-db.ts
|
|
101
|
+
var handle_custome_db = __webpack_require__(504);
|
|
102
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/entities/user-root.ts
|
|
103
|
+
function user_root_ts_decorate(decorators, target, key, desc) {
|
|
104
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
105
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
106
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
107
|
+
} else {
|
|
108
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
109
|
+
if (d = decorators[i]) {
|
|
110
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
115
|
+
}
|
|
116
|
+
function user_root_ts_metadata(metadataKey, metadataValue) {
|
|
117
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") {
|
|
118
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
class UserRoot {
|
|
124
|
+
id;
|
|
125
|
+
name = null;
|
|
126
|
+
password = null;
|
|
127
|
+
email;
|
|
128
|
+
phone = null;
|
|
129
|
+
isActive = true;
|
|
130
|
+
emailVerified = false;
|
|
131
|
+
phoneVerified = false;
|
|
132
|
+
profilePictureId = null;
|
|
133
|
+
lastLoginAt = null;
|
|
134
|
+
additionalFields = null;
|
|
135
|
+
createdAt;
|
|
136
|
+
updatedAt;
|
|
137
|
+
deletedAt = null;
|
|
138
|
+
createdById = null;
|
|
139
|
+
updatedById = null;
|
|
140
|
+
deletedById = null;
|
|
141
|
+
}
|
|
142
|
+
user_root_ts_decorate([
|
|
143
|
+
(0,external_typeorm_.PrimaryGeneratedColumn)('uuid'),
|
|
144
|
+
user_root_ts_metadata("design:type", String)
|
|
145
|
+
], UserRoot.prototype, "id", void 0);
|
|
146
|
+
user_root_ts_decorate([
|
|
147
|
+
(0,external_typeorm_.Column)({
|
|
148
|
+
type: 'varchar',
|
|
149
|
+
length: 255,
|
|
150
|
+
nullable: true
|
|
151
|
+
}),
|
|
152
|
+
user_root_ts_metadata("design:type", Object)
|
|
153
|
+
], UserRoot.prototype, "name", void 0);
|
|
154
|
+
user_root_ts_decorate([
|
|
155
|
+
(0,external_typeorm_.Column)({
|
|
156
|
+
type: 'text',
|
|
157
|
+
nullable: true
|
|
158
|
+
}),
|
|
159
|
+
user_root_ts_metadata("design:type", Object)
|
|
160
|
+
], UserRoot.prototype, "password", void 0);
|
|
161
|
+
user_root_ts_decorate([
|
|
162
|
+
(0,external_typeorm_.Column)({
|
|
163
|
+
type: 'varchar',
|
|
164
|
+
length: 255,
|
|
165
|
+
unique: true,
|
|
166
|
+
nullable: false
|
|
167
|
+
}),
|
|
168
|
+
user_root_ts_metadata("design:type", String)
|
|
169
|
+
], UserRoot.prototype, "email", void 0);
|
|
170
|
+
user_root_ts_decorate([
|
|
171
|
+
(0,external_typeorm_.Column)({
|
|
172
|
+
type: 'varchar',
|
|
173
|
+
length: 255,
|
|
174
|
+
nullable: true
|
|
175
|
+
}),
|
|
176
|
+
user_root_ts_metadata("design:type", Object)
|
|
177
|
+
], UserRoot.prototype, "phone", void 0);
|
|
178
|
+
user_root_ts_decorate([
|
|
179
|
+
(0,external_typeorm_.Column)({
|
|
180
|
+
type: 'boolean',
|
|
181
|
+
nullable: false,
|
|
182
|
+
default: true,
|
|
183
|
+
name: 'is_active'
|
|
184
|
+
}),
|
|
185
|
+
user_root_ts_metadata("design:type", Boolean)
|
|
186
|
+
], UserRoot.prototype, "isActive", void 0);
|
|
187
|
+
user_root_ts_decorate([
|
|
188
|
+
(0,external_typeorm_.Column)({
|
|
189
|
+
type: 'boolean',
|
|
190
|
+
nullable: false,
|
|
191
|
+
default: false,
|
|
192
|
+
name: 'email_verified'
|
|
193
|
+
}),
|
|
194
|
+
user_root_ts_metadata("design:type", Boolean)
|
|
195
|
+
], UserRoot.prototype, "emailVerified", void 0);
|
|
196
|
+
user_root_ts_decorate([
|
|
197
|
+
(0,external_typeorm_.Column)({
|
|
198
|
+
type: 'boolean',
|
|
199
|
+
nullable: false,
|
|
200
|
+
default: false,
|
|
201
|
+
name: 'phone_verified'
|
|
202
|
+
}),
|
|
203
|
+
user_root_ts_metadata("design:type", Boolean)
|
|
204
|
+
], UserRoot.prototype, "phoneVerified", void 0);
|
|
205
|
+
user_root_ts_decorate([
|
|
206
|
+
(0,external_typeorm_.Column)({
|
|
207
|
+
name: 'profile_picture_id',
|
|
208
|
+
type: 'char',
|
|
209
|
+
length: 36,
|
|
210
|
+
nullable: true
|
|
211
|
+
}),
|
|
212
|
+
user_root_ts_metadata("design:type", Object)
|
|
213
|
+
], UserRoot.prototype, "profilePictureId", void 0);
|
|
214
|
+
user_root_ts_decorate([
|
|
215
|
+
(0,external_typeorm_.Column)({
|
|
216
|
+
type: 'timestamp',
|
|
217
|
+
name: 'last_login_at',
|
|
218
|
+
nullable: true
|
|
219
|
+
}),
|
|
220
|
+
user_root_ts_metadata("design:type", Object)
|
|
221
|
+
], UserRoot.prototype, "lastLoginAt", void 0);
|
|
222
|
+
user_root_ts_decorate([
|
|
223
|
+
(0,external_typeorm_.Column)({
|
|
224
|
+
type: (0,handle_custome_db/* .getJsonColumnType */.pf)(),
|
|
225
|
+
nullable: true,
|
|
226
|
+
name: 'additional_fields'
|
|
227
|
+
}),
|
|
228
|
+
user_root_ts_metadata("design:type", Object)
|
|
229
|
+
], UserRoot.prototype, "additionalFields", void 0);
|
|
230
|
+
user_root_ts_decorate([
|
|
231
|
+
(0,external_typeorm_.CreateDateColumn)({
|
|
232
|
+
type: 'timestamp',
|
|
233
|
+
name: 'created_at'
|
|
234
|
+
}),
|
|
235
|
+
user_root_ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
|
|
236
|
+
], UserRoot.prototype, "createdAt", void 0);
|
|
237
|
+
user_root_ts_decorate([
|
|
238
|
+
(0,external_typeorm_.UpdateDateColumn)({
|
|
239
|
+
type: 'timestamp',
|
|
240
|
+
name: 'updated_at'
|
|
241
|
+
}),
|
|
242
|
+
user_root_ts_metadata("design:type", typeof Date === "undefined" ? Object : Date)
|
|
243
|
+
], UserRoot.prototype, "updatedAt", void 0);
|
|
244
|
+
user_root_ts_decorate([
|
|
245
|
+
(0,external_typeorm_.DeleteDateColumn)({
|
|
246
|
+
type: 'timestamp',
|
|
247
|
+
name: 'deleted_at',
|
|
248
|
+
nullable: true
|
|
249
|
+
}),
|
|
250
|
+
user_root_ts_metadata("design:type", Object)
|
|
251
|
+
], UserRoot.prototype, "deletedAt", void 0);
|
|
252
|
+
user_root_ts_decorate([
|
|
253
|
+
(0,external_typeorm_.Column)({
|
|
254
|
+
name: 'created_by_id',
|
|
255
|
+
type: 'uuid',
|
|
256
|
+
nullable: true
|
|
257
|
+
}),
|
|
258
|
+
user_root_ts_metadata("design:type", Object)
|
|
259
|
+
], UserRoot.prototype, "createdById", void 0);
|
|
260
|
+
user_root_ts_decorate([
|
|
261
|
+
(0,external_typeorm_.Column)({
|
|
262
|
+
name: 'updated_by_id',
|
|
263
|
+
type: 'uuid',
|
|
264
|
+
nullable: true
|
|
265
|
+
}),
|
|
266
|
+
user_root_ts_metadata("design:type", Object)
|
|
267
|
+
], UserRoot.prototype, "updatedById", void 0);
|
|
268
|
+
user_root_ts_decorate([
|
|
269
|
+
(0,external_typeorm_.Column)({
|
|
270
|
+
name: 'deleted_by_id',
|
|
271
|
+
type: 'uuid',
|
|
272
|
+
nullable: true
|
|
273
|
+
}),
|
|
274
|
+
user_root_ts_metadata("design:type", Object)
|
|
275
|
+
], UserRoot.prototype, "deletedById", void 0);
|
|
276
|
+
|
|
277
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/entities/index.ts
|
|
278
|
+
|
|
279
|
+
|
|
280
|
+
|
|
281
|
+
|
|
282
|
+
|
|
283
|
+
},
|
|
284
|
+
664(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
285
|
+
|
|
286
|
+
// EXPORTS
|
|
287
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
288
|
+
_n: () => (/* reexport */ notification_type_enum_NotificationType),
|
|
289
|
+
cD: () => (/* reexport */ participant_status_enum_ParticipantStatus),
|
|
290
|
+
V5: () => (/* reexport */ recurrence_type_enum_RecurrenceType)
|
|
291
|
+
});
|
|
292
|
+
|
|
293
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/enums/notification-type.enum.ts
|
|
294
|
+
var notification_type_enum_NotificationType = /*#__PURE__*/ function(NotificationType) {
|
|
295
|
+
NotificationType["INFO"] = "info";
|
|
296
|
+
NotificationType["WARNING"] = "warning";
|
|
297
|
+
NotificationType["SUCCESS"] = "success";
|
|
298
|
+
NotificationType["ERROR"] = "error";
|
|
299
|
+
return NotificationType;
|
|
300
|
+
}({});
|
|
301
|
+
|
|
302
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/enums/participant-status.enum.ts
|
|
303
|
+
var participant_status_enum_ParticipantStatus = /*#__PURE__*/ function(ParticipantStatus) {
|
|
304
|
+
ParticipantStatus["PENDING"] = "pending";
|
|
305
|
+
ParticipantStatus["ACCEPTED"] = "accepted";
|
|
306
|
+
ParticipantStatus["DECLINED"] = "declined";
|
|
307
|
+
ParticipantStatus["TENTATIVE"] = "tentative";
|
|
308
|
+
return ParticipantStatus;
|
|
309
|
+
}({});
|
|
310
|
+
|
|
311
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/enums/recurrence-type.enum.ts
|
|
312
|
+
var recurrence_type_enum_RecurrenceType = /*#__PURE__*/ function(RecurrenceType) {
|
|
313
|
+
RecurrenceType["NONE"] = "none";
|
|
314
|
+
RecurrenceType["DAILY"] = "daily";
|
|
315
|
+
RecurrenceType["WEEKLY"] = "weekly";
|
|
316
|
+
RecurrenceType["BIWEEKLY"] = "biweekly";
|
|
317
|
+
RecurrenceType["MONTHLY"] = "monthly";
|
|
318
|
+
return RecurrenceType;
|
|
319
|
+
}({});
|
|
320
|
+
|
|
321
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/enums/index.ts
|
|
322
|
+
|
|
323
|
+
|
|
324
|
+
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
},
|
|
328
|
+
560(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
329
|
+
|
|
330
|
+
// EXPORTS
|
|
331
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
332
|
+
Y7: () => (/* reexport */ classes/* .ACTION_PERMISSIONS */.Y7),
|
|
333
|
+
Fi: () => (/* reexport */ interfaces/* .AI_ASSISTANT_AUTH_PROVIDER */.Fi),
|
|
334
|
+
Bz: () => (/* reexport */ classes/* .AI_ASSISTANT_PERMISSIONS */.Bz),
|
|
335
|
+
Hb: () => (/* reexport */ interfaces/* .AI_ASSISTANT_TOOL_PROVIDER */.Hb),
|
|
336
|
+
T4: () => (/* reexport */ interfaces/* .AI_ASSISTANT_USER_LOOKUP_PROVIDER */.T4),
|
|
337
|
+
mK: () => (/* reexport */ constants/* .AUTH_MESSAGES */.mK),
|
|
338
|
+
x_: () => (/* reexport */ src_decorators/* .ApiResponseDto */.x_),
|
|
339
|
+
Gf: () => (/* reexport */ classes/* .ApiService */.Gf),
|
|
340
|
+
wA: () => (/* reexport */ classes/* .BRANCH_PERMISSIONS */.wA),
|
|
341
|
+
m8: () => (/* reexport */ exceptions/* .BaseAppException */.m8),
|
|
342
|
+
L3: () => (/* reexport */ dtos/* .BulkMetaDto */.L3),
|
|
343
|
+
jS: () => (/* reexport */ dtos/* .BulkResponseDto */.jS),
|
|
344
|
+
zl: () => (/* reexport */ constants/* .CACHE_INSTANCE */.zl),
|
|
345
|
+
xw: () => (/* reexport */ constants/* .CLIENT_TYPE_HEADER */.xw),
|
|
346
|
+
aO: () => (/* reexport */ classes/* .COMPANY_ACTION_PERMISSIONS */.aO),
|
|
347
|
+
t$: () => (/* reexport */ classes/* .COMPANY_PERMISSIONS */.t$),
|
|
348
|
+
vd: () => (/* reexport */ modules/* .CacheModule */.vd),
|
|
349
|
+
cb: () => (/* reexport */ exceptions/* .ConflictException */.cb),
|
|
350
|
+
NO: () => (/* reexport */ src_decorators/* .CurrentUser */.NO),
|
|
351
|
+
s8: () => (/* reexport */ utils/* .DEFAULT_COMPANY_PERMISSION_KEY_FORMAT */.s8),
|
|
352
|
+
Hq: () => (/* reexport */ constants/* .DEFAULT_EVENT_EXCHANGE */.Hq),
|
|
353
|
+
Fg: () => (/* reexport */ (/* inlined export .DEFAULT_EVENT_SERVICE_NAME */"flusys")),
|
|
354
|
+
nx: () => (/* reexport */ constants/* .DEFAULT_EVENT_TOPIC */.nx),
|
|
355
|
+
q6: () => (/* reexport */ utils/* .DEFAULT_USER_PERMISSION_KEY_FORMAT */.q6),
|
|
356
|
+
PT: () => (/* reexport */ constants/* .DOMAIN_EVENT_HANDLER_KEY */.PT),
|
|
357
|
+
xC: () => (/* reexport */ classes/* .DOMAIN_EVENT_VERSION */.xC),
|
|
358
|
+
TG: () => (/* reexport */ dtos/* .DeleteDto */.TG),
|
|
359
|
+
nd: () => (/* reexport */ interceptors/* .DeleteEmptyIdFromBodyInterceptor */.nd),
|
|
360
|
+
XI: () => (/* reexport */ classes/* .DisabledEventBus */.XI),
|
|
361
|
+
V0: () => (/* reexport */ classes/* .EMAIL_CONFIG_PERMISSIONS */.V0),
|
|
362
|
+
z$: () => (/* reexport */ classes/* .EMAIL_TEMPLATE_PERMISSIONS */.z$),
|
|
363
|
+
UU: () => (/* reexport */ constants/* .ERROR_MESSAGES */.UU),
|
|
364
|
+
Qj: () => (/* reexport */ constants/* .EVENT_BUS_INSTANCE */.Qj),
|
|
365
|
+
SL: () => (/* reexport */ constants/* .EVENT_BUS_MODULE_OPTIONS */.SL),
|
|
366
|
+
LO: () => (/* reexport */ interfaces/* .EVENT_MANAGER_ADAPTER */.LO),
|
|
367
|
+
Ub: () => (/* reexport */ classes/* .EVENT_PERMISSIONS */.Ub),
|
|
368
|
+
K6: () => (/* reexport */ modules/* .EventBusExplorer */.K6),
|
|
369
|
+
Zv: () => (/* reexport */ modules/* .EventBusModule */.Zv),
|
|
370
|
+
qS: () => (/* reexport */ classes/* .EventBusRegistry */.qS),
|
|
371
|
+
Pm: () => (/* reexport */ classes/* .EventTransportRegistry */.Pm),
|
|
372
|
+
S6: () => (/* reexport */ classes/* .FILE_PERMISSIONS */.S6),
|
|
373
|
+
wM: () => (/* reexport */ classes/* .FOLDER_PERMISSIONS */.wM),
|
|
374
|
+
Wc: () => (/* reexport */ classes/* .FORM_PERMISSIONS */.Wc),
|
|
375
|
+
GT: () => (/* reexport */ classes/* .FORM_RESULT_PERMISSIONS */.GT),
|
|
376
|
+
x: () => (/* reexport */ dtos/* .FilterAndPaginationDto */.x),
|
|
377
|
+
ZT: () => (/* reexport */ exceptions/* .ForbiddenException */.ZT),
|
|
378
|
+
a8: () => (/* reexport */ dtos/* .GetByIdBodyDto */.a8),
|
|
379
|
+
H$: () => (/* reexport */ dtos/* .GetByIdsDto */.H$),
|
|
380
|
+
Dj: () => (/* reexport */ GlobalExceptionFilter),
|
|
381
|
+
lx: () => (/* reexport */ classes/* .HybridCache */.lx),
|
|
382
|
+
Zk: () => (/* reexport */ classes/* .HybridEventBus */.Zk),
|
|
383
|
+
mg: () => (/* reexport */ constants/* .IDEMPOTENCY_CACHE_PREFIX */.mg),
|
|
384
|
+
iH: () => (/* reexport */ constants/* .IDEMPOTENCY_KEY_HEADER */.iH),
|
|
385
|
+
jA: () => (/* reexport */ constants/* .IS_PUBLIC_KEY */.jA),
|
|
386
|
+
Bw: () => (/* reexport */ interceptors/* .IdempotencyInterceptor */.Bw),
|
|
387
|
+
lz: () => (/* reexport */ entities/* .Identity */.l),
|
|
388
|
+
Jg: () => (/* reexport */ dtos/* .IdentityResponseDto */.Jg),
|
|
389
|
+
z8: () => (/* reexport */ exceptions/* .InsufficientPermissionsException */.z8),
|
|
390
|
+
GI: () => (/* reexport */ exceptions/* .InternalServerException */.GI),
|
|
391
|
+
TD: () => (/* reexport */ guards/* .JwtAuthGuard */.TD),
|
|
392
|
+
Q5: () => (/* reexport */ classes/* .LANGUAGE_PERMISSIONS */.Q5),
|
|
393
|
+
TW: () => (/* reexport */ dtos/* .ListResponseDto */.TW),
|
|
394
|
+
Jz: () => (/* reexport */ src_decorators/* .LogAction */.Jz),
|
|
395
|
+
pq: () => (/* reexport */ middlewares/* .LoggerMiddleware */.pq),
|
|
396
|
+
PS: () => (/* reexport */ classes/* .MemoryTransport */.PS),
|
|
397
|
+
qs: () => (/* reexport */ dtos/* .MessageResponseDto */.qs),
|
|
398
|
+
Ct: () => (/* reexport */ modules/* .MultiTenantDataSourceService */.Ct),
|
|
399
|
+
KR: () => (/* reexport */ interfaces/* .NOTIFICATION_ADAPTER */.KR),
|
|
400
|
+
rH: () => (/* reexport */ classes/* .NOTIFICATION_PERMISSIONS */.rH),
|
|
401
|
+
d$: () => (/* reexport */ exceptions/* .NoPermissionsFoundException */.d$),
|
|
402
|
+
X6: () => (/* reexport */ exceptions/* .NotFoundException */.X6),
|
|
403
|
+
_n: () => (/* reexport */ enums/* .NotificationType */._n),
|
|
404
|
+
kd: () => (/* reexport */ src_decorators/* .OnDomainEvent */.kd),
|
|
405
|
+
Zb: () => (/* reexport */ guards/* .OptionalJwtGuard */.Zb),
|
|
406
|
+
Jj: () => (/* reexport */ classes/* .PERMISSIONS */.Jj),
|
|
407
|
+
fG: () => (/* reexport */ constants/* .PERMISSIONS_CACHE_PREFIX */.fG),
|
|
408
|
+
N7: () => (/* reexport */ constants/* .PERMISSIONS_KEY */.N7),
|
|
409
|
+
Lw: () => (/* reexport */ constants/* .PERMISSION_GUARD_CONFIG */.Lw),
|
|
410
|
+
kF: () => (/* reexport */ interfaces/* .PERMISSION_SYNC_ADAPTER */.kF),
|
|
411
|
+
IE: () => (/* reexport */ dtos/* .PaginationDto */.IE),
|
|
412
|
+
DD: () => (/* reexport */ dtos/* .PaginationMetaDto */.DD),
|
|
413
|
+
cD: () => (/* reexport */ enums/* .ParticipantStatus */.cD),
|
|
414
|
+
LQ: () => (/* reexport */ guards/* .PermissionGuard */.LQ),
|
|
415
|
+
GS: () => (/* reexport */ exceptions/* .PermissionSystemUnavailableException */.GS),
|
|
416
|
+
w3: () => (/* reexport */ src_decorators/* .Public */.w3),
|
|
417
|
+
kC: () => (/* reexport */ constants/* .REQUEST_ID_HEADER */.kC),
|
|
418
|
+
P0: () => (/* reexport */ classes/* .ROLE_ACTION_PERMISSIONS */.P0),
|
|
419
|
+
mV: () => (/* reexport */ classes/* .ROLE_PERMISSIONS */.mV),
|
|
420
|
+
V5: () => (/* reexport */ enums/* .RecurrenceType */.V5),
|
|
421
|
+
g$: () => (/* reexport */ dtos/* .RequestMetaDto */.g$),
|
|
422
|
+
Dz: () => (/* reexport */ src_decorators/* .RequireAnyPermission */.Dz),
|
|
423
|
+
Tw: () => (/* reexport */ src_decorators/* .RequirePermission */.Tw),
|
|
424
|
+
rY: () => (/* reexport */ src_decorators/* .RequirePermissionLogic */.rY),
|
|
425
|
+
c_: () => (/* reexport */ interceptors/* .ResponseMetaInterceptor */.c_),
|
|
426
|
+
l3: () => (/* reexport */ classes/* .SOCIAL_AUTH_CONFIG_PERMISSIONS */.l3),
|
|
427
|
+
Em: () => (/* reexport */ classes/* .STORAGE_CONFIG_PERMISSIONS */.Em),
|
|
428
|
+
hg: () => (/* reexport */ constants/* .SYSTEM_MESSAGES */.hg),
|
|
429
|
+
ld: () => (/* reexport */ exceptions/* .ServiceUnavailableException */.ld),
|
|
430
|
+
VS: () => (/* reexport */ interceptors/* .SetCreatedByOnBody */.VS),
|
|
431
|
+
Ul: () => (/* reexport */ interceptors/* .SetDeletedByOnBody */.Ul),
|
|
432
|
+
_x: () => (/* reexport */ interceptors/* .SetUpdateByOnBody */._x),
|
|
433
|
+
nE: () => (/* reexport */ modules/* .SharedPermissionCacheModule */.nE),
|
|
434
|
+
U8: () => (/* reexport */ modules/* .SharedPermissionCacheService */.U8),
|
|
435
|
+
f: () => (/* reexport */ dtos/* .SingleResponseDto */.f),
|
|
436
|
+
Mw: () => (/* reexport */ interceptors/* .Slug */.Mw),
|
|
437
|
+
Y3: () => (/* reexport */ classes/* .TASK_BOARD_PERMISSIONS */.Y3),
|
|
438
|
+
zd: () => (/* reexport */ classes/* .TASK_COMMENT_PERMISSIONS */.zd),
|
|
439
|
+
UG: () => (/* reexport */ classes/* .TASK_LABEL_PERMISSIONS */.UG),
|
|
440
|
+
ON: () => (/* reexport */ classes/* .TASK_LIST_PERMISSIONS */.ON),
|
|
441
|
+
T: () => (/* reexport */ classes/* .TASK_PERMISSIONS */.T),
|
|
442
|
+
N3: () => (/* reexport */ classes/* .TRANSLATION_KEY_PERMISSIONS */.N3),
|
|
443
|
+
fS: () => (/* reexport */ classes/* .TRANSLATION_PERMISSIONS */.fS),
|
|
444
|
+
UB: () => (/* reexport */ classes/* .UPLOAD_CONFIG_PERMISSIONS */.UB),
|
|
445
|
+
_X: () => (/* reexport */ classes/* .USER_ACTION_PERMISSIONS */._X),
|
|
446
|
+
BC: () => (/* reexport */ classes/* .USER_PERMISSIONS */.BC),
|
|
447
|
+
w7: () => (/* reexport */ classes/* .USER_ROLE_PERMISSIONS */.w7),
|
|
448
|
+
_W: () => (/* reexport */ exceptions/* .UnauthorizedException */._W),
|
|
449
|
+
q7: () => (/* reexport */ entities/* .UserRoot */.q),
|
|
450
|
+
uh: () => (/* reexport */ modules/* .UtilsModule */.uh),
|
|
451
|
+
TJ: () => (/* reexport */ modules/* .UtilsService */.TJ),
|
|
452
|
+
dr: () => (/* reexport */ exceptions/* .ValidationException */.dr),
|
|
453
|
+
wf: () => (/* reexport */ utils/* .applyCompanyFilter */.wf),
|
|
454
|
+
kQ: () => (/* reexport */ utils/* .buildCompanyWhereCondition */.kQ),
|
|
455
|
+
fJ: () => (/* reexport */ utils/* .buildCookieOptions */.fJ),
|
|
456
|
+
rv: () => (/* reexport */ classes/* .buildDomainEvent */.rv),
|
|
457
|
+
oV: () => (/* reexport */ utils/* .buildFrontendUrl */.oV),
|
|
458
|
+
nt: () => (/* reexport */ utils/* .buildPermissionCacheKey */.nt),
|
|
459
|
+
Zq: () => (/* reexport */ classes/* .buildQuery */.Zq),
|
|
460
|
+
RD: () => (/* reexport */ classes/* .createApiController */.RD),
|
|
461
|
+
fv: () => (/* reexport */ modules/* .createModuleEventsProvider */.fv),
|
|
462
|
+
Xv: () => (/* reexport */ classes/* .createModuleLogger */.Xv),
|
|
463
|
+
BR: () => (/* reexport */ interceptors/* .createSetUserFieldInterceptor */.BR),
|
|
464
|
+
ZD: () => (/* reexport */ utils/* .escapeHtml */.ZD),
|
|
465
|
+
qo: () => (/* reexport */ utils/* .escapeHtmlVariables */.qo),
|
|
466
|
+
hX: () => (/* reexport */ utils/* .extractFrontendUrl */.hX),
|
|
467
|
+
Sd: () => (/* reexport */ utils/* .formatInTimezone */.Sd),
|
|
468
|
+
z9: () => (/* reexport */ utils/* .generateSlug */.z9),
|
|
469
|
+
oo: () => (/* reexport */ utils/* .generateUniqueSlug */.oo),
|
|
470
|
+
Tj: () => (/* reexport */ classes/* .getCastIntType */.Tj),
|
|
471
|
+
xR: () => (/* reexport */ middlewares/* .getCompanyId */.xR),
|
|
472
|
+
pf: () => (/* reexport */ classes/* .getJsonColumnType */.pf),
|
|
473
|
+
RE: () => (/* reexport */ middlewares/* .getRequestId */.RE),
|
|
474
|
+
EO: () => (/* reexport */ middlewares/* .getTenantId */.EO),
|
|
475
|
+
oB: () => (/* reexport */ utils/* .getTodayInTimezone */.oB),
|
|
476
|
+
F6: () => (/* reexport */ middlewares/* .getUserId */.F6),
|
|
477
|
+
yx: () => (/* reexport */ utils/* .hasCompanyId */.f),
|
|
478
|
+
KJ: () => (/* reexport */ classes/* .instance */.KJ),
|
|
479
|
+
wh: () => (/* reexport */ utils/* .isBrowserRequest */.wh),
|
|
480
|
+
_c: () => (/* reexport */ utils/* .isMultiWildcard */._c),
|
|
481
|
+
lk: () => (/* reexport */ utils/* .loadOptionalModule */.lk),
|
|
482
|
+
vf: () => (/* reexport */ utils/* .localToUtc */.vf),
|
|
483
|
+
qe: () => (/* reexport */ utils/* .matchEventPattern */.qe),
|
|
484
|
+
Ri: () => (/* reexport */ modules/* .moduleEventsToken */.Ri),
|
|
485
|
+
Ju: () => (/* reexport */ utils/* .parseDurationToMs */.Ju),
|
|
486
|
+
wT: () => (/* reexport */ classes/* .publishDomainEvent */.wT),
|
|
487
|
+
V8: () => (/* reexport */ middlewares/* .requestContext */.V8),
|
|
488
|
+
IN: () => (/* reexport */ utils/* .sanitizeEventPayload */.IN),
|
|
489
|
+
v4: () => (/* reexport */ utils/* .utcToLocal */.v4),
|
|
490
|
+
bE: () => (/* reexport */ utils/* .validateCompanyOwnership */.bE)
|
|
491
|
+
});
|
|
492
|
+
|
|
493
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/classes/index.ts + 4 modules
|
|
494
|
+
var classes = __webpack_require__(405);
|
|
495
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/constants/index.ts
|
|
496
|
+
var constants = __webpack_require__(43);
|
|
497
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/decorators/index.ts + 4 modules
|
|
498
|
+
var src_decorators = __webpack_require__(523);
|
|
499
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/dtos/index.ts + 7 modules
|
|
500
|
+
var dtos = __webpack_require__(980);
|
|
501
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/entities/index.ts + 2 modules
|
|
502
|
+
var entities = __webpack_require__(768);
|
|
503
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/enums/index.ts + 3 modules
|
|
504
|
+
var enums = __webpack_require__(664);
|
|
505
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/exceptions/index.ts
|
|
506
|
+
var exceptions = __webpack_require__(448);
|
|
507
|
+
// EXTERNAL MODULE: external "@nestjs/common"
|
|
508
|
+
var common_ = __webpack_require__(157);
|
|
509
|
+
// EXTERNAL MODULE: external "typeorm"
|
|
510
|
+
var external_typeorm_ = __webpack_require__(158);
|
|
511
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/constants/message-keys.ts
|
|
512
|
+
var message_keys = __webpack_require__(389);
|
|
513
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/exceptions/base-app.exception.ts
|
|
514
|
+
var base_app_exception = __webpack_require__(514);
|
|
515
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/middlewares/logger.middleware.ts + 2 modules
|
|
516
|
+
var logger_middleware = __webpack_require__(419);
|
|
517
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/filters/global-exception.filter.ts
|
|
518
|
+
function _ts_decorate(decorators, target, key, desc) {
|
|
519
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
520
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") {
|
|
521
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
522
|
+
} else {
|
|
523
|
+
for(var i = decorators.length - 1; i >= 0; i--){
|
|
524
|
+
if (d = decorators[i]) {
|
|
525
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
530
|
+
}
|
|
531
|
+
|
|
532
|
+
|
|
533
|
+
|
|
534
|
+
|
|
535
|
+
|
|
536
|
+
class GlobalExceptionFilter {
|
|
537
|
+
logger = new common_.Logger('ExceptionFilter');
|
|
538
|
+
catch(exception, host) {
|
|
539
|
+
const ctx = host.switchToHttp();
|
|
540
|
+
const request = ctx.getRequest();
|
|
541
|
+
const response = ctx.getResponse();
|
|
542
|
+
const responseTime = Date.now() - (request._startTime || Date.now());
|
|
543
|
+
const requestId = (0,logger_middleware/* .getRequestId */.RE)() || request.headers['x-request-id'] || 'no-request-id';
|
|
544
|
+
const { statusCode, errorResponse } = this.resolveException(exception, requestId, responseTime);
|
|
545
|
+
const logContext = {
|
|
546
|
+
requestId,
|
|
547
|
+
userId: (0,logger_middleware/* .getUserId */.F6)(),
|
|
548
|
+
tenantId: (0,logger_middleware/* .getTenantId */.EO)(),
|
|
549
|
+
companyId: (0,logger_middleware/* .getCompanyId */.xR)(),
|
|
550
|
+
method: request.method,
|
|
551
|
+
url: request.originalUrl,
|
|
552
|
+
path: request.path,
|
|
553
|
+
statusCode,
|
|
554
|
+
duration: `${responseTime}ms`,
|
|
555
|
+
messageKey: errorResponse.messageKey
|
|
556
|
+
};
|
|
557
|
+
const logMessage = `Exception caught "HTTP/1.1" "${request.method}" "${request.originalUrl}" - ${statusCode} "${errorResponse.messageKey}" ${responseTime}ms | ${errorResponse.message}`;
|
|
558
|
+
if (statusCode >= 500) {
|
|
559
|
+
this.logger.error(logMessage, exception instanceof Error ? exception.stack : undefined, logContext);
|
|
560
|
+
} else if (statusCode >= 400) {
|
|
561
|
+
this.logger.warn(logMessage, logContext);
|
|
562
|
+
}
|
|
563
|
+
response.status(statusCode).json(errorResponse);
|
|
564
|
+
}
|
|
565
|
+
resolveException(exception, requestId, responseTime) {
|
|
566
|
+
const meta = {
|
|
567
|
+
requestId,
|
|
568
|
+
timestamp: new Date().toISOString(),
|
|
569
|
+
responseTime
|
|
570
|
+
};
|
|
571
|
+
if (exception instanceof base_app_exception/* .BaseAppException */.m8) {
|
|
572
|
+
return {
|
|
573
|
+
statusCode: exception.getStatus(),
|
|
574
|
+
errorResponse: {
|
|
575
|
+
success: false,
|
|
576
|
+
message: exception.message,
|
|
577
|
+
messageKey: exception.messageKey,
|
|
578
|
+
messageVariables: exception.messageVariables,
|
|
579
|
+
errors: exception.errors,
|
|
580
|
+
_meta: meta
|
|
581
|
+
}
|
|
582
|
+
};
|
|
583
|
+
}
|
|
584
|
+
if (exception instanceof common_.HttpException) {
|
|
585
|
+
const resolved = this.resolveHttpException(exception);
|
|
586
|
+
return {
|
|
587
|
+
statusCode: resolved.statusCode,
|
|
588
|
+
errorResponse: {
|
|
589
|
+
success: false,
|
|
590
|
+
message: resolved.message,
|
|
591
|
+
messageKey: resolved.messageKey,
|
|
592
|
+
messageVariables: resolved.messageVariables,
|
|
593
|
+
errors: resolved.errors,
|
|
594
|
+
_meta: meta
|
|
595
|
+
}
|
|
596
|
+
};
|
|
597
|
+
}
|
|
598
|
+
if (exception instanceof external_typeorm_.QueryFailedError) {
|
|
599
|
+
const resolved = this.resolveQueryFailedError(exception);
|
|
600
|
+
if (resolved) {
|
|
601
|
+
return {
|
|
602
|
+
statusCode: resolved.getStatus(),
|
|
603
|
+
errorResponse: {
|
|
604
|
+
success: false,
|
|
605
|
+
message: resolved.message,
|
|
606
|
+
messageKey: resolved.messageKey,
|
|
607
|
+
messageVariables: resolved.messageVariables,
|
|
608
|
+
_meta: meta
|
|
609
|
+
}
|
|
610
|
+
};
|
|
611
|
+
}
|
|
612
|
+
}
|
|
613
|
+
return {
|
|
614
|
+
statusCode: common_.HttpStatus.INTERNAL_SERVER_ERROR,
|
|
615
|
+
errorResponse: {
|
|
616
|
+
success: false,
|
|
617
|
+
message: 'Internal server error',
|
|
618
|
+
messageKey: message_keys/* .ERROR_MESSAGES.INTERNAL */.UU.INTERNAL,
|
|
619
|
+
_meta: meta
|
|
620
|
+
}
|
|
621
|
+
};
|
|
622
|
+
}
|
|
623
|
+
resolveHttpException(exception) {
|
|
624
|
+
const statusCode = exception.getStatus();
|
|
625
|
+
const response = exception.getResponse();
|
|
626
|
+
if (typeof response === 'string') {
|
|
627
|
+
return {
|
|
628
|
+
statusCode,
|
|
629
|
+
message: response,
|
|
630
|
+
messageKey: message_keys/* .ERROR_MESSAGES.HTTP */.UU.HTTP
|
|
631
|
+
};
|
|
632
|
+
}
|
|
633
|
+
if (typeof response === 'object' && response !== null) {
|
|
634
|
+
const obj = response;
|
|
635
|
+
if (Array.isArray(obj.message)) {
|
|
636
|
+
const errors = obj.message.map((msg)=>{
|
|
637
|
+
const [field, ...rest] = msg.split(' ');
|
|
638
|
+
return {
|
|
639
|
+
field: field || 'unknown',
|
|
640
|
+
message: rest.join(' ') || msg
|
|
641
|
+
};
|
|
642
|
+
});
|
|
643
|
+
return {
|
|
644
|
+
statusCode,
|
|
645
|
+
message: 'Validation failed',
|
|
646
|
+
messageKey: message_keys/* .ERROR_MESSAGES.VALIDATION */.UU.VALIDATION,
|
|
647
|
+
errors
|
|
648
|
+
};
|
|
649
|
+
}
|
|
650
|
+
return {
|
|
651
|
+
statusCode,
|
|
652
|
+
message: String(obj.message || 'Unknown error'),
|
|
653
|
+
messageKey: String(obj.messageKey || message_keys/* .ERROR_MESSAGES.HTTP */.UU.HTTP),
|
|
654
|
+
messageVariables: obj.messageVariables,
|
|
655
|
+
errors: obj.errors
|
|
656
|
+
};
|
|
657
|
+
}
|
|
658
|
+
return {
|
|
659
|
+
statusCode,
|
|
660
|
+
message: 'Unknown error',
|
|
661
|
+
messageKey: message_keys/* .ERROR_MESSAGES.UNKNOWN */.UU.UNKNOWN
|
|
662
|
+
};
|
|
663
|
+
}
|
|
664
|
+
resolveQueryFailedError(exception) {
|
|
665
|
+
const dbError = exception;
|
|
666
|
+
const code = dbError.driverError?.code ?? dbError.code;
|
|
667
|
+
const number = dbError.driverError?.number ?? dbError.number;
|
|
668
|
+
const errno = dbError.driverError?.errno ?? dbError.errno;
|
|
669
|
+
const sqlMessage = dbError.driverError?.sqlMessage ?? '';
|
|
670
|
+
const detail = dbError.driverError?.detail ?? dbError.detail ?? '';
|
|
671
|
+
const table = dbError.driverError?.table ?? dbError.table ?? '';
|
|
672
|
+
const column = dbError.driverError?.column ?? dbError.column;
|
|
673
|
+
const pgField = detail.match(/Key \(([^)]+)\)/)?.[1] ?? column;
|
|
674
|
+
// DUPLICATE / UNIQUE VIOLATION
|
|
675
|
+
// PG: 23505 | MSSQL: 2627 (constraint), 2601 (index) | MySQL: ER_DUP_ENTRY / errno 1062
|
|
676
|
+
if (code === '23505' || number === 2627 || number === 2601 || code === 'ER_DUP_ENTRY' || errno === 1062) {
|
|
677
|
+
const mysqlTable = sqlMessage.match(/for key '([^'.]+)\./)?.[1];
|
|
678
|
+
const mysqlIndex = sqlMessage.match(/for key '(?:[^.]+\.)?([^']+)'/)?.[1];
|
|
679
|
+
const resolvedTable = table || mysqlTable || 'record';
|
|
680
|
+
const resolvedField = pgField ? this.toHumanReadable(pgField) : mysqlIndex ? this.toHumanReadable(mysqlIndex) : undefined;
|
|
681
|
+
return new base_app_exception/* .ConflictException */.cb(this.toHumanReadable(resolvedTable), resolvedField);
|
|
682
|
+
}
|
|
683
|
+
// FOREIGN KEY VIOLATION
|
|
684
|
+
// PG: 23503 | MSSQL: 547 | MySQL: ER_NO_REFERENCED_ROW_2/1452 (insert), ER_ROW_IS_REFERENCED_2/1451 (delete)
|
|
685
|
+
if (code === '23503' || number === 547 || code === 'ER_NO_REFERENCED_ROW_2' || code === 'ER_ROW_IS_REFERENCED_2' || errno === 1452 || errno === 1451) {
|
|
686
|
+
const mysqlColumn = sqlMessage.match(/FOREIGN KEY \(`([^`]+)`\)/)?.[1];
|
|
687
|
+
const raw = pgField ?? mysqlColumn;
|
|
688
|
+
const humanField = raw ? this.toHumanReadable(raw) : undefined;
|
|
689
|
+
return new base_app_exception/* .BaseAppException */.m8({
|
|
690
|
+
message: humanField ? `Invalid reference for '${humanField}'` : 'Invalid reference',
|
|
691
|
+
messageKey: message_keys/* .ERROR_MESSAGES.DB_FOREIGN_KEY */.UU.DB_FOREIGN_KEY,
|
|
692
|
+
messageVariables: humanField ? {
|
|
693
|
+
field: humanField
|
|
694
|
+
} : undefined,
|
|
695
|
+
status: common_.HttpStatus.BAD_REQUEST
|
|
696
|
+
});
|
|
697
|
+
}
|
|
698
|
+
// NOT NULL VIOLATION
|
|
699
|
+
// PG: 23502 | MSSQL: 515 | MySQL: ER_BAD_NULL_ERROR / errno 1048
|
|
700
|
+
if (code === '23502' || number === 515 || code === 'ER_BAD_NULL_ERROR' || errno === 1048) {
|
|
701
|
+
const mysqlColumn = sqlMessage.match(/Column '([^']+)' cannot be null/)?.[1];
|
|
702
|
+
const humanField = this.toHumanReadable(column ?? mysqlColumn ?? 'field');
|
|
703
|
+
return new base_app_exception/* .BaseAppException */.m8({
|
|
704
|
+
message: `Required field '${humanField}' cannot be null`,
|
|
705
|
+
messageKey: message_keys/* .ERROR_MESSAGES.DB_NOT_NULL */.UU.DB_NOT_NULL,
|
|
706
|
+
messageVariables: {
|
|
707
|
+
field: humanField
|
|
708
|
+
},
|
|
709
|
+
status: common_.HttpStatus.BAD_REQUEST
|
|
710
|
+
});
|
|
711
|
+
}
|
|
712
|
+
// INVALID INPUT SYNTAX — PostgreSQL only (MySQL silently coerces types)
|
|
713
|
+
if (code === '22P02') {
|
|
714
|
+
const typeMatch = exception.message.match(/invalid input syntax for(?:\s+type)?\s+(\w+)/i);
|
|
715
|
+
const type = typeMatch?.[1] ?? 'value';
|
|
716
|
+
const humanField = column ? this.toHumanReadable(column) : undefined;
|
|
717
|
+
return new base_app_exception/* .BaseAppException */.m8({
|
|
718
|
+
message: humanField ? `Invalid ${type} value for '${humanField}'` : `Invalid ${type} value`,
|
|
719
|
+
messageKey: message_keys/* .ERROR_MESSAGES.DB_INVALID_INPUT */.UU.DB_INVALID_INPUT,
|
|
720
|
+
messageVariables: {
|
|
721
|
+
type,
|
|
722
|
+
...humanField !== undefined && {
|
|
723
|
+
field: humanField
|
|
724
|
+
}
|
|
725
|
+
},
|
|
726
|
+
status: common_.HttpStatus.BAD_REQUEST
|
|
727
|
+
});
|
|
728
|
+
}
|
|
729
|
+
// VALUE TOO LONG
|
|
730
|
+
// PG: 22001 | MySQL: ER_DATA_TOO_LONG / errno 1406
|
|
731
|
+
if (code === '22001' || code === 'ER_DATA_TOO_LONG' || errno === 1406) {
|
|
732
|
+
const mysqlColumn = sqlMessage.match(/Data too long for column '([^']+)'/)?.[1];
|
|
733
|
+
const resolvedColumn = column ?? mysqlColumn;
|
|
734
|
+
const humanField = resolvedColumn ? this.toHumanReadable(resolvedColumn) : undefined;
|
|
735
|
+
return new base_app_exception/* .BaseAppException */.m8({
|
|
736
|
+
message: humanField ? `Value too long for '${humanField}'` : 'Value exceeds maximum length',
|
|
737
|
+
messageKey: message_keys/* .ERROR_MESSAGES.DB_VALUE_TOO_LONG */.UU.DB_VALUE_TOO_LONG,
|
|
738
|
+
messageVariables: humanField !== undefined ? {
|
|
739
|
+
field: humanField
|
|
740
|
+
} : undefined,
|
|
741
|
+
status: common_.HttpStatus.BAD_REQUEST
|
|
742
|
+
});
|
|
743
|
+
}
|
|
744
|
+
// CHECK CONSTRAINT VIOLATION
|
|
745
|
+
// PG: 23514 | MySQL 8.0+: ER_CHECK_CONSTRAINT_VIOLATED / errno 3819
|
|
746
|
+
if (code === '23514' || code === 'ER_CHECK_CONSTRAINT_VIOLATED' || errno === 3819) {
|
|
747
|
+
const constraint = dbError.driverError?.constraint ?? dbError.constraint;
|
|
748
|
+
const humanTable = this.toHumanReadable(table || 'record');
|
|
749
|
+
return new base_app_exception/* .BaseAppException */.m8({
|
|
750
|
+
message: `${humanTable} violates a validation rule`,
|
|
751
|
+
messageKey: message_keys/* .ERROR_MESSAGES.DB_CHECK_CONSTRAINT */.UU.DB_CHECK_CONSTRAINT,
|
|
752
|
+
messageVariables: {
|
|
753
|
+
entity: humanTable,
|
|
754
|
+
...constraint !== undefined && {
|
|
755
|
+
constraint
|
|
756
|
+
}
|
|
757
|
+
},
|
|
758
|
+
status: common_.HttpStatus.BAD_REQUEST
|
|
759
|
+
});
|
|
760
|
+
}
|
|
761
|
+
// DEADLOCK
|
|
762
|
+
// PG: 40P01 | MSSQL: 1205 | MySQL: ER_LOCK_DEADLOCK / errno 1213
|
|
763
|
+
if (code === '40P01' || number === 1205 || code === 'ER_LOCK_DEADLOCK' || errno === 1213) {
|
|
764
|
+
return new base_app_exception/* .BaseAppException */.m8({
|
|
765
|
+
message: 'The request could not be completed due to a conflict, please try again',
|
|
766
|
+
messageKey: message_keys/* .ERROR_MESSAGES.DB_DEADLOCK */.UU.DB_DEADLOCK,
|
|
767
|
+
status: common_.HttpStatus.SERVICE_UNAVAILABLE
|
|
768
|
+
});
|
|
769
|
+
}
|
|
770
|
+
return null;
|
|
771
|
+
}
|
|
772
|
+
toHumanReadable(dbName) {
|
|
773
|
+
return dbName.split(', ').map((part)=>part.split('_').map((word)=>word.toLowerCase() === 'id' ? 'ID' : word.charAt(0).toUpperCase() + word.slice(1)).join(' ')).join(', ');
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
GlobalExceptionFilter = _ts_decorate([
|
|
777
|
+
(0,common_.Catch)()
|
|
778
|
+
], GlobalExceptionFilter);
|
|
779
|
+
|
|
780
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/filters/index.ts
|
|
781
|
+
|
|
782
|
+
|
|
783
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/guards/index.ts + 4 modules
|
|
784
|
+
var guards = __webpack_require__(510);
|
|
785
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/interceptors/index.ts + 7 modules
|
|
786
|
+
var interceptors = __webpack_require__(863);
|
|
787
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/interfaces/index.ts + 4 modules
|
|
788
|
+
var interfaces = __webpack_require__(473);
|
|
789
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/middlewares/index.ts
|
|
790
|
+
var middlewares = __webpack_require__(799);
|
|
791
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/modules/index.ts + 9 modules
|
|
792
|
+
var modules = __webpack_require__(686);
|
|
793
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/utils/index.ts + 5 modules
|
|
794
|
+
var utils = __webpack_require__(306);
|
|
795
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/index.ts
|
|
796
|
+
|
|
797
|
+
|
|
798
|
+
|
|
799
|
+
|
|
800
|
+
|
|
801
|
+
|
|
802
|
+
|
|
803
|
+
|
|
804
|
+
|
|
805
|
+
|
|
806
|
+
|
|
807
|
+
|
|
808
|
+
|
|
809
|
+
|
|
810
|
+
|
|
811
|
+
|
|
812
|
+
},
|
|
813
|
+
473(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
814
|
+
|
|
815
|
+
// EXPORTS
|
|
816
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
817
|
+
Fi: () => (/* reexport */ AI_ASSISTANT_AUTH_PROVIDER),
|
|
818
|
+
Hb: () => (/* reexport */ AI_ASSISTANT_TOOL_PROVIDER),
|
|
819
|
+
T4: () => (/* reexport */ AI_ASSISTANT_USER_LOOKUP_PROVIDER),
|
|
820
|
+
LO: () => (/* reexport */ EVENT_MANAGER_ADAPTER),
|
|
821
|
+
KR: () => (/* reexport */ NOTIFICATION_ADAPTER),
|
|
822
|
+
kF: () => (/* reexport */ PERMISSION_SYNC_ADAPTER)
|
|
823
|
+
});
|
|
824
|
+
|
|
825
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/interfaces/ai-assistant-adapter.interface.ts
|
|
826
|
+
const AI_ASSISTANT_AUTH_PROVIDER = 'AI_ASSISTANT_AUTH_PROVIDER';
|
|
827
|
+
const AI_ASSISTANT_TOOL_PROVIDER = 'AI_ASSISTANT_TOOL_PROVIDER';
|
|
828
|
+
const AI_ASSISTANT_USER_LOOKUP_PROVIDER = 'AI_ASSISTANT_USER_LOOKUP_PROVIDER';
|
|
829
|
+
|
|
830
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/interfaces/event-manager-adapter.interface.ts
|
|
831
|
+
const EVENT_MANAGER_ADAPTER = 'EVENT_MANAGER_ADAPTER';
|
|
832
|
+
|
|
833
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/interfaces/notification-adapter.interface.ts
|
|
834
|
+
const NOTIFICATION_ADAPTER = 'NOTIFICATION_ADAPTER';
|
|
835
|
+
|
|
836
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/interfaces/permission-sync-adapter.interface.ts
|
|
837
|
+
const PERMISSION_SYNC_ADAPTER = 'PERMISSION_SYNC_ADAPTER';
|
|
838
|
+
|
|
839
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/interfaces/index.ts
|
|
840
|
+
|
|
841
|
+
|
|
842
|
+
|
|
843
|
+
|
|
844
|
+
|
|
845
|
+
|
|
846
|
+
|
|
847
|
+
|
|
848
|
+
|
|
849
|
+
|
|
850
|
+
|
|
851
|
+
|
|
852
|
+
|
|
853
|
+
},
|
|
854
|
+
799(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
855
|
+
/* import */ var _logger_middleware_js__rspack_import_0 = __webpack_require__(419);
|
|
856
|
+
|
|
857
|
+
|
|
858
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
859
|
+
EO: () => (/* reexport safe */ _logger_middleware_js__rspack_import_0.EO),
|
|
860
|
+
F6: () => (/* reexport safe */ _logger_middleware_js__rspack_import_0.F6),
|
|
861
|
+
RE: () => (/* reexport safe */ _logger_middleware_js__rspack_import_0.RE),
|
|
862
|
+
V8: () => (/* reexport safe */ _logger_middleware_js__rspack_import_0.V8),
|
|
863
|
+
pq: () => (/* reexport safe */ _logger_middleware_js__rspack_import_0.pq),
|
|
864
|
+
xR: () => (/* reexport safe */ _logger_middleware_js__rspack_import_0.xR)
|
|
865
|
+
});
|
|
866
|
+
|
|
867
|
+
|
|
868
|
+
},
|
|
869
|
+
306(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
870
|
+
|
|
871
|
+
// EXPORTS
|
|
872
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
873
|
+
s8: () => (/* reexport */ permission_cache_key_util/* .DEFAULT_COMPANY_PERMISSION_KEY_FORMAT */.s8),
|
|
874
|
+
q6: () => (/* reexport */ permission_cache_key_util/* .DEFAULT_USER_PERMISSION_KEY_FORMAT */.q6),
|
|
875
|
+
wf: () => (/* reexport */ applyCompanyFilter),
|
|
876
|
+
kQ: () => (/* reexport */ buildCompanyWhereCondition),
|
|
877
|
+
fJ: () => (/* reexport */ buildCookieOptions),
|
|
878
|
+
oV: () => (/* reexport */ buildFrontendUrl),
|
|
879
|
+
nt: () => (/* reexport */ permission_cache_key_util/* .buildPermissionCacheKey */.nt),
|
|
880
|
+
ZD: () => (/* reexport */ escapeHtml),
|
|
881
|
+
qo: () => (/* reexport */ escapeHtmlVariables),
|
|
882
|
+
hX: () => (/* reexport */ extractFrontendUrl),
|
|
883
|
+
Sd: () => (/* reexport */ formatInTimezone),
|
|
884
|
+
z9: () => (/* reexport */ generateSlug),
|
|
885
|
+
oo: () => (/* reexport */ generateUniqueSlug),
|
|
886
|
+
oB: () => (/* reexport */ getTodayInTimezone),
|
|
887
|
+
f: () => (/* reexport */ hasCompanyId),
|
|
888
|
+
wh: () => (/* reexport */ isBrowserRequest),
|
|
889
|
+
_c: () => (/* reexport */ event_pattern_util/* .isMultiWildcard */._c),
|
|
890
|
+
lk: () => (/* reexport */ optional_module_util/* .loadOptionalModule */.l),
|
|
891
|
+
vf: () => (/* reexport */ localToUtc),
|
|
892
|
+
qe: () => (/* reexport */ event_pattern_util/* .matchEventPattern */.qe),
|
|
893
|
+
Ju: () => (/* reexport */ parseDurationToMs),
|
|
894
|
+
IN: () => (/* reexport */ event_pattern_util/* .sanitizeEventPayload */.IN),
|
|
895
|
+
v4: () => (/* reexport */ utcToLocal),
|
|
896
|
+
bE: () => (/* reexport */ validateCompanyOwnership)
|
|
897
|
+
});
|
|
898
|
+
|
|
899
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/utils/date-time.util.ts
|
|
900
|
+
function getOffsetMinutes(utcDate, timezone) {
|
|
901
|
+
const extract = (tz)=>{
|
|
902
|
+
const parts = new Intl.DateTimeFormat('en-US', {
|
|
903
|
+
timeZone: tz,
|
|
904
|
+
year: 'numeric',
|
|
905
|
+
month: '2-digit',
|
|
906
|
+
day: '2-digit',
|
|
907
|
+
hour: '2-digit',
|
|
908
|
+
minute: '2-digit',
|
|
909
|
+
second: '2-digit',
|
|
910
|
+
hour12: false
|
|
911
|
+
}).formatToParts(utcDate);
|
|
912
|
+
const p = Object.fromEntries(parts.filter((x)=>x.type !== 'literal').map((x)=>[
|
|
913
|
+
x.type,
|
|
914
|
+
parseInt(x.value)
|
|
915
|
+
]));
|
|
916
|
+
return Date.UTC(p['year'], p['month'] - 1, p['day'], p['hour'], p['minute'], p['second']);
|
|
917
|
+
};
|
|
918
|
+
return (extract(timezone) - extract('UTC')) / 60_000;
|
|
919
|
+
}
|
|
920
|
+
function localToUtc(dateStr, timeStr, timezone) {
|
|
921
|
+
const [year, month, day] = dateStr.split('-').map(Number);
|
|
922
|
+
const [hours, minutes] = timeStr.split(':').map(Number);
|
|
923
|
+
const approx = new Date(Date.UTC(year, month - 1, day, hours, minutes, 0));
|
|
924
|
+
const offset = getOffsetMinutes(approx, timezone);
|
|
925
|
+
const utcDate = new Date(approx.getTime() - offset * 60_000);
|
|
926
|
+
// DST boundary guard: re-check offset after adjustment
|
|
927
|
+
const finalOffset = getOffsetMinutes(utcDate, timezone);
|
|
928
|
+
return finalOffset !== offset ? new Date(approx.getTime() - finalOffset * 60_000) : utcDate;
|
|
929
|
+
}
|
|
930
|
+
function utcToLocal(utcDate, timezone) {
|
|
931
|
+
const d = typeof utcDate === 'string' ? new Date(utcDate) : utcDate;
|
|
932
|
+
const parts = new Intl.DateTimeFormat('en-CA', {
|
|
933
|
+
timeZone: timezone,
|
|
934
|
+
year: 'numeric',
|
|
935
|
+
month: '2-digit',
|
|
936
|
+
day: '2-digit',
|
|
937
|
+
hour: '2-digit',
|
|
938
|
+
minute: '2-digit',
|
|
939
|
+
hour12: false
|
|
940
|
+
}).formatToParts(d);
|
|
941
|
+
const p = Object.fromEntries(parts.filter((x)=>x.type !== 'literal').map((x)=>[
|
|
942
|
+
x.type,
|
|
943
|
+
x.value
|
|
944
|
+
]));
|
|
945
|
+
// en-CA formats midnight hour as '24' — normalize to '00'
|
|
946
|
+
const hour = p['hour'] === '24' ? '00' : p['hour'];
|
|
947
|
+
return {
|
|
948
|
+
date: `${p['year']}-${p['month']}-${p['day']}`,
|
|
949
|
+
time: `${hour}:${p['minute']}`,
|
|
950
|
+
display: new Intl.DateTimeFormat('en-US', {
|
|
951
|
+
timeZone: timezone,
|
|
952
|
+
dateStyle: 'medium',
|
|
953
|
+
timeStyle: 'short'
|
|
954
|
+
}).format(d)
|
|
955
|
+
};
|
|
956
|
+
}
|
|
957
|
+
function formatInTimezone(utcDate, timezone, options = {
|
|
958
|
+
dateStyle: 'medium',
|
|
959
|
+
timeStyle: 'short'
|
|
960
|
+
}) {
|
|
961
|
+
const d = typeof utcDate === 'string' ? new Date(utcDate) : utcDate;
|
|
962
|
+
return new Intl.DateTimeFormat('en-US', {
|
|
963
|
+
...options,
|
|
964
|
+
timeZone: timezone
|
|
965
|
+
}).format(d);
|
|
966
|
+
}
|
|
967
|
+
function getTodayInTimezone(timezone) {
|
|
968
|
+
return utcToLocal(new Date(), timezone).date;
|
|
969
|
+
}
|
|
970
|
+
|
|
971
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/utils/event-pattern.util.ts
|
|
972
|
+
var event_pattern_util = __webpack_require__(456);
|
|
973
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/utils/html-sanitizer.util.ts
|
|
974
|
+
/**
|
|
975
|
+
* HTML Sanitizer Utilities
|
|
976
|
+
*
|
|
977
|
+
* Provides functions for escaping HTML content to prevent XSS attacks.
|
|
978
|
+
* Use these utilities when interpolating user-provided variables into HTML content.
|
|
979
|
+
*/ /**
|
|
980
|
+
* HTML entity mapping for escaping special characters
|
|
981
|
+
*/ const HTML_ESCAPE_MAP = {
|
|
982
|
+
'&': '&',
|
|
983
|
+
'<': '<',
|
|
984
|
+
'>': '>',
|
|
985
|
+
'"': '"',
|
|
986
|
+
"'": ''',
|
|
987
|
+
'/': '/',
|
|
988
|
+
'`': '`',
|
|
989
|
+
'=': '='
|
|
990
|
+
};
|
|
991
|
+
/**
|
|
992
|
+
* Regex pattern matching characters that need HTML escaping
|
|
993
|
+
*/ const HTML_ESCAPE_REGEX = /[&<>"'`=/]/g;
|
|
994
|
+
/**
|
|
995
|
+
* Escapes HTML special characters to prevent XSS attacks.
|
|
996
|
+
*
|
|
997
|
+
* @param str - The string to escape
|
|
998
|
+
* @returns The escaped string safe for HTML insertion
|
|
999
|
+
*
|
|
1000
|
+
* @example
|
|
1001
|
+
* ```typescript
|
|
1002
|
+
* escapeHtml('<script>alert("xss")</script>')
|
|
1003
|
+
* // Returns: '<script>alert("xss")</script>'
|
|
1004
|
+
* ```
|
|
1005
|
+
*/ function escapeHtml(str) {
|
|
1006
|
+
if (!str || typeof str !== 'string') {
|
|
1007
|
+
return str ?? '';
|
|
1008
|
+
}
|
|
1009
|
+
return str.replace(HTML_ESCAPE_REGEX, (char)=>HTML_ESCAPE_MAP[char]);
|
|
1010
|
+
}
|
|
1011
|
+
/**
|
|
1012
|
+
* Escapes all string values in a variables object for safe HTML interpolation.
|
|
1013
|
+
* Non-string values are converted to strings and escaped.
|
|
1014
|
+
*
|
|
1015
|
+
* @param variables - Object containing template variables
|
|
1016
|
+
* @returns New object with all string values HTML-escaped
|
|
1017
|
+
*
|
|
1018
|
+
* @example
|
|
1019
|
+
* ```typescript
|
|
1020
|
+
* escapeHtmlVariables({ name: '<script>xss</script>', count: 5 })
|
|
1021
|
+
* // Returns: { name: '<script>xss</script>', count: '5' }
|
|
1022
|
+
* ```
|
|
1023
|
+
*/ function escapeHtmlVariables(variables) {
|
|
1024
|
+
if (!variables || typeof variables !== 'object') {
|
|
1025
|
+
return {};
|
|
1026
|
+
}
|
|
1027
|
+
const escaped = {};
|
|
1028
|
+
for (const [key, value] of Object.entries(variables)){
|
|
1029
|
+
if (value === null || value === undefined) {
|
|
1030
|
+
escaped[key] = '';
|
|
1031
|
+
} else if (typeof value === 'string') {
|
|
1032
|
+
escaped[key] = escapeHtml(value);
|
|
1033
|
+
} else if (typeof value === 'object') {
|
|
1034
|
+
// For objects/arrays, stringify and escape
|
|
1035
|
+
escaped[key] = escapeHtml(JSON.stringify(value));
|
|
1036
|
+
} else {
|
|
1037
|
+
// For numbers, booleans, etc., convert to string (no escaping needed)
|
|
1038
|
+
escaped[key] = String(value);
|
|
1039
|
+
}
|
|
1040
|
+
}
|
|
1041
|
+
return escaped;
|
|
1042
|
+
}
|
|
1043
|
+
|
|
1044
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/utils/optional-module.util.ts
|
|
1045
|
+
var optional_module_util = __webpack_require__(368);
|
|
1046
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/utils/permission-cache-key.util.ts
|
|
1047
|
+
var permission_cache_key_util = __webpack_require__(199);
|
|
1048
|
+
// EXTERNAL MODULE: external "@nestjs/common"
|
|
1049
|
+
var common_ = __webpack_require__(157);
|
|
1050
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/constants/message-keys.ts
|
|
1051
|
+
var message_keys = __webpack_require__(389);
|
|
1052
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/utils/query-helpers.util.ts
|
|
1053
|
+
|
|
1054
|
+
|
|
1055
|
+
/**
|
|
1056
|
+
* Apply company filter to a query builder if company feature is enabled.
|
|
1057
|
+
* Centralizes the common pattern of filtering by user's company.
|
|
1058
|
+
*
|
|
1059
|
+
* @param query - TypeORM SelectQueryBuilder
|
|
1060
|
+
* @param config - Company filter configuration
|
|
1061
|
+
* @param user - Current logged user (may be null)
|
|
1062
|
+
* @returns The modified query builder
|
|
1063
|
+
*
|
|
1064
|
+
* @example
|
|
1065
|
+
* ```typescript
|
|
1066
|
+
* applyCompanyFilter(query, {
|
|
1067
|
+
* isCompanyFeatureEnabled: this.config.isCompanyFeatureEnabled(),
|
|
1068
|
+
* entityAlias: 'file_manager',
|
|
1069
|
+
* }, user);
|
|
1070
|
+
* ```
|
|
1071
|
+
*/ function applyCompanyFilter(query, config, user) {
|
|
1072
|
+
const columnName = config.columnName ?? 'companyId';
|
|
1073
|
+
if (config.isCompanyFeatureEnabled && user?.companyId) {
|
|
1074
|
+
query.andWhere(`${config.entityAlias}.${columnName} = :companyId`, {
|
|
1075
|
+
companyId: user.companyId
|
|
1076
|
+
});
|
|
1077
|
+
}
|
|
1078
|
+
return query;
|
|
1079
|
+
}
|
|
1080
|
+
/**
|
|
1081
|
+
* Build a where condition object with optional company filter.
|
|
1082
|
+
*
|
|
1083
|
+
* @param baseWhere - Base where condition object
|
|
1084
|
+
* @param isCompanyFeatureEnabled - Whether company feature is enabled
|
|
1085
|
+
* @param user - Current logged user
|
|
1086
|
+
* @returns Where condition with companyId added if applicable
|
|
1087
|
+
*
|
|
1088
|
+
* @example
|
|
1089
|
+
* ```typescript
|
|
1090
|
+
* const where = buildCompanyWhereCondition(
|
|
1091
|
+
* { id: dto.id },
|
|
1092
|
+
* this.config.isCompanyFeatureEnabled(),
|
|
1093
|
+
* user
|
|
1094
|
+
* );
|
|
1095
|
+
* // Returns { id: dto.id, companyId: user.companyId } if company feature enabled
|
|
1096
|
+
* ```
|
|
1097
|
+
*/ function buildCompanyWhereCondition(baseWhere, isCompanyFeatureEnabled, user) {
|
|
1098
|
+
if (isCompanyFeatureEnabled && user?.companyId) {
|
|
1099
|
+
return {
|
|
1100
|
+
...baseWhere,
|
|
1101
|
+
companyId: user.companyId
|
|
1102
|
+
};
|
|
1103
|
+
}
|
|
1104
|
+
return baseWhere;
|
|
1105
|
+
}
|
|
1106
|
+
/**
|
|
1107
|
+
* Type guard to check if entity has companyId property
|
|
1108
|
+
*/ function hasCompanyId(entity) {
|
|
1109
|
+
return entity !== null && typeof entity === 'object' && 'companyId' in entity;
|
|
1110
|
+
}
|
|
1111
|
+
/**
|
|
1112
|
+
* Validates that an entity with companyId belongs to the user's company.
|
|
1113
|
+
* Throws BadRequestException if the entity belongs to another company.
|
|
1114
|
+
*
|
|
1115
|
+
* @param entity - Entity to validate
|
|
1116
|
+
* @param user - Current logged user
|
|
1117
|
+
* @param isCompanyFeatureEnabled - Whether company feature is enabled
|
|
1118
|
+
* @param entityName - Name of entity for error message (e.g., 'Email configuration')
|
|
1119
|
+
* @throws BadRequestException if entity belongs to another company
|
|
1120
|
+
*
|
|
1121
|
+
* @example
|
|
1122
|
+
* ```typescript
|
|
1123
|
+
* validateCompanyOwnership(config, user, this.config.isCompanyFeatureEnabled(), 'Email configuration');
|
|
1124
|
+
* ```
|
|
1125
|
+
*/ function validateCompanyOwnership(entity, user, isCompanyFeatureEnabled, entityName) {
|
|
1126
|
+
if (isCompanyFeatureEnabled && user?.companyId && hasCompanyId(entity)) {
|
|
1127
|
+
if (entity.companyId && entity.companyId !== user.companyId) {
|
|
1128
|
+
throw new common_.BadRequestException({
|
|
1129
|
+
message: `${entityName} belongs to another company`,
|
|
1130
|
+
messageKey: message_keys/* .AUTH_MESSAGES.ENTITY_BELOG_ANOTHER_COMPANY */.mK.ENTITY_BELOG_ANOTHER_COMPANY,
|
|
1131
|
+
messageVariables: {
|
|
1132
|
+
entity: entityName
|
|
1133
|
+
}
|
|
1134
|
+
});
|
|
1135
|
+
}
|
|
1136
|
+
}
|
|
1137
|
+
}
|
|
1138
|
+
|
|
1139
|
+
// EXTERNAL MODULE: external "@flusys/nestjs-core/config"
|
|
1140
|
+
var config_ = __webpack_require__(307);
|
|
1141
|
+
// EXTERNAL MODULE: ./projects/nestjs-shared/src/constants/index.ts
|
|
1142
|
+
var constants = __webpack_require__(43);
|
|
1143
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/utils/request.util.ts
|
|
1144
|
+
|
|
1145
|
+
|
|
1146
|
+
|
|
1147
|
+
/** Time unit multipliers in milliseconds */ const TIME_UNIT_MS = {
|
|
1148
|
+
s: 1000,
|
|
1149
|
+
m: 60 * 1000,
|
|
1150
|
+
h: 60 * 60 * 1000,
|
|
1151
|
+
d: 24 * 60 * 60 * 1000,
|
|
1152
|
+
w: 7 * 24 * 60 * 60 * 1000
|
|
1153
|
+
};
|
|
1154
|
+
/** Get normalized client type from request header */ function getClientType(req) {
|
|
1155
|
+
const clientType = req.headers[constants/* .CLIENT_TYPE_HEADER */.xw];
|
|
1156
|
+
return clientType ? clientType.toLowerCase() : null;
|
|
1157
|
+
}
|
|
1158
|
+
/**
|
|
1159
|
+
* Detect if request is from a browser client.
|
|
1160
|
+
* Uses x-client-type header first, then falls back to user-agent detection.
|
|
1161
|
+
*/ function isBrowserRequest(req) {
|
|
1162
|
+
const clientType = getClientType(req);
|
|
1163
|
+
if (clientType) {
|
|
1164
|
+
return clientType === 'browser' || clientType === 'web';
|
|
1165
|
+
}
|
|
1166
|
+
const accept = req.headers['accept'] || '';
|
|
1167
|
+
if (accept.includes('text/html')) return true;
|
|
1168
|
+
const userAgent = req.headers['user-agent'] || '';
|
|
1169
|
+
const browserPatterns = /mozilla|chrome|safari|firefox|edge|opera|msie/i;
|
|
1170
|
+
return browserPatterns.test(userAgent) && !userAgent.includes('Postman');
|
|
1171
|
+
}
|
|
1172
|
+
/**
|
|
1173
|
+
* Build secure cookie options based on request context.
|
|
1174
|
+
* Handles HTTPS detection for TLS-terminating proxies.
|
|
1175
|
+
*/ function buildCookieOptions(req) {
|
|
1176
|
+
const hostname = req.hostname || '';
|
|
1177
|
+
const origin = req.headers.origin || '';
|
|
1178
|
+
const isProduction = config_.envConfig.isProduction();
|
|
1179
|
+
const forwardedProto = req.headers['x-forwarded-proto'];
|
|
1180
|
+
const isHttps = isProduction || forwardedProto === 'https' || origin.startsWith('https://') || req.secure;
|
|
1181
|
+
let domain;
|
|
1182
|
+
const domainParts = hostname.split('.');
|
|
1183
|
+
if (domainParts.length > 2 && !hostname.includes('localhost')) {
|
|
1184
|
+
domain = '.' + domainParts.slice(-2).join('.');
|
|
1185
|
+
}
|
|
1186
|
+
return {
|
|
1187
|
+
secure: isHttps,
|
|
1188
|
+
sameSite: isHttps ? 'strict' : 'lax',
|
|
1189
|
+
...domain && {
|
|
1190
|
+
domain
|
|
1191
|
+
}
|
|
1192
|
+
};
|
|
1193
|
+
}
|
|
1194
|
+
/**
|
|
1195
|
+
* Parse duration string to milliseconds.
|
|
1196
|
+
* @example '7d' → 604800000, '24h' → 86400000, '30m' → 1800000
|
|
1197
|
+
*/ function parseDurationToMs(duration, defaultMs = TIME_UNIT_MS.w) {
|
|
1198
|
+
const match = duration.match(/^(\d+)(s|m|h|d|w)$/);
|
|
1199
|
+
if (!match) return defaultMs;
|
|
1200
|
+
const value = parseInt(match[1], 10);
|
|
1201
|
+
const unit = match[2];
|
|
1202
|
+
return value * (TIME_UNIT_MS[unit] ?? TIME_UNIT_MS.d);
|
|
1203
|
+
}
|
|
1204
|
+
/**
|
|
1205
|
+
* Determine the frontend base URL for auth-related links.
|
|
1206
|
+
* Matches the request's Origin/Referer against configured allowed origins.
|
|
1207
|
+
* Never trusts the request's Host header - it is client-controlled and would
|
|
1208
|
+
* let an attacker redirect password-reset/verification links to their own domain.
|
|
1209
|
+
*/ function extractFrontendUrl(req) {
|
|
1210
|
+
const allowedOrigins = config_.envConfig.getOrigins();
|
|
1211
|
+
const origin = (req.get('origin') ?? req.get('referer') ?? '').trim();
|
|
1212
|
+
if (origin && allowedOrigins.length) {
|
|
1213
|
+
const matched = allowedOrigins.find((u)=>origin.startsWith(u));
|
|
1214
|
+
if (matched) {
|
|
1215
|
+
return matched;
|
|
1216
|
+
}
|
|
1217
|
+
}
|
|
1218
|
+
if (allowedOrigins.length) {
|
|
1219
|
+
return allowedOrigins[0];
|
|
1220
|
+
}
|
|
1221
|
+
throw new common_.BadRequestException({
|
|
1222
|
+
message: 'Unable to determine frontend URL from request',
|
|
1223
|
+
messageKey: message_keys/* .ERROR_MESSAGES.VALIDATION */.UU.VALIDATION
|
|
1224
|
+
});
|
|
1225
|
+
}
|
|
1226
|
+
function buildFrontendUrl(req, path) {
|
|
1227
|
+
const baseUrl = extractFrontendUrl(req);
|
|
1228
|
+
return `${baseUrl}${path}`;
|
|
1229
|
+
}
|
|
1230
|
+
|
|
1231
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/utils/string.util.ts
|
|
1232
|
+
/**
|
|
1233
|
+
* String utility functions
|
|
1234
|
+
*/ /**
|
|
1235
|
+
* Generate URL-friendly slug from a string
|
|
1236
|
+
* @param text - The text to convert to slug
|
|
1237
|
+
* @param maxLength - Maximum length of the slug (default: 100)
|
|
1238
|
+
* @returns URL-friendly slug
|
|
1239
|
+
*
|
|
1240
|
+
* @example
|
|
1241
|
+
* generateSlug('My Company Name') // 'my-company-name'
|
|
1242
|
+
* generateSlug('Hello World!') // 'hello-world'
|
|
1243
|
+
*/ function generateSlug(text, maxLength = 100) {
|
|
1244
|
+
return text.toLowerCase().trim().replace(/[^a-z0-9\s-]/g, '') // Remove special characters
|
|
1245
|
+
.replace(/\s+/g, '-') // Replace spaces with hyphens
|
|
1246
|
+
.replace(/-+/g, '-') // Replace multiple hyphens with single
|
|
1247
|
+
.replace(/^-+|-+$/g, '') // Remove leading/trailing hyphens
|
|
1248
|
+
.substring(0, maxLength);
|
|
1249
|
+
}
|
|
1250
|
+
/**
|
|
1251
|
+
* Generate unique slug using single database query (optimized for large datasets)
|
|
1252
|
+
* Appends numeric suffix if collision exists (e.g., 'my-company-1', 'my-company-2')
|
|
1253
|
+
*
|
|
1254
|
+
* Performance: O(1) database query regardless of collision count
|
|
1255
|
+
* - Works efficiently with millions of records
|
|
1256
|
+
* - Requires index on slug column for best performance
|
|
1257
|
+
*
|
|
1258
|
+
* @param text - The text to convert to slug
|
|
1259
|
+
* @param findMatchingSlugs - Async function that returns all slugs matching base pattern
|
|
1260
|
+
* Should query: WHERE slug = baseSlug OR slug LIKE 'baseSlug-%'
|
|
1261
|
+
* @param maxLength - Maximum length of the base slug (default: 100)
|
|
1262
|
+
* @returns Unique URL-friendly slug
|
|
1263
|
+
*
|
|
1264
|
+
* @example
|
|
1265
|
+
* const slug = await generateUniqueSlug('My Company', async (baseSlug) => {
|
|
1266
|
+
* return repo
|
|
1267
|
+
* .createQueryBuilder('c')
|
|
1268
|
+
* .select('c.slug')
|
|
1269
|
+
* .where('c.slug = :base OR c.slug LIKE :pattern', {
|
|
1270
|
+
* base: baseSlug,
|
|
1271
|
+
* pattern: `${baseSlug}-%`,
|
|
1272
|
+
* })
|
|
1273
|
+
* .getMany()
|
|
1274
|
+
* .then(rows => rows.map(r => r.slug));
|
|
1275
|
+
* });
|
|
1276
|
+
*/ async function generateUniqueSlug(text, findMatchingSlugs, maxLength = 100) {
|
|
1277
|
+
const baseSlug = generateSlug(text, maxLength);
|
|
1278
|
+
// Single query to get all matching slugs
|
|
1279
|
+
const existingSlugs = await findMatchingSlugs(baseSlug);
|
|
1280
|
+
// No collisions - base slug is available
|
|
1281
|
+
if (existingSlugs.length === 0) {
|
|
1282
|
+
return baseSlug;
|
|
1283
|
+
}
|
|
1284
|
+
// Build set for O(1) lookup
|
|
1285
|
+
const existingSet = new Set(existingSlugs);
|
|
1286
|
+
// Base slug not taken (only suffixed versions exist)
|
|
1287
|
+
if (!existingSet.has(baseSlug)) {
|
|
1288
|
+
return baseSlug;
|
|
1289
|
+
}
|
|
1290
|
+
// Find next available suffix in memory (fast)
|
|
1291
|
+
let counter = 1;
|
|
1292
|
+
while(counter < 10000){
|
|
1293
|
+
const slugWithSuffix = `${baseSlug}-${counter}`;
|
|
1294
|
+
if (!existingSet.has(slugWithSuffix)) {
|
|
1295
|
+
return slugWithSuffix;
|
|
1296
|
+
}
|
|
1297
|
+
counter++;
|
|
1298
|
+
}
|
|
1299
|
+
// Fallback: append random string (extremely rare edge case)
|
|
1300
|
+
const randomSuffix = Math.random().toString(36).substring(2, 8);
|
|
1301
|
+
return `${baseSlug}-${randomSuffix}`;
|
|
1302
|
+
}
|
|
1303
|
+
|
|
1304
|
+
;// CONCATENATED MODULE: ./projects/nestjs-shared/src/utils/index.ts
|
|
1305
|
+
|
|
1306
|
+
|
|
1307
|
+
|
|
1308
|
+
|
|
1309
|
+
|
|
1310
|
+
|
|
1311
|
+
|
|
1312
|
+
|
|
1313
|
+
|
|
1314
|
+
|
|
1315
|
+
},
|
|
1316
|
+
368(__unused_rspack_module, __webpack_exports__, __webpack_require__) {
|
|
1317
|
+
/**
|
|
1318
|
+
* Loads an optional peer dependency at runtime.
|
|
1319
|
+
*
|
|
1320
|
+
* The specifier has to stay invisible to the bundler. A plain `import(name)`
|
|
1321
|
+
* looks dynamic in source but webpack rewrites it into a context module rooted
|
|
1322
|
+
* at this directory - one that can only ever resolve files sitting next to this
|
|
1323
|
+
* one - so `amqplib` and `kafkajs` fail to load in the bundled app no matter how
|
|
1324
|
+
* correctly they are installed. Both lookups below are assembled at runtime,
|
|
1325
|
+
* where no bundler can rewrite them.
|
|
1326
|
+
*
|
|
1327
|
+
* `require` is used first because it is what the CommonJS builds actually run
|
|
1328
|
+
* on; native ESM has no `require`, and there `import()` is the only way in.
|
|
1329
|
+
*/ async function loadOptionalModule(name) {
|
|
1330
|
+
const runtimeRequire = resolveRuntimeRequire();
|
|
1331
|
+
if (runtimeRequire) return runtimeRequire(name);
|
|
1332
|
+
const runtimeImport = new Function('specifier', 'return import(specifier);');
|
|
1333
|
+
return runtimeImport(name);
|
|
1334
|
+
}
|
|
1335
|
+
/** Undefined under native ESM and inside a bundle that shadows nothing back */ function resolveRuntimeRequire() {
|
|
1336
|
+
try {
|
|
1337
|
+
return eval('typeof require === "function" ? require : undefined');
|
|
1338
|
+
} catch {
|
|
1339
|
+
return undefined;
|
|
1340
|
+
}
|
|
1341
|
+
}
|
|
1342
|
+
|
|
1343
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
1344
|
+
l: () => (loadOptionalModule)
|
|
1345
|
+
});
|
|
1346
|
+
|
|
1347
|
+
|
|
1348
|
+
},
|
|
1349
|
+
|
|
1350
|
+
};
|
|
1351
|
+
import { __webpack_require__ } from './runtime.js';
|
|
1352
|
+
var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
|
|
1353
|
+
import * as __rspack_chunk_1 from './720.js';
|
|
1354
|
+
__webpack_require__.C(__rspack_chunk_1);
|
|
1355
|
+
import * as __rspack_chunk_2 from './509.js';
|
|
1356
|
+
__webpack_require__.C(__rspack_chunk_2);
|
|
1357
|
+
import * as __rspack_chunk_3 from './67.js';
|
|
1358
|
+
__webpack_require__.C(__rspack_chunk_3);
|
|
1359
|
+
import * as __rspack_chunk_4 from './470.js';
|
|
1360
|
+
__webpack_require__.C(__rspack_chunk_4);
|
|
1361
|
+
import * as __rspack_chunk_5 from './667.js';
|
|
1362
|
+
__webpack_require__.C(__rspack_chunk_5);
|
|
1363
|
+
import * as __rspack_chunk_6 from './index.js';
|
|
1364
|
+
__webpack_require__.C(__rspack_chunk_6);
|
|
1365
|
+
var __webpack_exports__ = __webpack_exec__(560);var __webpack_exports__ACTION_PERMISSIONS = __webpack_exports__.Y7;
|
|
1366
|
+
var __webpack_exports__AI_ASSISTANT_AUTH_PROVIDER = __webpack_exports__.Fi;
|
|
1367
|
+
var __webpack_exports__AI_ASSISTANT_PERMISSIONS = __webpack_exports__.Bz;
|
|
1368
|
+
var __webpack_exports__AI_ASSISTANT_TOOL_PROVIDER = __webpack_exports__.Hb;
|
|
1369
|
+
var __webpack_exports__AI_ASSISTANT_USER_LOOKUP_PROVIDER = __webpack_exports__.T4;
|
|
1370
|
+
var __webpack_exports__AUTH_MESSAGES = __webpack_exports__.mK;
|
|
1371
|
+
var __webpack_exports__ApiResponseDto = __webpack_exports__.x_;
|
|
1372
|
+
var __webpack_exports__ApiService = __webpack_exports__.Gf;
|
|
1373
|
+
var __webpack_exports__BRANCH_PERMISSIONS = __webpack_exports__.wA;
|
|
1374
|
+
var __webpack_exports__BaseAppException = __webpack_exports__.m8;
|
|
1375
|
+
var __webpack_exports__BulkMetaDto = __webpack_exports__.L3;
|
|
1376
|
+
var __webpack_exports__BulkResponseDto = __webpack_exports__.jS;
|
|
1377
|
+
var __webpack_exports__CACHE_INSTANCE = __webpack_exports__.zl;
|
|
1378
|
+
var __webpack_exports__CLIENT_TYPE_HEADER = __webpack_exports__.xw;
|
|
1379
|
+
var __webpack_exports__COMPANY_ACTION_PERMISSIONS = __webpack_exports__.aO;
|
|
1380
|
+
var __webpack_exports__COMPANY_PERMISSIONS = __webpack_exports__.t$;
|
|
1381
|
+
var __webpack_exports__CacheModule = __webpack_exports__.vd;
|
|
1382
|
+
var __webpack_exports__ConflictException = __webpack_exports__.cb;
|
|
1383
|
+
var __webpack_exports__CurrentUser = __webpack_exports__.NO;
|
|
1384
|
+
var __webpack_exports__DEFAULT_COMPANY_PERMISSION_KEY_FORMAT = __webpack_exports__.s8;
|
|
1385
|
+
var __webpack_exports__DEFAULT_EVENT_EXCHANGE = __webpack_exports__.Hq;
|
|
1386
|
+
var __webpack_exports__DEFAULT_EVENT_SERVICE_NAME = __webpack_exports__.Fg;
|
|
1387
|
+
var __webpack_exports__DEFAULT_EVENT_TOPIC = __webpack_exports__.nx;
|
|
1388
|
+
var __webpack_exports__DEFAULT_USER_PERMISSION_KEY_FORMAT = __webpack_exports__.q6;
|
|
1389
|
+
var __webpack_exports__DOMAIN_EVENT_HANDLER_KEY = __webpack_exports__.PT;
|
|
1390
|
+
var __webpack_exports__DOMAIN_EVENT_VERSION = __webpack_exports__.xC;
|
|
1391
|
+
var __webpack_exports__DeleteDto = __webpack_exports__.TG;
|
|
1392
|
+
var __webpack_exports__DeleteEmptyIdFromBodyInterceptor = __webpack_exports__.nd;
|
|
1393
|
+
var __webpack_exports__DisabledEventBus = __webpack_exports__.XI;
|
|
1394
|
+
var __webpack_exports__EMAIL_CONFIG_PERMISSIONS = __webpack_exports__.V0;
|
|
1395
|
+
var __webpack_exports__EMAIL_TEMPLATE_PERMISSIONS = __webpack_exports__.z$;
|
|
1396
|
+
var __webpack_exports__ERROR_MESSAGES = __webpack_exports__.UU;
|
|
1397
|
+
var __webpack_exports__EVENT_BUS_INSTANCE = __webpack_exports__.Qj;
|
|
1398
|
+
var __webpack_exports__EVENT_BUS_MODULE_OPTIONS = __webpack_exports__.SL;
|
|
1399
|
+
var __webpack_exports__EVENT_MANAGER_ADAPTER = __webpack_exports__.LO;
|
|
1400
|
+
var __webpack_exports__EVENT_PERMISSIONS = __webpack_exports__.Ub;
|
|
1401
|
+
var __webpack_exports__EventBusExplorer = __webpack_exports__.K6;
|
|
1402
|
+
var __webpack_exports__EventBusModule = __webpack_exports__.Zv;
|
|
1403
|
+
var __webpack_exports__EventBusRegistry = __webpack_exports__.qS;
|
|
1404
|
+
var __webpack_exports__EventTransportRegistry = __webpack_exports__.Pm;
|
|
1405
|
+
var __webpack_exports__FILE_PERMISSIONS = __webpack_exports__.S6;
|
|
1406
|
+
var __webpack_exports__FOLDER_PERMISSIONS = __webpack_exports__.wM;
|
|
1407
|
+
var __webpack_exports__FORM_PERMISSIONS = __webpack_exports__.Wc;
|
|
1408
|
+
var __webpack_exports__FORM_RESULT_PERMISSIONS = __webpack_exports__.GT;
|
|
1409
|
+
var __webpack_exports__FilterAndPaginationDto = __webpack_exports__.x;
|
|
1410
|
+
var __webpack_exports__ForbiddenException = __webpack_exports__.ZT;
|
|
1411
|
+
var __webpack_exports__GetByIdBodyDto = __webpack_exports__.a8;
|
|
1412
|
+
var __webpack_exports__GetByIdsDto = __webpack_exports__.H$;
|
|
1413
|
+
var __webpack_exports__GlobalExceptionFilter = __webpack_exports__.Dj;
|
|
1414
|
+
var __webpack_exports__HybridCache = __webpack_exports__.lx;
|
|
1415
|
+
var __webpack_exports__HybridEventBus = __webpack_exports__.Zk;
|
|
1416
|
+
var __webpack_exports__IDEMPOTENCY_CACHE_PREFIX = __webpack_exports__.mg;
|
|
1417
|
+
var __webpack_exports__IDEMPOTENCY_KEY_HEADER = __webpack_exports__.iH;
|
|
1418
|
+
var __webpack_exports__IS_PUBLIC_KEY = __webpack_exports__.jA;
|
|
1419
|
+
var __webpack_exports__IdempotencyInterceptor = __webpack_exports__.Bw;
|
|
1420
|
+
var __webpack_exports__Identity = __webpack_exports__.lz;
|
|
1421
|
+
var __webpack_exports__IdentityResponseDto = __webpack_exports__.Jg;
|
|
1422
|
+
var __webpack_exports__InsufficientPermissionsException = __webpack_exports__.z8;
|
|
1423
|
+
var __webpack_exports__InternalServerException = __webpack_exports__.GI;
|
|
1424
|
+
var __webpack_exports__JwtAuthGuard = __webpack_exports__.TD;
|
|
1425
|
+
var __webpack_exports__LANGUAGE_PERMISSIONS = __webpack_exports__.Q5;
|
|
1426
|
+
var __webpack_exports__ListResponseDto = __webpack_exports__.TW;
|
|
1427
|
+
var __webpack_exports__LogAction = __webpack_exports__.Jz;
|
|
1428
|
+
var __webpack_exports__LoggerMiddleware = __webpack_exports__.pq;
|
|
1429
|
+
var __webpack_exports__MemoryTransport = __webpack_exports__.PS;
|
|
1430
|
+
var __webpack_exports__MessageResponseDto = __webpack_exports__.qs;
|
|
1431
|
+
var __webpack_exports__MultiTenantDataSourceService = __webpack_exports__.Ct;
|
|
1432
|
+
var __webpack_exports__NOTIFICATION_ADAPTER = __webpack_exports__.KR;
|
|
1433
|
+
var __webpack_exports__NOTIFICATION_PERMISSIONS = __webpack_exports__.rH;
|
|
1434
|
+
var __webpack_exports__NoPermissionsFoundException = __webpack_exports__.d$;
|
|
1435
|
+
var __webpack_exports__NotFoundException = __webpack_exports__.X6;
|
|
1436
|
+
var __webpack_exports__NotificationType = __webpack_exports__._n;
|
|
1437
|
+
var __webpack_exports__OnDomainEvent = __webpack_exports__.kd;
|
|
1438
|
+
var __webpack_exports__OptionalJwtGuard = __webpack_exports__.Zb;
|
|
1439
|
+
var __webpack_exports__PERMISSIONS = __webpack_exports__.Jj;
|
|
1440
|
+
var __webpack_exports__PERMISSIONS_CACHE_PREFIX = __webpack_exports__.fG;
|
|
1441
|
+
var __webpack_exports__PERMISSIONS_KEY = __webpack_exports__.N7;
|
|
1442
|
+
var __webpack_exports__PERMISSION_GUARD_CONFIG = __webpack_exports__.Lw;
|
|
1443
|
+
var __webpack_exports__PERMISSION_SYNC_ADAPTER = __webpack_exports__.kF;
|
|
1444
|
+
var __webpack_exports__PaginationDto = __webpack_exports__.IE;
|
|
1445
|
+
var __webpack_exports__PaginationMetaDto = __webpack_exports__.DD;
|
|
1446
|
+
var __webpack_exports__ParticipantStatus = __webpack_exports__.cD;
|
|
1447
|
+
var __webpack_exports__PermissionGuard = __webpack_exports__.LQ;
|
|
1448
|
+
var __webpack_exports__PermissionSystemUnavailableException = __webpack_exports__.GS;
|
|
1449
|
+
var __webpack_exports__Public = __webpack_exports__.w3;
|
|
1450
|
+
var __webpack_exports__REQUEST_ID_HEADER = __webpack_exports__.kC;
|
|
1451
|
+
var __webpack_exports__ROLE_ACTION_PERMISSIONS = __webpack_exports__.P0;
|
|
1452
|
+
var __webpack_exports__ROLE_PERMISSIONS = __webpack_exports__.mV;
|
|
1453
|
+
var __webpack_exports__RecurrenceType = __webpack_exports__.V5;
|
|
1454
|
+
var __webpack_exports__RequestMetaDto = __webpack_exports__.g$;
|
|
1455
|
+
var __webpack_exports__RequireAnyPermission = __webpack_exports__.Dz;
|
|
1456
|
+
var __webpack_exports__RequirePermission = __webpack_exports__.Tw;
|
|
1457
|
+
var __webpack_exports__RequirePermissionLogic = __webpack_exports__.rY;
|
|
1458
|
+
var __webpack_exports__ResponseMetaInterceptor = __webpack_exports__.c_;
|
|
1459
|
+
var __webpack_exports__SOCIAL_AUTH_CONFIG_PERMISSIONS = __webpack_exports__.l3;
|
|
1460
|
+
var __webpack_exports__STORAGE_CONFIG_PERMISSIONS = __webpack_exports__.Em;
|
|
1461
|
+
var __webpack_exports__SYSTEM_MESSAGES = __webpack_exports__.hg;
|
|
1462
|
+
var __webpack_exports__ServiceUnavailableException = __webpack_exports__.ld;
|
|
1463
|
+
var __webpack_exports__SetCreatedByOnBody = __webpack_exports__.VS;
|
|
1464
|
+
var __webpack_exports__SetDeletedByOnBody = __webpack_exports__.Ul;
|
|
1465
|
+
var __webpack_exports__SetUpdateByOnBody = __webpack_exports__._x;
|
|
1466
|
+
var __webpack_exports__SharedPermissionCacheModule = __webpack_exports__.nE;
|
|
1467
|
+
var __webpack_exports__SharedPermissionCacheService = __webpack_exports__.U8;
|
|
1468
|
+
var __webpack_exports__SingleResponseDto = __webpack_exports__.f;
|
|
1469
|
+
var __webpack_exports__Slug = __webpack_exports__.Mw;
|
|
1470
|
+
var __webpack_exports__TASK_BOARD_PERMISSIONS = __webpack_exports__.Y3;
|
|
1471
|
+
var __webpack_exports__TASK_COMMENT_PERMISSIONS = __webpack_exports__.zd;
|
|
1472
|
+
var __webpack_exports__TASK_LABEL_PERMISSIONS = __webpack_exports__.UG;
|
|
1473
|
+
var __webpack_exports__TASK_LIST_PERMISSIONS = __webpack_exports__.ON;
|
|
1474
|
+
var __webpack_exports__TASK_PERMISSIONS = __webpack_exports__.T;
|
|
1475
|
+
var __webpack_exports__TRANSLATION_KEY_PERMISSIONS = __webpack_exports__.N3;
|
|
1476
|
+
var __webpack_exports__TRANSLATION_PERMISSIONS = __webpack_exports__.fS;
|
|
1477
|
+
var __webpack_exports__UPLOAD_CONFIG_PERMISSIONS = __webpack_exports__.UB;
|
|
1478
|
+
var __webpack_exports__USER_ACTION_PERMISSIONS = __webpack_exports__._X;
|
|
1479
|
+
var __webpack_exports__USER_PERMISSIONS = __webpack_exports__.BC;
|
|
1480
|
+
var __webpack_exports__USER_ROLE_PERMISSIONS = __webpack_exports__.w7;
|
|
1481
|
+
var __webpack_exports__UnauthorizedException = __webpack_exports__._W;
|
|
1482
|
+
var __webpack_exports__UserRoot = __webpack_exports__.q7;
|
|
1483
|
+
var __webpack_exports__UtilsModule = __webpack_exports__.uh;
|
|
1484
|
+
var __webpack_exports__UtilsService = __webpack_exports__.TJ;
|
|
1485
|
+
var __webpack_exports__ValidationException = __webpack_exports__.dr;
|
|
1486
|
+
var __webpack_exports__applyCompanyFilter = __webpack_exports__.wf;
|
|
1487
|
+
var __webpack_exports__buildCompanyWhereCondition = __webpack_exports__.kQ;
|
|
1488
|
+
var __webpack_exports__buildCookieOptions = __webpack_exports__.fJ;
|
|
1489
|
+
var __webpack_exports__buildDomainEvent = __webpack_exports__.rv;
|
|
1490
|
+
var __webpack_exports__buildFrontendUrl = __webpack_exports__.oV;
|
|
1491
|
+
var __webpack_exports__buildPermissionCacheKey = __webpack_exports__.nt;
|
|
1492
|
+
var __webpack_exports__buildQuery = __webpack_exports__.Zq;
|
|
1493
|
+
var __webpack_exports__createApiController = __webpack_exports__.RD;
|
|
1494
|
+
var __webpack_exports__createModuleEventsProvider = __webpack_exports__.fv;
|
|
1495
|
+
var __webpack_exports__createModuleLogger = __webpack_exports__.Xv;
|
|
1496
|
+
var __webpack_exports__createSetUserFieldInterceptor = __webpack_exports__.BR;
|
|
1497
|
+
var __webpack_exports__escapeHtml = __webpack_exports__.ZD;
|
|
1498
|
+
var __webpack_exports__escapeHtmlVariables = __webpack_exports__.qo;
|
|
1499
|
+
var __webpack_exports__extractFrontendUrl = __webpack_exports__.hX;
|
|
1500
|
+
var __webpack_exports__formatInTimezone = __webpack_exports__.Sd;
|
|
1501
|
+
var __webpack_exports__generateSlug = __webpack_exports__.z9;
|
|
1502
|
+
var __webpack_exports__generateUniqueSlug = __webpack_exports__.oo;
|
|
1503
|
+
var __webpack_exports__getCastIntType = __webpack_exports__.Tj;
|
|
1504
|
+
var __webpack_exports__getCompanyId = __webpack_exports__.xR;
|
|
1505
|
+
var __webpack_exports__getJsonColumnType = __webpack_exports__.pf;
|
|
1506
|
+
var __webpack_exports__getRequestId = __webpack_exports__.RE;
|
|
1507
|
+
var __webpack_exports__getTenantId = __webpack_exports__.EO;
|
|
1508
|
+
var __webpack_exports__getTodayInTimezone = __webpack_exports__.oB;
|
|
1509
|
+
var __webpack_exports__getUserId = __webpack_exports__.F6;
|
|
1510
|
+
var __webpack_exports__hasCompanyId = __webpack_exports__.yx;
|
|
1511
|
+
var __webpack_exports__instance = __webpack_exports__.KJ;
|
|
1512
|
+
var __webpack_exports__isBrowserRequest = __webpack_exports__.wh;
|
|
1513
|
+
var __webpack_exports__isMultiWildcard = __webpack_exports__._c;
|
|
1514
|
+
var __webpack_exports__loadOptionalModule = __webpack_exports__.lk;
|
|
1515
|
+
var __webpack_exports__localToUtc = __webpack_exports__.vf;
|
|
1516
|
+
var __webpack_exports__matchEventPattern = __webpack_exports__.qe;
|
|
1517
|
+
var __webpack_exports__moduleEventsToken = __webpack_exports__.Ri;
|
|
1518
|
+
var __webpack_exports__parseDurationToMs = __webpack_exports__.Ju;
|
|
1519
|
+
var __webpack_exports__publishDomainEvent = __webpack_exports__.wT;
|
|
1520
|
+
var __webpack_exports__requestContext = __webpack_exports__.V8;
|
|
1521
|
+
var __webpack_exports__sanitizeEventPayload = __webpack_exports__.IN;
|
|
1522
|
+
var __webpack_exports__utcToLocal = __webpack_exports__.v4;
|
|
1523
|
+
var __webpack_exports__validateCompanyOwnership = __webpack_exports__.bE;
|
|
1524
|
+
export { __webpack_exports__ACTION_PERMISSIONS as ACTION_PERMISSIONS, __webpack_exports__AI_ASSISTANT_AUTH_PROVIDER as AI_ASSISTANT_AUTH_PROVIDER, __webpack_exports__AI_ASSISTANT_PERMISSIONS as AI_ASSISTANT_PERMISSIONS, __webpack_exports__AI_ASSISTANT_TOOL_PROVIDER as AI_ASSISTANT_TOOL_PROVIDER, __webpack_exports__AI_ASSISTANT_USER_LOOKUP_PROVIDER as AI_ASSISTANT_USER_LOOKUP_PROVIDER, __webpack_exports__AUTH_MESSAGES as AUTH_MESSAGES, __webpack_exports__ApiResponseDto as ApiResponseDto, __webpack_exports__ApiService as ApiService, __webpack_exports__BRANCH_PERMISSIONS as BRANCH_PERMISSIONS, __webpack_exports__BaseAppException as BaseAppException, __webpack_exports__BulkMetaDto as BulkMetaDto, __webpack_exports__BulkResponseDto as BulkResponseDto, __webpack_exports__CACHE_INSTANCE as CACHE_INSTANCE, __webpack_exports__CLIENT_TYPE_HEADER as CLIENT_TYPE_HEADER, __webpack_exports__COMPANY_ACTION_PERMISSIONS as COMPANY_ACTION_PERMISSIONS, __webpack_exports__COMPANY_PERMISSIONS as COMPANY_PERMISSIONS, __webpack_exports__CacheModule as CacheModule, __webpack_exports__ConflictException as ConflictException, __webpack_exports__CurrentUser as CurrentUser, __webpack_exports__DEFAULT_COMPANY_PERMISSION_KEY_FORMAT as DEFAULT_COMPANY_PERMISSION_KEY_FORMAT, __webpack_exports__DEFAULT_EVENT_EXCHANGE as DEFAULT_EVENT_EXCHANGE, __webpack_exports__DEFAULT_EVENT_SERVICE_NAME as DEFAULT_EVENT_SERVICE_NAME, __webpack_exports__DEFAULT_EVENT_TOPIC as DEFAULT_EVENT_TOPIC, __webpack_exports__DEFAULT_USER_PERMISSION_KEY_FORMAT as DEFAULT_USER_PERMISSION_KEY_FORMAT, __webpack_exports__DOMAIN_EVENT_HANDLER_KEY as DOMAIN_EVENT_HANDLER_KEY, __webpack_exports__DOMAIN_EVENT_VERSION as DOMAIN_EVENT_VERSION, __webpack_exports__DeleteDto as DeleteDto, __webpack_exports__DeleteEmptyIdFromBodyInterceptor as DeleteEmptyIdFromBodyInterceptor, __webpack_exports__DisabledEventBus as DisabledEventBus, __webpack_exports__EMAIL_CONFIG_PERMISSIONS as EMAIL_CONFIG_PERMISSIONS, __webpack_exports__EMAIL_TEMPLATE_PERMISSIONS as EMAIL_TEMPLATE_PERMISSIONS, __webpack_exports__ERROR_MESSAGES as ERROR_MESSAGES, __webpack_exports__EVENT_BUS_INSTANCE as EVENT_BUS_INSTANCE, __webpack_exports__EVENT_BUS_MODULE_OPTIONS as EVENT_BUS_MODULE_OPTIONS, __webpack_exports__EVENT_MANAGER_ADAPTER as EVENT_MANAGER_ADAPTER, __webpack_exports__EVENT_PERMISSIONS as EVENT_PERMISSIONS, __webpack_exports__EventBusExplorer as EventBusExplorer, __webpack_exports__EventBusModule as EventBusModule, __webpack_exports__EventBusRegistry as EventBusRegistry, __webpack_exports__EventTransportRegistry as EventTransportRegistry, __webpack_exports__FILE_PERMISSIONS as FILE_PERMISSIONS, __webpack_exports__FOLDER_PERMISSIONS as FOLDER_PERMISSIONS, __webpack_exports__FORM_PERMISSIONS as FORM_PERMISSIONS, __webpack_exports__FORM_RESULT_PERMISSIONS as FORM_RESULT_PERMISSIONS, __webpack_exports__FilterAndPaginationDto as FilterAndPaginationDto, __webpack_exports__ForbiddenException as ForbiddenException, __webpack_exports__GetByIdBodyDto as GetByIdBodyDto, __webpack_exports__GetByIdsDto as GetByIdsDto, __webpack_exports__GlobalExceptionFilter as GlobalExceptionFilter, __webpack_exports__HybridCache as HybridCache, __webpack_exports__HybridEventBus as HybridEventBus, __webpack_exports__IDEMPOTENCY_CACHE_PREFIX as IDEMPOTENCY_CACHE_PREFIX, __webpack_exports__IDEMPOTENCY_KEY_HEADER as IDEMPOTENCY_KEY_HEADER, __webpack_exports__IS_PUBLIC_KEY as IS_PUBLIC_KEY, __webpack_exports__IdempotencyInterceptor as IdempotencyInterceptor, __webpack_exports__Identity as Identity, __webpack_exports__IdentityResponseDto as IdentityResponseDto, __webpack_exports__InsufficientPermissionsException as InsufficientPermissionsException, __webpack_exports__InternalServerException as InternalServerException, __webpack_exports__JwtAuthGuard as JwtAuthGuard, __webpack_exports__LANGUAGE_PERMISSIONS as LANGUAGE_PERMISSIONS, __webpack_exports__ListResponseDto as ListResponseDto, __webpack_exports__LogAction as LogAction, __webpack_exports__LoggerMiddleware as LoggerMiddleware, __webpack_exports__MemoryTransport as MemoryTransport, __webpack_exports__MessageResponseDto as MessageResponseDto, __webpack_exports__MultiTenantDataSourceService as MultiTenantDataSourceService, __webpack_exports__NOTIFICATION_ADAPTER as NOTIFICATION_ADAPTER, __webpack_exports__NOTIFICATION_PERMISSIONS as NOTIFICATION_PERMISSIONS, __webpack_exports__NoPermissionsFoundException as NoPermissionsFoundException, __webpack_exports__NotFoundException as NotFoundException, __webpack_exports__NotificationType as NotificationType, __webpack_exports__OnDomainEvent as OnDomainEvent, __webpack_exports__OptionalJwtGuard as OptionalJwtGuard, __webpack_exports__PERMISSIONS as PERMISSIONS, __webpack_exports__PERMISSIONS_CACHE_PREFIX as PERMISSIONS_CACHE_PREFIX, __webpack_exports__PERMISSIONS_KEY as PERMISSIONS_KEY, __webpack_exports__PERMISSION_GUARD_CONFIG as PERMISSION_GUARD_CONFIG, __webpack_exports__PERMISSION_SYNC_ADAPTER as PERMISSION_SYNC_ADAPTER, __webpack_exports__PaginationDto as PaginationDto, __webpack_exports__PaginationMetaDto as PaginationMetaDto, __webpack_exports__ParticipantStatus as ParticipantStatus, __webpack_exports__PermissionGuard as PermissionGuard, __webpack_exports__PermissionSystemUnavailableException as PermissionSystemUnavailableException, __webpack_exports__Public as Public, __webpack_exports__REQUEST_ID_HEADER as REQUEST_ID_HEADER, __webpack_exports__ROLE_ACTION_PERMISSIONS as ROLE_ACTION_PERMISSIONS, __webpack_exports__ROLE_PERMISSIONS as ROLE_PERMISSIONS, __webpack_exports__RecurrenceType as RecurrenceType, __webpack_exports__RequestMetaDto as RequestMetaDto, __webpack_exports__RequireAnyPermission as RequireAnyPermission, __webpack_exports__RequirePermission as RequirePermission, __webpack_exports__RequirePermissionLogic as RequirePermissionLogic, __webpack_exports__ResponseMetaInterceptor as ResponseMetaInterceptor, __webpack_exports__SOCIAL_AUTH_CONFIG_PERMISSIONS as SOCIAL_AUTH_CONFIG_PERMISSIONS, __webpack_exports__STORAGE_CONFIG_PERMISSIONS as STORAGE_CONFIG_PERMISSIONS, __webpack_exports__SYSTEM_MESSAGES as SYSTEM_MESSAGES, __webpack_exports__ServiceUnavailableException as ServiceUnavailableException, __webpack_exports__SetCreatedByOnBody as SetCreatedByOnBody, __webpack_exports__SetDeletedByOnBody as SetDeletedByOnBody, __webpack_exports__SetUpdateByOnBody as SetUpdateByOnBody, __webpack_exports__SharedPermissionCacheModule as SharedPermissionCacheModule, __webpack_exports__SharedPermissionCacheService as SharedPermissionCacheService, __webpack_exports__SingleResponseDto as SingleResponseDto, __webpack_exports__Slug as Slug, __webpack_exports__TASK_BOARD_PERMISSIONS as TASK_BOARD_PERMISSIONS, __webpack_exports__TASK_COMMENT_PERMISSIONS as TASK_COMMENT_PERMISSIONS, __webpack_exports__TASK_LABEL_PERMISSIONS as TASK_LABEL_PERMISSIONS, __webpack_exports__TASK_LIST_PERMISSIONS as TASK_LIST_PERMISSIONS, __webpack_exports__TASK_PERMISSIONS as TASK_PERMISSIONS, __webpack_exports__TRANSLATION_KEY_PERMISSIONS as TRANSLATION_KEY_PERMISSIONS, __webpack_exports__TRANSLATION_PERMISSIONS as TRANSLATION_PERMISSIONS, __webpack_exports__UPLOAD_CONFIG_PERMISSIONS as UPLOAD_CONFIG_PERMISSIONS, __webpack_exports__USER_ACTION_PERMISSIONS as USER_ACTION_PERMISSIONS, __webpack_exports__USER_PERMISSIONS as USER_PERMISSIONS, __webpack_exports__USER_ROLE_PERMISSIONS as USER_ROLE_PERMISSIONS, __webpack_exports__UnauthorizedException as UnauthorizedException, __webpack_exports__UserRoot as UserRoot, __webpack_exports__UtilsModule as UtilsModule, __webpack_exports__UtilsService as UtilsService, __webpack_exports__ValidationException as ValidationException, __webpack_exports__applyCompanyFilter as applyCompanyFilter, __webpack_exports__buildCompanyWhereCondition as buildCompanyWhereCondition, __webpack_exports__buildCookieOptions as buildCookieOptions, __webpack_exports__buildDomainEvent as buildDomainEvent, __webpack_exports__buildFrontendUrl as buildFrontendUrl, __webpack_exports__buildPermissionCacheKey as buildPermissionCacheKey, __webpack_exports__buildQuery as buildQuery, __webpack_exports__createApiController as createApiController, __webpack_exports__createModuleEventsProvider as createModuleEventsProvider, __webpack_exports__createModuleLogger as createModuleLogger, __webpack_exports__createSetUserFieldInterceptor as createSetUserFieldInterceptor, __webpack_exports__escapeHtml as escapeHtml, __webpack_exports__escapeHtmlVariables as escapeHtmlVariables, __webpack_exports__extractFrontendUrl as extractFrontendUrl, __webpack_exports__formatInTimezone as formatInTimezone, __webpack_exports__generateSlug as generateSlug, __webpack_exports__generateUniqueSlug as generateUniqueSlug, __webpack_exports__getCastIntType as getCastIntType, __webpack_exports__getCompanyId as getCompanyId, __webpack_exports__getJsonColumnType as getJsonColumnType, __webpack_exports__getRequestId as getRequestId, __webpack_exports__getTenantId as getTenantId, __webpack_exports__getTodayInTimezone as getTodayInTimezone, __webpack_exports__getUserId as getUserId, __webpack_exports__hasCompanyId as hasCompanyId, __webpack_exports__instance as instance, __webpack_exports__isBrowserRequest as isBrowserRequest, __webpack_exports__isMultiWildcard as isMultiWildcard, __webpack_exports__loadOptionalModule as loadOptionalModule, __webpack_exports__localToUtc as localToUtc, __webpack_exports__matchEventPattern as matchEventPattern, __webpack_exports__moduleEventsToken as moduleEventsToken, __webpack_exports__parseDurationToMs as parseDurationToMs, __webpack_exports__publishDomainEvent as publishDomainEvent, __webpack_exports__requestContext as requestContext, __webpack_exports__sanitizeEventPayload as sanitizeEventPayload, __webpack_exports__utcToLocal as utcToLocal, __webpack_exports__validateCompanyOwnership as validateCompanyOwnership };
|