@memberjunction/core-actions 5.43.0 → 5.45.0
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/custom/crud/index.d.ts +1 -0
- package/dist/custom/crud/index.d.ts.map +1 -1
- package/dist/custom/crud/index.js +1 -0
- package/dist/custom/crud/index.js.map +1 -1
- package/dist/custom/crud/write-entity-fields.action.d.ts +119 -0
- package/dist/custom/crud/write-entity-fields.action.d.ts.map +1 -0
- package/dist/custom/crud/write-entity-fields.action.js +316 -0
- package/dist/custom/crud/write-entity-fields.action.js.map +1 -0
- package/dist/custom/esignature/send-document-for-signature.action.d.ts +4 -1
- package/dist/custom/esignature/send-document-for-signature.action.d.ts.map +1 -1
- package/dist/custom/esignature/send-document-for-signature.action.js +4 -1
- package/dist/custom/esignature/send-document-for-signature.action.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 +38 -38
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/custom/crud/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/custom/crud/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/custom/crud/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/custom/crud/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { ActionResultSimple, RunActionParams } from "@memberjunction/actions-base";
|
|
2
|
+
import { BaseAction } from "@memberjunction/actions";
|
|
3
|
+
/**
|
|
4
|
+
* Generic action that writes one or more fields onto a single entity record —
|
|
5
|
+
* either an existing record (identified by its primary key) or a brand-new one
|
|
6
|
+
* (when `CreateIfMissing` is true and no primary key is supplied).
|
|
7
|
+
*
|
|
8
|
+
* Designed to be reused both by Flow Agents (as a discoverable tool) and as the
|
|
9
|
+
* terminal "write the result back" step of a Feature Pipeline. It mirrors the
|
|
10
|
+
* existing Create/Update Record actions but collapses the create-or-update
|
|
11
|
+
* decision into a single declarative call: give it the target, an optional key,
|
|
12
|
+
* and a field map, and it does the right thing.
|
|
13
|
+
*
|
|
14
|
+
* Strong typing note: where a generated entity subclass exposes typed setters we
|
|
15
|
+
* would prefer them, but the field set here is supplied dynamically at runtime
|
|
16
|
+
* (the entity itself is a parameter), so there is no compile-time type to bind
|
|
17
|
+
* to. `BaseEntity.Set()` is the correct — and intended — write path for this one
|
|
18
|
+
* legitimately-dynamic case. We still validate each field exists on the entity
|
|
19
|
+
* before writing, so typos surface as explicit errors rather than silent no-ops.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```typescript
|
|
23
|
+
* // Update two fields on an existing record
|
|
24
|
+
* await runAction({
|
|
25
|
+
* ActionName: 'Write Entity Field(s)',
|
|
26
|
+
* Params: [
|
|
27
|
+
* { Name: 'EntityName', Value: 'MJ: AI Agents' },
|
|
28
|
+
* { Name: 'PrimaryKey', Value: { ID: '123e4567-e89b-12d3-a456-426614174000' } },
|
|
29
|
+
* { Name: 'Fields', Value: { Status: 'Active', Description: 'Updated by pipeline' } }
|
|
30
|
+
* ]
|
|
31
|
+
* });
|
|
32
|
+
*
|
|
33
|
+
* // Create a new record when none exists
|
|
34
|
+
* await runAction({
|
|
35
|
+
* ActionName: 'Write Entity Field(s)',
|
|
36
|
+
* Params: [
|
|
37
|
+
* { Name: 'EntityName', Value: 'MJ: AI Agents' },
|
|
38
|
+
* { Name: 'CreateIfMissing', Value: true },
|
|
39
|
+
* { Name: 'Fields', Value: { Name: 'My Agent', Status: 'Active' } }
|
|
40
|
+
* ]
|
|
41
|
+
* });
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export declare class WriteEntityFieldsAction extends BaseAction {
|
|
45
|
+
/**
|
|
46
|
+
* Writes the supplied fields onto a target entity record, creating the
|
|
47
|
+
* record first when requested and no primary key is supplied.
|
|
48
|
+
*
|
|
49
|
+
* @returns ActionResultSimple with:
|
|
50
|
+
* - Success: true when the record was saved
|
|
51
|
+
* - ResultCode: SUCCESS, VALIDATION_ERROR, ENTITY_NOT_FOUND, RECORD_NOT_FOUND,
|
|
52
|
+
* PERMISSION_DENIED, SAVE_FAILED, FAILED
|
|
53
|
+
* - Message: details about the operation (includes LatestResult.CompleteMessage on failure)
|
|
54
|
+
* - Params: output params `AffectedPrimaryKey` (the affected record's PK object) and `Saved` (boolean)
|
|
55
|
+
*/
|
|
56
|
+
InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
|
|
57
|
+
/**
|
|
58
|
+
* Resolve the EntityInfo for the named entity. Uses EntityByName for
|
|
59
|
+
* case-insensitive, whitespace-tolerant lookup per MJ convention.
|
|
60
|
+
*/
|
|
61
|
+
private resolveEntity;
|
|
62
|
+
/**
|
|
63
|
+
* Load an existing record by primary key. Returns an error result on
|
|
64
|
+
* failure, or undefined on success.
|
|
65
|
+
*/
|
|
66
|
+
private loadExistingRecord;
|
|
67
|
+
/**
|
|
68
|
+
* Return the supplied field names that do NOT exist on the target entity
|
|
69
|
+
* (case-insensitive, whitespace-tolerant match against `entityInfo.Fields`).
|
|
70
|
+
* Used to reject the whole write up-front rather than silently skipping typos.
|
|
71
|
+
*/
|
|
72
|
+
private findUnknownFields;
|
|
73
|
+
/**
|
|
74
|
+
* Apply each entry of the dynamic field map to the entity.
|
|
75
|
+
*
|
|
76
|
+
* This is the one legitimately-dynamic write path: the field set is supplied
|
|
77
|
+
* by the caller at runtime against an entity that is itself a parameter, so
|
|
78
|
+
* there is no generated typed setter to bind to. Every field has already been
|
|
79
|
+
* validated to exist by {@link findUnknownFields} (unknown names reject the
|
|
80
|
+
* write before this runs), so here we just write each via `Set()`.
|
|
81
|
+
*/
|
|
82
|
+
private applyFieldMap;
|
|
83
|
+
/**
|
|
84
|
+
* Build the primary-key object for the affected record from its key fields.
|
|
85
|
+
*/
|
|
86
|
+
private extractPrimaryKey;
|
|
87
|
+
/**
|
|
88
|
+
* Map a failed Save() into an ActionResultSimple, surfacing the entity's
|
|
89
|
+
* consolidated LatestResult.CompleteMessage so callers see why it failed.
|
|
90
|
+
*/
|
|
91
|
+
private analyzeSaveFailure;
|
|
92
|
+
private getStringParam;
|
|
93
|
+
private getBooleanParam;
|
|
94
|
+
/**
|
|
95
|
+
* Read the Fields param. Accepts either an object or a JSON string that
|
|
96
|
+
* parses to an object. Returns undefined if missing/empty/not an object.
|
|
97
|
+
*/
|
|
98
|
+
private getFieldsParam;
|
|
99
|
+
/**
|
|
100
|
+
* Read the optional PrimaryKey param. Accepts either an object or a JSON
|
|
101
|
+
* string that parses to an object. Returns undefined when absent (the
|
|
102
|
+
* signal to take the create path when CreateIfMissing is true).
|
|
103
|
+
*/
|
|
104
|
+
private getPrimaryKeyParam;
|
|
105
|
+
/**
|
|
106
|
+
* Coerce a param value (object or JSON string) into a plain object map.
|
|
107
|
+
* Returns undefined when the value cannot be interpreted as an object.
|
|
108
|
+
*/
|
|
109
|
+
private coerceToObject;
|
|
110
|
+
private isPlainObject;
|
|
111
|
+
/**
|
|
112
|
+
* Set an output param, overwriting an existing same-named param in place rather
|
|
113
|
+
* than pushing a duplicate (mirrors the Predictive Studio base helper). An
|
|
114
|
+
* existing Input param is promoted to Both so its inbound value is preserved.
|
|
115
|
+
*/
|
|
116
|
+
private addOutputParam;
|
|
117
|
+
private fail;
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=write-entity-fields.action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-entity-fields.action.d.ts","sourceRoot":"","sources":["../../../src/custom/crud/write-entity-fields.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGnF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAgBrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,qBACa,uBAAwB,SAAQ,UAAU;IACnD;;;;;;;;;;OAUG;IACU,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+EpF;;;OAGG;IACH,OAAO,CAAC,aAAa;IAYrB;;;OAGG;YACW,kBAAkB;IAyBhC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;;;;;;;OAQG;IACH,OAAO,CAAC,aAAa;IASrB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,eAAe;IAcvB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAYtB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,aAAa;IAIrB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,IAAI;CAGf"}
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { RegisterClass } from "@memberjunction/global";
|
|
8
|
+
import { Metadata, LogError, CompositeKey } from "@memberjunction/core";
|
|
9
|
+
import { BaseAction } from "@memberjunction/actions";
|
|
10
|
+
/**
|
|
11
|
+
* Generic action that writes one or more fields onto a single entity record —
|
|
12
|
+
* either an existing record (identified by its primary key) or a brand-new one
|
|
13
|
+
* (when `CreateIfMissing` is true and no primary key is supplied).
|
|
14
|
+
*
|
|
15
|
+
* Designed to be reused both by Flow Agents (as a discoverable tool) and as the
|
|
16
|
+
* terminal "write the result back" step of a Feature Pipeline. It mirrors the
|
|
17
|
+
* existing Create/Update Record actions but collapses the create-or-update
|
|
18
|
+
* decision into a single declarative call: give it the target, an optional key,
|
|
19
|
+
* and a field map, and it does the right thing.
|
|
20
|
+
*
|
|
21
|
+
* Strong typing note: where a generated entity subclass exposes typed setters we
|
|
22
|
+
* would prefer them, but the field set here is supplied dynamically at runtime
|
|
23
|
+
* (the entity itself is a parameter), so there is no compile-time type to bind
|
|
24
|
+
* to. `BaseEntity.Set()` is the correct — and intended — write path for this one
|
|
25
|
+
* legitimately-dynamic case. We still validate each field exists on the entity
|
|
26
|
+
* before writing, so typos surface as explicit errors rather than silent no-ops.
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // Update two fields on an existing record
|
|
31
|
+
* await runAction({
|
|
32
|
+
* ActionName: 'Write Entity Field(s)',
|
|
33
|
+
* Params: [
|
|
34
|
+
* { Name: 'EntityName', Value: 'MJ: AI Agents' },
|
|
35
|
+
* { Name: 'PrimaryKey', Value: { ID: '123e4567-e89b-12d3-a456-426614174000' } },
|
|
36
|
+
* { Name: 'Fields', Value: { Status: 'Active', Description: 'Updated by pipeline' } }
|
|
37
|
+
* ]
|
|
38
|
+
* });
|
|
39
|
+
*
|
|
40
|
+
* // Create a new record when none exists
|
|
41
|
+
* await runAction({
|
|
42
|
+
* ActionName: 'Write Entity Field(s)',
|
|
43
|
+
* Params: [
|
|
44
|
+
* { Name: 'EntityName', Value: 'MJ: AI Agents' },
|
|
45
|
+
* { Name: 'CreateIfMissing', Value: true },
|
|
46
|
+
* { Name: 'Fields', Value: { Name: 'My Agent', Status: 'Active' } }
|
|
47
|
+
* ]
|
|
48
|
+
* });
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
let WriteEntityFieldsAction = class WriteEntityFieldsAction extends BaseAction {
|
|
52
|
+
/**
|
|
53
|
+
* Writes the supplied fields onto a target entity record, creating the
|
|
54
|
+
* record first when requested and no primary key is supplied.
|
|
55
|
+
*
|
|
56
|
+
* @returns ActionResultSimple with:
|
|
57
|
+
* - Success: true when the record was saved
|
|
58
|
+
* - ResultCode: SUCCESS, VALIDATION_ERROR, ENTITY_NOT_FOUND, RECORD_NOT_FOUND,
|
|
59
|
+
* PERMISSION_DENIED, SAVE_FAILED, FAILED
|
|
60
|
+
* - Message: details about the operation (includes LatestResult.CompleteMessage on failure)
|
|
61
|
+
* - Params: output params `AffectedPrimaryKey` (the affected record's PK object) and `Saved` (boolean)
|
|
62
|
+
*/
|
|
63
|
+
async InternalRunAction(params) {
|
|
64
|
+
try {
|
|
65
|
+
const entityName = this.getStringParam(params, 'entityname');
|
|
66
|
+
if (!entityName) {
|
|
67
|
+
return this.fail('VALIDATION_ERROR', 'EntityName parameter is required');
|
|
68
|
+
}
|
|
69
|
+
const fields = this.getFieldsParam(params);
|
|
70
|
+
if (!fields) {
|
|
71
|
+
return this.fail('VALIDATION_ERROR', 'Fields parameter is required and must be an object mapping field names to values');
|
|
72
|
+
}
|
|
73
|
+
const primaryKey = this.getPrimaryKeyParam(params);
|
|
74
|
+
const createIfMissing = this.getBooleanParam(params, 'createifmissing', false);
|
|
75
|
+
const resolved = this.resolveEntity(entityName, params.Provider);
|
|
76
|
+
if ('error' in resolved) {
|
|
77
|
+
return resolved.error;
|
|
78
|
+
}
|
|
79
|
+
const { entityInfo } = resolved;
|
|
80
|
+
// Reject unknown field names BEFORE any mutation — a typo'd field that
|
|
81
|
+
// is silently skipped while the action still reports SUCCESS is a
|
|
82
|
+
// correctness trap (the caller believes the write landed). Fail with the
|
|
83
|
+
// offending names so the mistake is visible and actionable.
|
|
84
|
+
const unknownFields = this.findUnknownFields(entityInfo, fields);
|
|
85
|
+
if (unknownFields.length > 0) {
|
|
86
|
+
return this.fail('VALIDATION_ERROR', `The following field(s) do not exist on entity '${entityName}': ${unknownFields.join(', ')}`);
|
|
87
|
+
}
|
|
88
|
+
const md = params.Provider ?? new Metadata();
|
|
89
|
+
const entity = await md.GetEntityObject(entityName, params.ContextUser);
|
|
90
|
+
if (!entity) {
|
|
91
|
+
return this.fail('FAILED', `Failed to create entity object for '${entityName}'`);
|
|
92
|
+
}
|
|
93
|
+
// Decide create vs. update based on whether a primary key was supplied.
|
|
94
|
+
const isCreate = primaryKey === undefined;
|
|
95
|
+
if (isCreate) {
|
|
96
|
+
if (!createIfMissing) {
|
|
97
|
+
return this.fail('VALIDATION_ERROR', 'No PrimaryKey supplied and CreateIfMissing is false — nothing to write. Provide a PrimaryKey to update an existing record, or set CreateIfMissing=true to create one.');
|
|
98
|
+
}
|
|
99
|
+
entity.NewRecord();
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
const loadError = await this.loadExistingRecord(entity, entityInfo, primaryKey, entityName);
|
|
103
|
+
if (loadError) {
|
|
104
|
+
return loadError;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
this.applyFieldMap(entity, entityInfo, fields);
|
|
108
|
+
const saved = await entity.Save();
|
|
109
|
+
if (!saved) {
|
|
110
|
+
return this.analyzeSaveFailure(entity, isCreate ? 'create' : 'update', entityName);
|
|
111
|
+
}
|
|
112
|
+
const pk = this.extractPrimaryKey(entity, entityInfo);
|
|
113
|
+
this.addOutputParam(params, 'AffectedPrimaryKey', pk);
|
|
114
|
+
this.addOutputParam(params, 'Saved', true);
|
|
115
|
+
return {
|
|
116
|
+
Success: true,
|
|
117
|
+
ResultCode: 'SUCCESS',
|
|
118
|
+
Message: `Successfully ${isCreate ? 'created' : 'updated'} ${entityName} record`,
|
|
119
|
+
Params: params.Params
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
catch (e) {
|
|
123
|
+
LogError(e);
|
|
124
|
+
return this.fail('FAILED', `Error writing entity field(s): ${e instanceof Error ? e.message : String(e)}`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Resolve the EntityInfo for the named entity. Uses EntityByName for
|
|
129
|
+
* case-insensitive, whitespace-tolerant lookup per MJ convention.
|
|
130
|
+
*/
|
|
131
|
+
resolveEntity(entityName, provider) {
|
|
132
|
+
const md = provider ?? new Metadata();
|
|
133
|
+
const entityInfo = md.EntityByName(entityName);
|
|
134
|
+
if (!entityInfo) {
|
|
135
|
+
return { error: this.fail('ENTITY_NOT_FOUND', `Entity '${entityName}' not found in metadata`) };
|
|
136
|
+
}
|
|
137
|
+
return { entityInfo };
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Load an existing record by primary key. Returns an error result on
|
|
141
|
+
* failure, or undefined on success.
|
|
142
|
+
*/
|
|
143
|
+
async loadExistingRecord(entity, entityInfo, primaryKey, entityName) {
|
|
144
|
+
const keyData = {};
|
|
145
|
+
for (const pk of entityInfo.PrimaryKeys) {
|
|
146
|
+
if (!(pk.Name in primaryKey)) {
|
|
147
|
+
return this.fail('VALIDATION_ERROR', `Primary key field '${pk.Name}' not provided in PrimaryKey`);
|
|
148
|
+
}
|
|
149
|
+
keyData[pk.Name] = primaryKey[pk.Name];
|
|
150
|
+
}
|
|
151
|
+
const loaded = await entity.InnerLoad(CompositeKey.FromObject(keyData));
|
|
152
|
+
if (!loaded) {
|
|
153
|
+
const completeMessage = entity.LatestResult?.CompleteMessage?.toLowerCase() ?? '';
|
|
154
|
+
if (completeMessage.includes('permission') || completeMessage.includes('denied')) {
|
|
155
|
+
return this.fail('PERMISSION_DENIED', `Permission denied accessing ${entityName} record`);
|
|
156
|
+
}
|
|
157
|
+
return this.fail('RECORD_NOT_FOUND', `${entityName} record not found for the supplied PrimaryKey`);
|
|
158
|
+
}
|
|
159
|
+
return undefined;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Return the supplied field names that do NOT exist on the target entity
|
|
163
|
+
* (case-insensitive, whitespace-tolerant match against `entityInfo.Fields`).
|
|
164
|
+
* Used to reject the whole write up-front rather than silently skipping typos.
|
|
165
|
+
*/
|
|
166
|
+
findUnknownFields(entityInfo, fields) {
|
|
167
|
+
const unknown = [];
|
|
168
|
+
for (const fieldName of Object.keys(fields)) {
|
|
169
|
+
const field = entityInfo.Fields.find(f => f.Name.trim().toLowerCase() === fieldName.trim().toLowerCase());
|
|
170
|
+
if (!field) {
|
|
171
|
+
unknown.push(fieldName);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
return unknown;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Apply each entry of the dynamic field map to the entity.
|
|
178
|
+
*
|
|
179
|
+
* This is the one legitimately-dynamic write path: the field set is supplied
|
|
180
|
+
* by the caller at runtime against an entity that is itself a parameter, so
|
|
181
|
+
* there is no generated typed setter to bind to. Every field has already been
|
|
182
|
+
* validated to exist by {@link findUnknownFields} (unknown names reject the
|
|
183
|
+
* write before this runs), so here we just write each via `Set()`.
|
|
184
|
+
*/
|
|
185
|
+
applyFieldMap(entity, entityInfo, fields) {
|
|
186
|
+
for (const [fieldName, fieldValue] of Object.entries(fields)) {
|
|
187
|
+
const field = entityInfo.Fields.find(f => f.Name.trim().toLowerCase() === fieldName.trim().toLowerCase());
|
|
188
|
+
if (field) {
|
|
189
|
+
entity.Set(field.Name, fieldValue);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Build the primary-key object for the affected record from its key fields.
|
|
195
|
+
*/
|
|
196
|
+
extractPrimaryKey(entity, entityInfo) {
|
|
197
|
+
const pk = {};
|
|
198
|
+
for (const keyField of entityInfo.PrimaryKeys) {
|
|
199
|
+
pk[keyField.Name] = entity.Get(keyField.Name);
|
|
200
|
+
}
|
|
201
|
+
return pk;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Map a failed Save() into an ActionResultSimple, surfacing the entity's
|
|
205
|
+
* consolidated LatestResult.CompleteMessage so callers see why it failed.
|
|
206
|
+
*/
|
|
207
|
+
analyzeSaveFailure(entity, operation, entityName) {
|
|
208
|
+
const completeMessage = entity.LatestResult?.CompleteMessage ?? 'unknown error';
|
|
209
|
+
const lower = completeMessage.toLowerCase();
|
|
210
|
+
let resultCode = 'SAVE_FAILED';
|
|
211
|
+
if (lower.includes('permission') || lower.includes('denied')) {
|
|
212
|
+
resultCode = 'PERMISSION_DENIED';
|
|
213
|
+
}
|
|
214
|
+
else if (lower.includes('validation') || lower.includes('required')) {
|
|
215
|
+
resultCode = 'VALIDATION_ERROR';
|
|
216
|
+
}
|
|
217
|
+
return this.fail(resultCode, `Failed to ${operation} ${entityName} record: ${completeMessage}`);
|
|
218
|
+
}
|
|
219
|
+
// ----- parameter helpers -------------------------------------------------
|
|
220
|
+
getStringParam(params, name) {
|
|
221
|
+
const param = params.Params.find(p => p.Name.trim().toLowerCase() === name);
|
|
222
|
+
if (!param || param.Value === undefined || param.Value === null) {
|
|
223
|
+
return undefined;
|
|
224
|
+
}
|
|
225
|
+
const value = String(param.Value).trim();
|
|
226
|
+
return value.length > 0 ? value : undefined;
|
|
227
|
+
}
|
|
228
|
+
getBooleanParam(params, name, defaultValue) {
|
|
229
|
+
const param = params.Params.find(p => p.Name.trim().toLowerCase() === name);
|
|
230
|
+
if (!param || param.Value === undefined || param.Value === null) {
|
|
231
|
+
return defaultValue;
|
|
232
|
+
}
|
|
233
|
+
if (typeof param.Value === 'boolean') {
|
|
234
|
+
return param.Value;
|
|
235
|
+
}
|
|
236
|
+
const value = String(param.Value).trim().toLowerCase();
|
|
237
|
+
if (value === 'true' || value === '1' || value === 'yes')
|
|
238
|
+
return true;
|
|
239
|
+
if (value === 'false' || value === '0' || value === 'no')
|
|
240
|
+
return false;
|
|
241
|
+
return defaultValue;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Read the Fields param. Accepts either an object or a JSON string that
|
|
245
|
+
* parses to an object. Returns undefined if missing/empty/not an object.
|
|
246
|
+
*/
|
|
247
|
+
getFieldsParam(params) {
|
|
248
|
+
const param = params.Params.find(p => p.Name.trim().toLowerCase() === 'fields');
|
|
249
|
+
if (!param || param.Value === undefined || param.Value === null) {
|
|
250
|
+
return undefined;
|
|
251
|
+
}
|
|
252
|
+
const parsed = this.coerceToObject(param.Value);
|
|
253
|
+
if (!parsed || Object.keys(parsed).length === 0) {
|
|
254
|
+
return undefined;
|
|
255
|
+
}
|
|
256
|
+
return parsed;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Read the optional PrimaryKey param. Accepts either an object or a JSON
|
|
260
|
+
* string that parses to an object. Returns undefined when absent (the
|
|
261
|
+
* signal to take the create path when CreateIfMissing is true).
|
|
262
|
+
*/
|
|
263
|
+
getPrimaryKeyParam(params) {
|
|
264
|
+
const param = params.Params.find(p => p.Name.trim().toLowerCase() === 'primarykey');
|
|
265
|
+
if (!param || param.Value === undefined || param.Value === null) {
|
|
266
|
+
return undefined;
|
|
267
|
+
}
|
|
268
|
+
const parsed = this.coerceToObject(param.Value);
|
|
269
|
+
if (!parsed || Object.keys(parsed).length === 0) {
|
|
270
|
+
return undefined;
|
|
271
|
+
}
|
|
272
|
+
return parsed;
|
|
273
|
+
}
|
|
274
|
+
/**
|
|
275
|
+
* Coerce a param value (object or JSON string) into a plain object map.
|
|
276
|
+
* Returns undefined when the value cannot be interpreted as an object.
|
|
277
|
+
*/
|
|
278
|
+
coerceToObject(value) {
|
|
279
|
+
if (typeof value === 'string') {
|
|
280
|
+
try {
|
|
281
|
+
const parsed = JSON.parse(value);
|
|
282
|
+
return this.isPlainObject(parsed) ? parsed : undefined;
|
|
283
|
+
}
|
|
284
|
+
catch {
|
|
285
|
+
return undefined;
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
return this.isPlainObject(value) ? value : undefined;
|
|
289
|
+
}
|
|
290
|
+
isPlainObject(value) {
|
|
291
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Set an output param, overwriting an existing same-named param in place rather
|
|
295
|
+
* than pushing a duplicate (mirrors the Predictive Studio base helper). An
|
|
296
|
+
* existing Input param is promoted to Both so its inbound value is preserved.
|
|
297
|
+
*/
|
|
298
|
+
addOutputParam(params, name, value) {
|
|
299
|
+
const target = name.trim().toLowerCase();
|
|
300
|
+
const existing = params.Params.find(p => p.Name.trim().toLowerCase() === target);
|
|
301
|
+
if (existing) {
|
|
302
|
+
existing.Value = value;
|
|
303
|
+
existing.Type = existing.Type === 'Input' ? 'Both' : 'Output';
|
|
304
|
+
return;
|
|
305
|
+
}
|
|
306
|
+
params.Params.push({ Name: name, Type: 'Output', Value: value });
|
|
307
|
+
}
|
|
308
|
+
fail(resultCode, message) {
|
|
309
|
+
return { Success: false, ResultCode: resultCode, Message: message };
|
|
310
|
+
}
|
|
311
|
+
};
|
|
312
|
+
WriteEntityFieldsAction = __decorate([
|
|
313
|
+
RegisterClass(BaseAction, "WriteEntityFieldsAction")
|
|
314
|
+
], WriteEntityFieldsAction);
|
|
315
|
+
export { WriteEntityFieldsAction };
|
|
316
|
+
//# sourceMappingURL=write-entity-fields.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-entity-fields.action.js","sourceRoot":"","sources":["../../../src/custom/crud/write-entity-fields.action.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,10 @@ import { BaseSignatureAction } from './base-esignature.action.js';
|
|
|
10
10
|
* - SignatureAccountID (required)
|
|
11
11
|
* - Title (required)
|
|
12
12
|
* - Documents (required) — array of `{ filename, contentType?, contentBase64 }`
|
|
13
|
-
* - Recipients (required) — array of `{ email, name?, routingOrder?, role? }
|
|
13
|
+
* - Recipients (required) — array of `{ email, name?, routingOrder?, role?, fields? }`, where each
|
|
14
|
+
* `fields[]` entry places a signature/date/initials/text/checkbox field by anchor string
|
|
15
|
+
* (preferred) or normalized page/xPercent/yPercent coordinates. Omit `fields` to let the
|
|
16
|
+
* provider apply its own default placement (no forced tab).
|
|
14
17
|
* - Message?, EntityID?, RecordID?, ArtifactID?, ArtifactVersionID?, SendImmediately?, Metadata?
|
|
15
18
|
*
|
|
16
19
|
* Outputs: SignatureRequestID, ExternalEnvelopeID, Status.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-document-for-signature.action.d.ts","sourceRoot":"","sources":["../../../src/custom/esignature/send-document-for-signature.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAInF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAU/D
|
|
1
|
+
{"version":3,"file":"send-document-for-signature.action.d.ts","sourceRoot":"","sources":["../../../src/custom/esignature/send-document-for-signature.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAInF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAU/D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBACa,8BAA+B,SAAQ,mBAAmB;cACnD,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA+DvF,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,IAAI;CAMf"}
|
|
@@ -17,7 +17,10 @@ import { BaseSignatureAction } from './base-esignature.action.js';
|
|
|
17
17
|
* - SignatureAccountID (required)
|
|
18
18
|
* - Title (required)
|
|
19
19
|
* - Documents (required) — array of `{ filename, contentType?, contentBase64 }`
|
|
20
|
-
* - Recipients (required) — array of `{ email, name?, routingOrder?, role? }
|
|
20
|
+
* - Recipients (required) — array of `{ email, name?, routingOrder?, role?, fields? }`, where each
|
|
21
|
+
* `fields[]` entry places a signature/date/initials/text/checkbox field by anchor string
|
|
22
|
+
* (preferred) or normalized page/xPercent/yPercent coordinates. Omit `fields` to let the
|
|
23
|
+
* provider apply its own default placement (no forced tab).
|
|
21
24
|
* - Message?, EntityID?, RecordID?, ArtifactID?, ArtifactVersionID?, SendImmediately?, Metadata?
|
|
22
25
|
*
|
|
23
26
|
* Outputs: SignatureRequestID, ExternalEnvelopeID, Status.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-document-for-signature.action.js","sourceRoot":"","sources":["../../../src/custom/esignature/send-document-for-signature.action.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAU/D
|
|
1
|
+
{"version":3,"file":"send-document-for-signature.action.js","sourceRoot":"","sources":["../../../src/custom/esignature/send-document-for-signature.action.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export * from './custom/crud/create-record.action.js';
|
|
|
7
7
|
export * from './custom/crud/get-record.action.js';
|
|
8
8
|
export * from './custom/crud/update-record.action.js';
|
|
9
9
|
export * from './custom/crud/delete-record.action.js';
|
|
10
|
+
export * from './custom/crud/write-entity-fields.action.js';
|
|
10
11
|
export * from './custom/data/run-record-process.action.js';
|
|
11
12
|
export * from './custom/demo/get-weather.action.js';
|
|
12
13
|
export * from './custom/demo/get-stock-price.action.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AAGjD,cAAc,mDAAmD,CAAC;AAClE,cAAc,gDAAgD,CAAC;AAC/D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAG5D,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -9,6 +9,7 @@ export * from './custom/crud/create-record.action.js';
|
|
|
9
9
|
export * from './custom/crud/get-record.action.js';
|
|
10
10
|
export * from './custom/crud/update-record.action.js';
|
|
11
11
|
export * from './custom/crud/delete-record.action.js';
|
|
12
|
+
export * from './custom/crud/write-entity-fields.action.js';
|
|
12
13
|
// Data processing
|
|
13
14
|
export * from './custom/data/run-record-process.action.js';
|
|
14
15
|
// Demo Actions
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AAEjD,wBAAwB;AACxB,cAAc,mDAAmD,CAAC;AAClE,cAAc,gDAAgD,CAAC;AAC/D,cAAc,6CAA6C,CAAC;AAC5D,cAAc,6CAA6C,CAAC;AAE5D,eAAe;AACf,cAAc,oCAAoC,CAAC;AACnD,cAAc,iCAAiC,CAAC;AAChD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/core-actions",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "5.
|
|
4
|
+
"version": "5.45.0",
|
|
5
5
|
"description": "Library of generated and custom actions for the core MemberJunction framework. This library is maintained by MemberJunction and includes actions for use within the framework itself.",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -25,43 +25,43 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@asamuzakjp/css-color": "^4.1.2",
|
|
27
27
|
"@dagrejs/dagre": "^1.1.8",
|
|
28
|
-
"@memberjunction/actions": "5.
|
|
29
|
-
"@memberjunction/actions-base": "5.
|
|
30
|
-
"@memberjunction/ai": "5.
|
|
31
|
-
"@memberjunction/ai-agent-manager": "5.
|
|
32
|
-
"@memberjunction/ai-agents": "5.
|
|
33
|
-
"@memberjunction/ai-betty-bot": "5.
|
|
34
|
-
"@memberjunction/ai-core-plus": "5.
|
|
35
|
-
"@memberjunction/ai-engine-base": "5.
|
|
36
|
-
"@memberjunction/ai-mcp-client": "5.
|
|
37
|
-
"@memberjunction/ai-prompts": "5.
|
|
38
|
-
"@memberjunction/ai-vector-sync": "5.
|
|
39
|
-
"@memberjunction/aiengine": "5.
|
|
40
|
-
"@memberjunction/clustering-engine": "5.
|
|
41
|
-
"@memberjunction/code-execution": "5.
|
|
42
|
-
"@memberjunction/communication-engine": "5.
|
|
43
|
-
"@memberjunction/communication-types": "5.
|
|
44
|
-
"@memberjunction/content-autotagging": "5.
|
|
45
|
-
"@memberjunction/core": "5.
|
|
46
|
-
"@memberjunction/core-entities": "5.
|
|
47
|
-
"@memberjunction/core-entities-server": "5.
|
|
48
|
-
"@memberjunction/esignature": "5.
|
|
49
|
-
"@memberjunction/export-engine": "5.
|
|
50
|
-
"@memberjunction/external-change-detection": "5.
|
|
51
|
-
"@memberjunction/generic-database-provider": "5.
|
|
52
|
-
"@memberjunction/geo-core": "5.
|
|
53
|
-
"@memberjunction/global": "5.
|
|
54
|
-
"@memberjunction/integration-engine": "5.
|
|
55
|
-
"@memberjunction/interactive-component-types": "5.
|
|
56
|
-
"@memberjunction/lists": "5.
|
|
57
|
-
"@memberjunction/lists-base": "5.
|
|
58
|
-
"@memberjunction/react-linter": "5.
|
|
59
|
-
"@memberjunction/record-set-processor": "5.
|
|
60
|
-
"@memberjunction/record-set-processor-base": "5.
|
|
61
|
-
"@memberjunction/search-engine": "5.
|
|
62
|
-
"@memberjunction/sql-dialect": "5.
|
|
63
|
-
"@memberjunction/sqlserver-dataprovider": "5.
|
|
64
|
-
"@memberjunction/storage": "5.
|
|
28
|
+
"@memberjunction/actions": "5.45.0",
|
|
29
|
+
"@memberjunction/actions-base": "5.45.0",
|
|
30
|
+
"@memberjunction/ai": "5.45.0",
|
|
31
|
+
"@memberjunction/ai-agent-manager": "5.45.0",
|
|
32
|
+
"@memberjunction/ai-agents": "5.45.0",
|
|
33
|
+
"@memberjunction/ai-betty-bot": "5.45.0",
|
|
34
|
+
"@memberjunction/ai-core-plus": "5.45.0",
|
|
35
|
+
"@memberjunction/ai-engine-base": "5.45.0",
|
|
36
|
+
"@memberjunction/ai-mcp-client": "5.45.0",
|
|
37
|
+
"@memberjunction/ai-prompts": "5.45.0",
|
|
38
|
+
"@memberjunction/ai-vector-sync": "5.45.0",
|
|
39
|
+
"@memberjunction/aiengine": "5.45.0",
|
|
40
|
+
"@memberjunction/clustering-engine": "5.45.0",
|
|
41
|
+
"@memberjunction/code-execution": "5.45.0",
|
|
42
|
+
"@memberjunction/communication-engine": "5.45.0",
|
|
43
|
+
"@memberjunction/communication-types": "5.45.0",
|
|
44
|
+
"@memberjunction/content-autotagging": "5.45.0",
|
|
45
|
+
"@memberjunction/core": "5.45.0",
|
|
46
|
+
"@memberjunction/core-entities": "5.45.0",
|
|
47
|
+
"@memberjunction/core-entities-server": "5.45.0",
|
|
48
|
+
"@memberjunction/esignature": "5.45.0",
|
|
49
|
+
"@memberjunction/export-engine": "5.45.0",
|
|
50
|
+
"@memberjunction/external-change-detection": "5.45.0",
|
|
51
|
+
"@memberjunction/generic-database-provider": "5.45.0",
|
|
52
|
+
"@memberjunction/geo-core": "5.45.0",
|
|
53
|
+
"@memberjunction/global": "5.45.0",
|
|
54
|
+
"@memberjunction/integration-engine": "5.45.0",
|
|
55
|
+
"@memberjunction/interactive-component-types": "5.45.0",
|
|
56
|
+
"@memberjunction/lists": "5.45.0",
|
|
57
|
+
"@memberjunction/lists-base": "5.45.0",
|
|
58
|
+
"@memberjunction/react-linter": "5.45.0",
|
|
59
|
+
"@memberjunction/record-set-processor": "5.45.0",
|
|
60
|
+
"@memberjunction/record-set-processor-base": "5.45.0",
|
|
61
|
+
"@memberjunction/search-engine": "5.45.0",
|
|
62
|
+
"@memberjunction/sql-dialect": "5.45.0",
|
|
63
|
+
"@memberjunction/sqlserver-dataprovider": "5.45.0",
|
|
64
|
+
"@memberjunction/storage": "5.45.0",
|
|
65
65
|
"@types/d3-cloud": "^1.2.9",
|
|
66
66
|
"@types/d3-force": "^3.0.10",
|
|
67
67
|
"@types/d3-hierarchy": "^3.1.7",
|