@solidstarters/solid-core 1.2.132 → 1.2.133

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@solidstarters/solid-core",
3
- "version": "1.2.132",
3
+ "version": "1.2.133",
4
4
  "description": "This module is a NestJS module containing all the required core providers required by a Solid application",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -172,7 +172,7 @@ export class AuthenticationService {
172
172
  catch (err) {
173
173
  const pgUniqueViolationErrorCode = '23505';
174
174
  if (err.code === pgUniqueViolationErrorCode) {
175
- throw new ConflictException();
175
+ throw new ConflictException(parseUniqueConstraintError(err.detail || 'A unique constraint violation occurred.'));
176
176
  }
177
177
  throw err;
178
178
  }
@@ -1115,3 +1115,19 @@ export class AuthenticationService {
1115
1115
  }
1116
1116
 
1117
1117
  }
1118
+
1119
+ function parseUniqueConstraintError(detail: string): string {
1120
+ const match = detail.match(/Key \(([^)]+)\)=\(([^)]+)\) already exists\./);
1121
+ if (match) {
1122
+ const field = match[1];
1123
+ const value = match[2];
1124
+ const fieldMap: Record<string, string> = {
1125
+ username: 'username',
1126
+ email: 'email address',
1127
+ full_name_user_key: 'full name',
1128
+ };
1129
+ const friendlyField = fieldMap[field] || field;
1130
+ return `A user with ${friendlyField} "${value}" already exists.`;
1131
+ }
1132
+ return detail;
1133
+ }
package/test.json ADDED
@@ -0,0 +1 @@
1
+ {"selectionValueType":"string","id":1367,"createdAt":"2025-06-26T23:41:13.508Z","updatedAt":"2025-06-26T23:41:13.508Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"variableName","displayName":"Variable Name","description":null,"type":"shortText","ormType":"varchar","defaultValue":null,"regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":true,"unique":true,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":true,"length":256,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":null,"relationCoModelSingularName":null,"relationCreateInverse":false,"relationCascade":null,"relationModelModuleName":null,"relationCoModelFieldName":null,"isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":null,"selectionDynamicProviderCtxt":null,"selectionStaticValues":null,"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":true,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}' --fields='{"selectionValueType":"string","id":1368,"createdAt":"2025-06-26T23:41:13.515Z","updatedAt":"2025-06-26T23:41:13.515Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"variableType","displayName":"Variable Type","description":null,"type":"selectionStatic","ormType":"varchar","defaultValue":null,"regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":true,"unique":false,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":true,"length":256,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":null,"relationCoModelSingularName":null,"relationCreateInverse":false,"relationCascade":null,"relationModelModuleName":null,"relationCoModelFieldName":null,"isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":null,"selectionDynamicProviderCtxt":null,"selectionStaticValues":["date:Date","selectionStatic:Selection Static","selectionDynamic:Selection Dynamic"],"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":false,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}' --fields='{"selectionValueType":"string","id":1369,"createdAt":"2025-06-26T23:41:13.521Z","updatedAt":"2025-06-26T23:41:13.521Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"selectionStaticValues","displayName":"Selection Static Values","description":null,"type":"json","ormType":"jsonb","defaultValue":null,"regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":false,"unique":false,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":false,"length":null,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":null,"relationCoModelSingularName":null,"relationCreateInverse":false,"relationCascade":null,"relationModelModuleName":null,"relationCoModelFieldName":null,"isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":null,"selectionDynamicProviderCtxt":null,"selectionStaticValues":null,"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":false,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}' --fields='{"selectionValueType":"string","id":1370,"createdAt":"2025-06-26T23:41:13.527Z","updatedAt":"2025-06-26T23:41:13.527Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"selectionDynamicSourceType","displayName":"Selection Dynamic Source Type","description":null,"type":"selectionStatic","ormType":"","defaultValue":null,"regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":false,"unique":false,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":false,"length":256,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":null,"relationCoModelSingularName":null,"relationCreateInverse":false,"relationCascade":null,"relationModelModuleName":null,"relationCoModelFieldName":null,"isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":null,"selectionDynamicProviderCtxt":null,"selectionStaticValues":["sql:SQL","provider:Provider"],"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":false,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}' --fields='{"selectionValueType":"string","id":1371,"createdAt":"2025-06-26T23:41:13.535Z","updatedAt":"2025-06-26T23:41:13.535Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"selectionDynamicSQL","displayName":"Selection Dynamic SQL","description":"SQL query to fetch the data for this variable when it is rendered at runtime. This is only applicable when selectionDynamicSourceType is set to SQL.","type":"longText","ormType":"text","defaultValue":null,"regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":false,"unique":false,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":false,"length":null,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":null,"relationCoModelSingularName":null,"relationCreateInverse":false,"relationCascade":null,"relationModelModuleName":null,"relationCoModelFieldName":null,"isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":null,"selectionDynamicProviderCtxt":null,"selectionStaticValues":null,"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":false,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}' --fields='{"selectionValueType":"string","id":1372,"createdAt":"2025-06-26T23:41:13.541Z","updatedAt":"2025-06-26T23:41:13.541Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"selectionDynamicProviderName","displayName":"Selection Dynamic Provider Name","description":"This is only applicable when selectionDynamicSourceType is set to provider. It allows the user to select any pre-existing SelectionDynamicProvider implementation used to fetch a dynamic dropdown of values to choose from when this variable is presented to the user.","type":"selectionDynamic","ormType":"varchar","defaultValue":null,"regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":false,"unique":false,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":false,"length":256,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":null,"relationCoModelSingularName":null,"relationCreateInverse":false,"relationCascade":null,"relationModelModuleName":null,"relationCoModelFieldName":null,"isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":"SelectionDynamicProvider","selectionDynamicProviderCtxt":"{}","selectionStaticValues":null,"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":false,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}' --fields='{"selectionValueType":"string","id":1373,"createdAt":"2025-06-26T23:41:13.548Z","updatedAt":"2025-06-26T23:41:13.548Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"isMultiSelect","displayName":"Is Multi Select","description":"This is relevant only for variables of type \'selectionStatic\' or \'selectionDynamic\'. When set to true, it allows the user to select multiple values from the dropdown.","type":"boolean","ormType":"boolean","defaultValue":"false","regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":false,"unique":false,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":false,"length":null,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":null,"relationCoModelSingularName":null,"relationCreateInverse":false,"relationCascade":null,"relationModelModuleName":null,"relationCoModelFieldName":null,"isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":null,"selectionDynamicProviderCtxt":null,"selectionStaticValues":null,"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":false,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}' --fields='{"selectionValueType":"string","id":1374,"createdAt":"2025-06-26T23:41:13.554Z","updatedAt":"2025-06-26T23:41:13.554Z","deletedAt":null,"deletedTracker":"not-deleted","publishedAt":null,"localeName":null,"defaultEntityLocaleId":null,"name":"dashboard","displayName":"Dashboard","description":"Related Dashboard Model","type":"relation","ormType":"integer","defaultValue":null,"regexPattern":null,"regexPatternNotMatchingErrorMsg":null,"required":false,"unique":false,"encrypt":false,"encryptionType":null,"decryptWhen":null,"index":false,"length":null,"max":null,"min":null,"private":false,"mediaTypes":null,"mediaMaxSizeKb":null,"relationType":"many-to-one","relationCoModelSingularName":"dashboard","relationCreateInverse":true,"relationCascade":"cascade","relationModelModuleName":"solid-core","relationCoModelFieldName":"dashboardVariables","isRelationManyToManyOwner":null,"relationFieldFixedFilter":null,"selectionDynamicProvider":null,"selectionDynamicProviderCtxt":null,"selectionStaticValues":null,"computedFieldValueProvider":null,"computedFieldValueProviderCtxt":null,"computedFieldValueType":null,"computedFieldTriggerConfig":null,"uuid":null,"isSystem":true,"isMarkedForRemoval":false,"columnName":null,"relationCoModelColumnName":null,"isUserKey":false,"relationJoinTableName":null,"enableAuditTracking":false,"isMultiSelect":false}