@memberjunction/core-entities 6.1.0-edge.3 → 6.1.0-edge.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.
- package/dist/engines/IdentityClaimEngine.d.ts +166 -0
- package/dist/engines/IdentityClaimEngine.d.ts.map +1 -0
- package/dist/engines/IdentityClaimEngine.js +140 -0
- package/dist/engines/IdentityClaimEngine.js.map +1 -0
- package/dist/engines/UserInfoEngine.d.ts.map +1 -1
- package/dist/engines/UserInfoEngine.js +13 -2
- package/dist/engines/UserInfoEngine.js.map +1 -1
- package/dist/generated/entity_subclasses.d.ts +362 -7
- package/dist/generated/entity_subclasses.d.ts.map +1 -1
- package/dist/generated/entity_subclasses.js +531 -12
- package/dist/generated/entity_subclasses.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -19762,7 +19762,7 @@ export const MJFormChromeRuleSchema = z.object({
|
|
|
19762
19762
|
* * Description: Contribution key to pin when TargetKind is Contribution. Null for Relationship rows.`),
|
|
19763
19763
|
Inclusion: z.union([z.literal('More'), z.literal('None'), z.literal('Primary')]).describe(`
|
|
19764
19764
|
* * Field Name: Inclusion
|
|
19765
|
-
* * Display Name: Inclusion
|
|
19765
|
+
* * Display Name: Inclusion Rule
|
|
19766
19766
|
* * SQL Data Type: nvarchar(20)
|
|
19767
19767
|
* * Value List Type: List
|
|
19768
19768
|
* * Possible Values
|
|
@@ -19783,7 +19783,7 @@ export const MJFormChromeRuleSchema = z.object({
|
|
|
19783
19783
|
* * Description: Tie-break when more than one rule matches the same target. Higher Sequence wins.`),
|
|
19784
19784
|
Title: z.string().nullable().describe(`
|
|
19785
19785
|
* * Field Name: Title
|
|
19786
|
-
* * Display Name: Title
|
|
19786
|
+
* * Display Name: Section Title
|
|
19787
19787
|
* * SQL Data Type: nvarchar(100)
|
|
19788
19788
|
* * Description: Optional admin display title for this section. Null keeps the relationship DisplayName or contribution name. Survives OpenApp upgrades because the row is keyed by RelatedEntityID / ContributionKey, not by the previous label.`),
|
|
19789
19789
|
__mj_CreatedAt: z.date().describe(`
|
|
@@ -19969,6 +19969,156 @@ export const MJGeneratedCodeSchema = z.object({
|
|
|
19969
19969
|
* * Display Name: Linked Entity
|
|
19970
19970
|
* * SQL Data Type: nvarchar(255)`),
|
|
19971
19971
|
});
|
|
19972
|
+
/**
|
|
19973
|
+
* zod schema definition for the entity MJ: Identity Claim Types
|
|
19974
|
+
*/
|
|
19975
|
+
export const MJIdentityClaimTypeSchema = z.object({
|
|
19976
|
+
ID: z.string().describe(`
|
|
19977
|
+
* * Field Name: ID
|
|
19978
|
+
* * Display Name: ID
|
|
19979
|
+
* * SQL Data Type: uniqueidentifier
|
|
19980
|
+
* * Default Value: newsequentialid()`),
|
|
19981
|
+
Name: z.string().describe(`
|
|
19982
|
+
* * Field Name: Name
|
|
19983
|
+
* * Display Name: Name
|
|
19984
|
+
* * SQL Data Type: nvarchar(100)
|
|
19985
|
+
* * Description: Unique name identifying this claim type (e.g., "EntitlementGrant", "PersonAccountLink", "OrgInvite").`),
|
|
19986
|
+
Description: z.string().nullable().describe(`
|
|
19987
|
+
* * Field Name: Description
|
|
19988
|
+
* * Display Name: Description
|
|
19989
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
19990
|
+
* * Description: Optional description explaining the intent and behavior of this claim type.`),
|
|
19991
|
+
DriverClass: z.string().describe(`
|
|
19992
|
+
* * Field Name: DriverClass
|
|
19993
|
+
* * Display Name: Driver Class
|
|
19994
|
+
* * SQL Data Type: nvarchar(255)
|
|
19995
|
+
* * Description: Plugin class name implementing BaseIdentityClaimDriver, registered via @RegisterClass(BaseIdentityClaimDriver, DriverClass) and resolved at runtime.`),
|
|
19996
|
+
Configuration: z.string().nullable().describe(`
|
|
19997
|
+
* * Field Name: Configuration
|
|
19998
|
+
* * Display Name: Configuration
|
|
19999
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
20000
|
+
* * Description: JSON configuration specific to this claim type driver.`),
|
|
20001
|
+
DefaultExpirationDays: z.number().describe(`
|
|
20002
|
+
* * Field Name: DefaultExpirationDays
|
|
20003
|
+
* * Display Name: Default Expiration Days
|
|
20004
|
+
* * SQL Data Type: int
|
|
20005
|
+
* * Default Value: 30
|
|
20006
|
+
* * Description: Default lifespan in days for claims of this type before they expire automatically.`),
|
|
20007
|
+
IsActive: z.boolean().describe(`
|
|
20008
|
+
* * Field Name: IsActive
|
|
20009
|
+
* * Display Name: Is Active
|
|
20010
|
+
* * SQL Data Type: bit
|
|
20011
|
+
* * Default Value: 1
|
|
20012
|
+
* * Description: Whether this claim type is active and available for issuing new claims.`),
|
|
20013
|
+
__mj_CreatedAt: z.date().describe(`
|
|
20014
|
+
* * Field Name: __mj_CreatedAt
|
|
20015
|
+
* * Display Name: Created At
|
|
20016
|
+
* * SQL Data Type: datetimeoffset
|
|
20017
|
+
* * Default Value: getutcdate()`),
|
|
20018
|
+
__mj_UpdatedAt: z.date().describe(`
|
|
20019
|
+
* * Field Name: __mj_UpdatedAt
|
|
20020
|
+
* * Display Name: Updated At
|
|
20021
|
+
* * SQL Data Type: datetimeoffset
|
|
20022
|
+
* * Default Value: getutcdate()`),
|
|
20023
|
+
});
|
|
20024
|
+
/**
|
|
20025
|
+
* zod schema definition for the entity MJ: Identity Claims
|
|
20026
|
+
*/
|
|
20027
|
+
export const MJIdentityClaimSchema = z.object({
|
|
20028
|
+
ID: z.string().describe(`
|
|
20029
|
+
* * Field Name: ID
|
|
20030
|
+
* * Display Name: ID
|
|
20031
|
+
* * SQL Data Type: uniqueidentifier
|
|
20032
|
+
* * Default Value: newsequentialid()`),
|
|
20033
|
+
ClaimTypeID: z.string().describe(`
|
|
20034
|
+
* * Field Name: ClaimTypeID
|
|
20035
|
+
* * Display Name: Claim Type ID
|
|
20036
|
+
* * SQL Data Type: uniqueidentifier
|
|
20037
|
+
* * Related Entity/Foreign Key: MJ: Identity Claim Types (vwIdentityClaimTypes.ID)
|
|
20038
|
+
* * Description: Foreign key linking this claim to its IdentityClaimType definition.`),
|
|
20039
|
+
NormalizedEmail: z.string().describe(`
|
|
20040
|
+
* * Field Name: NormalizedEmail
|
|
20041
|
+
* * Display Name: Email Address
|
|
20042
|
+
* * SQL Data Type: nvarchar(255)
|
|
20043
|
+
* * Description: Normalized lowercase email address of the intended claimant.`),
|
|
20044
|
+
EntityID: z.string().nullable().describe(`
|
|
20045
|
+
* * Field Name: EntityID
|
|
20046
|
+
* * Display Name: Entity ID
|
|
20047
|
+
* * SQL Data Type: uniqueidentifier
|
|
20048
|
+
* * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
|
|
20049
|
+
* * Description: Optional polymorphic foreign key to the Entity representing the resource being claimed.`),
|
|
20050
|
+
RecordID: z.string().nullable().describe(`
|
|
20051
|
+
* * Field Name: RecordID
|
|
20052
|
+
* * Display Name: Record ID
|
|
20053
|
+
* * SQL Data Type: nvarchar(255)
|
|
20054
|
+
* * Description: Optional primary key / record ID of the specific entity record being claimed.`),
|
|
20055
|
+
PayloadJSON: z.string().nullable().describe(`
|
|
20056
|
+
* * Field Name: PayloadJSON
|
|
20057
|
+
* * Display Name: Payload
|
|
20058
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
20059
|
+
* * Description: Optional payload JSON containing custom data or parameters consumed by the claim type driver during redemption.`),
|
|
20060
|
+
Status: z.union([z.literal('Claimed'), z.literal('Expired'), z.literal('Pending'), z.literal('Revoked')]).describe(`
|
|
20061
|
+
* * Field Name: Status
|
|
20062
|
+
* * Display Name: Status
|
|
20063
|
+
* * SQL Data Type: nvarchar(20)
|
|
20064
|
+
* * Default Value: Pending
|
|
20065
|
+
* * Value List Type: List
|
|
20066
|
+
* * Possible Values
|
|
20067
|
+
* * Claimed
|
|
20068
|
+
* * Expired
|
|
20069
|
+
* * Pending
|
|
20070
|
+
* * Revoked
|
|
20071
|
+
* * Description: Current lifecycle state of the claim: Pending, Claimed, Expired, or Revoked.`),
|
|
20072
|
+
ExpiresAt: z.date().describe(`
|
|
20073
|
+
* * Field Name: ExpiresAt
|
|
20074
|
+
* * Display Name: Expires At
|
|
20075
|
+
* * SQL Data Type: datetimeoffset
|
|
20076
|
+
* * Description: Timestamp after which this claim can no longer be redeemed.`),
|
|
20077
|
+
ClaimedAt: z.date().nullable().describe(`
|
|
20078
|
+
* * Field Name: ClaimedAt
|
|
20079
|
+
* * Display Name: Claimed At
|
|
20080
|
+
* * SQL Data Type: datetimeoffset
|
|
20081
|
+
* * Description: Timestamp when the claim was successfully redeemed.`),
|
|
20082
|
+
ClaimedByUserID: z.string().nullable().describe(`
|
|
20083
|
+
* * Field Name: ClaimedByUserID
|
|
20084
|
+
* * Display Name: Claimed By User ID
|
|
20085
|
+
* * SQL Data Type: uniqueidentifier
|
|
20086
|
+
* * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
|
|
20087
|
+
* * Description: User ID of the authenticated user who successfully claimed this record.`),
|
|
20088
|
+
MagicLinkInviteID: z.string().nullable().describe(`
|
|
20089
|
+
* * Field Name: MagicLinkInviteID
|
|
20090
|
+
* * Display Name: Magic Link Invite ID
|
|
20091
|
+
* * SQL Data Type: uniqueidentifier
|
|
20092
|
+
* * Related Entity/Foreign Key: MJ: Magic Link Invites (vwMagicLinkInvites.ID)
|
|
20093
|
+
* * Description: Optional link to a MagicLinkInvite record for email ownership verification links.`),
|
|
20094
|
+
MetadataJSON: z.string().nullable().describe(`
|
|
20095
|
+
* * Field Name: MetadataJSON
|
|
20096
|
+
* * Display Name: Metadata
|
|
20097
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
20098
|
+
* * Description: Optional metadata JSON for auditing or tracking client provenance.`),
|
|
20099
|
+
__mj_CreatedAt: z.date().describe(`
|
|
20100
|
+
* * Field Name: __mj_CreatedAt
|
|
20101
|
+
* * Display Name: Created At
|
|
20102
|
+
* * SQL Data Type: datetimeoffset
|
|
20103
|
+
* * Default Value: getutcdate()`),
|
|
20104
|
+
__mj_UpdatedAt: z.date().describe(`
|
|
20105
|
+
* * Field Name: __mj_UpdatedAt
|
|
20106
|
+
* * Display Name: Updated At
|
|
20107
|
+
* * SQL Data Type: datetimeoffset
|
|
20108
|
+
* * Default Value: getutcdate()`),
|
|
20109
|
+
ClaimType: z.string().describe(`
|
|
20110
|
+
* * Field Name: ClaimType
|
|
20111
|
+
* * Display Name: Claim Type
|
|
20112
|
+
* * SQL Data Type: nvarchar(100)`),
|
|
20113
|
+
Entity: z.string().nullable().describe(`
|
|
20114
|
+
* * Field Name: Entity
|
|
20115
|
+
* * Display Name: Entity
|
|
20116
|
+
* * SQL Data Type: nvarchar(255)`),
|
|
20117
|
+
ClaimedByUser: z.string().nullable().describe(`
|
|
20118
|
+
* * Field Name: ClaimedByUser
|
|
20119
|
+
* * Display Name: Claimed By User
|
|
20120
|
+
* * SQL Data Type: nvarchar(100)`),
|
|
20121
|
+
});
|
|
19972
20122
|
/**
|
|
19973
20123
|
* zod schema definition for the entity MJ: Instance Configurations
|
|
19974
20124
|
*/
|
|
@@ -82504,32 +82654,34 @@ let MJFormChromeRuleEntity = class MJFormChromeRuleEntity extends BaseEntity {
|
|
|
82504
82654
|
}
|
|
82505
82655
|
/**
|
|
82506
82656
|
* Validate() method override for MJ: Form Chrome Rules entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
|
|
82507
|
-
* * Table-Level: Ensures that if the
|
|
82657
|
+
* * Table-Level: Ensures that if the target kind is 'Relationship', a related entity is specified and the contribution key is empty. If the target kind is 'Contribution', a contribution key must be specified and the related entity must be empty.
|
|
82508
82658
|
* @public
|
|
82509
82659
|
* @method
|
|
82510
82660
|
* @override
|
|
82511
82661
|
*/
|
|
82512
82662
|
Validate() {
|
|
82513
82663
|
const result = super.Validate();
|
|
82514
|
-
this.
|
|
82664
|
+
this.ValidateTargetKindAndAssociatedKeys(result);
|
|
82515
82665
|
result.Success = result.Success && (result.Errors.length === 0);
|
|
82516
82666
|
return result;
|
|
82517
82667
|
}
|
|
82518
82668
|
/**
|
|
82519
|
-
* Ensures that if the
|
|
82669
|
+
* Ensures that if the target kind is 'Relationship', a related entity is specified and the contribution key is empty. If the target kind is 'Contribution', a contribution key must be specified and the related entity must be empty.
|
|
82520
82670
|
* @param result - the ValidationResult object to add any errors or warnings to
|
|
82521
82671
|
* @public
|
|
82522
82672
|
* @method
|
|
82523
82673
|
*/
|
|
82524
|
-
|
|
82525
|
-
|
|
82674
|
+
ValidateTargetKindAndAssociatedKeys(result) {
|
|
82675
|
+
const isRelationship = this.TargetKind === "Relationship";
|
|
82676
|
+
const isContribution = this.TargetKind === "Contribution";
|
|
82677
|
+
if (isRelationship) {
|
|
82526
82678
|
if (this.RelatedEntityID == null || this.ContributionKey != null) {
|
|
82527
|
-
result.Errors.push(new ValidationErrorInfo("
|
|
82679
|
+
result.Errors.push(new ValidationErrorInfo("RelatedEntityID", "When Target Kind is 'Relationship', Related Entity ID must be specified and Contribution Key must be empty.", this.RelatedEntityID, ValidationErrorType.Failure));
|
|
82528
82680
|
}
|
|
82529
82681
|
}
|
|
82530
|
-
else if (
|
|
82682
|
+
else if (isContribution) {
|
|
82531
82683
|
if (this.ContributionKey == null || this.RelatedEntityID != null) {
|
|
82532
|
-
result.Errors.push(new ValidationErrorInfo("
|
|
82684
|
+
result.Errors.push(new ValidationErrorInfo("ContributionKey", "When Target Kind is 'Contribution', Contribution Key must be specified and Related Entity ID must be empty.", this.ContributionKey, ValidationErrorType.Failure));
|
|
82533
82685
|
}
|
|
82534
82686
|
}
|
|
82535
82687
|
else {
|
|
@@ -82604,7 +82756,7 @@ let MJFormChromeRuleEntity = class MJFormChromeRuleEntity extends BaseEntity {
|
|
|
82604
82756
|
}
|
|
82605
82757
|
/**
|
|
82606
82758
|
* * Field Name: Inclusion
|
|
82607
|
-
* * Display Name: Inclusion
|
|
82759
|
+
* * Display Name: Inclusion Rule
|
|
82608
82760
|
* * SQL Data Type: nvarchar(20)
|
|
82609
82761
|
* * Value List Type: List
|
|
82610
82762
|
* * Possible Values
|
|
@@ -82646,7 +82798,7 @@ let MJFormChromeRuleEntity = class MJFormChromeRuleEntity extends BaseEntity {
|
|
|
82646
82798
|
}
|
|
82647
82799
|
/**
|
|
82648
82800
|
* * Field Name: Title
|
|
82649
|
-
* * Display Name: Title
|
|
82801
|
+
* * Display Name: Section Title
|
|
82650
82802
|
* * SQL Data Type: nvarchar(100)
|
|
82651
82803
|
* * Description: Optional admin display title for this section. Null keeps the relationship DisplayName or contribution name. Survives OpenApp upgrades because the row is keyed by RelatedEntityID / ContributionKey, not by the previous label.
|
|
82652
82804
|
*/
|
|
@@ -83079,6 +83231,373 @@ MJGeneratedCodeEntity = __decorate([
|
|
|
83079
83231
|
RegisterClass(BaseEntity, 'MJ: Generated Codes')
|
|
83080
83232
|
], MJGeneratedCodeEntity);
|
|
83081
83233
|
export { MJGeneratedCodeEntity };
|
|
83234
|
+
/**
|
|
83235
|
+
* MJ: Identity Claim Types - strongly typed entity sub-class
|
|
83236
|
+
* * Schema: __mj
|
|
83237
|
+
* * Base Table: IdentityClaimType
|
|
83238
|
+
* * Base View: vwIdentityClaimTypes
|
|
83239
|
+
* * @description Metadata catalog of identity claim types. Each row defines a claim kind whose lifecycle (create, claim, revoke, expire) is executed by a BaseIdentityClaimDriver plugin resolved at runtime from DriverClass via ClassFactory.
|
|
83240
|
+
* * Primary Key: ID
|
|
83241
|
+
* @extends {BaseEntity}
|
|
83242
|
+
* @class
|
|
83243
|
+
* @public
|
|
83244
|
+
*/
|
|
83245
|
+
let MJIdentityClaimTypeEntity = class MJIdentityClaimTypeEntity extends BaseEntity {
|
|
83246
|
+
/**
|
|
83247
|
+
* Loads the MJ: Identity Claim Types record from the database
|
|
83248
|
+
* @param ID: string - primary key value to load the MJ: Identity Claim Types record.
|
|
83249
|
+
* @param EntityRelationshipsToLoad - (optional) the relationships to load
|
|
83250
|
+
* @returns {Promise<boolean>} - true if successful, false otherwise
|
|
83251
|
+
* @public
|
|
83252
|
+
* @async
|
|
83253
|
+
* @memberof MJIdentityClaimTypeEntity
|
|
83254
|
+
* @method
|
|
83255
|
+
* @override
|
|
83256
|
+
*/
|
|
83257
|
+
async Load(ID, EntityRelationshipsToLoad) {
|
|
83258
|
+
const compositeKey = new CompositeKey();
|
|
83259
|
+
compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
|
|
83260
|
+
return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
|
|
83261
|
+
}
|
|
83262
|
+
/**
|
|
83263
|
+
* * Field Name: ID
|
|
83264
|
+
* * Display Name: ID
|
|
83265
|
+
* * SQL Data Type: uniqueidentifier
|
|
83266
|
+
* * Default Value: newsequentialid()
|
|
83267
|
+
*/
|
|
83268
|
+
get ID() {
|
|
83269
|
+
return this.Get('ID');
|
|
83270
|
+
}
|
|
83271
|
+
set ID(value) {
|
|
83272
|
+
this.Set('ID', value);
|
|
83273
|
+
}
|
|
83274
|
+
/**
|
|
83275
|
+
* * Field Name: Name
|
|
83276
|
+
* * Display Name: Name
|
|
83277
|
+
* * SQL Data Type: nvarchar(100)
|
|
83278
|
+
* * Description: Unique name identifying this claim type (e.g., "EntitlementGrant", "PersonAccountLink", "OrgInvite").
|
|
83279
|
+
*/
|
|
83280
|
+
get Name() {
|
|
83281
|
+
return this.Get('Name');
|
|
83282
|
+
}
|
|
83283
|
+
set Name(value) {
|
|
83284
|
+
this.Set('Name', value);
|
|
83285
|
+
}
|
|
83286
|
+
/**
|
|
83287
|
+
* * Field Name: Description
|
|
83288
|
+
* * Display Name: Description
|
|
83289
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
83290
|
+
* * Description: Optional description explaining the intent and behavior of this claim type.
|
|
83291
|
+
*/
|
|
83292
|
+
get Description() {
|
|
83293
|
+
return this.Get('Description');
|
|
83294
|
+
}
|
|
83295
|
+
set Description(value) {
|
|
83296
|
+
this.Set('Description', value);
|
|
83297
|
+
}
|
|
83298
|
+
/**
|
|
83299
|
+
* * Field Name: DriverClass
|
|
83300
|
+
* * Display Name: Driver Class
|
|
83301
|
+
* * SQL Data Type: nvarchar(255)
|
|
83302
|
+
* * Description: Plugin class name implementing BaseIdentityClaimDriver, registered via @RegisterClass(BaseIdentityClaimDriver, DriverClass) and resolved at runtime.
|
|
83303
|
+
*/
|
|
83304
|
+
get DriverClass() {
|
|
83305
|
+
return this.Get('DriverClass');
|
|
83306
|
+
}
|
|
83307
|
+
set DriverClass(value) {
|
|
83308
|
+
this.Set('DriverClass', value);
|
|
83309
|
+
}
|
|
83310
|
+
/**
|
|
83311
|
+
* * Field Name: Configuration
|
|
83312
|
+
* * Display Name: Configuration
|
|
83313
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
83314
|
+
* * Description: JSON configuration specific to this claim type driver.
|
|
83315
|
+
*/
|
|
83316
|
+
get Configuration() {
|
|
83317
|
+
return this.Get('Configuration');
|
|
83318
|
+
}
|
|
83319
|
+
set Configuration(value) {
|
|
83320
|
+
this.Set('Configuration', value);
|
|
83321
|
+
}
|
|
83322
|
+
/**
|
|
83323
|
+
* * Field Name: DefaultExpirationDays
|
|
83324
|
+
* * Display Name: Default Expiration Days
|
|
83325
|
+
* * SQL Data Type: int
|
|
83326
|
+
* * Default Value: 30
|
|
83327
|
+
* * Description: Default lifespan in days for claims of this type before they expire automatically.
|
|
83328
|
+
*/
|
|
83329
|
+
get DefaultExpirationDays() {
|
|
83330
|
+
return this.Get('DefaultExpirationDays');
|
|
83331
|
+
}
|
|
83332
|
+
set DefaultExpirationDays(value) {
|
|
83333
|
+
this.Set('DefaultExpirationDays', value);
|
|
83334
|
+
}
|
|
83335
|
+
/**
|
|
83336
|
+
* * Field Name: IsActive
|
|
83337
|
+
* * Display Name: Is Active
|
|
83338
|
+
* * SQL Data Type: bit
|
|
83339
|
+
* * Default Value: 1
|
|
83340
|
+
* * Description: Whether this claim type is active and available for issuing new claims.
|
|
83341
|
+
*/
|
|
83342
|
+
get IsActive() {
|
|
83343
|
+
return this.Get('IsActive');
|
|
83344
|
+
}
|
|
83345
|
+
set IsActive(value) {
|
|
83346
|
+
this.Set('IsActive', value);
|
|
83347
|
+
}
|
|
83348
|
+
/**
|
|
83349
|
+
* * Field Name: __mj_CreatedAt
|
|
83350
|
+
* * Display Name: Created At
|
|
83351
|
+
* * SQL Data Type: datetimeoffset
|
|
83352
|
+
* * Default Value: getutcdate()
|
|
83353
|
+
*/
|
|
83354
|
+
get __mj_CreatedAt() {
|
|
83355
|
+
return this.Get('__mj_CreatedAt');
|
|
83356
|
+
}
|
|
83357
|
+
/**
|
|
83358
|
+
* * Field Name: __mj_UpdatedAt
|
|
83359
|
+
* * Display Name: Updated At
|
|
83360
|
+
* * SQL Data Type: datetimeoffset
|
|
83361
|
+
* * Default Value: getutcdate()
|
|
83362
|
+
*/
|
|
83363
|
+
get __mj_UpdatedAt() {
|
|
83364
|
+
return this.Get('__mj_UpdatedAt');
|
|
83365
|
+
}
|
|
83366
|
+
};
|
|
83367
|
+
MJIdentityClaimTypeEntity = __decorate([
|
|
83368
|
+
RegisterClass(BaseEntity, 'MJ: Identity Claim Types')
|
|
83369
|
+
], MJIdentityClaimTypeEntity);
|
|
83370
|
+
export { MJIdentityClaimTypeEntity };
|
|
83371
|
+
/**
|
|
83372
|
+
* MJ: Identity Claims - strongly typed entity sub-class
|
|
83373
|
+
* * Schema: __mj
|
|
83374
|
+
* * Base Table: IdentityClaim
|
|
83375
|
+
* * Base View: vwIdentityClaims
|
|
83376
|
+
* * @description Records of pending, claimed, or expired identity claims addressed to an email address. Facilitates cross-system entitlement claiming, account linking, and invite verification.
|
|
83377
|
+
* * Primary Key: ID
|
|
83378
|
+
* @extends {BaseEntity}
|
|
83379
|
+
* @class
|
|
83380
|
+
* @public
|
|
83381
|
+
*/
|
|
83382
|
+
let MJIdentityClaimEntity = class MJIdentityClaimEntity extends BaseEntity {
|
|
83383
|
+
/**
|
|
83384
|
+
* Loads the MJ: Identity Claims record from the database
|
|
83385
|
+
* @param ID: string - primary key value to load the MJ: Identity Claims record.
|
|
83386
|
+
* @param EntityRelationshipsToLoad - (optional) the relationships to load
|
|
83387
|
+
* @returns {Promise<boolean>} - true if successful, false otherwise
|
|
83388
|
+
* @public
|
|
83389
|
+
* @async
|
|
83390
|
+
* @memberof MJIdentityClaimEntity
|
|
83391
|
+
* @method
|
|
83392
|
+
* @override
|
|
83393
|
+
*/
|
|
83394
|
+
async Load(ID, EntityRelationshipsToLoad) {
|
|
83395
|
+
const compositeKey = new CompositeKey();
|
|
83396
|
+
compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
|
|
83397
|
+
return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
|
|
83398
|
+
}
|
|
83399
|
+
/**
|
|
83400
|
+
* * Field Name: ID
|
|
83401
|
+
* * Display Name: ID
|
|
83402
|
+
* * SQL Data Type: uniqueidentifier
|
|
83403
|
+
* * Default Value: newsequentialid()
|
|
83404
|
+
*/
|
|
83405
|
+
get ID() {
|
|
83406
|
+
return this.Get('ID');
|
|
83407
|
+
}
|
|
83408
|
+
set ID(value) {
|
|
83409
|
+
this.Set('ID', value);
|
|
83410
|
+
}
|
|
83411
|
+
/**
|
|
83412
|
+
* * Field Name: ClaimTypeID
|
|
83413
|
+
* * Display Name: Claim Type ID
|
|
83414
|
+
* * SQL Data Type: uniqueidentifier
|
|
83415
|
+
* * Related Entity/Foreign Key: MJ: Identity Claim Types (vwIdentityClaimTypes.ID)
|
|
83416
|
+
* * Description: Foreign key linking this claim to its IdentityClaimType definition.
|
|
83417
|
+
*/
|
|
83418
|
+
get ClaimTypeID() {
|
|
83419
|
+
return this.Get('ClaimTypeID');
|
|
83420
|
+
}
|
|
83421
|
+
set ClaimTypeID(value) {
|
|
83422
|
+
this.Set('ClaimTypeID', value);
|
|
83423
|
+
}
|
|
83424
|
+
/**
|
|
83425
|
+
* * Field Name: NormalizedEmail
|
|
83426
|
+
* * Display Name: Email Address
|
|
83427
|
+
* * SQL Data Type: nvarchar(255)
|
|
83428
|
+
* * Description: Normalized lowercase email address of the intended claimant.
|
|
83429
|
+
*/
|
|
83430
|
+
get NormalizedEmail() {
|
|
83431
|
+
return this.Get('NormalizedEmail');
|
|
83432
|
+
}
|
|
83433
|
+
set NormalizedEmail(value) {
|
|
83434
|
+
this.Set('NormalizedEmail', value);
|
|
83435
|
+
}
|
|
83436
|
+
/**
|
|
83437
|
+
* * Field Name: EntityID
|
|
83438
|
+
* * Display Name: Entity ID
|
|
83439
|
+
* * SQL Data Type: uniqueidentifier
|
|
83440
|
+
* * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
|
|
83441
|
+
* * Description: Optional polymorphic foreign key to the Entity representing the resource being claimed.
|
|
83442
|
+
*/
|
|
83443
|
+
get EntityID() {
|
|
83444
|
+
return this.Get('EntityID');
|
|
83445
|
+
}
|
|
83446
|
+
set EntityID(value) {
|
|
83447
|
+
this.Set('EntityID', value);
|
|
83448
|
+
}
|
|
83449
|
+
/**
|
|
83450
|
+
* * Field Name: RecordID
|
|
83451
|
+
* * Display Name: Record ID
|
|
83452
|
+
* * SQL Data Type: nvarchar(255)
|
|
83453
|
+
* * Description: Optional primary key / record ID of the specific entity record being claimed.
|
|
83454
|
+
*/
|
|
83455
|
+
get RecordID() {
|
|
83456
|
+
return this.Get('RecordID');
|
|
83457
|
+
}
|
|
83458
|
+
set RecordID(value) {
|
|
83459
|
+
this.Set('RecordID', value);
|
|
83460
|
+
}
|
|
83461
|
+
/**
|
|
83462
|
+
* * Field Name: PayloadJSON
|
|
83463
|
+
* * Display Name: Payload
|
|
83464
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
83465
|
+
* * Description: Optional payload JSON containing custom data or parameters consumed by the claim type driver during redemption.
|
|
83466
|
+
*/
|
|
83467
|
+
get PayloadJSON() {
|
|
83468
|
+
return this.Get('PayloadJSON');
|
|
83469
|
+
}
|
|
83470
|
+
set PayloadJSON(value) {
|
|
83471
|
+
this.Set('PayloadJSON', value);
|
|
83472
|
+
}
|
|
83473
|
+
/**
|
|
83474
|
+
* * Field Name: Status
|
|
83475
|
+
* * Display Name: Status
|
|
83476
|
+
* * SQL Data Type: nvarchar(20)
|
|
83477
|
+
* * Default Value: Pending
|
|
83478
|
+
* * Value List Type: List
|
|
83479
|
+
* * Possible Values
|
|
83480
|
+
* * Claimed
|
|
83481
|
+
* * Expired
|
|
83482
|
+
* * Pending
|
|
83483
|
+
* * Revoked
|
|
83484
|
+
* * Description: Current lifecycle state of the claim: Pending, Claimed, Expired, or Revoked.
|
|
83485
|
+
*/
|
|
83486
|
+
get Status() {
|
|
83487
|
+
return this.Get('Status');
|
|
83488
|
+
}
|
|
83489
|
+
set Status(value) {
|
|
83490
|
+
this.Set('Status', value);
|
|
83491
|
+
}
|
|
83492
|
+
/**
|
|
83493
|
+
* * Field Name: ExpiresAt
|
|
83494
|
+
* * Display Name: Expires At
|
|
83495
|
+
* * SQL Data Type: datetimeoffset
|
|
83496
|
+
* * Description: Timestamp after which this claim can no longer be redeemed.
|
|
83497
|
+
*/
|
|
83498
|
+
get ExpiresAt() {
|
|
83499
|
+
return this.Get('ExpiresAt');
|
|
83500
|
+
}
|
|
83501
|
+
set ExpiresAt(value) {
|
|
83502
|
+
this.Set('ExpiresAt', value);
|
|
83503
|
+
}
|
|
83504
|
+
/**
|
|
83505
|
+
* * Field Name: ClaimedAt
|
|
83506
|
+
* * Display Name: Claimed At
|
|
83507
|
+
* * SQL Data Type: datetimeoffset
|
|
83508
|
+
* * Description: Timestamp when the claim was successfully redeemed.
|
|
83509
|
+
*/
|
|
83510
|
+
get ClaimedAt() {
|
|
83511
|
+
return this.Get('ClaimedAt');
|
|
83512
|
+
}
|
|
83513
|
+
set ClaimedAt(value) {
|
|
83514
|
+
this.Set('ClaimedAt', value);
|
|
83515
|
+
}
|
|
83516
|
+
/**
|
|
83517
|
+
* * Field Name: ClaimedByUserID
|
|
83518
|
+
* * Display Name: Claimed By User ID
|
|
83519
|
+
* * SQL Data Type: uniqueidentifier
|
|
83520
|
+
* * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
|
|
83521
|
+
* * Description: User ID of the authenticated user who successfully claimed this record.
|
|
83522
|
+
*/
|
|
83523
|
+
get ClaimedByUserID() {
|
|
83524
|
+
return this.Get('ClaimedByUserID');
|
|
83525
|
+
}
|
|
83526
|
+
set ClaimedByUserID(value) {
|
|
83527
|
+
this.Set('ClaimedByUserID', value);
|
|
83528
|
+
}
|
|
83529
|
+
/**
|
|
83530
|
+
* * Field Name: MagicLinkInviteID
|
|
83531
|
+
* * Display Name: Magic Link Invite ID
|
|
83532
|
+
* * SQL Data Type: uniqueidentifier
|
|
83533
|
+
* * Related Entity/Foreign Key: MJ: Magic Link Invites (vwMagicLinkInvites.ID)
|
|
83534
|
+
* * Description: Optional link to a MagicLinkInvite record for email ownership verification links.
|
|
83535
|
+
*/
|
|
83536
|
+
get MagicLinkInviteID() {
|
|
83537
|
+
return this.Get('MagicLinkInviteID');
|
|
83538
|
+
}
|
|
83539
|
+
set MagicLinkInviteID(value) {
|
|
83540
|
+
this.Set('MagicLinkInviteID', value);
|
|
83541
|
+
}
|
|
83542
|
+
/**
|
|
83543
|
+
* * Field Name: MetadataJSON
|
|
83544
|
+
* * Display Name: Metadata
|
|
83545
|
+
* * SQL Data Type: nvarchar(MAX)
|
|
83546
|
+
* * Description: Optional metadata JSON for auditing or tracking client provenance.
|
|
83547
|
+
*/
|
|
83548
|
+
get MetadataJSON() {
|
|
83549
|
+
return this.Get('MetadataJSON');
|
|
83550
|
+
}
|
|
83551
|
+
set MetadataJSON(value) {
|
|
83552
|
+
this.Set('MetadataJSON', value);
|
|
83553
|
+
}
|
|
83554
|
+
/**
|
|
83555
|
+
* * Field Name: __mj_CreatedAt
|
|
83556
|
+
* * Display Name: Created At
|
|
83557
|
+
* * SQL Data Type: datetimeoffset
|
|
83558
|
+
* * Default Value: getutcdate()
|
|
83559
|
+
*/
|
|
83560
|
+
get __mj_CreatedAt() {
|
|
83561
|
+
return this.Get('__mj_CreatedAt');
|
|
83562
|
+
}
|
|
83563
|
+
/**
|
|
83564
|
+
* * Field Name: __mj_UpdatedAt
|
|
83565
|
+
* * Display Name: Updated At
|
|
83566
|
+
* * SQL Data Type: datetimeoffset
|
|
83567
|
+
* * Default Value: getutcdate()
|
|
83568
|
+
*/
|
|
83569
|
+
get __mj_UpdatedAt() {
|
|
83570
|
+
return this.Get('__mj_UpdatedAt');
|
|
83571
|
+
}
|
|
83572
|
+
/**
|
|
83573
|
+
* * Field Name: ClaimType
|
|
83574
|
+
* * Display Name: Claim Type
|
|
83575
|
+
* * SQL Data Type: nvarchar(100)
|
|
83576
|
+
*/
|
|
83577
|
+
get ClaimType() {
|
|
83578
|
+
return this.Get('ClaimType');
|
|
83579
|
+
}
|
|
83580
|
+
/**
|
|
83581
|
+
* * Field Name: Entity
|
|
83582
|
+
* * Display Name: Entity
|
|
83583
|
+
* * SQL Data Type: nvarchar(255)
|
|
83584
|
+
*/
|
|
83585
|
+
get Entity() {
|
|
83586
|
+
return this.Get('Entity');
|
|
83587
|
+
}
|
|
83588
|
+
/**
|
|
83589
|
+
* * Field Name: ClaimedByUser
|
|
83590
|
+
* * Display Name: Claimed By User
|
|
83591
|
+
* * SQL Data Type: nvarchar(100)
|
|
83592
|
+
*/
|
|
83593
|
+
get ClaimedByUser() {
|
|
83594
|
+
return this.Get('ClaimedByUser');
|
|
83595
|
+
}
|
|
83596
|
+
};
|
|
83597
|
+
MJIdentityClaimEntity = __decorate([
|
|
83598
|
+
RegisterClass(BaseEntity, 'MJ: Identity Claims')
|
|
83599
|
+
], MJIdentityClaimEntity);
|
|
83600
|
+
export { MJIdentityClaimEntity };
|
|
83082
83601
|
/**
|
|
83083
83602
|
* MJ: Instance Configurations - strongly typed entity sub-class
|
|
83084
83603
|
* * Schema: __mj
|