@carbonbox/domain 0.3.2 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/build/carbonbox/shared/domain/authorization/contracts/IAuthorizationPolicy.js +2 -0
  2. package/build/carbonbox/shared/domain/authorization/contracts/IPermissionSpecification.js +2 -0
  3. package/build/carbonbox/shared/domain/authorization/enums/AuthorizationDecision.js +9 -0
  4. package/build/carbonbox/shared/domain/authorization/enums/Permission.js +77 -0
  5. package/build/carbonbox/shared/domain/authorization/value-objects/PermissionSet.js +127 -0
  6. package/build/carbonbox/shared/domain/authorization/value-objects/SecurityContext.js +105 -0
  7. package/build/carbonbox/shared/domain/entities/User.js +158 -2
  8. package/build/carbonbox/shared/domain/exceptions/SecurityContextReconstructionError.js +48 -0
  9. package/build/carbonbox/shared/domain/types/PermissionSet.js +2 -0
  10. package/build/carbonbox/shared/domain/types/PermissionSetPrimitives.js +2 -0
  11. package/build/carbonbox/shared/domain/types/SecurityContext.js +2 -0
  12. package/build/carbonbox/shared/domain/types/SecurityContextPrimitives.js +2 -0
  13. package/build/carbonbox/shared/domain/types/UserPermissionsValue.js +2 -0
  14. package/build/carbonbox/shared/domain/value-objects/UserPermissions.js +617 -0
  15. package/build/carbonbox/stakeholders/carbon-clients/domain/entity/CarbonClient.js +6 -8
  16. package/build/carbonbox/stakeholders/carbon-clients/domain/value-objects/CarbonClientPermissions.js +36 -350
  17. package/build/carbonbox/stakeholders/carbon-coordinators/domain/entity/CarbonCoordinator.js +7 -9
  18. package/build/carbonbox/stakeholders/carbon-coordinators/domain/value-objects/CarbonCoordinatorPermissions.js +39 -290
  19. package/build/carbonbox/stakeholders/carbon-host/domain/entity/CarbonHost.js +4 -25
  20. package/build/carbonbox/stakeholders/carbon-host/domain/value-objects/CarbonHostPermissions.js +63 -134
  21. package/build/carbonbox/stakeholders/carbon-managers/domain/entity/CarbonManager.js +6 -8
  22. package/build/carbonbox/stakeholders/carbon-managers/domain/value-objects/CarbonManagerPermissions.js +11 -315
  23. package/build/carbonbox/stakeholders/shared/domain/entity/Stakeholder.js +5 -0
  24. package/build/carbonbox/stakeholders/shared/domain/types/StakeholderPermissions.js +2 -0
  25. package/build/carbonbox/stakeholders/shared/domain/value-objects/StakeholderPermissions.js +7 -0
  26. package/build/main/index.js +19 -1
  27. package/build/types/carbonbox/shared/domain/authorization/contracts/IAuthorizationPolicy.d.ts +24 -0
  28. package/build/types/carbonbox/shared/domain/authorization/contracts/IAuthorizationPolicy.d.ts.map +1 -0
  29. package/build/types/carbonbox/shared/domain/authorization/contracts/IPermissionSpecification.d.ts +27 -0
  30. package/build/types/carbonbox/shared/domain/authorization/contracts/IPermissionSpecification.d.ts.map +1 -0
  31. package/build/types/carbonbox/shared/domain/authorization/enums/AuthorizationDecision.d.ts +6 -0
  32. package/build/types/carbonbox/shared/domain/authorization/enums/AuthorizationDecision.d.ts.map +1 -0
  33. package/build/types/carbonbox/shared/domain/authorization/enums/Permission.d.ts +64 -0
  34. package/build/types/carbonbox/shared/domain/authorization/enums/Permission.d.ts.map +1 -0
  35. package/build/types/carbonbox/shared/domain/authorization/value-objects/PermissionSet.d.ts +31 -0
  36. package/build/types/carbonbox/shared/domain/authorization/value-objects/PermissionSet.d.ts.map +1 -0
  37. package/build/types/carbonbox/shared/domain/authorization/value-objects/SecurityContext.d.ts +23 -0
  38. package/build/types/carbonbox/shared/domain/authorization/value-objects/SecurityContext.d.ts.map +1 -0
  39. package/build/types/carbonbox/shared/domain/entities/IUser.d.ts +4 -0
  40. package/build/types/carbonbox/shared/domain/entities/IUser.d.ts.map +1 -1
  41. package/build/types/carbonbox/shared/domain/entities/User.d.ts +10 -0
  42. package/build/types/carbonbox/shared/domain/entities/User.d.ts.map +1 -1
  43. package/build/types/carbonbox/shared/domain/exceptions/SecurityContextReconstructionError.d.ts +11 -0
  44. package/build/types/carbonbox/shared/domain/exceptions/SecurityContextReconstructionError.d.ts.map +1 -0
  45. package/build/types/carbonbox/shared/domain/repositories/IUserRepository.d.ts +10 -3
  46. package/build/types/carbonbox/shared/domain/repositories/IUserRepository.d.ts.map +1 -1
  47. package/build/types/carbonbox/shared/domain/types/PermissionSet.d.ts +5 -0
  48. package/build/types/carbonbox/shared/domain/types/PermissionSet.d.ts.map +1 -0
  49. package/build/types/carbonbox/shared/domain/types/PermissionSetPrimitives.d.ts +4 -0
  50. package/build/types/carbonbox/shared/domain/types/PermissionSetPrimitives.d.ts.map +1 -0
  51. package/build/types/carbonbox/shared/domain/types/SecurityContext.d.ts +11 -0
  52. package/build/types/carbonbox/shared/domain/types/SecurityContext.d.ts.map +1 -0
  53. package/build/types/carbonbox/shared/domain/types/SecurityContextPrimitives.d.ts +10 -0
  54. package/build/types/carbonbox/shared/domain/types/SecurityContextPrimitives.d.ts.map +1 -0
  55. package/build/types/carbonbox/shared/domain/types/StakeholderManagementPermissions.d.ts +1 -0
  56. package/build/types/carbonbox/shared/domain/types/StakeholderManagementPermissions.d.ts.map +1 -1
  57. package/build/types/carbonbox/shared/domain/types/StakeholderManagementPermissionsPrimitives.d.ts +1 -0
  58. package/build/types/carbonbox/shared/domain/types/StakeholderManagementPermissionsPrimitives.d.ts.map +1 -1
  59. package/build/types/carbonbox/shared/domain/types/UserPermissionsValue.d.ts +12 -0
  60. package/build/types/carbonbox/shared/domain/types/UserPermissionsValue.d.ts.map +1 -0
  61. package/build/types/carbonbox/shared/domain/types/UserPrimitives.d.ts +2 -0
  62. package/build/types/carbonbox/shared/domain/types/UserPrimitives.d.ts.map +1 -1
  63. package/build/types/carbonbox/shared/domain/types/UserProps.d.ts +2 -0
  64. package/build/types/carbonbox/shared/domain/types/UserProps.d.ts.map +1 -1
  65. package/build/types/carbonbox/shared/domain/value-objects/UserPermissions.d.ts +72 -0
  66. package/build/types/carbonbox/shared/domain/value-objects/UserPermissions.d.ts.map +1 -0
  67. package/build/types/carbonbox/stakeholders/carbon-clients/domain/entity/CarbonClient.d.ts +0 -2
  68. package/build/types/carbonbox/stakeholders/carbon-clients/domain/entity/CarbonClient.d.ts.map +1 -1
  69. package/build/types/carbonbox/stakeholders/carbon-clients/domain/entity/ICarbonClient.d.ts +0 -2
  70. package/build/types/carbonbox/stakeholders/carbon-clients/domain/entity/ICarbonClient.d.ts.map +1 -1
  71. package/build/types/carbonbox/stakeholders/carbon-clients/domain/types/CarbonClientPrimitives.d.ts +0 -2
  72. package/build/types/carbonbox/stakeholders/carbon-clients/domain/types/CarbonClientPrimitives.d.ts.map +1 -1
  73. package/build/types/carbonbox/stakeholders/carbon-clients/domain/types/CarbonClientProps.d.ts +0 -2
  74. package/build/types/carbonbox/stakeholders/carbon-clients/domain/types/CarbonClientProps.d.ts.map +1 -1
  75. package/build/types/carbonbox/stakeholders/carbon-clients/domain/value-objects/CarbonClientPermissions.d.ts +2 -50
  76. package/build/types/carbonbox/stakeholders/carbon-clients/domain/value-objects/CarbonClientPermissions.d.ts.map +1 -1
  77. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/entity/CarbonCoordinator.d.ts +0 -2
  78. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/entity/CarbonCoordinator.d.ts.map +1 -1
  79. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/entity/ICarbonCoordinator.d.ts +0 -2
  80. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/entity/ICarbonCoordinator.d.ts.map +1 -1
  81. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/types/CarbonCoordinatorPrimitives.d.ts +0 -2
  82. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/types/CarbonCoordinatorPrimitives.d.ts.map +1 -1
  83. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/types/CarbonCoordinatorProps.d.ts +0 -2
  84. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/types/CarbonCoordinatorProps.d.ts.map +1 -1
  85. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/value-objects/CarbonCoordinatorPermissions.d.ts +2 -11
  86. package/build/types/carbonbox/stakeholders/carbon-coordinators/domain/value-objects/CarbonCoordinatorPermissions.d.ts.map +1 -1
  87. package/build/types/carbonbox/stakeholders/carbon-host/domain/entity/CarbonHost.d.ts +0 -3
  88. package/build/types/carbonbox/stakeholders/carbon-host/domain/entity/CarbonHost.d.ts.map +1 -1
  89. package/build/types/carbonbox/stakeholders/carbon-host/domain/entity/ICarbonHost.d.ts +0 -2
  90. package/build/types/carbonbox/stakeholders/carbon-host/domain/entity/ICarbonHost.d.ts.map +1 -1
  91. package/build/types/carbonbox/stakeholders/carbon-host/domain/types/CarbonHostPrimitives.d.ts +1 -4
  92. package/build/types/carbonbox/stakeholders/carbon-host/domain/types/CarbonHostPrimitives.d.ts.map +1 -1
  93. package/build/types/carbonbox/stakeholders/carbon-host/domain/types/CarbonHostProps.d.ts +1 -4
  94. package/build/types/carbonbox/stakeholders/carbon-host/domain/types/CarbonHostProps.d.ts.map +1 -1
  95. package/build/types/carbonbox/stakeholders/carbon-host/domain/value-objects/CarbonHostPermissions.d.ts +2 -24
  96. package/build/types/carbonbox/stakeholders/carbon-host/domain/value-objects/CarbonHostPermissions.d.ts.map +1 -1
  97. package/build/types/carbonbox/stakeholders/carbon-managers/domain/entity/CarbonManager.d.ts +0 -2
  98. package/build/types/carbonbox/stakeholders/carbon-managers/domain/entity/CarbonManager.d.ts.map +1 -1
  99. package/build/types/carbonbox/stakeholders/carbon-managers/domain/entity/ICarbonManager.d.ts +0 -2
  100. package/build/types/carbonbox/stakeholders/carbon-managers/domain/entity/ICarbonManager.d.ts.map +1 -1
  101. package/build/types/carbonbox/stakeholders/carbon-managers/domain/types/CarbonManagerPrimitives.d.ts +0 -2
  102. package/build/types/carbonbox/stakeholders/carbon-managers/domain/types/CarbonManagerPrimitives.d.ts.map +1 -1
  103. package/build/types/carbonbox/stakeholders/carbon-managers/domain/types/CarbonManagerProps.d.ts +0 -2
  104. package/build/types/carbonbox/stakeholders/carbon-managers/domain/types/CarbonManagerProps.d.ts.map +1 -1
  105. package/build/types/carbonbox/stakeholders/carbon-managers/domain/value-objects/CarbonManagerPermissions.d.ts +2 -11
  106. package/build/types/carbonbox/stakeholders/carbon-managers/domain/value-objects/CarbonManagerPermissions.d.ts.map +1 -1
  107. package/build/types/carbonbox/stakeholders/shared/domain/entity/Stakeholder.d.ts.map +1 -1
  108. package/build/types/carbonbox/stakeholders/shared/domain/types/StakeholderPermissions.d.ts +10 -0
  109. package/build/types/carbonbox/stakeholders/shared/domain/types/StakeholderPermissions.d.ts.map +1 -0
  110. package/build/types/carbonbox/stakeholders/shared/domain/value-objects/StakeholderPermissions.d.ts +4 -0
  111. package/build/types/carbonbox/stakeholders/shared/domain/value-objects/StakeholderPermissions.d.ts.map +1 -0
  112. package/build/types/main/index.d.ts +14 -12
  113. package/build/types/main/index.d.ts.map +1 -1
  114. package/package.json +1 -1
