emilsoftware-utilities 2.0.0-dev.24 → 2.0.0-dev.25
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/README.MD +185 -182
- package/dist/ContractGenerator.js.map +1 -1
- package/dist/DailyFileTransport.js.map +1 -1
- package/dist/DatabaseUpdater.js +24 -24
- package/dist/DatabaseUpdater.js.map +1 -1
- package/dist/EmilsoftwareModule.js.map +1 -1
- package/dist/ExecutionTimeLogger.js.map +1 -1
- package/dist/Orm.js.map +1 -1
- package/dist/RoutesLoggerMiddleware.js.map +1 -1
- package/dist/Utilities.js.map +1 -1
- package/dist/accessi-module/AccessiModule.js.map +1 -1
- package/dist/accessi-module/Console/console.js.map +1 -1
- package/dist/accessi-module/Controllers/ConfiguratorController.js.map +1 -1
- package/dist/accessi-module/Controllers/FiltriController.js.map +1 -1
- package/dist/accessi-module/Controllers/PermissionController.js.map +1 -1
- package/dist/accessi-module/Controllers/UserController.js.map +1 -1
- package/dist/accessi-module/Dtos/Abilitazione.js.map +1 -1
- package/dist/accessi-module/Dtos/AbilitazioneMenu.js.map +1 -1
- package/dist/accessi-module/Dtos/AssignPermissionsToUserRequest.js.map +1 -1
- package/dist/accessi-module/Dtos/AssignRolesToUserRequest.js.map +1 -1
- package/dist/accessi-module/Dtos/BaseResponse.js.map +1 -1
- package/dist/accessi-module/Dtos/FiltriUtente.js.map +1 -1
- package/dist/accessi-module/Dtos/GetGroupsWithMenusResponse.js.map +1 -1
- package/dist/accessi-module/Dtos/GetMenusResponse.js.map +1 -1
- package/dist/accessi-module/Dtos/GetRolesResponse.js.map +1 -1
- package/dist/accessi-module/Dtos/GetUsersResponse.js.map +1 -1
- package/dist/accessi-module/Dtos/LoginRequest.js.map +1 -1
- package/dist/accessi-module/Dtos/LoginResponse.js.map +1 -1
- package/dist/accessi-module/Dtos/Permission.js.map +1 -1
- package/dist/accessi-module/Dtos/RegisterRequest.js.map +1 -1
- package/dist/accessi-module/Dtos/Role.js.map +1 -1
- package/dist/accessi-module/Dtos/RuoliMenu.js.map +1 -1
- package/dist/accessi-module/Dtos/SetStatoRegistrazione.js.map +1 -1
- package/dist/accessi-module/Dtos/StatoRegistrazione.js.map +1 -1
- package/dist/accessi-module/Dtos/TipoAbilitazione.js.map +1 -1
- package/dist/accessi-module/Dtos/TipoFiltro.js.map +1 -1
- package/dist/accessi-module/Dtos/TokenResult.js.map +1 -1
- package/dist/accessi-module/Dtos/UpdateEnabledStatusRequest.js.map +1 -1
- package/dist/accessi-module/Dtos/UserDto.js.map +1 -1
- package/dist/accessi-module/Dtos/UserGrantsDto.js.map +1 -1
- package/dist/accessi-module/Dtos/index.js.map +1 -1
- package/dist/accessi-module/Services/AuthService/AuthService.js.map +1 -1
- package/dist/accessi-module/Services/ConfiguratorService/ConfiguratorService.js.map +1 -1
- package/dist/accessi-module/Services/EmailService/EmailService.js +11 -11
- package/dist/accessi-module/Services/EmailService/EmailService.js.map +1 -1
- package/dist/accessi-module/Services/FiltriService/FiltriService.js.map +1 -1
- package/dist/accessi-module/Services/PermissionService/PermissionService.js +118 -118
- package/dist/accessi-module/Services/PermissionService/PermissionService.js.map +1 -1
- package/dist/accessi-module/Services/ServiceTokenService/ServiceTokenService.js +4 -4
- package/dist/accessi-module/Services/ServiceTokenService/ServiceTokenService.js.map +1 -1
- package/dist/accessi-module/Services/UserService/UserService.js +72 -72
- package/dist/accessi-module/Services/UserService/UserService.js.map +1 -1
- package/dist/accessi-module/Views/reset-password.html +213 -213
- package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.d.ts +1 -0
- package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.js +56 -42
- package/dist/accessi-module/database-updates/AccessiDatabaseUpdater.js.map +1 -1
- package/dist/accessi-module/database-updates/runAccessiDbUpdate.js.map +1 -1
- package/dist/accessi-module/index.js.map +1 -1
- package/dist/accessi-module/jwt/jwt.strategy.js.map +1 -1
- package/dist/accessi-module/middleware/accessiRequirements.js.map +1 -1
- package/dist/accessi-module/middleware/authenticateGen.js.map +1 -1
- package/dist/accessi-module/security/accessControl.js.map +1 -1
- package/dist/accessi-module/security/authenticatedToken.js.map +1 -1
- package/dist/accessi-module/security/passwordResetToken.js.map +1 -1
- package/dist/accessi-module/security/publicAuthRateLimit.js.map +1 -1
- package/dist/allegati-module/AllegatiModule.js.map +1 -1
- package/dist/allegati-module/Controllers/AllegatiController.js.map +1 -1
- package/dist/allegati-module/Dtos/AllegatoDto.js.map +1 -1
- package/dist/allegati-module/Dtos/BaseResponse.js.map +1 -1
- package/dist/allegati-module/Dtos/UploadSingleFileRequest.js.map +1 -1
- package/dist/allegati-module/Dtos/index.js.map +1 -1
- package/dist/allegati-module/Dtos/responses/DownloadAllegatoResponseDto.js.map +1 -1
- package/dist/allegati-module/Dtos/responses/GetListResponse.js.map +1 -1
- package/dist/allegati-module/Dtos/responses/UploadAllegatoResponseDto.js.map +1 -1
- package/dist/allegati-module/Services/AllegatiService/AllegatiService.js +49 -49
- package/dist/allegati-module/Services/AllegatiService/AllegatiService.js.map +1 -1
- package/dist/allegati-module/index.js.map +1 -1
- package/dist/autobind.js.map +1 -1
- package/dist/emilsoftware-utilities-2.0.0-dev.25.tgz +0 -0
- package/dist/firebird-compat.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/initEmilsoftwareModule.js.map +1 -1
- package/dist/swagger/SwaggerConfig.js.map +1 -1
- package/package.json +103 -103
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuIcona.d.ts +0 -12
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuIcona.js +0 -9
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuIcona.js.map +0 -1
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuNote.d.ts +0 -12
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuNote.js +0 -9
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuNote.js.map +0 -1
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuPagina.d.ts +0 -12
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuPagina.js +0 -9
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuPagina.js.map +0 -1
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuTipo.d.ts +0 -12
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuTipo.js +0 -9
- package/dist/accessi-module/Console/generated/model/abilitazioneMenuTipo.js.map +0 -1
- package/dist/accessi-module/Console/generated/model/publicRegisterRequestCellulare.d.ts +0 -13
- package/dist/accessi-module/Console/generated/model/publicRegisterRequestCellulare.js +0 -9
- package/dist/accessi-module/Console/generated/model/publicRegisterRequestCellulare.js.map +0 -1
- package/dist/accessi-module/Console/generated/model/registerRequestCellulare.d.ts +0 -13
- package/dist/accessi-module/Console/generated/model/registerRequestCellulare.js +0 -9
- package/dist/accessi-module/Console/generated/model/registerRequestCellulare.js.map +0 -1
- package/dist/accessi-module/Console/generated/model/userDtoAvatar.d.ts +0 -13
- package/dist/accessi-module/Console/generated/model/userDtoAvatar.js +0 -9
- package/dist/accessi-module/Console/generated/model/userDtoAvatar.js.map +0 -1
- package/dist/accessi-module/Console/generated/model/userDtoCellulare.d.ts +0 -13
- package/dist/accessi-module/Console/generated/model/userDtoCellulare.js +0 -9
- package/dist/accessi-module/Console/generated/model/userDtoCellulare.js.map +0 -1
- package/dist/accessi-module/Console/openApiClient.d.ts +0 -34
- package/dist/accessi-module/Console/openApiClient.js +0 -111
- package/dist/accessi-module/Console/openApiClient.js.map +0 -1
package/dist/autobind.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autobind.js","sourceRoot":"","sources":["../src/autobind.ts"],"names":[],"mappings":";;AASA,4BAuBC;AA9BD;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAgC,WAAc;IAClE,MAAM,gBAAgB,GAAG,UAAyB,GAAG,IAAe;QAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAA4B,CAAC;QAEjF,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC/E,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;gBAChF,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;oBAC/B,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1C,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC;IAEF,8EAA8E;IAC9E,6EAA6E;IAC7E,6CAA6C;IAC7C,MAAM,CAAC,cAAc,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IACrD,gBAAgB,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;IACnD,OAAO,gBAAgC,CAAC;AAC5C,CAAC","sourcesContent":["type AutobindConstructor = new (...args: never[]) => object;\
|
|
1
|
+
{"version":3,"file":"autobind.js","sourceRoot":"","sources":["../src/autobind.ts"],"names":[],"mappings":";;AASA,4BAuBC;AA9BD;;;;;;GAMG;AACH,SAAgB,QAAQ,CAAgC,WAAc;IAClE,MAAM,gBAAgB,GAAG,UAAyB,GAAG,IAAe;QAChE,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAA4B,CAAC;QAEjF,MAAM,CAAC,mBAAmB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YAC/E,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,UAAU,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;gBAChF,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;oBAC/B,QAAQ,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1C,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IACpB,CAAC,CAAC;IAEF,8EAA8E;IAC9E,6EAA6E;IAC7E,6CAA6C;IAC7C,MAAM,CAAC,cAAc,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IACrD,gBAAgB,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;IACnD,OAAO,gBAAgC,CAAC;AAC5C,CAAC","sourcesContent":["type AutobindConstructor = new (...args: never[]) => object;\n\n/**\n * Class decorator that binds every prototype method to the instance.\n *\n * Uses `Reflect.construct` instead of a class-expression mixin because\n * TypeScript requires mixin constructors to use `any[]`, which this codebase\n * avoids.\n */\nexport function autobind<T extends AutobindConstructor>(constructor: T): T {\n const boundConstructor = function (this: unknown, ...args: unknown[]): object {\n const instance = Reflect.construct(constructor, args) as Record<string, unknown>;\n\n Object.getOwnPropertyNames(constructor.prototype).forEach(key => {\n const descriptor = Object.getOwnPropertyDescriptor(constructor.prototype, key);\n if (descriptor && typeof descriptor.value === 'function' && key !== 'constructor') {\n const method = instance[key];\n if (typeof method === 'function') {\n instance[key] = method.bind(instance);\n }\n }\n });\n\n return instance;\n };\n\n // Mirror `class extends`: the constructor's prototype chain must point at the\n // original class so reflect-metadata (design:paramtypes) stays reachable and\n // NestJS dependency injection keeps working.\n Object.setPrototypeOf(boundConstructor, constructor);\n boundConstructor.prototype = constructor.prototype;\n return boundConstructor as unknown as T;\n}\n"]}
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebird-compat.js","sourceRoot":"","sources":["../src/firebird-compat.ts"],"names":[],"mappings":"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","sourcesContent":["import * as Firebird from \"node-firebird\";\r\nimport type { Options } from \"node-firebird\";\r\n\r\nexport type FirebirdWireCryptMode = \"disabled\" | \"enabled\" | \"required\";\r\nexport type FirebirdAuthPlugin = \"Legacy_Auth\" | \"Srp\" | \"Srp256\" | \"Srp384\" | \"Srp512\";\r\nexport type FirebirdDriverStrategy = \"modern\";\r\n\r\nexport type FirebirdOptions = Options & {\r\n wireCrypt?: FirebirdWireCryptMode | number;\r\n pluginName?: FirebirdAuthPlugin;\r\n authPlugins?: FirebirdAuthPlugin[];\r\n connectTimeoutMs?: number;\r\n compatibilityProbeTimeoutMs?: number;\r\n compatibilityTotalTimeoutMs?: number;\r\n firebirdDriver?: FirebirdDriverStrategy;\r\n trimStringResults?: boolean;\r\n /**\r\n * When `true`, query parameters are interpolated into the logged SQL. Off by\r\n * default so that secrets, credentials and personal data are not written to\r\n * the console or to the daily log files.\r\n */\r\n logQueryParameters?: boolean;\r\n /**\r\n * When greater than zero, enables an opt-in connection pool of the given\r\n * maximum size for this connection target instead of attaching/detaching a\r\n * physical connection for every query. Default `0` keeps the historic\r\n * one-connection-per-query behaviour.\r\n */\r\n poolSize?: number;\r\n};\r\n\r\ntype FirebirdErrorContext = {\r\n stage: \"attach\" | \"query\" | \"execute\" | \"transaction\";\r\n sql?: string;\r\n};\r\n\r\ntype EnhancedFirebirdError = Error & {\r\n cause?: unknown;\r\n gdscode?: number;\r\n gdsparams?: unknown;\r\n __emilsoftwareFirebirdEnhanced?: boolean;\r\n};\r\n\r\nfunction isBlank(value: unknown): boolean {\r\n return value === undefined || value === null || (typeof value === \"string\" && value.trim() === \"\");\r\n}\r\n\r\nfunction normalizeWireCryptMode(value: FirebirdOptions[\"wireCrypt\"]): number | undefined {\r\n if (isBlank(value)) {\r\n return undefined;\r\n }\r\n\r\n if (typeof value === \"number\") {\r\n return value;\r\n }\r\n\r\n const normalized = String(value).trim().toLowerCase();\r\n if (normalized === \"disabled\") {\r\n return Firebird.WIRE_CRYPT_DISABLE;\r\n }\r\n\r\n return Firebird.WIRE_CRYPT_ENABLE;\r\n}\r\n\r\nfunction normalizeAuthPlugin(value: unknown): FirebirdAuthPlugin | undefined {\r\n if (isBlank(value)) {\r\n return undefined;\r\n }\r\n\r\n const normalized = String(value).trim().toLowerCase();\r\n if (normalized === \"legacy\" || normalized === \"legacy_auth\") {\r\n return \"Legacy_Auth\";\r\n }\r\n\r\n if (normalized === \"srp256\") {\r\n return \"Srp256\";\r\n }\r\n\r\n if (normalized === \"srp384\") {\r\n return \"Srp384\";\r\n }\r\n\r\n if (normalized === \"srp512\") {\r\n return \"Srp512\";\r\n }\r\n\r\n return \"Srp\";\r\n}\r\n\r\nfunction formatWireCryptValue(value: FirebirdOptions[\"wireCrypt\"]): string {\r\n if (isBlank(value)) {\r\n return \"auto\";\r\n }\r\n\r\n if (typeof value === \"number\") {\r\n if (value === Firebird.WIRE_CRYPT_DISABLE) {\r\n return \"disabled\";\r\n }\r\n\r\n if (value === Firebird.WIRE_CRYPT_ENABLE) {\r\n return \"enabled\";\r\n }\r\n\r\n return String(value);\r\n }\r\n\r\n return String(value);\r\n}\r\n\r\nfunction formatTarget(options: Options): string {\r\n return `${options.host ?? \"?\"}:${options.port ?? \"?\"} -> ${options.database ?? \"?\"}`;\r\n}\r\n\r\nfunction uniqueDiagnostics(values: string[]): string[] {\r\n return values.filter((value, index) => values.indexOf(value) === index);\r\n}\r\n\r\nfunction buildDiagnostics(message: string, options: FirebirdOptions): string[] {\r\n const diagnostics: string[] = [];\r\n const pluginMismatch = message.match(/Server don't accept plugin\\s*:\\s*([^,]+),\\s*but support\\s*:\\s*(.+)$/i);\r\n\r\n if (pluginMismatch) {\r\n const supportedPlugins = (pluginMismatch[2] ?? \"\")\r\n .split(\",\")\r\n .map((plugin) => plugin.trim())\r\n .filter((plugin) => plugin.length > 0);\r\n const supportedMessage = supportedPlugins.length === 1\r\n ? `The server explicitly reported that only the \"${supportedPlugins[0]}\" authentication plugin is supported.`\r\n : `The server explicitly reported the supported authentication plugins: ${supportedPlugins.join(\", \")}.`;\r\n diagnostics.push(supportedMessage);\r\n }\r\n\r\n if (/Incompatible wire encryption levels requested on client and server/i.test(message)) {\r\n diagnostics.push(\"The server rejected the requested wire encryption mode. Keep wire encryption auto-enabled unless the server is known to allow disabled encryption.\");\r\n }\r\n\r\n if (/No matching plugins on server/i.test(message)) {\r\n diagnostics.push(\"The server did not find a common authentication plugin with the client configuration.\");\r\n }\r\n\r\n if (/Connection timeout after \\d+ms/i.test(message) || /Timeout during Firebird attach after \\d+ ms/i.test(message)) {\r\n diagnostics.push(\"The TCP connection was accepted but the Firebird wire-protocol attach did not complete in time.\");\r\n }\r\n\r\n if (options.pluginName) {\r\n diagnostics.push(`Client authentication plugin was forced to \"${options.pluginName}\". Leave pluginName empty to let the driver auto-negotiate when possible.`);\r\n }\r\n\r\n if (!isBlank(options.wireCrypt)) {\r\n diagnostics.push(`Client wire encryption was forced to \"${formatWireCryptValue(options.wireCrypt)}\".`);\r\n }\r\n\r\n return uniqueDiagnostics(diagnostics);\r\n}\r\n\r\nfunction copyFirebirdMetadata(target: EnhancedFirebirdError, source: unknown): void {\r\n if (!source || typeof source !== \"object\") {\r\n return;\r\n }\r\n\r\n const firebirdSource = source as Record<string, unknown>;\r\n if (\"gdscode\" in firebirdSource) {\r\n target.gdscode = firebirdSource.gdscode as number;\r\n }\r\n\r\n if (\"gdsparams\" in firebirdSource) {\r\n target.gdsparams = firebirdSource.gdsparams;\r\n }\r\n}\r\n\r\nfunction formatFirebirdMetadata(source: unknown): string {\r\n if (!source || typeof source !== \"object\") {\r\n return \"\";\r\n }\r\n\r\n const firebirdSource = source as Record<string, unknown>;\r\n const metadata: string[] = [];\r\n\r\n if (typeof firebirdSource.gdscode === \"number\") {\r\n metadata.push(`gdscode=${firebirdSource.gdscode}`);\r\n }\r\n\r\n if (firebirdSource.gdsparams !== undefined) {\r\n try {\r\n metadata.push(`gdsparams=${JSON.stringify(firebirdSource.gdsparams)}`);\r\n } catch {\r\n metadata.push(`gdsparams=${String(firebirdSource.gdsparams)}`);\r\n }\r\n }\r\n\r\n return metadata.length > 0 ? ` Metadata: ${metadata.join(\", \")}.` : \"\";\r\n}\r\n\r\nexport function normalizeFirebirdOptions(options: Options): FirebirdOptions {\r\n const compatibilityOptions = options as FirebirdOptions;\r\n const {\r\n authPlugins: _authPlugins,\r\n compatibilityProbeTimeoutMs: _compatibilityProbeTimeoutMs,\r\n compatibilityTotalTimeoutMs,\r\n connectTimeoutMs,\r\n firebirdDriver: _firebirdDriver,\r\n logQueryParameters: _logQueryParameters,\r\n poolSize: _poolSize,\r\n trimStringResults,\r\n ...baseOptions\r\n } = compatibilityOptions;\r\n\r\n const normalizedOptions: FirebirdOptions = {\r\n ...baseOptions,\r\n pluginName: normalizeAuthPlugin(compatibilityOptions.pluginName),\r\n trimStringResults,\r\n wireCrypt: normalizeWireCryptMode(compatibilityOptions.wireCrypt),\r\n };\r\n\r\n const timeoutCandidate = compatibilityOptions.connectTimeout\r\n ?? connectTimeoutMs\r\n ?? compatibilityTotalTimeoutMs;\r\n\r\n if (Number.isFinite(timeoutCandidate) && Number(timeoutCandidate) > 0) {\r\n normalizedOptions.connectTimeout = Math.trunc(Number(timeoutCandidate));\r\n }\r\n\r\n return normalizedOptions;\r\n}\r\n\r\nexport function describeFirebirdCompatibilityOptions(options: Options): string {\r\n const normalized = normalizeFirebirdOptions(options);\r\n return `plugin=${normalized.pluginName ?? \"auto\"}, wireCrypt=${formatWireCryptValue(normalized.wireCrypt)}, connectTimeout=${normalized.connectTimeout ?? \"default\"}`;\r\n}\r\n\r\nexport function enhanceFirebirdError(error: unknown, options: Options, context: FirebirdErrorContext): Error {\r\n if (error instanceof Error && (error as EnhancedFirebirdError).__emilsoftwareFirebirdEnhanced) {\r\n return error;\r\n }\r\n\r\n const normalizedOptions = normalizeFirebirdOptions(options);\r\n const target = formatTarget(normalizedOptions);\r\n const original = error instanceof Error ? error : new Error(String(error));\r\n const diagnostics = buildDiagnostics(original.message, normalizedOptions);\r\n const sqlSuffix = context.sql ? ` SQL: ${context.sql.replace(/\\s+/g, \" \").trim()}` : \"\";\r\n const diagnosticsSuffix = diagnostics.length > 0 ? ` Diagnostics: ${diagnostics.join(\" \")}` : \"\";\r\n const metadataSuffix = formatFirebirdMetadata(original);\r\n const enhanced = new Error(\r\n `Firebird ${context.stage} failed on ${target}: ${original.message}.${diagnosticsSuffix}${metadataSuffix}${sqlSuffix}`\r\n ) as EnhancedFirebirdError;\r\n\r\n enhanced.cause = original;\r\n enhanced.__emilsoftwareFirebirdEnhanced = true;\r\n copyFirebirdMetadata(enhanced, original);\r\n enhanced.stack = `${enhanced.name}: ${enhanced.message}\\nCaused by: ${original.stack ?? original.message}`;\r\n return enhanced;\r\n}\r\n\r\nexport function buildFirebirdCompatibilityCandidates(options: Options): FirebirdOptions[] {\r\n return [normalizeFirebirdOptions(options)];\r\n}\r\n\r\nexport function shouldRetryFirebirdCompatibility(): boolean {\r\n return false;\r\n}\r\n\r\nexport function ensureEsNodeFirebirdCompatibilityPatch(): void {\r\n // No-op kept for backward compatibility. The library now relies on the\r\n // official node-firebird driver, which handles Firebird 2.5+ protocol\r\n // negotiation natively.\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"firebird-compat.js","sourceRoot":"","sources":["../src/firebird-compat.ts"],"names":[],"mappings":"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","sourcesContent":["import * as Firebird from \"node-firebird\";\nimport type { Options } from \"node-firebird\";\n\nexport type FirebirdWireCryptMode = \"disabled\" | \"enabled\" | \"required\";\nexport type FirebirdAuthPlugin = \"Legacy_Auth\" | \"Srp\" | \"Srp256\" | \"Srp384\" | \"Srp512\";\nexport type FirebirdDriverStrategy = \"modern\";\n\nexport type FirebirdOptions = Options & {\n wireCrypt?: FirebirdWireCryptMode | number;\n pluginName?: FirebirdAuthPlugin;\n authPlugins?: FirebirdAuthPlugin[];\n connectTimeoutMs?: number;\n compatibilityProbeTimeoutMs?: number;\n compatibilityTotalTimeoutMs?: number;\n firebirdDriver?: FirebirdDriverStrategy;\n trimStringResults?: boolean;\n /**\n * When `true`, query parameters are interpolated into the logged SQL. Off by\n * default so that secrets, credentials and personal data are not written to\n * the console or to the daily log files.\n */\n logQueryParameters?: boolean;\n /**\n * When greater than zero, enables an opt-in connection pool of the given\n * maximum size for this connection target instead of attaching/detaching a\n * physical connection for every query. Default `0` keeps the historic\n * one-connection-per-query behaviour.\n */\n poolSize?: number;\n};\n\ntype FirebirdErrorContext = {\n stage: \"attach\" | \"query\" | \"execute\" | \"transaction\";\n sql?: string;\n};\n\ntype EnhancedFirebirdError = Error & {\n cause?: unknown;\n gdscode?: number;\n gdsparams?: unknown;\n __emilsoftwareFirebirdEnhanced?: boolean;\n};\n\nfunction isBlank(value: unknown): boolean {\n return value === undefined || value === null || (typeof value === \"string\" && value.trim() === \"\");\n}\n\nfunction normalizeWireCryptMode(value: FirebirdOptions[\"wireCrypt\"]): number | undefined {\n if (isBlank(value)) {\n return undefined;\n }\n\n if (typeof value === \"number\") {\n return value;\n }\n\n const normalized = String(value).trim().toLowerCase();\n if (normalized === \"disabled\") {\n return Firebird.WIRE_CRYPT_DISABLE;\n }\n\n return Firebird.WIRE_CRYPT_ENABLE;\n}\n\nfunction normalizeAuthPlugin(value: unknown): FirebirdAuthPlugin | undefined {\n if (isBlank(value)) {\n return undefined;\n }\n\n const normalized = String(value).trim().toLowerCase();\n if (normalized === \"legacy\" || normalized === \"legacy_auth\") {\n return \"Legacy_Auth\";\n }\n\n if (normalized === \"srp256\") {\n return \"Srp256\";\n }\n\n if (normalized === \"srp384\") {\n return \"Srp384\";\n }\n\n if (normalized === \"srp512\") {\n return \"Srp512\";\n }\n\n return \"Srp\";\n}\n\nfunction formatWireCryptValue(value: FirebirdOptions[\"wireCrypt\"]): string {\n if (isBlank(value)) {\n return \"auto\";\n }\n\n if (typeof value === \"number\") {\n if (value === Firebird.WIRE_CRYPT_DISABLE) {\n return \"disabled\";\n }\n\n if (value === Firebird.WIRE_CRYPT_ENABLE) {\n return \"enabled\";\n }\n\n return String(value);\n }\n\n return String(value);\n}\n\nfunction formatTarget(options: Options): string {\n return `${options.host ?? \"?\"}:${options.port ?? \"?\"} -> ${options.database ?? \"?\"}`;\n}\n\nfunction uniqueDiagnostics(values: string[]): string[] {\n return values.filter((value, index) => values.indexOf(value) === index);\n}\n\nfunction buildDiagnostics(message: string, options: FirebirdOptions): string[] {\n const diagnostics: string[] = [];\n const pluginMismatch = message.match(/Server don't accept plugin\\s*:\\s*([^,]+),\\s*but support\\s*:\\s*(.+)$/i);\n\n if (pluginMismatch) {\n const supportedPlugins = (pluginMismatch[2] ?? \"\")\n .split(\",\")\n .map((plugin) => plugin.trim())\n .filter((plugin) => plugin.length > 0);\n const supportedMessage = supportedPlugins.length === 1\n ? `The server explicitly reported that only the \"${supportedPlugins[0]}\" authentication plugin is supported.`\n : `The server explicitly reported the supported authentication plugins: ${supportedPlugins.join(\", \")}.`;\n diagnostics.push(supportedMessage);\n }\n\n if (/Incompatible wire encryption levels requested on client and server/i.test(message)) {\n diagnostics.push(\"The server rejected the requested wire encryption mode. Keep wire encryption auto-enabled unless the server is known to allow disabled encryption.\");\n }\n\n if (/No matching plugins on server/i.test(message)) {\n diagnostics.push(\"The server did not find a common authentication plugin with the client configuration.\");\n }\n\n if (/Connection timeout after \\d+ms/i.test(message) || /Timeout during Firebird attach after \\d+ ms/i.test(message)) {\n diagnostics.push(\"The TCP connection was accepted but the Firebird wire-protocol attach did not complete in time.\");\n }\n\n if (options.pluginName) {\n diagnostics.push(`Client authentication plugin was forced to \"${options.pluginName}\". Leave pluginName empty to let the driver auto-negotiate when possible.`);\n }\n\n if (!isBlank(options.wireCrypt)) {\n diagnostics.push(`Client wire encryption was forced to \"${formatWireCryptValue(options.wireCrypt)}\".`);\n }\n\n return uniqueDiagnostics(diagnostics);\n}\n\nfunction copyFirebirdMetadata(target: EnhancedFirebirdError, source: unknown): void {\n if (!source || typeof source !== \"object\") {\n return;\n }\n\n const firebirdSource = source as Record<string, unknown>;\n if (\"gdscode\" in firebirdSource) {\n target.gdscode = firebirdSource.gdscode as number;\n }\n\n if (\"gdsparams\" in firebirdSource) {\n target.gdsparams = firebirdSource.gdsparams;\n }\n}\n\nfunction formatFirebirdMetadata(source: unknown): string {\n if (!source || typeof source !== \"object\") {\n return \"\";\n }\n\n const firebirdSource = source as Record<string, unknown>;\n const metadata: string[] = [];\n\n if (typeof firebirdSource.gdscode === \"number\") {\n metadata.push(`gdscode=${firebirdSource.gdscode}`);\n }\n\n if (firebirdSource.gdsparams !== undefined) {\n try {\n metadata.push(`gdsparams=${JSON.stringify(firebirdSource.gdsparams)}`);\n } catch {\n metadata.push(`gdsparams=${String(firebirdSource.gdsparams)}`);\n }\n }\n\n return metadata.length > 0 ? ` Metadata: ${metadata.join(\", \")}.` : \"\";\n}\n\nexport function normalizeFirebirdOptions(options: Options): FirebirdOptions {\n const compatibilityOptions = options as FirebirdOptions;\n const {\n authPlugins: _authPlugins,\n compatibilityProbeTimeoutMs: _compatibilityProbeTimeoutMs,\n compatibilityTotalTimeoutMs,\n connectTimeoutMs,\n firebirdDriver: _firebirdDriver,\n logQueryParameters: _logQueryParameters,\n poolSize: _poolSize,\n trimStringResults,\n ...baseOptions\n } = compatibilityOptions;\n\n const normalizedOptions: FirebirdOptions = {\n ...baseOptions,\n pluginName: normalizeAuthPlugin(compatibilityOptions.pluginName),\n trimStringResults,\n wireCrypt: normalizeWireCryptMode(compatibilityOptions.wireCrypt),\n };\n\n const timeoutCandidate = compatibilityOptions.connectTimeout\n ?? connectTimeoutMs\n ?? compatibilityTotalTimeoutMs;\n\n if (Number.isFinite(timeoutCandidate) && Number(timeoutCandidate) > 0) {\n normalizedOptions.connectTimeout = Math.trunc(Number(timeoutCandidate));\n }\n\n return normalizedOptions;\n}\n\nexport function describeFirebirdCompatibilityOptions(options: Options): string {\n const normalized = normalizeFirebirdOptions(options);\n return `plugin=${normalized.pluginName ?? \"auto\"}, wireCrypt=${formatWireCryptValue(normalized.wireCrypt)}, connectTimeout=${normalized.connectTimeout ?? \"default\"}`;\n}\n\nexport function enhanceFirebirdError(error: unknown, options: Options, context: FirebirdErrorContext): Error {\n if (error instanceof Error && (error as EnhancedFirebirdError).__emilsoftwareFirebirdEnhanced) {\n return error;\n }\n\n const normalizedOptions = normalizeFirebirdOptions(options);\n const target = formatTarget(normalizedOptions);\n const original = error instanceof Error ? error : new Error(String(error));\n const diagnostics = buildDiagnostics(original.message, normalizedOptions);\n const sqlSuffix = context.sql ? ` SQL: ${context.sql.replace(/\\s+/g, \" \").trim()}` : \"\";\n const diagnosticsSuffix = diagnostics.length > 0 ? ` Diagnostics: ${diagnostics.join(\" \")}` : \"\";\n const metadataSuffix = formatFirebirdMetadata(original);\n const enhanced = new Error(\n `Firebird ${context.stage} failed on ${target}: ${original.message}.${diagnosticsSuffix}${metadataSuffix}${sqlSuffix}`\n ) as EnhancedFirebirdError;\n\n enhanced.cause = original;\n enhanced.__emilsoftwareFirebirdEnhanced = true;\n copyFirebirdMetadata(enhanced, original);\n enhanced.stack = `${enhanced.name}: ${enhanced.message}\\nCaused by: ${original.stack ?? original.message}`;\n return enhanced;\n}\n\nexport function buildFirebirdCompatibilityCandidates(options: Options): FirebirdOptions[] {\n return [normalizeFirebirdOptions(options)];\n}\n\nexport function shouldRetryFirebirdCompatibility(): boolean {\n return false;\n}\n\nexport function ensureEsNodeFirebirdCompatibilityPatch(): void {\n // No-op kept for backward compatibility. The library now relies on the\n // official node-firebird driver, which handles Firebird 2.5+ protocol\n // negotiation natively.\n}\n"]}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAoD;AAuB6D,gGAvBxG,iCAAe,OAuBwG;AAtBhI,+DAA2D;AAsBxC,oGAtBV,yCAAmB,OAsBU;AArBtC,wDAA0C;AAqBuH,4BAAQ;AApBzK,qCAA6C;AAoBG,0FApBvC,kBAAS,OAoBuC;AAAjB,uFApBpB,eAAM,OAoBoB;AAnB9C,+BAA4B;AAmB+B,oFAnBlD,SAAG,OAmBkD;AAlB9D,2CAA0F;AAkB1B,8FAlBvD,yBAAa,OAkBuD;AAAE,8FAlBvD,yBAAa,OAkBuD;AAAE,kGAlBvD,6BAAiB,OAkBuD;AAAmB,2FAlBxE,sBAAU,OAkBwE;AAjB5I,yCAAsC;AAiB7B,yFAjBA,mBAAQ,OAiBA;AAhBjB,2DAAwD;AAgBsF,kGAhBrI,qCAAiB,OAgBqI;AAf/J,6BAA2B;AAE3B,wCAAsB;AACtB,8CAA4B;AAC5B,2CAAyB;AACzB,6CAA2B;AAC3B,wDAAsC;AACtC,2DAAyC;AACzC,sDAAoC;AACpC,oDAAkC;AAClC,oDAAkC;AAElC,mDAAiC;AACjC,oDAAkC;AAClC,gDAA8B;AAE9B,yBAAyB;AACzB,0DAAwC;AACxC,2DAAyC","sourcesContent":["import { DatabaseUpdater } from \"./DatabaseUpdater\";\nimport { ExecutionTimeLogger } from \"./ExecutionTimeLogger\"\nimport * as Firebird from \"node-firebird\";\nimport { LogLevels, Logger } from \"./Logger\";\nimport { Orm } from \"./Orm\";\nimport { DateUtilities, RestUtilities, DatabaseUtilities, StatusCode } from \"./Utilities\";\nimport { autobind } from \"./autobind\";\nimport { DocumentGenerator } from \"./ContractGenerator\";\nimport \"./firebird-compat\";\n\
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAoD;AAuB6D,gGAvBxG,iCAAe,OAuBwG;AAtBhI,+DAA2D;AAsBxC,oGAtBV,yCAAmB,OAsBU;AArBtC,wDAA0C;AAqBuH,4BAAQ;AApBzK,qCAA6C;AAoBG,0FApBvC,kBAAS,OAoBuC;AAAjB,uFApBpB,eAAM,OAoBoB;AAnB9C,+BAA4B;AAmB+B,oFAnBlD,SAAG,OAmBkD;AAlB9D,2CAA0F;AAkB1B,8FAlBvD,yBAAa,OAkBuD;AAAE,8FAlBvD,yBAAa,OAkBuD;AAAE,kGAlBvD,6BAAiB,OAkBuD;AAAmB,2FAlBxE,sBAAU,OAkBwE;AAjB5I,yCAAsC;AAiB7B,yFAjBA,mBAAQ,OAiBA;AAhBjB,2DAAwD;AAgBsF,kGAhBrI,qCAAiB,OAgBqI;AAf/J,6BAA2B;AAE3B,wCAAsB;AACtB,8CAA4B;AAC5B,2CAAyB;AACzB,6CAA2B;AAC3B,wDAAsC;AACtC,2DAAyC;AACzC,sDAAoC;AACpC,oDAAkC;AAClC,oDAAkC;AAElC,mDAAiC;AACjC,oDAAkC;AAClC,gDAA8B;AAE9B,yBAAyB;AACzB,0DAAwC;AACxC,2DAAyC","sourcesContent":["import { DatabaseUpdater } from \"./DatabaseUpdater\";\nimport { ExecutionTimeLogger } from \"./ExecutionTimeLogger\"\nimport * as Firebird from \"node-firebird\";\nimport { LogLevels, Logger } from \"./Logger\";\nimport { Orm } from \"./Orm\";\nimport { DateUtilities, RestUtilities, DatabaseUtilities, StatusCode } from \"./Utilities\";\nimport { autobind } from \"./autobind\";\nimport { DocumentGenerator } from \"./ContractGenerator\";\nimport \"./firebird-compat\";\n\nexport * from \"./Orm\";\nexport * from \"./Utilities\";\nexport * from \"./Logger\";\nexport * from \"./autobind\";\nexport * from \"./ExecutionTimeLogger\";\nexport * from \"./RoutesLoggerMiddleware\";\nexport * from \"./ContractGenerator\";\nexport * from \"./DatabaseUpdater\";\nexport * from \"./firebird-compat\";\n\nexport * from \"./accessi-module\";\nexport * from \"./allegati-module\";\nexport * from \"node-firebird\";\nexport { autobind, ExecutionTimeLogger, Logger, LogLevels, Orm, DateUtilities, RestUtilities, DatabaseUtilities, DatabaseUpdater, StatusCode, DocumentGenerator, Firebird };\n// Unified module exports\nexport * from \"./swagger/SwaggerConfig\";\nexport * from \"./initEmilsoftwareModule\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"initEmilsoftwareModule.js","sourceRoot":"","sources":["../src/initEmilsoftwareModule.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAoBA,wDA2DC;AA/ED,sDAAwD;AACxD,uCAA2C;AAC3C,+DAA0D;AAC1D,2DAAuD;AACvD,qCAAkC;AAClC,6DAA+E;AAC/E,iFAKqD;AACrD,mFAA0F;AAC1F,qGAAkG;AAElG;;;;GAIG;AACH,SAAsB,sBAAsB,CAAC,GAAgB,EAAE,OAA4B;;QACvF,MAAM,MAAM,GAAW,IAAI,eAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;YAC1B,IAAA,gDAA8B,GAAE,CAAC;QACrC,CAAC;QAED,IAAI,CAAC;YACD,gFAAgF;YAChF,wEAAwE;YACxE,MAAM,WAAW,GAAG,IAAA,iBAAO,GAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE,CACjC,IAAI,KAAK,MAAM;gBACf,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBACxB,IAAI,KAAK,UAAU;gBACnB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;gBAC5B,IAAI,KAAK,eAAe,CAAC;YAE7B,GAAG,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBAChC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,OAAO,IAAI,EAAE,CAAC;gBAClB,CAAC;gBACD,OAAO,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAG,IAAI,iCAAc,CAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,uCAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE;gBAC/F,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YAEH,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;gBAC1B,iFAAiF;gBACjF,OAAO,CAAC,cAAc,CAAC,IAAA,+CAA2B,GAAE,CAAC,CAAC;gBACtD,OAAO,CAAC,gBAAgB,CAAC,IAAI,uDAA0B,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,OAAO,CAAC,eAAe,CAAC,KAAK,EAAE;gBAC3B,OAAO,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC;aACzC,CAAC,CAAC;YAEH,sDAAsD;YACtD,IAAA,4BAAY,EAAC,OAAO,CAAC,CAAC;YAEtB,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;gBAC1B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,wCAAsB,CAAC,CAAC;gBACxD,GAAG,CAAC,MAAM,CAAC,kBAAkB,GAAG,WAAW,CAAC;gBAC5C,IAAA,uCAAqB,EAAC,WAAW,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAEhE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;gBAC1B,IAAA,+CAA6B,EAAC,KAAK,CAAC,CAAC;YACzC,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;CAAA","sourcesContent":["import express, { Application, Request } from \"express\";\
|
|
1
|
+
{"version":3,"file":"initEmilsoftwareModule.js","sourceRoot":"","sources":["../src/initEmilsoftwareModule.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAoBA,wDA2DC;AA/ED,sDAAwD;AACxD,uCAA2C;AAC3C,+DAA0D;AAC1D,2DAAuD;AACvD,qCAAkC;AAClC,6DAA+E;AAC/E,iFAKqD;AACrD,mFAA0F;AAC1F,qGAAkG;AAElG;;;;GAIG;AACH,SAAsB,sBAAsB,CAAC,GAAgB,EAAE,OAA4B;;QACvF,MAAM,MAAM,GAAW,IAAI,eAAM,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC/D,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;YAC1B,IAAA,gDAA8B,GAAE,CAAC;QACrC,CAAC;QAED,IAAI,CAAC;YACD,gFAAgF;YAChF,wEAAwE;YACxE,MAAM,WAAW,GAAG,IAAA,iBAAO,GAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,EAAE,CACjC,IAAI,KAAK,MAAM;gBACf,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBACxB,IAAI,KAAK,UAAU;gBACnB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;gBAC5B,IAAI,KAAK,eAAe,CAAC;YAE7B,GAAG,CAAC,GAAG,CAAC,CAAC,GAAY,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;gBAChC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzB,OAAO,IAAI,EAAE,CAAC;gBAClB,CAAC;gBACD,OAAO,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;YAEH,MAAM,mBAAmB,GAAG,IAAI,iCAAc,CAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,OAAO,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,uCAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE;gBAC/F,UAAU,EAAE,IAAI;aACnB,CAAC,CAAC;YAEH,OAAO,CAAC,UAAU,EAAE,CAAC;YACrB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;gBAC1B,iFAAiF;gBACjF,OAAO,CAAC,cAAc,CAAC,IAAA,+CAA2B,GAAE,CAAC,CAAC;gBACtD,OAAO,CAAC,gBAAgB,CAAC,IAAI,uDAA0B,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,OAAO,CAAC,eAAe,CAAC,KAAK,EAAE;gBAC3B,OAAO,EAAE,CAAC,UAAU,EAAE,eAAe,CAAC;aACzC,CAAC,CAAC;YAEH,sDAAsD;YACtD,IAAA,4BAAY,EAAC,OAAO,CAAC,CAAC;YAEtB,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;gBAC1B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,wCAAsB,CAAC,CAAC;gBACxD,GAAG,CAAC,MAAM,CAAC,kBAAkB,GAAG,WAAW,CAAC;gBAC5C,IAAA,uCAAqB,EAAC,WAAW,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAEhE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,EAAE,CAAC;gBAC1B,IAAA,+CAA6B,EAAC,KAAK,CAAC,CAAC;YACzC,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;CAAA","sourcesContent":["import express, { Application, Request } from \"express\";\nimport { NestFactory } from \"@nestjs/core\";\nimport { ExpressAdapter } from \"@nestjs/platform-express\";\nimport { setupSwagger } from \"./swagger/SwaggerConfig\";\nimport { Logger } from \"./Logger\";\nimport { EmilsoftwareModule, EmilsoftwareOptions } from \"./EmilsoftwareModule\";\nimport {\n beginAccessiAuthInitialization,\n failAccessiAuthInitialization,\n AuthenticateGenService,\n setAccessiAuthService\n} from \"./accessi-module/middleware/authenticateGen\";\nimport { createAccessiValidationPipe } from './accessi-module/security/accessiValidation';\nimport { AccessiHttpExceptionFilter } from './accessi-module/security/AccessiHttpExceptionFilter';\n\n/**\n * Initializes the unified module that combines Accessi and Allegati functionality\n * @param app Express application instance\n * @param options Configuration options for both modules\n */\nexport async function initEmilsoftwareModule(app: Application, options: EmilsoftwareOptions) {\n const logger: Logger = new Logger(initEmilsoftwareModule.name);\n if (options?.accessiOptions) {\n beginAccessiAuthInitialization();\n }\n\n try {\n // Isolate Nest on a dedicated Express instance and dispatch only module routes.\n // This keeps pre-existing routes/middlewares on the host app untouched.\n const nestHostApp = express();\n const isNestRoute = (path: string) =>\n path === \"/api\" ||\n path.startsWith(\"/api/\") ||\n path === \"/swagger\" ||\n path.startsWith(\"/swagger/\") ||\n path === \"/swagger-json\";\n\n app.use((req: Request, res, next) => {\n if (!isNestRoute(req.path)) {\n return next();\n }\n return nestHostApp(req, res, next);\n });\n\n const nestExpressInstance = new ExpressAdapter(nestHostApp);\n const nestApp = await NestFactory.create(EmilsoftwareModule.forRoot(options), nestExpressInstance, {\n bufferLogs: true\n });\n\n nestApp.enableCors();\n if (options?.accessiOptions) {\n // Keep the Accessi API contract identical for standalone and unified bootstraps.\n nestApp.useGlobalPipes(createAccessiValidationPipe());\n nestApp.useGlobalFilters(new AccessiHttpExceptionFilter());\n }\n\n nestApp.setGlobalPrefix('api', {\n exclude: ['/swagger', '/swagger/(.*)']\n });\n\n // Setup unified Swagger documentation for all modules\n setupSwagger(nestApp);\n\n await nestApp.init();\n if (options?.accessiOptions) {\n const authService = nestApp.get(AuthenticateGenService);\n app.locals.accessiAuthService = authService;\n setAccessiAuthService(authService);\n }\n\n logger.info(\"Emilsoftware module initialized successfully\");\n\n } catch (error) {\n if (options?.accessiOptions) {\n failAccessiAuthInitialization(error);\n }\n logger.error(\"Error initializing Emilsoftware Module:\", error);\n throw error;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwaggerConfig.js","sourceRoot":"","sources":["../../src/swagger/SwaggerConfig.ts"],"names":[],"mappings":";;AAaA,oCA0CC;AAtDD,6CAAiE;AAGjE,sCAAmC;AASnC,SAAgB,YAAY,CAAC,GAAqB,EAAE,OAA6B;;IAC7E,MAAM,MAAM,GAAW,IAAI,eAAM,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,mCAAI,SAAS,CAAC;IACtD,MAAM,sBAAsB,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;QACpD,CAAC,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,cAAc;QAC7E,CAAC,CAAC,cAAc,CAAC;IACrB,MAAM,eAAe,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,mCAAI,sBAAsB,CAAC;IAC3E,MAAM,qBAAqB,GAAG,GAAG,WAAW,OAAO,CAAC;IAEpD,MAAM,MAAM,GAAG,IAAI,yBAAe,EAAE;SAC/B,QAAQ,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,mBAAmB,CAAC;SAC/C,cAAc,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,mCAAI,kDAAkD,CAAC;SAC1F,UAAU,CAAC,KAAK,CAAC;SACjB,aAAa,EAAE,CAAC,qCAAqC;SACrD,KAAK,EAAE,CAAC;IAEb,MAAM,QAAQ,GAAG,uBAAa,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC3D,uBAAa,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAEhD,GAAG,CAAC,GAAG,CAAC,IAAI,eAAe,EAAE,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAC5D,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAClD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAI,qBAAqB,KAAK,eAAe,EAAE,CAAC;QAC5C,GAAG,CAAC,GAAG,CAAC,IAAI,qBAAqB,EAAE,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;YAClE,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YAClD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,MAAM,aAAa,GAAG,MAAA,MAAA,GAAG,CAAC,aAAa,EAAE,0CAAE,OAAO,kDAAI,CAAC;IACvD,MAAM,IAAI,GAAG,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ;QAC3D,CAAC,CAAE,aAA6B,CAAC,IAAI;QACrC,CAAC,CAAC,IAAI,CAAC;IAEX,MAAM,CAAC,IAAI,CACP,wDAAwD,IAAI,IAAI,WAAW,EAAE,CAChF,CAAC;IACF,MAAM,CAAC,IAAI,CACP,uDAAuD,IAAI,IAAI,eAAe,EAAE,CACnF,CAAC;AACN,CAAC","sourcesContent":["import { INestApplication } from \"@nestjs/common\";\
|
|
1
|
+
{"version":3,"file":"SwaggerConfig.js","sourceRoot":"","sources":["../../src/swagger/SwaggerConfig.ts"],"names":[],"mappings":";;AAaA,oCA0CC;AAtDD,6CAAiE;AAGjE,sCAAmC;AASnC,SAAgB,YAAY,CAAC,GAAqB,EAAE,OAA6B;;IAC7E,MAAM,MAAM,GAAW,IAAI,eAAM,CAAC,eAAe,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,mCAAI,SAAS,CAAC;IACtD,MAAM,sBAAsB,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC;QACpD,CAAC,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,cAAc;QAC7E,CAAC,CAAC,cAAc,CAAC;IACrB,MAAM,eAAe,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,eAAe,mCAAI,sBAAsB,CAAC;IAC3E,MAAM,qBAAqB,GAAG,GAAG,WAAW,OAAO,CAAC;IAEpD,MAAM,MAAM,GAAG,IAAI,yBAAe,EAAE;SAC/B,QAAQ,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,mCAAI,mBAAmB,CAAC;SAC/C,cAAc,CAAC,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,mCAAI,kDAAkD,CAAC;SAC1F,UAAU,CAAC,KAAK,CAAC;SACjB,aAAa,EAAE,CAAC,qCAAqC;SACrD,KAAK,EAAE,CAAC;IAEb,MAAM,QAAQ,GAAG,uBAAa,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC3D,uBAAa,CAAC,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAEhD,GAAG,CAAC,GAAG,CAAC,IAAI,eAAe,EAAE,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAC5D,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAClD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,IAAI,qBAAqB,KAAK,eAAe,EAAE,CAAC;QAC5C,GAAG,CAAC,GAAG,CAAC,IAAI,qBAAqB,EAAE,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;YAClE,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YAClD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAED,MAAM,aAAa,GAAG,MAAA,MAAA,GAAG,CAAC,aAAa,EAAE,0CAAE,OAAO,kDAAI,CAAC;IACvD,MAAM,IAAI,GAAG,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ;QAC3D,CAAC,CAAE,aAA6B,CAAC,IAAI;QACrC,CAAC,CAAC,IAAI,CAAC;IAEX,MAAM,CAAC,IAAI,CACP,wDAAwD,IAAI,IAAI,WAAW,EAAE,CAChF,CAAC;IACF,MAAM,CAAC,IAAI,CACP,uDAAuD,IAAI,IAAI,eAAe,EAAE,CACnF,CAAC;AACN,CAAC","sourcesContent":["import { INestApplication } from \"@nestjs/common\";\nimport { DocumentBuilder, SwaggerModule } from \"@nestjs/swagger\";\nimport { Request, Response } from \"express\";\nimport { AddressInfo } from \"net\";\nimport { Logger } from \"../Logger\";\n\nexport type SwaggerSetupOptions = {\n swaggerPath?: string;\n swaggerJsonPath?: string;\n title?: string;\n description?: string;\n};\n\nexport function setupSwagger(app: INestApplication, options?: SwaggerSetupOptions) {\n const logger: Logger = new Logger(\"SwaggerConfig\");\n const swaggerPath = options?.swaggerPath ?? \"swagger\";\n const defaultSwaggerJsonPath = swaggerPath.includes(\"/\")\n ? `${swaggerPath.substring(0, swaggerPath.lastIndexOf(\"/\") + 1)}swagger.json`\n : \"swagger.json\";\n const swaggerJsonPath = options?.swaggerJsonPath ?? defaultSwaggerJsonPath;\n const legacySwaggerJsonPath = `${swaggerPath}-json`;\n\n const config = new DocumentBuilder()\n .setTitle(options?.title ?? \"API Documentation\")\n .setDescription(options?.description ?? \"API per la gestione di accessi utenti e allegati\")\n .setVersion(\"1.0\")\n .addBearerAuth() // Per abilitare l'autenticazione JWT\n .build();\n\n const document = SwaggerModule.createDocument(app, config);\n SwaggerModule.setup(swaggerPath, app, document);\n\n app.use(`/${swaggerJsonPath}`, (_req: Request, res: Response) => {\n res.setHeader(\"Content-Type\", \"application/json\");\n res.send(document);\n });\n\n if (legacySwaggerJsonPath !== swaggerJsonPath) {\n app.use(`/${legacySwaggerJsonPath}`, (_req: Request, res: Response) => {\n res.setHeader(\"Content-Type\", \"application/json\");\n res.send(document);\n });\n }\n\n const serverAddress = app.getHttpServer()?.address?.();\n const port = serverAddress && typeof serverAddress === \"object\"\n ? (serverAddress as AddressInfo).port\n : 3000;\n\n logger.info(\n `Swagger documentation available at: http://localhost:${port}/${swaggerPath}`\n );\n logger.info(\n `Swagger OpenAPI JSON available at: http://localhost:${port}/${swaggerJsonPath}`\n );\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "emilsoftware-utilities",
|
|
3
|
-
"version": "2.0.0-dev.
|
|
4
|
-
"description": "Utilities for EmilSoftware",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"module": "dist/index.js",
|
|
7
|
-
"types": "dist/index.d.ts",
|
|
8
|
-
"scripts": {
|
|
9
|
-
"release": "semantic-release",
|
|
10
|
-
"build": "npm run generate:accessi-openapi && npm run generate:accessi-client && npm run generate:accessi-wiki && tsc && tsc -p tsconfig.console.json --noEmit && npm run build:accessi-console && npm run copy-views",
|
|
11
|
-
"generate:accessi-openapi": "ts-node --transpile-only src/scripts/generateAccessiOpenApi.ts",
|
|
12
|
-
"generate:accessi-client": "orval --config orval.config.ts",
|
|
13
|
-
"generate:accessi-wiki": "ts-node --transpile-only src/scripts/generateAccessiWiki.ts",
|
|
14
|
-
"build:accessi-console": "esbuild src/accessi-module/Console/console.ts --bundle --platform=browser --format=esm --target=es2020 --outfile=dist/accessi-module/Console/console.js",
|
|
15
|
-
"copy-views": "node copy-views.js",
|
|
16
|
-
"db:update:accessi": "ts-node src/accessi-module/database-updates/runAccessiDbUpdate.ts",
|
|
17
|
-
"db:update:accessi:dist": "npm run build && node dist/accessi-module/database-updates/runAccessiDbUpdate.js",
|
|
18
|
-
"prepublishOnly": "npm run build",
|
|
19
|
-
"typecheck": "tsc --noEmit",
|
|
20
|
-
"lint": "node scripts/lint.cjs",
|
|
21
|
-
"test": "npm run typecheck && npm run lint && npm run test:unit",
|
|
22
|
-
"test:unit": "node --test test/accessi-regressions.cjs test/password-reset-regressions.cjs test/two-factor.cjs test/accessi-schema.cjs test/utilities-regressions.cjs test/service-token-regressions.cjs",
|
|
23
|
-
"test:coverage": "node --experimental-test-coverage --test-coverage-lines=50 --test-coverage-functions=60 --test-coverage-branches=60 --test test/accessi-regressions.cjs test/password-reset-regressions.cjs test/two-factor.cjs test/accessi-schema.cjs test/utilities-regressions.cjs test/service-token-regressions.cjs",
|
|
24
|
-
"test:accessi": "npm run test:unit",
|
|
25
|
-
"test:all": "npm test && npm run test:integration",
|
|
26
|
-
"test:integration": "node test/integration/run-firebird.cjs 5",
|
|
27
|
-
"test:integration:fb5": "node test/integration/run-firebird.cjs 5",
|
|
28
|
-
"test:integration:fb3": "node test/integration/run-firebird.cjs 3",
|
|
29
|
-
"test:
|
|
30
|
-
"accessi
|
|
31
|
-
"accessi:
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
"
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
"@nestjs/
|
|
51
|
-
"@nestjs/
|
|
52
|
-
"@nestjs/
|
|
53
|
-
"
|
|
54
|
-
"
|
|
55
|
-
"class-
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"jspdf
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"node-
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"swagger-
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"winston
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
"@semantic-release/
|
|
74
|
-
"@semantic-release/
|
|
75
|
-
"@semantic-release/
|
|
76
|
-
"@semantic-release/
|
|
77
|
-
"@semantic-release/release-notes-generator": "^14.0.3",
|
|
78
|
-
"@types/express": "^5.0.0",
|
|
79
|
-
"@types/jsonwebtoken": "^9.0.7",
|
|
80
|
-
"@types/multer": "^1.4.12",
|
|
81
|
-
"@types/node": "^22.13.4",
|
|
82
|
-
"@types/nodemailer": "^6.4.17",
|
|
83
|
-
"@types/reflect-metadata": "^0.0.5",
|
|
84
|
-
"@types/swagger-jsdoc": "^6.0.4",
|
|
85
|
-
"@types/swagger-ui-express": "^4.1.7",
|
|
86
|
-
"commitizen": "^4.3.1",
|
|
87
|
-
"cz-conventional-changelog": "^3.3.0",
|
|
88
|
-
"esbuild": "^0.28.2",
|
|
89
|
-
"fs-extra": "^11.3.0",
|
|
90
|
-
"orval": "^6.31.0",
|
|
91
|
-
"semantic-release": "^
|
|
92
|
-
"ts-node": "^10.9.2",
|
|
93
|
-
"typescript": "^5.8.3"
|
|
94
|
-
},
|
|
95
|
-
"files": [
|
|
96
|
-
"dist"
|
|
97
|
-
],
|
|
98
|
-
"config": {
|
|
99
|
-
"commitizen": {
|
|
100
|
-
"path": "./node_modules/cz-conventional-changelog"
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "emilsoftware-utilities",
|
|
3
|
+
"version": "2.0.0-dev.25",
|
|
4
|
+
"description": "Utilities for EmilSoftware",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"module": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"release": "semantic-release",
|
|
10
|
+
"build": "npm run generate:accessi-openapi && npm run generate:accessi-client && npm run generate:accessi-wiki && tsc && tsc -p tsconfig.console.json --noEmit && npm run build:accessi-console && npm run copy-views",
|
|
11
|
+
"generate:accessi-openapi": "ts-node --transpile-only src/scripts/generateAccessiOpenApi.ts",
|
|
12
|
+
"generate:accessi-client": "orval --config orval.config.ts",
|
|
13
|
+
"generate:accessi-wiki": "ts-node --transpile-only src/scripts/generateAccessiWiki.ts",
|
|
14
|
+
"build:accessi-console": "esbuild src/accessi-module/Console/console.ts --bundle --platform=browser --format=esm --target=es2020 --outfile=dist/accessi-module/Console/console.js",
|
|
15
|
+
"copy-views": "node copy-views.js",
|
|
16
|
+
"db:update:accessi": "ts-node src/accessi-module/database-updates/runAccessiDbUpdate.ts",
|
|
17
|
+
"db:update:accessi:dist": "npm run build && node dist/accessi-module/database-updates/runAccessiDbUpdate.js",
|
|
18
|
+
"prepublishOnly": "npm run build",
|
|
19
|
+
"typecheck": "tsc --noEmit",
|
|
20
|
+
"lint": "node scripts/lint.cjs",
|
|
21
|
+
"test": "npm run typecheck && npm run lint && npm run test:unit",
|
|
22
|
+
"test:unit": "node --test test/accessi-regressions.cjs test/password-reset-regressions.cjs test/two-factor.cjs test/accessi-schema.cjs test/utilities-regressions.cjs test/service-token-regressions.cjs",
|
|
23
|
+
"test:coverage": "node --experimental-test-coverage --test-coverage-lines=50 --test-coverage-functions=60 --test-coverage-branches=60 --test test/accessi-regressions.cjs test/password-reset-regressions.cjs test/two-factor.cjs test/accessi-schema.cjs test/utilities-regressions.cjs test/service-token-regressions.cjs",
|
|
24
|
+
"test:accessi": "npm run test:unit",
|
|
25
|
+
"test:all": "npm test && npm run test:integration",
|
|
26
|
+
"test:integration": "node test/integration/run-firebird.cjs 5",
|
|
27
|
+
"test:integration:fb5": "node test/integration/run-firebird.cjs 5",
|
|
28
|
+
"test:integration:fb3": "node test/integration/run-firebird.cjs 3",
|
|
29
|
+
"test:integration:fb25": "node test/integration/run-firebird.cjs 2.5",
|
|
30
|
+
"test:accessi-console": "npm run build && node test/console-two-factor.cjs",
|
|
31
|
+
"accessi:seed-admin": "node scripts/seed-accessi-admin.cjs",
|
|
32
|
+
"accessi:console": "node scripts/run-accessi-console.cjs",
|
|
33
|
+
"test:accessi-schema": "node --test test/accessi-schema.cjs",
|
|
34
|
+
"db:check:accessi": "ts-node src/accessi-module/database-updates/runAccessiDbUpdate.ts --check"
|
|
35
|
+
},
|
|
36
|
+
"publishConfig": {
|
|
37
|
+
"access": "public"
|
|
38
|
+
},
|
|
39
|
+
"repository": {
|
|
40
|
+
"type": "git",
|
|
41
|
+
"url": "git+https://github.com/Emil-Software/emilsoftware-utilities.git"
|
|
42
|
+
},
|
|
43
|
+
"author": "",
|
|
44
|
+
"license": "ISC",
|
|
45
|
+
"bugs": {
|
|
46
|
+
"url": "https://github.com/Emil-Software/emilsoftware-utilities/issues"
|
|
47
|
+
},
|
|
48
|
+
"homepage": "https://github.com/Emil-Software/emilsoftware-utilities#readme",
|
|
49
|
+
"dependencies": {
|
|
50
|
+
"@nestjs/common": "^11.0.11",
|
|
51
|
+
"@nestjs/core": "^11.0.11",
|
|
52
|
+
"@nestjs/platform-express": "^11.0.11",
|
|
53
|
+
"@nestjs/swagger": "^11.0.6",
|
|
54
|
+
"axios": "^1.7.9",
|
|
55
|
+
"class-transformer": "^0.5.1",
|
|
56
|
+
"class-validator": "^0.14.1",
|
|
57
|
+
"colorette": "^2.0.20",
|
|
58
|
+
"jsonwebtoken": "^9.0.2",
|
|
59
|
+
"jspdf": "^3.0.0",
|
|
60
|
+
"jspdf-autotable": "^5.0.2",
|
|
61
|
+
"multer": "^1.4.5-lts.2",
|
|
62
|
+
"node-fetch": "^3.3.2",
|
|
63
|
+
"node-firebird": "^2.15.0",
|
|
64
|
+
"nodemailer": "^6.10.0",
|
|
65
|
+
"reflect-metadata": "^0.2.2",
|
|
66
|
+
"swagger-jsdoc": "^6.2.8",
|
|
67
|
+
"swagger-ui-express": "^5.0.1",
|
|
68
|
+
"uuid": "^11.0.5",
|
|
69
|
+
"winston": "^3.11.0",
|
|
70
|
+
"winston-transport": "^4.9.0"
|
|
71
|
+
},
|
|
72
|
+
"devDependencies": {
|
|
73
|
+
"@semantic-release/changelog": "^6.0.3",
|
|
74
|
+
"@semantic-release/commit-analyzer": "^13.0.1",
|
|
75
|
+
"@semantic-release/git": "^10.0.1",
|
|
76
|
+
"@semantic-release/github": "^12.0.0",
|
|
77
|
+
"@semantic-release/release-notes-generator": "^14.0.3",
|
|
78
|
+
"@types/express": "^5.0.0",
|
|
79
|
+
"@types/jsonwebtoken": "^9.0.7",
|
|
80
|
+
"@types/multer": "^1.4.12",
|
|
81
|
+
"@types/node": "^22.13.4",
|
|
82
|
+
"@types/nodemailer": "^6.4.17",
|
|
83
|
+
"@types/reflect-metadata": "^0.0.5",
|
|
84
|
+
"@types/swagger-jsdoc": "^6.0.4",
|
|
85
|
+
"@types/swagger-ui-express": "^4.1.7",
|
|
86
|
+
"commitizen": "^4.3.1",
|
|
87
|
+
"cz-conventional-changelog": "^3.3.0",
|
|
88
|
+
"esbuild": "^0.28.2",
|
|
89
|
+
"fs-extra": "^11.3.0",
|
|
90
|
+
"orval": "^6.31.0",
|
|
91
|
+
"semantic-release": "^25.0.9",
|
|
92
|
+
"ts-node": "^10.9.2",
|
|
93
|
+
"typescript": "^5.8.3"
|
|
94
|
+
},
|
|
95
|
+
"files": [
|
|
96
|
+
"dist"
|
|
97
|
+
],
|
|
98
|
+
"config": {
|
|
99
|
+
"commitizen": {
|
|
100
|
+
"path": "./node_modules/cz-conventional-changelog"
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abilitazioneMenuIcona.js","sourceRoot":"","sources":["../../../../../src/accessi-module/Console/generated/model/abilitazioneMenuIcona.ts"],"names":[],"mappings":";AAAA;;;;;GAKG","sourcesContent":["/**\n * Generated by orval v6.31.0 🍺\n * Do not edit manually.\n * Accessi API\n * OpenAPI spec version: 1.0\n */\n\n/**\n * Nome dell'icona associata al menu\n */\nexport type AbilitazioneMenuIcona = { [key: string]: unknown };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abilitazioneMenuNote.js","sourceRoot":"","sources":["../../../../../src/accessi-module/Console/generated/model/abilitazioneMenuNote.ts"],"names":[],"mappings":";AAAA;;;;;GAKG","sourcesContent":["/**\n * Generated by orval v6.31.0 🍺\n * Do not edit manually.\n * Accessi API\n * OpenAPI spec version: 1.0\n */\n\n/**\n * Nota informativa associata al menu\n */\nexport type AbilitazioneMenuNote = { [key: string]: unknown };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abilitazioneMenuPagina.js","sourceRoot":"","sources":["../../../../../src/accessi-module/Console/generated/model/abilitazioneMenuPagina.ts"],"names":[],"mappings":";AAAA;;;;;GAKG","sourcesContent":["/**\n * Generated by orval v6.31.0 🍺\n * Do not edit manually.\n * Accessi API\n * OpenAPI spec version: 1.0\n */\n\n/**\n * Percorso della pagina associata al menu\n */\nexport type AbilitazioneMenuPagina = { [key: string]: unknown };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"abilitazioneMenuTipo.js","sourceRoot":"","sources":["../../../../../src/accessi-module/Console/generated/model/abilitazioneMenuTipo.ts"],"names":[],"mappings":";AAAA;;;;;GAKG","sourcesContent":["/**\n * Generated by orval v6.31.0 🍺\n * Do not edit manually.\n * Accessi API\n * OpenAPI spec version: 1.0\n */\n\n/**\n * Tipo di menu\n */\nexport type AbilitazioneMenuTipo = { [key: string]: unknown };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"publicRegisterRequestCellulare.js","sourceRoot":"","sources":["../../../../../src/accessi-module/Console/generated/model/publicRegisterRequestCellulare.ts"],"names":[],"mappings":";AAAA;;;;;GAKG","sourcesContent":["/**\n * Generated by orval v6.31.0 🍺\n * Do not edit manually.\n * Accessi API\n * OpenAPI spec version: 1.0\n */\n\n/**\n * Numero di cellulare.\n * @nullable\n */\nexport type PublicRegisterRequestCellulare = { [key: string]: unknown } | null;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"registerRequestCellulare.js","sourceRoot":"","sources":["../../../../../src/accessi-module/Console/generated/model/registerRequestCellulare.ts"],"names":[],"mappings":";AAAA;;;;;GAKG","sourcesContent":["/**\n * Generated by orval v6.31.0 🍺\n * Do not edit manually.\n * Accessi API\n * OpenAPI spec version: 1.0\n */\n\n/**\n * Numero di cellulare.\n * @nullable\n */\nexport type RegisterRequestCellulare = { [key: string]: unknown } | null;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"userDtoAvatar.js","sourceRoot":"","sources":["../../../../../src/accessi-module/Console/generated/model/userDtoAvatar.ts"],"names":[],"mappings":";AAAA;;;;;GAKG","sourcesContent":["/**\n * Generated by orval v6.31.0 🍺\n * Do not edit manually.\n * Accessi API\n * OpenAPI spec version: 1.0\n */\n\n/**\n * Avatar (URL o base64).\n * @nullable\n */\nexport type UserDtoAvatar = { [key: string]: unknown } | null;\n"]}
|