@@ -21,6 +21,7 @@ const StakeholderEmail_1 = require("../value-objects/StakeholderEmail");
21
21
  const StakeholderId_1 = require("../value-objects/StakeholderId");
22
22
  const StakeholderLastAccessAt_1 = require("../value-objects/StakeholderLastAccessAt");
23
23
  const StakeholderPassword_1 = require("../value-objects/StakeholderPassword");
24
+ const StakeholderPermissions_1 = require("../value-objects/StakeholderPermissions");
24
25
  const StakeholderRoleType_1 = require("../value-objects/StakeholderRoleType");
25
26
  const StakeholderTaxIdentification_1 = require("../value-objects/StakeholderTaxIdentification");
26
27
  const StakeholderUserType_1 = require("../value-objects/StakeholderUserType");
@@ -50,6 +51,9 @@ class Stakeholder extends User_1.User {
50
51
  const lastAccessAt = skipDomainValidation
51
52
  ? StakeholderLastAccessAt_1.StakeholderLastAccessAt.fromPrimitives(props.lastAccessAt).toPrimitives()
52
53
  : StakeholderLastAccessAt_1.StakeholderLastAccessAt.create(props.lastAccessAt).toPrimitives();
54
+ const permissions = skipDomainValidation
55
+ ? StakeholderPermissions_1.StakeholderPermissions.fromPrimitives(props.permissions).toPrimitives()
56
+ : StakeholderPermissions_1.StakeholderPermissions.create(props.permissions).toPrimitives();
53
57
  super({
54
58
  id,
55
59
  avatar,
@@ -59,6 +63,7 @@ class Stakeholder extends User_1.User {
59
63
  userType,
60
64
  displayName,
61
65
  lastAccessAt,
66
+ permissions,
62
67
  }, skipDomainValidation);
63
68
  _Stakeholder_taxIdentification.set(this, void 0);
64
69
  _Stakeholder_roleType.set(this, void 0);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StakeholderPermissions = void 0;
4
+ const UserPermissions_1 = require("../../../../shared/domain/value-objects/UserPermissions");
5
+ class StakeholderPermissions extends UserPermissions_1.UserPermissions {
6
+ }
7
+ exports.StakeholderPermissions = StakeholderPermissions;
@@ -13,7 +13,7 @@ exports.ExecutionPeriod = exports.AggregateId = exports.Code = exports.Url = exp
13
13
  exports.CorporateConfigurationCarbonFootprintSubsegmentReference = exports.CorporateConfigurationCarbonFootprintSegmentReference = exports.CorporateCarbonFootprintSegmentConfigurationReferences = exports.CollectionFieldReference = exports.CarbonFootprintSegmentReferences = exports.CarbonFootprintIntensityIndicatorReference = exports.CarbonFootprintConfigurationReference = exports.GlobalWarmingPotentialReference = exports.EmissionFactorReference = exports.EmissionCalculationFormulaReference = exports.EmissionCalculationReference = exports.CalculationVariableReferences = exports.CalculationProcessReference = exports.ActivityDataSubmissionReference = exports.EmissionSource = exports.EmissionSources = exports.CarbonClientReferences = exports.CarbonClientReference = exports.StakeholderReferences = exports.StakeholderReference = exports.UserType = exports.UserLastAccessAt = exports.UserAvatar = exports.UserBusinessStatus = exports.UserPassword = exports.UserDisplayName = exports.UserId = exports.UserEmail = exports.NullableProductConfigurationCarbonFootprintSubsegmentReference = exports.NullableEventEditionConfigurationCarbonFootprintSubsegmentReference = exports.NullableCorporateConfigurationCarbonFootprintSubsegmentReference = exports.NullableStakeholderReference = exports.NullableColombianNIT = exports.NullableTaxIdentificationNumber = exports.NullablePositiveInteger = exports.NullableNumeric = exports.NullableDateTimeString = exports.NullableDate = exports.NullableCode = exports.NullableString = exports.TaxIdentificationNumberList = exports.UrlList = exports.StringList = exports.CodeList = exports.AggregateIdList = exports.TaxIdentification = exports.Gender = exports.Currency = exports.ColombiaNIT = exports.TaxIdentificationNumber = void 0;
14
14
  exports.DateGreaterThanError = exports.InvalidUserBusinessStatusError = exports.InvalidUserTypeError = exports.DivisionByZeroError = exports.MoneyOverflowError = exports.NotIntegerError = exports.NegativeAmountError = exports.MinimumValueViolationError = exports.InvalidUrlListError = exports.InvalidCodeListError = exports.InvalidStringListError = exports.EmptyArrayNotAllowedError = exports.PasswordPolicyViolationError = exports.InvalidNationalNumberError = exports.InvalidFullInternationalNumberError = exports.InvalidEmailPolicyError = exports.InvalidCoordinatesError = exports.InvalidTimeFormatError = exports.InvalidDateRangeError = exports.InvalidDateFormatError = exports.InvalidColombianNITNumberError = exports.InvalidColombianNITCheckDigitError = exports.InvalidColombianNITFormatError = exports.InvalidTaxIdentificationTypeError = exports.InvalidStakeholderRoleTypeError = exports.InvalidGenderError = exports.InvalidCurrencyError = exports.InvalidCountryCodeError = exports.InvalidBusinessScaleError = exports.InvalidPropertyValueError = exports.InvalidPropertyTypeError = exports.InvalidValueObjectConfigurationError = exports.UndefinedValueError = exports.NullValueError = exports.MethodNotImplementedError = exports.CreateMethodNotImplementedError = exports.ServiceCatalogReference = exports.ProductReference = exports.ProductConfigurationSystemBoundaryReference = exports.ProductConfigurationCarbonFootprintSubsegmentReference = exports.ProductConfigurationCarbonFootprintSegmentReference = exports.ProductCarbonFootprintSegmentConfigurationReferences = exports.FacilityReference = exports.EventReference = exports.EventEditionReferences = exports.EventEditionReference = exports.EventEditionLifecycleStageReference = exports.EventEditionLifecycleStageConfigurationReferences = exports.EventEditionConfigurationCarbonFootprintSubsegmentReferences = exports.EventEditionConfigurationCarbonFootprintSubsegmentReference = void 0;
15
15
  exports.CarbonClientWebsiteUrl = exports.CarbonClientPhysicalAddress = exports.CarbonClientOrganizationSize = exports.CarbonClientIndustryType = exports.CarbonClientUserType = exports.CarbonClientLegalBusinessName = exports.CarbonClientAccountType = exports.CarbonClientDisplayName = exports.CarbonClientEmail = exports.CarbonClientId = exports.StakeholderUserType = exports.StakeholderLastAccessAt = exports.StakeholderAvatar = exports.StakeholderTaxIdentification = exports.StakeholderRoleType = exports.StakeholderBusinessStatus = exports.StakeholderPassword = exports.StakeholderDisplayName = exports.StakeholderEmail = exports.StakeholderId = exports.CarbonManager = exports.CarbonHost = exports.CarbonCoordinator = exports.CarbonClient = exports.Stakeholder = exports.CannotAccessRightOnLeftValueError = exports.CannotAccessLeftOnRightValueError = exports.ResultExtensions = exports.EitherUtils = exports.ResultFactory = exports.EitherFactory = exports.RightEither = exports.LeftEither = exports.Either = exports.TaxIdentificationNumberWithControlCharactersError = exports.InvalidTaxIdentificationNumberLengthError = exports.InvalidTaxIdentificationNumberFormatError = exports.InvalidSupervisorRoleError = exports.InvalidMinutesDurationError = exports.InvalidMeasurementUnitOperationError = exports.InvalidManagedStakeholderRoleError = exports.InvalidDomainCodeError = exports.InvalidCountrySpecificTaxIdentificationNumberError = exports.InvalidCodeError = exports.InvalidAssignerRoleError = exports.InvalidAggregateIdError = exports.EmptyTaxIdentificationNumberError = exports.EmptySegmentNameError = exports.EmptySegmentCodeError = exports.EmptyDisplayNameError = void 0;
16
- exports.DateTimeFormattingDomainService = exports.InvalidCarbonCoordinatorAvailabilityStatusError = exports.InvalidCarbonClientAccountTypeError = exports.CarbonCoordinatorAvailabilityStatusEnum = exports.CarbonClientAccountEnum = exports.CarbonManagerUserType = exports.CarbonManagerManagedStakeholders = exports.CarbonManagerDisplayName = exports.CarbonManagerEmail = exports.CarbonManagerId = exports.CarbonHostUserType = exports.CarbonHostDisplayName = exports.CarbonHostTaxIdentification = exports.CarbonHostBusinessStatus = exports.CarbonHostRoleType = exports.CarbonHostEmail = exports.CarbonHostId = exports.CarbonCoordinatorManagedCarbonClients = exports.CarbonCoordinatorWeeklyWorkingSchedule = exports.CarbonCoordinatorGender = exports.CarbonCoordinatorUserType = exports.CarbonCoordinatorAvailabilityStatus = exports.CarbonCoordinatorDisplayName = exports.CarbonCoordinatorEmail = exports.CarbonCoordinatorId = exports.CarbonClientPrimaryContactPhone = exports.CarbonClientPrimaryContactEmail = exports.CarbonClientLogo = void 0;
16
+ exports.StakeholderPermissions = exports.UserPermissions = exports.SecurityContextReconstructionError = exports.SecurityContext = exports.PermissionSet = exports.PermissionsEnum = exports.AuthorizationDecisionEnum = exports.DateTimeFormattingDomainService = exports.InvalidCarbonCoordinatorAvailabilityStatusError = exports.InvalidCarbonClientAccountTypeError = exports.CarbonCoordinatorAvailabilityStatusEnum = exports.CarbonClientAccountEnum = exports.CarbonManagerUserType = exports.CarbonManagerManagedStakeholders = exports.CarbonManagerDisplayName = exports.CarbonManagerEmail = exports.CarbonManagerId = exports.CarbonHostUserType = exports.CarbonHostDisplayName = exports.CarbonHostTaxIdentification = exports.CarbonHostBusinessStatus = exports.CarbonHostRoleType = exports.CarbonHostEmail = exports.CarbonHostId = exports.CarbonCoordinatorManagedCarbonClients = exports.CarbonCoordinatorWeeklyWorkingSchedule = exports.CarbonCoordinatorGender = exports.CarbonCoordinatorUserType = exports.CarbonCoordinatorAvailabilityStatus = exports.CarbonCoordinatorDisplayName = exports.CarbonCoordinatorEmail = exports.CarbonCoordinatorId = exports.CarbonClientPrimaryContactPhone = exports.CarbonClientPrimaryContactEmail = exports.CarbonClientLogo = void 0;
17
17
  // ─── Entity Classes (For Application Layer) ─────────────────────────────────
18
18
  var ActivityDataSubmission_1 = require("../carbonbox/activity-data-collection/activity-data-submissions/domain/entity/ActivityDataSubmission");
19
19
  Object.defineProperty(exports, "ActivityDataSubmission", { enumerable: true, get: function () { return ActivityDataSubmission_1.ActivityDataSubmission; } });
@@ -1193,3 +1193,21 @@ Object.defineProperty(exports, "InvalidCarbonCoordinatorAvailabilityStatusError"
1193
1193
  // ─── Date and Time Services ──────────────────────────────────────────────────
1194
1194
  var DateTimeFormattingDomainService_1 = require("../carbonbox/shared/domain/services/DateTimeFormattingDomainService");
1195
1195
  Object.defineProperty(exports, "DateTimeFormattingDomainService", { enumerable: true, get: function () { return DateTimeFormattingDomainService_1.DateTimeFormattingDomainService; } });
1196
+ // ─── Enums ──────────────────────────────────────────────────────────────────
1197
+ var AuthorizationDecision_1 = require("../carbonbox/shared/domain/authorization/enums/AuthorizationDecision");
1198
+ Object.defineProperty(exports, "AuthorizationDecisionEnum", { enumerable: true, get: function () { return AuthorizationDecision_1.AuthorizationDecision; } });
1199
+ var Permission_1 = require("../carbonbox/shared/domain/authorization/enums/Permission");
1200
+ Object.defineProperty(exports, "PermissionsEnum", { enumerable: true, get: function () { return Permission_1.Permission; } });
1201
+ // ─── Value Objects ──────────────────────────────────────────────────────────
1202
+ var PermissionSet_1 = require("../carbonbox/shared/domain/authorization/value-objects/PermissionSet");
1203
+ Object.defineProperty(exports, "PermissionSet", { enumerable: true, get: function () { return PermissionSet_1.PermissionSet; } });
1204
+ var SecurityContext_1 = require("../carbonbox/shared/domain/authorization/value-objects/SecurityContext");
1205
+ Object.defineProperty(exports, "SecurityContext", { enumerable: true, get: function () { return SecurityContext_1.SecurityContext; } });
1206
+ // ─── Exceptions ─────────────────────────────────────────────────────────────
1207
+ var SecurityContextReconstructionError_1 = require("../carbonbox/shared/domain/exceptions/SecurityContextReconstructionError");
1208
+ Object.defineProperty(exports, "SecurityContextReconstructionError", { enumerable: true, get: function () { return SecurityContextReconstructionError_1.SecurityContextReconstructionError; } });
1209
+ // ─── User and Stakeholder Permissions Value Objects ─────────────────────────
1210
+ var UserPermissions_1 = require("../carbonbox/shared/domain/value-objects/UserPermissions");
1211
+ Object.defineProperty(exports, "UserPermissions", { enumerable: true, get: function () { return UserPermissions_1.UserPermissions; } });
1212
+ var StakeholderPermissions_1 = require("../carbonbox/stakeholders/shared/domain/value-objects/StakeholderPermissions");
1213
+ Object.defineProperty(exports, "StakeholderPermissions", { enumerable: true, get: function () { return StakeholderPermissions_1.StakeholderPermissions; } });
@@ -0,0 +1,24 @@
1
+ import { Permission } from '../enums/Permission';
2
+ import { AuthorizationDecision } from '../enums/AuthorizationDecision';
3
+ import { SecurityContext } from '../value-objects/SecurityContext';
4
+ /**
5
+ * Interface que define una política de autorización.
6
+ * Las implementaciones evalúan contextos de seguridad y determinan
7
+ * si se debe permitir, denegar o si no es aplicable una acción específica.
8
+ */
9
+ export interface IAuthorizationPolicy {
10
+ /**
11
+ * Evalúa un contexto de seguridad contra un permiso específico.
12
+ * @param context - El contexto de seguridad a evaluar
13
+ * @param permission - El permiso que se está solicitando
14
+ * @returns La decisión de autorización (PERMIT, DENY, o NOT_APPLICABLE)
15
+ */
16
+ evaluate(context: SecurityContext, permission: Permission): AuthorizationDecision;
17
+ /**
18
+ * Determina si esta política puede manejar/evaluar un permiso específico.
19
+ * @param permission - El permiso a verificar
20
+ * @returns true si la política puede evaluar el permiso, false en caso contrario
21
+ */
22
+ supports(permission: Permission): boolean;
23
+ }
24
+ //# sourceMappingURL=IAuthorizationPolicy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IAuthorizationPolicy.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/authorization/contracts/IAuthorizationPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,GAAG,qBAAqB,CAAC;IAElF;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC;CAC3C"}
@@ -0,0 +1,27 @@
1
+ import { Permission } from '../enums/Permission';
2
+ import { SecurityContext } from '../value-objects/SecurityContext';
3
+ /**
4
+ * Interface que define una especificación de permisos.
5
+ * Las implementaciones determinan si un contexto de seguridad
6
+ * satisface los requisitos de permisos específicos.
7
+ */
8
+ export interface IPermissionSpecification {
9
+ /**
10
+ * Determina si el contexto de seguridad satisface esta especificación.
11
+ * @param context - El contexto de seguridad a evaluar
12
+ * @returns true si el contexto satisface la especificación, false en caso contrario
13
+ */
14
+ isSatisfiedBy(context: SecurityContext): boolean;
15
+ /**
16
+ * Obtiene la lista de permisos requeridos por esta especificación.
17
+ * @returns Array de permisos requeridos
18
+ */
19
+ getRequiredPermissions(): Permission[];
20
+ /**
21
+ * Determina si esta especificación soporta/maneja un permiso específico.
22
+ * @param permission - El permiso a verificar
23
+ * @returns true si la especificación soporta el permiso, false en caso contrario
24
+ */
25
+ supports(permission: Permission): boolean;
26
+ }
27
+ //# sourceMappingURL=IPermissionSpecification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IPermissionSpecification.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/authorization/contracts/IPermissionSpecification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC;IAEjD;;;OAGG;IACH,sBAAsB,IAAI,UAAU,EAAE,CAAC;IAEvC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC;CAC3C"}
@@ -0,0 +1,6 @@
1
+ export declare enum AuthorizationDecision {
2
+ PERMIT = "PERMIT",
3
+ DENY = "DENY",
4
+ NOT_APPLICABLE = "NOT_APPLICABLE"
5
+ }
6
+ //# sourceMappingURL=AuthorizationDecision.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthorizationDecision.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/authorization/enums/AuthorizationDecision.ts"],"names":[],"mappings":"AAAA,oBAAY,qBAAqB;IAC/B,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,cAAc,mBAAmB;CAClC"}
@@ -0,0 +1,64 @@
1
+ export declare enum Permission {
2
+ CAN_ACCESS_ALL_MODULES = "CAN_ACCESS_ALL_MODULES",
3
+ CAN_MANAGE_SYSTEM_CONFIGURATION = "CAN_MANAGE_SYSTEM_CONFIGURATION",
4
+ CAN_MANAGE_ALL_USERS = "CAN_MANAGE_ALL_USERS",
5
+ CAN_MANAGE_COMPANIES = "CAN_MANAGE_COMPANIES",
6
+ CAN_ASSIGN_HOST_MANAGERS = "CAN_ASSIGN_HOST_MANAGERS",
7
+ CAN_ASSIGN_COORDINATORS = "CAN_ASSIGN_COORDINATORS",
8
+ CAN_ASSIGN_COMPANIES_TO_HOST_MANAGERS = "CAN_ASSIGN_COMPANIES_TO_HOST_MANAGERS",
9
+ CAN_ASSIGN_COMPANIES_TO_COORDINATORS = "CAN_ASSIGN_COMPANIES_TO_COORDINATORS",
10
+ CAN_MANAGE_CORPORATE_CARBON_FOOTPRINT_CONFIGURATIONS = "CAN_MANAGE_CORPORATE_CARBON_FOOTPRINT_CONFIGURATIONS",
11
+ CAN_MANAGE_CORPORATE_SEGMENT_CONFIGURATIONS = "CAN_MANAGE_CORPORATE_SEGMENT_CONFIGURATIONS",
12
+ CAN_MANAGE_EVENT_CARBON_FOOTPRINT_CONFIGURATIONS = "CAN_MANAGE_EVENT_CARBON_FOOTPRINT_CONFIGURATIONS",
13
+ CAN_MANAGE_EVENT_LIFECYCLE_STAGE_CONFIGURATIONS = "CAN_MANAGE_EVENT_LIFECYCLE_STAGE_CONFIGURATIONS",
14
+ CAN_MANAGE_PRODUCT_CARBON_FOOTPRINT_CONFIGURATIONS = "CAN_MANAGE_PRODUCT_CARBON_FOOTPRINT_CONFIGURATIONS",
15
+ CAN_MANAGE_PRODUCT_SEGMENT_CONFIGURATIONS = "CAN_MANAGE_PRODUCT_SEGMENT_CONFIGURATIONS",
16
+ CAN_MANAGE_PRODUCT_SYSTEM_BOUNDARIES = "CAN_MANAGE_PRODUCT_SYSTEM_BOUNDARIES",
17
+ CAN_MANAGE_INTENSITY_INDICATORS = "CAN_MANAGE_INTENSITY_INDICATORS",
18
+ CAN_MANAGE_COLLECTION_FIELDS = "CAN_MANAGE_COLLECTION_FIELDS",
19
+ CAN_MANAGE_DYNAMIC_FORMS = "CAN_MANAGE_DYNAMIC_FORMS",
20
+ CAN_MANAGE_CONDITIONAL_LOGIC = "CAN_MANAGE_CONDITIONAL_LOGIC",
21
+ CAN_MANAGE_CONTEXTUAL_LABELS = "CAN_MANAGE_CONTEXTUAL_LABELS",
22
+ CAN_MANAGE_STAKEHOLDER_ADAPTATIONS = "CAN_MANAGE_STAKEHOLDER_ADAPTATIONS",
23
+ CAN_MANAGE_ACTIVITY_DATA_SUBMISSIONS = "CAN_MANAGE_ACTIVITY_DATA_SUBMISSIONS",
24
+ CAN_APPROVE_ACTIVITY_DATA_SUBMISSIONS = "CAN_APPROVE_ACTIVITY_DATA_SUBMISSIONS",
25
+ CAN_REJECT_ACTIVITY_DATA_SUBMISSIONS = "CAN_REJECT_ACTIVITY_DATA_SUBMISSIONS",
26
+ CAN_MANAGE_FORMULAS = "CAN_MANAGE_FORMULAS",
27
+ CAN_MANAGE_EMISSION_FACTORS = "CAN_MANAGE_EMISSION_FACTORS",
28
+ CAN_MANAGE_CALCULATION_VARIABLES = "CAN_MANAGE_CALCULATION_VARIABLES",
29
+ CAN_MANAGE_CONSTANTS = "CAN_MANAGE_CONSTANTS",
30
+ CAN_MANAGE_GLOBAL_WARMING_POTENTIALS = "CAN_MANAGE_GLOBAL_WARMING_POTENTIALS",
31
+ CAN_MANAGE_CALCULATION_PROCESSES = "CAN_MANAGE_CALCULATION_PROCESSES",
32
+ CAN_MANAGE_CALCULATION_WORKFLOWS = "CAN_MANAGE_CALCULATION_WORKFLOWS",
33
+ CAN_MANAGE_CALCULATION_JOBS = "CAN_MANAGE_CALCULATION_JOBS",
34
+ CAN_EXECUTE_CALCULATION_JOBS = "CAN_EXECUTE_CALCULATION_JOBS",
35
+ CAN_MONITOR_CALCULATION_PROCESSES = "CAN_MONITOR_CALCULATION_PROCESSES",
36
+ CAN_CANCEL_CALCULATION_JOBS = "CAN_CANCEL_CALCULATION_JOBS",
37
+ CAN_RETRY_FAILED_CALCULATIONS = "CAN_RETRY_FAILED_CALCULATIONS",
38
+ CAN_VIEW_EMISSION_CALCULATION_RESULTS = "CAN_VIEW_EMISSION_CALCULATION_RESULTS",
39
+ CAN_MANAGE_EMISSION_CALCULATION_RESULTS = "CAN_MANAGE_EMISSION_CALCULATION_RESULTS",
40
+ CAN_VIEW_EMISSION_AGGREGATIONS = "CAN_VIEW_EMISSION_AGGREGATIONS",
41
+ CAN_MANAGE_EMISSION_AGGREGATIONS = "CAN_MANAGE_EMISSION_AGGREGATIONS",
42
+ CAN_VIEW_GHG_EMISSION_RESULTS = "CAN_VIEW_GHG_EMISSION_RESULTS",
43
+ CAN_MANAGE_GHG_EMISSION_RESULTS = "CAN_MANAGE_GHG_EMISSION_RESULTS",
44
+ CAN_EXPORT_CALCULATION_RESULTS = "CAN_EXPORT_CALCULATION_RESULTS",
45
+ CAN_GENERATE_EMISSION_REPORTS = "CAN_GENERATE_EMISSION_REPORTS",
46
+ CAN_MANAGE_EVENTS = "CAN_MANAGE_EVENTS",
47
+ CAN_MANAGE_EVENT_EDITIONS = "CAN_MANAGE_EVENT_EDITIONS",
48
+ CAN_MANAGE_FACILITIES = "CAN_MANAGE_FACILITIES",
49
+ CAN_MANAGE_PRODUCTS = "CAN_MANAGE_PRODUCTS",
50
+ CAN_VIEW_COMPANY_RESOURCES = "CAN_VIEW_COMPANY_RESOURCES",
51
+ CAN_VIEW_PURCHASES = "CAN_VIEW_PURCHASES",
52
+ CAN_CREATE_PURCHASE_ORDERS = "CAN_CREATE_PURCHASE_ORDERS",
53
+ CAN_UPDATE_PURCHASE_ORDERS = "CAN_UPDATE_PURCHASE_ORDERS",
54
+ CAN_DELETE_PURCHASE_ORDERS = "CAN_DELETE_PURCHASE_ORDERS",
55
+ CAN_MANAGE_PURCHASE_CONTRACTS = "CAN_MANAGE_PURCHASE_CONTRACTS",
56
+ CAN_CONFIGURE_SERVICE_PRICING = "CAN_CONFIGURE_SERVICE_PRICING",
57
+ CAN_MANAGE_CARBON_CLIENTS = "CAN_MANAGE_CARBON_CLIENTS",
58
+ CAN_MANAGE_CARBON_COORDINATORS = "CAN_MANAGE_CARBON_COORDINATORS",
59
+ CAN_MANAGE_CARBON_MANAGERS = "CAN_MANAGE_CARBON_MANAGERS",
60
+ CAN_MANAGE_CARBON_HOSTS = "CAN_MANAGE_CARBON_HOSTS",
61
+ CAN_VIEW_STAKEHOLDER_HIERARCHY = "CAN_VIEW_STAKEHOLDER_HIERARCHY",
62
+ CAN_ASSIGN_STAKEHOLDER_ROLES = "CAN_ASSIGN_STAKEHOLDER_ROLES"
63
+ }
64
+ //# sourceMappingURL=Permission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Permission.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/authorization/enums/Permission.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IAEpB,sBAAsB,2BAA2B;IACjD,+BAA+B,oCAAoC;IAGnE,oBAAoB,yBAAyB;IAC7C,oBAAoB,yBAAyB;IAC7C,wBAAwB,6BAA6B;IACrD,uBAAuB,4BAA4B;IACnD,qCAAqC,0CAA0C;IAC/E,oCAAoC,yCAAyC;IAG7E,oDAAoD,yDAAyD;IAC7G,2CAA2C,gDAAgD;IAC3F,gDAAgD,qDAAqD;IACrG,+CAA+C,oDAAoD;IACnG,kDAAkD,uDAAuD;IACzG,yCAAyC,8CAA8C;IACvF,oCAAoC,yCAAyC;IAC7E,+BAA+B,oCAAoC;IAGnE,4BAA4B,iCAAiC;IAC7D,wBAAwB,6BAA6B;IACrD,4BAA4B,iCAAiC;IAC7D,4BAA4B,iCAAiC;IAC7D,kCAAkC,uCAAuC;IACzE,oCAAoC,yCAAyC;IAC7E,qCAAqC,0CAA0C;IAC/E,oCAAoC,yCAAyC;IAG7E,mBAAmB,wBAAwB;IAC3C,2BAA2B,gCAAgC;IAC3D,gCAAgC,qCAAqC;IACrE,oBAAoB,yBAAyB;IAC7C,oCAAoC,yCAAyC;IAG7E,gCAAgC,qCAAqC;IACrE,gCAAgC,qCAAqC;IACrE,2BAA2B,gCAAgC;IAC3D,4BAA4B,iCAAiC;IAC7D,iCAAiC,sCAAsC;IACvE,2BAA2B,gCAAgC;IAC3D,6BAA6B,kCAAkC;IAG/D,qCAAqC,0CAA0C;IAC/E,uCAAuC,4CAA4C;IACnF,8BAA8B,mCAAmC;IACjE,gCAAgC,qCAAqC;IACrE,6BAA6B,kCAAkC;IAC/D,+BAA+B,oCAAoC;IACnE,8BAA8B,mCAAmC;IACjE,6BAA6B,kCAAkC;IAG/D,iBAAiB,sBAAsB;IACvC,yBAAyB,8BAA8B;IACvD,qBAAqB,0BAA0B;IAC/C,mBAAmB,wBAAwB;IAC3C,0BAA0B,+BAA+B;IAGzD,kBAAkB,uBAAuB;IACzC,0BAA0B,+BAA+B;IACzD,0BAA0B,+BAA+B;IACzD,0BAA0B,+BAA+B;IACzD,6BAA6B,kCAAkC;IAC/D,6BAA6B,kCAAkC;IAG/D,yBAAyB,8BAA8B;IACvD,8BAA8B,mCAAmC;IACjE,0BAA0B,+BAA+B;IACzD,uBAAuB,4BAA4B;IACnD,8BAA8B,mCAAmC;IACjE,4BAA4B,iCAAiC;CAC9D"}
@@ -0,0 +1,31 @@
1
+ import { PermissionSetPrimitives } from '../../types/PermissionSetPrimitives';
2
+ import { PermissionSet as TPermissionSet } from '../../types/PermissionSet';
3
+ import { Permission } from '../enums/Permission';
4
+ import { ObjectValueObject } from '../../value-objects/ObjectValueObject';
5
+ export declare class PermissionSet extends ObjectValueObject<PermissionSetPrimitives> {
6
+ #private;
7
+ protected static readonly PROPERTY_NAME = "permissionSet";
8
+ protected constructor(value: TPermissionSet, skipDomainValidation: boolean);
9
+ static create(value: TPermissionSet): PermissionSet;
10
+ static fromPrimitives(primitive: PermissionSetPrimitives): PermissionSet;
11
+ static createFromArray(permissions: Permission[]): PermissionSet;
12
+ static empty(): PermissionSet;
13
+ toPrimitives(): PermissionSetPrimitives;
14
+ get permissions(): readonly Permission[];
15
+ has(permission: Permission): boolean;
16
+ contains(permission: Permission): boolean;
17
+ hasAny(permissions: Permission[]): boolean;
18
+ hasAll(permissions: Permission[]): boolean;
19
+ add(permission: Permission): PermissionSet;
20
+ addAll(permissions: Permission[]): PermissionSet;
21
+ remove(permission: Permission): PermissionSet;
22
+ union(other: PermissionSet): PermissionSet;
23
+ intersection(other: PermissionSet): PermissionSet;
24
+ difference(other: PermissionSet): PermissionSet;
25
+ isEmpty(): boolean;
26
+ size(): number;
27
+ toArray(): Permission[];
28
+ equals(other: PermissionSet): boolean;
29
+ toString(): string;
30
+ }
31
+ //# sourceMappingURL=PermissionSet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PermissionSet.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/authorization/value-objects/PermissionSet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,aAAa,IAAI,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAE1E,qBAAa,aAAc,SAAQ,iBAAiB,CAAC,uBAAuB,CAAC;;IAC3E,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,mBAAmB;IAI1D,SAAS,aAAa,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,OAAO;WAmBnD,MAAM,CAAC,KAAK,EAAE,cAAc,GAAG,aAAa;WAI5C,cAAc,CAAC,SAAS,EAAE,uBAAuB,GAAG,aAAa;WAQ1E,eAAe,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,aAAa;WAIzD,KAAK,IAAI,aAAa;IAwBpB,YAAY,IAAI,uBAAuB;IAMvD,IAAW,WAAW,IAAI,SAAS,UAAU,EAAE,CAE9C;IAEM,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAIpC,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;IAIzC,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO;IAI1C,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO;IAI1C,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa;IAU1C,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,aAAa;IAKhD,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa;IAM7C,KAAK,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa;IAI1C,YAAY,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa;IAKjD,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,aAAa;IAK/C,OAAO,IAAI,OAAO;IAIlB,IAAI,IAAI,MAAM;IAId,OAAO,IAAI,UAAU,EAAE;IAIvB,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO;IAQrC,QAAQ,IAAI,MAAM;CAG1B"}
@@ -0,0 +1,23 @@
1
+ import { User } from '../../entities/User';
2
+ import { SecurityContextPrimitives } from '../../types/SecurityContextPrimitives';
3
+ import { SecurityContext as TSecurityContext } from '../../types/SecurityContext';
4
+ import { ObjectValueObject } from '../../value-objects/ObjectValueObject';
5
+ import { UserPrimitives } from '../../types/UserPrimitives';
6
+ export declare class SecurityContext extends ObjectValueObject<SecurityContextPrimitives> {
7
+ #private;
8
+ protected static readonly PROPERTY_NAME = "securityContext";
9
+ protected constructor(value: TSecurityContext, skipDomainValidation: boolean);
10
+ static create(value: TSecurityContext): SecurityContext;
11
+ static fromPrimitives(primitive: SecurityContextPrimitives): SecurityContext;
12
+ toPrimitives(): SecurityContextPrimitives;
13
+ get user(): User<UserPrimitives>;
14
+ get resource(): any;
15
+ get environment(): {
16
+ timestamp: string;
17
+ ipAddress: string | null;
18
+ } | null;
19
+ static fromUser(user: User<UserPrimitives>, resource?: any | null): SecurityContext;
20
+ withResource(resource: any): SecurityContext;
21
+ equals(other: SecurityContext): boolean;
22
+ }
23
+ //# sourceMappingURL=SecurityContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecurityContext.d.ts","sourceRoot":"","sources":["../../../../../../../src/carbonbox/shared/domain/authorization/value-objects/SecurityContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,EAAE,eAAe,IAAI,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5D,qBAAa,eAAgB,SAAQ,iBAAiB,CAAC,yBAAyB,CAAC;;IAC/E,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,qBAAqB;IAW5D,SAAS,aAAa,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,OAAO;WA2BrD,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,eAAe;WAIhD,cAAc,CAAC,SAAS,EAAE,yBAAyB,GAAG,eAAe;IA2B5E,YAAY,IAAI,yBAAyB;IAQzD,IAAW,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,CAEtC;IAED,IAAW,QAAQ,IAAI,GAAG,CAEzB;IAED,IAAW,WAAW,IAAI;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAE/E;WAEa,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,EAAE,QAAQ,GAAE,GAAG,GAAG,IAAW,GAAG,eAAe;IAWzF,YAAY,CAAC,QAAQ,EAAE,GAAG,GAAG,eAAe;IAQ5C,MAAM,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO;CAO/C"}
@@ -5,10 +5,14 @@ import { UserDisplayName } from '../value-objects/UserDisplayName';
5
5
  import { UserLastAccessAt } from '../value-objects/UserLastAccessAt';
6
6
  import { UserType } from '../value-objects/UserType';
7
7
  import { IAggregateRoot } from './IAggregateRoot';
8
+ import { Permission } from '../authorization/enums/Permission';
9
+ import { UserPermissions } from '../value-objects/UserPermissions';
8
10
  export interface IUser extends IAggregateRoot, IUserProfile, IUserCredentials {
9
11
  displayName: UserDisplayName;
10
12
  lastAccessAt: UserLastAccessAt;
11
13
  userType: UserType;
12
14
  businessStatus: UserBusinessStatus;
15
+ permissions: UserPermissions;
16
+ hasPermission(permission: Permission): boolean;
13
17
  }
14
18
  //# sourceMappingURL=IUser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IUser.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/entities/IUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,KACf,SAAQ,cAAc,EACtB,YAAY,EACZ,gBAAgB;IAChB,WAAW,EAAE,eAAe,CAAC;IAC7B,YAAY,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,kBAAkB,CAAC;CACpC"}
1
+ {"version":3,"file":"IUser.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/entities/IUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,MAAM,WAAW,KACf,SAAQ,cAAc,EACtB,YAAY,EACZ,gBAAgB;IAChB,WAAW,EAAE,eAAe,CAAC;IAC7B,YAAY,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,kBAAkB,CAAC;IACnC,WAAW,EAAE,eAAe,CAAC;IAC7B,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC;CAChD"}
@@ -9,6 +9,8 @@ import { UserPassword } from '../value-objects/UserPassword';
9
9
  import { UserType } from '../value-objects/UserType';
10
10
  import { AggregateRoot } from './AggregateRoot';
11
11
  import { IUser } from './IUser';
12
+ import { Permission } from '../authorization/enums/Permission';
13
+ import { UserPermissions } from '../value-objects/UserPermissions';
12
14
  export declare abstract class User<T extends UserPrimitives> extends AggregateRoot<T> implements IUser {
13
15
  #private;
14
16
  protected constructor(props: UserProps, skipDomainValidation: boolean);
@@ -19,5 +21,13 @@ export declare abstract class User<T extends UserPrimitives> extends AggregateRo
19
21
  get businessStatus(): UserBusinessStatus;
20
22
  get userType(): UserType;
21
23
  get lastAccessAt(): UserLastAccessAt;
24
+ get permissions(): UserPermissions;
25
+ /**
26
+ * Verifica si el usuario tiene un permiso específico.
27
+ * Mapea los enum Permission a las propiedades boolean del sistema existente.
28
+ * @param permission - El permiso a verificar
29
+ * @returns true si el usuario tiene el permiso, false en caso contrario
30
+ */
31
+ hasPermission(permission: Permission): boolean;
22
32
  }
23
33
  //# sourceMappingURL=User.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/entities/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,8BAAsB,IAAI,CAAC,CAAC,SAAS,cAAc,CACjD,SAAQ,aAAa,CAAC,CAAC,CACvB,YAAW,KAAK;;IAehB,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO;IA4BrE,IAAI,WAAW,IAAI,eAAe,CAEjC;IAED,IAAI,MAAM,IAAI,UAAU,CAEvB;IAED,IAAI,KAAK,IAAI,SAAS,CAErB;IAED,IAAI,QAAQ,IAAI,YAAY,CAE3B;IAED,IAAI,cAAc,IAAI,kBAAkB,CAEvC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,IAAI,YAAY,IAAI,gBAAgB,CAEnC;CACF"}
1
+ {"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/entities/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,8BAAsB,IAAI,CAAC,CAAC,SAAS,cAAc,CACjD,SAAQ,aAAa,CAAC,CAAC,CACvB,YAAW,KAAK;;IAiBhB,SAAS,aAAa,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,OAAO;IA8BrE,IAAI,WAAW,IAAI,eAAe,CAEjC;IAED,IAAI,MAAM,IAAI,UAAU,CAEvB;IAED,IAAI,KAAK,IAAI,SAAS,CAErB;IAED,IAAI,QAAQ,IAAI,YAAY,CAE3B;IAED,IAAI,cAAc,IAAI,kBAAkB,CAEvC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,IAAI,YAAY,IAAI,gBAAgB,CAEnC;IAED,IAAI,WAAW,IAAI,eAAe,CAEjC;IAED;;;;;OAKG;IACI,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO;CA8JtD"}
@@ -0,0 +1,11 @@
1
+ import { SecurityContextPrimitives } from '../types/SecurityContextPrimitives';
2
+ import { RootError } from './RootError';
3
+ export declare class SecurityContextReconstructionError extends RootError {
4
+ private readonly primitives;
5
+ private constructor();
6
+ static create(primitives: SecurityContextPrimitives): SecurityContextReconstructionError;
7
+ logError(): string;
8
+ getReceivedPrimitives(): SecurityContextPrimitives;
9
+ getDebugInfo(): object;
10
+ }
11
+ //# sourceMappingURL=SecurityContextReconstructionError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecurityContextReconstructionError.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/exceptions/SecurityContextReconstructionError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,qBAAa,kCAAmC,SAAQ,SAAS;IAC/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4B;IAEvD,OAAO;WAYgB,MAAM,CAAC,UAAU,EAAE,yBAAyB,GAAG,kCAAkC;IAIxF,QAAQ,IAAI,MAAM;IAgB3B,qBAAqB,IAAI,yBAAyB;IAIlD,YAAY,IAAI,MAAM;CAW9B"}
@@ -1,12 +1,19 @@
1
1
  import { User } from '../entities/User';
2
2
  import { Nullable } from '../types/Nullable';
3
+ import { UserPrimitives } from '../types/UserPrimitives';
4
+ import { UserBusinessStatus } from '../value-objects/UserBusinessStatus';
3
5
  import { UserEmail } from '../value-objects/UserEmail';
4
6
  import { UserId } from '../value-objects/UserId';
5
7
  import { UserLastAccessAt } from '../value-objects/UserLastAccessAt';
8
+ import { UserType } from '../value-objects/UserType';
6
9
  export interface IUserRepository {
7
- findByEmail<T extends UserEmail>(email: T): Promise<Nullable<User<any>>>;
8
- findById<T extends UserId>(id: T): Promise<Nullable<User<any>>>;
9
- save<T extends User<any>>(user: T): Promise<void>;
10
+ findByEmail<T extends UserEmail>(email: T): Promise<Nullable<User<UserPrimitives>>>;
11
+ findById<T extends UserId>(id: T): Promise<Nullable<User<UserPrimitives>>>;
12
+ save<T extends User<UserPrimitives>>(user: T): Promise<void>;
10
13
  updateLastAccessAt<T extends UserId, U extends UserLastAccessAt>(id: T, lastAccessAt: U): Promise<void>;
14
+ findActiveByEmail<T extends UserEmail>(email: T): Promise<Nullable<User<UserPrimitives>>>;
15
+ findAllByBusinessStatus(businessStatus: UserBusinessStatus): Promise<User<UserPrimitives>[]>;
16
+ findAllByUserType(userType: UserType): Promise<User<UserPrimitives>[]>;
17
+ findByBusinessStatusAndUserType(businessStatus: UserBusinessStatus, userType: UserType): Promise<User<UserPrimitives>[]>;
11
18
  }
12
19
  //# sourceMappingURL=IUserRepository.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IUserRepository.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/repositories/IUserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACzE,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAChE,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,gBAAgB,EAAE,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzG"}
1
+ {"version":3,"file":"IUserRepository.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/repositories/IUserRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IACpF,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC3E,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,kBAAkB,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,gBAAgB,EAAE,EAAE,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxG,iBAAiB,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC1F,uBAAuB,CAAC,cAAc,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC7F,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IACvE,+BAA+B,CAAC,cAAc,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;CAC1H"}
@@ -0,0 +1,5 @@
1
+ import { Permission } from '../authorization/enums/Permission';
2
+ export type PermissionSet = {
3
+ readonly permissions: readonly Permission[];
4
+ };
5
+ //# sourceMappingURL=PermissionSet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PermissionSet.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/PermissionSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAE/D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;CAC7C,CAAC"}
@@ -0,0 +1,4 @@
1
+ export type PermissionSetPrimitives = {
2
+ readonly permissions: readonly string[];
3
+ };
4
+ //# sourceMappingURL=PermissionSetPrimitives.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PermissionSetPrimitives.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/PermissionSetPrimitives.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { User } from '../entities/User';
2
+ import { UserPrimitives } from './UserPrimitives';
3
+ export type SecurityContext = {
4
+ readonly user: User<UserPrimitives>;
5
+ readonly resource: any | null;
6
+ readonly environment: {
7
+ readonly timestamp: string;
8
+ readonly ipAddress: string | null;
9
+ } | null;
10
+ };
11
+ //# sourceMappingURL=SecurityContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecurityContext.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/SecurityContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE;QACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;KACnC,GAAG,IAAI,CAAC;CACV,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { UserPrimitives } from './UserPrimitives';
2
+ export type SecurityContextPrimitives = {
3
+ readonly user: UserPrimitives;
4
+ readonly resource: any | null;
5
+ readonly environment: {
6
+ readonly timestamp: string;
7
+ readonly ipAddress: string | null;
8
+ } | null;
9
+ };
10
+ //# sourceMappingURL=SecurityContextPrimitives.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SecurityContextPrimitives.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/SecurityContextPrimitives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE;QACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;KACnC,GAAG,IAAI,CAAC;CACV,CAAC"}
@@ -5,5 +5,6 @@ export type StakeholderManagementPermissions = {
5
5
  canManageCarbonHosts: boolean;
6
6
  canViewStakeholderHierarchy: boolean;
7
7
  canAssignStakeholderRoles: boolean;
8
+ canManageStakeholderRoles: boolean;
8
9
  };
9
10
  //# sourceMappingURL=StakeholderManagementPermissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StakeholderManagementPermissions.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/StakeholderManagementPermissions.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gCAAgC,GAAG;IAC7C,sBAAsB,EAAE,OAAO,CAAC;IAChC,2BAA2B,EAAE,OAAO,CAAC;IACrC,uBAAuB,EAAE,OAAO,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"StakeholderManagementPermissions.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/StakeholderManagementPermissions.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gCAAgC,GAAG;IAC7C,sBAAsB,EAAE,OAAO,CAAC;IAChC,2BAA2B,EAAE,OAAO,CAAC;IACrC,uBAAuB,EAAE,OAAO,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,yBAAyB,EAAE,OAAO,CAAC;CACpC,CAAC"}
@@ -5,5 +5,6 @@ export type StakeholderManagementPermissionsPrimitives = {
5
5
  canManageCarbonHosts: boolean;
6
6
  canViewStakeholderHierarchy: boolean;
7
7
  canAssignStakeholderRoles: boolean;
8
+ canManageStakeholderRoles: boolean;
8
9
  };
9
10
  //# sourceMappingURL=StakeholderManagementPermissionsPrimitives.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StakeholderManagementPermissionsPrimitives.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/StakeholderManagementPermissionsPrimitives.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,0CAA0C,GAAG;IACvD,sBAAsB,EAAE,OAAO,CAAC;IAChC,2BAA2B,EAAE,OAAO,CAAC;IACrC,uBAAuB,EAAE,OAAO,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"StakeholderManagementPermissionsPrimitives.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/StakeholderManagementPermissionsPrimitives.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,0CAA0C,GAAG;IACvD,sBAAsB,EAAE,OAAO,CAAC;IAChC,2BAA2B,EAAE,OAAO,CAAC;IACrC,uBAAuB,EAAE,OAAO,CAAC;IACjC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,2BAA2B,EAAE,OAAO,CAAC;IACrC,yBAAyB,EAAE,OAAO,CAAC;IACnC,yBAAyB,EAAE,OAAO,CAAC;CACpC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { ActivityDataCollectionPermissions } from './ActivityDataCollectionPermissions';
2
+ import { EmissionCalculationProcessPermissions } from './EmissionCalculationProcessPermissions';
3
+ import { EmissionCalculationResultsPermissions } from './EmissionCalculationResultsPermissions';
4
+ import { CarbonFootprintConfigurationPermissions } from './CarbonFootprintConfigurationPermissions';
5
+ import { EmissionCalculationFormulaPermissions } from './EmissionCalculationFormulaPermissions';
6
+ import { PurchaseManagementPermissions } from './PurchaseManagementPermissions';
7
+ import { SystemAdministrationPermissions } from './SystemAdministrationPermissions';
8
+ import { UserManagementPermissions } from './UserManagementPermissions';
9
+ import { CompanyResourcesPermissions } from './CompanyResourcesPermissions';
10
+ import { StakeholderManagementPermissions } from './StakeholderManagementPermissions';
11
+ export type UserPermissionsValue = UserManagementPermissions & CarbonFootprintConfigurationPermissions & EmissionCalculationFormulaPermissions & ActivityDataCollectionPermissions & EmissionCalculationProcessPermissions & EmissionCalculationResultsPermissions & PurchaseManagementPermissions & SystemAdministrationPermissions & CompanyResourcesPermissions & StakeholderManagementPermissions;
12
+ //# sourceMappingURL=UserPermissionsValue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UserPermissionsValue.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/UserPermissionsValue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,uCAAuC,EAAE,MAAM,2CAA2C,CAAC;AACpG,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAItF,MAAM,MAAM,oBAAoB,GAAG,yBAAyB,GAC5D,uCAAuC,GACvC,qCAAqC,GACrC,iCAAiC,GACjC,qCAAqC,GACrC,qCAAqC,GACrC,6BAA6B,GAC7B,+BAA+B,GAC/B,2BAA2B,GAC3B,gCAAgC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { UserBusinessStatus } from '../enums/UserBusinessStatus';
2
2
  import { UserType } from '../enums/UserType';
3
3
  import { AggregateRootPrimitives } from './AggregateRootPrimitives';
4
+ import { AllPermissionsPrimitives } from './AllPermissionsPrimitives';
4
5
  import { ImagePrimitives } from './ImagePrimitives';
5
6
  import { UserEmailPrimitives } from './UserEmailPrimitives';
6
7
  export type UserPrimitives = AggregateRootPrimitives & {
@@ -11,5 +12,6 @@ export type UserPrimitives = AggregateRootPrimitives & {
11
12
  businessStatus: UserBusinessStatus;
12
13
  userType: UserType;
13
14
  lastAccessAt: string | null;
15
+ permissions: AllPermissionsPrimitives;
14
16
  };
15
17
  //# sourceMappingURL=UserPrimitives.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserPrimitives.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/UserPrimitives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,uBAAuB,GAAG;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,mBAAmB,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,kBAAkB,CAAC;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC"}
1
+ {"version":3,"file":"UserPrimitives.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/UserPrimitives.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,uBAAuB,GAAG;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,mBAAmB,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,kBAAkB,CAAC;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,wBAAwB,CAAC;CACvC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { UserBusinessStatus } from '../enums/UserBusinessStatus';
2
2
  import { UserType } from '../enums/UserType';
3
3
  import { AggregateRootProps } from './AggregateRootProps';
4
+ import { AllPermissions } from './AllPermissions';
4
5
  import { Image } from './Image';
5
6
  import { UserEmail } from './UserEmail';
6
7
  export type UserProps = AggregateRootProps & {
@@ -11,5 +12,6 @@ export type UserProps = AggregateRootProps & {
11
12
  businessStatus: UserBusinessStatus;
12
13
  userType: UserType;
13
14
  lastAccessAt: string | null;
15
+ permissions: AllPermissions;
14
16
  };
15
17
  //# sourceMappingURL=UserProps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UserProps.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/UserProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,SAAS,GAAG,kBAAkB,GAAG;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,kBAAkB,CAAC;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B,CAAC"}
1
+ {"version":3,"file":"UserProps.d.ts","sourceRoot":"","sources":["../../../../../../src/carbonbox/shared/domain/types/UserProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,SAAS,GAAG,kBAAkB,GAAG;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,kBAAkB,CAAC;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,cAAc,CAAC;CAC7B,CAAC"}