@memberjunction/core-actions 5.35.0 → 5.37.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/communication/send-to-audience.action.d.ts +36 -0
- package/dist/custom/communication/send-to-audience.action.d.ts.map +1 -0
- package/dist/custom/communication/send-to-audience.action.js +148 -0
- package/dist/custom/communication/send-to-audience.action.js.map +1 -0
- package/dist/custom/data/run-adhoc-query.action.d.ts +14 -1
- package/dist/custom/data/run-adhoc-query.action.d.ts.map +1 -1
- package/dist/custom/data/run-adhoc-query.action.js +27 -12
- package/dist/custom/data/run-adhoc-query.action.js.map +1 -1
- package/dist/custom/lists/_action-helpers.d.ts +12 -0
- package/dist/custom/lists/_action-helpers.d.ts.map +1 -0
- package/dist/custom/lists/_action-helpers.js +42 -0
- package/dist/custom/lists/_action-helpers.js.map +1 -0
- package/dist/custom/lists/add-view-results-to-list.action.d.ts +21 -0
- package/dist/custom/lists/add-view-results-to-list.action.d.ts.map +1 -0
- package/dist/custom/lists/add-view-results-to-list.action.js +50 -0
- package/dist/custom/lists/add-view-results-to-list.action.js.map +1 -0
- package/dist/custom/lists/bulk-update-list-item-status.action.d.ts +6 -0
- package/dist/custom/lists/bulk-update-list-item-status.action.d.ts.map +1 -0
- package/dist/custom/lists/bulk-update-list-item-status.action.js +89 -0
- package/dist/custom/lists/bulk-update-list-item-status.action.js.map +1 -0
- package/dist/custom/lists/compose-lists.action.d.ts +30 -0
- package/dist/custom/lists/compose-lists.action.d.ts.map +1 -0
- package/dist/custom/lists/compose-lists.action.js +90 -0
- package/dist/custom/lists/compose-lists.action.js.map +1 -0
- package/dist/custom/lists/index.d.ts +17 -2
- package/dist/custom/lists/index.d.ts.map +1 -1
- package/dist/custom/lists/index.js +17 -2
- package/dist/custom/lists/index.js.map +1 -1
- package/dist/custom/lists/invite-to-list.action.d.ts +17 -0
- package/dist/custom/lists/invite-to-list.action.d.ts.map +1 -0
- package/dist/custom/lists/invite-to-list.action.js +52 -0
- package/dist/custom/lists/invite-to-list.action.js.map +1 -0
- package/dist/custom/lists/materialize-list-from-view.action.d.ts +26 -0
- package/dist/custom/lists/materialize-list-from-view.action.d.ts.map +1 -0
- package/dist/custom/lists/materialize-list-from-view.action.js +71 -0
- package/dist/custom/lists/materialize-list-from-view.action.js.map +1 -0
- package/dist/custom/lists/move-list-members.action.d.ts +20 -0
- package/dist/custom/lists/move-list-members.action.d.ts.map +1 -0
- package/dist/custom/lists/move-list-members.action.js +150 -0
- package/dist/custom/lists/move-list-members.action.js.map +1 -0
- package/dist/custom/lists/refresh-list-from-source.action.d.ts +15 -0
- package/dist/custom/lists/refresh-list-from-source.action.d.ts.map +1 -0
- package/dist/custom/lists/refresh-list-from-source.action.js +50 -0
- package/dist/custom/lists/refresh-list-from-source.action.js.map +1 -0
- package/dist/custom/lists/resolve-audience.action.d.ts +16 -0
- package/dist/custom/lists/resolve-audience.action.d.ts.map +1 -0
- package/dist/custom/lists/resolve-audience.action.js +59 -0
- package/dist/custom/lists/resolve-audience.action.js.map +1 -0
- package/dist/custom/lists/revoke-list-invitation.action.d.ts +12 -0
- package/dist/custom/lists/revoke-list-invitation.action.d.ts.map +1 -0
- package/dist/custom/lists/revoke-list-invitation.action.js +31 -0
- package/dist/custom/lists/revoke-list-invitation.action.js.map +1 -0
- package/dist/custom/lists/share-list.action.d.ts +16 -0
- package/dist/custom/lists/share-list.action.d.ts.map +1 -0
- package/dist/custom/lists/share-list.action.js +56 -0
- package/dist/custom/lists/share-list.action.js.map +1 -0
- package/dist/custom/lists/unshare-list.action.d.ts +11 -0
- package/dist/custom/lists/unshare-list.action.d.ts.map +1 -0
- package/dist/custom/lists/unshare-list.action.js +30 -0
- package/dist/custom/lists/unshare-list.action.js.map +1 -0
- 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 +32 -30
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
|
|
2
|
+
import { BaseAction } from '@memberjunction/actions';
|
|
3
|
+
/**
|
|
4
|
+
* Send a single message template to every record resolved from an
|
|
5
|
+
* `AudienceSource` (List / View / ad-hoc filter). Wraps the
|
|
6
|
+
* `SendToAudience` function from `@memberjunction/communication-engine`
|
|
7
|
+
* so the New Communication UI and any agent/workflow can drive a
|
|
8
|
+
* bulk send through the standard Action API.
|
|
9
|
+
*
|
|
10
|
+
* Required params:
|
|
11
|
+
* - Source: JSON-stringified `AudienceSource` ({kind:'list'|'view'|'adhoc', ...})
|
|
12
|
+
* - RecipientField: field name on the audience entity holding the recipient address (e.g. 'Email')
|
|
13
|
+
* - ProviderName: communication provider name (e.g. 'SendGrid')
|
|
14
|
+
* - ProviderMessageTypeName: provider message type (e.g. 'SingleEmail')
|
|
15
|
+
* - From: sender address
|
|
16
|
+
* - Subject, Body: standard message content. Body may include record tokens evaluated by the channel.
|
|
17
|
+
*
|
|
18
|
+
* Optional params:
|
|
19
|
+
* - FullNameField: field name for recipient's full name (for "FirstName LastName <addr>" formatting)
|
|
20
|
+
* - BodyTemplate: alternative to Body; the channel renders templating against per-record context
|
|
21
|
+
* - PreviewOnly: when true, resolve audience + build recipients but do NOT send. Returns counts only.
|
|
22
|
+
* - Credentials: JSON-stringified per-request credential override
|
|
23
|
+
*
|
|
24
|
+
* Outputs:
|
|
25
|
+
* - TotalAudienceSize, WillReceiveCount, SkippedCount, FailedCount
|
|
26
|
+
* - SkippedRecords: JSON array of {RecordID, Reason, Message}
|
|
27
|
+
* - PreviewOnly: true|false
|
|
28
|
+
*
|
|
29
|
+
* Drop-guard contract: this action never deletes any record — it only
|
|
30
|
+
* sends messages. The audience picker in the UI uses `Resolve Audience`
|
|
31
|
+
* first to preview counts before invoking this.
|
|
32
|
+
*/
|
|
33
|
+
export declare class SendToAudienceAction extends BaseAction {
|
|
34
|
+
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=send-to-audience.action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-to-audience.action.d.ts","sourceRoot":"","sources":["../../../src/custom/communication/send-to-audience.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAMrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBACa,oBAAqB,SAAQ,UAAU;cAClC,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;CA4FxF"}
|
|
@@ -0,0 +1,148 @@
|
|
|
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 { BaseAction } from '@memberjunction/actions';
|
|
8
|
+
import { RegisterClass } from '@memberjunction/global';
|
|
9
|
+
import { SendToAudience } from '@memberjunction/communication-engine';
|
|
10
|
+
/**
|
|
11
|
+
* Send a single message template to every record resolved from an
|
|
12
|
+
* `AudienceSource` (List / View / ad-hoc filter). Wraps the
|
|
13
|
+
* `SendToAudience` function from `@memberjunction/communication-engine`
|
|
14
|
+
* so the New Communication UI and any agent/workflow can drive a
|
|
15
|
+
* bulk send through the standard Action API.
|
|
16
|
+
*
|
|
17
|
+
* Required params:
|
|
18
|
+
* - Source: JSON-stringified `AudienceSource` ({kind:'list'|'view'|'adhoc', ...})
|
|
19
|
+
* - RecipientField: field name on the audience entity holding the recipient address (e.g. 'Email')
|
|
20
|
+
* - ProviderName: communication provider name (e.g. 'SendGrid')
|
|
21
|
+
* - ProviderMessageTypeName: provider message type (e.g. 'SingleEmail')
|
|
22
|
+
* - From: sender address
|
|
23
|
+
* - Subject, Body: standard message content. Body may include record tokens evaluated by the channel.
|
|
24
|
+
*
|
|
25
|
+
* Optional params:
|
|
26
|
+
* - FullNameField: field name for recipient's full name (for "FirstName LastName <addr>" formatting)
|
|
27
|
+
* - BodyTemplate: alternative to Body; the channel renders templating against per-record context
|
|
28
|
+
* - PreviewOnly: when true, resolve audience + build recipients but do NOT send. Returns counts only.
|
|
29
|
+
* - Credentials: JSON-stringified per-request credential override
|
|
30
|
+
*
|
|
31
|
+
* Outputs:
|
|
32
|
+
* - TotalAudienceSize, WillReceiveCount, SkippedCount, FailedCount
|
|
33
|
+
* - SkippedRecords: JSON array of {RecordID, Reason, Message}
|
|
34
|
+
* - PreviewOnly: true|false
|
|
35
|
+
*
|
|
36
|
+
* Drop-guard contract: this action never deletes any record — it only
|
|
37
|
+
* sends messages. The audience picker in the UI uses `Resolve Audience`
|
|
38
|
+
* first to preview counts before invoking this.
|
|
39
|
+
*/
|
|
40
|
+
let SendToAudienceAction = class SendToAudienceAction extends BaseAction {
|
|
41
|
+
async InternalRunAction(params) {
|
|
42
|
+
const getStr = (name) => {
|
|
43
|
+
const p = params.Params.find((x) => x.Name.toLowerCase() === name.toLowerCase() && x.Type === 'Input');
|
|
44
|
+
return p?.Value != null ? String(p.Value) : undefined;
|
|
45
|
+
};
|
|
46
|
+
const getJson = (name) => {
|
|
47
|
+
const raw = getStr(name);
|
|
48
|
+
if (raw == null || raw.trim().length === 0)
|
|
49
|
+
return undefined;
|
|
50
|
+
try {
|
|
51
|
+
return JSON.parse(raw);
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
const getBool = (name, dflt) => {
|
|
58
|
+
const v = getStr(name);
|
|
59
|
+
if (v == null)
|
|
60
|
+
return dflt;
|
|
61
|
+
const lc = v.toLowerCase();
|
|
62
|
+
if (lc === 'true' || lc === '1' || lc === 'yes')
|
|
63
|
+
return true;
|
|
64
|
+
if (lc === 'false' || lc === '0' || lc === 'no')
|
|
65
|
+
return false;
|
|
66
|
+
return dflt;
|
|
67
|
+
};
|
|
68
|
+
const missing = (name) => ({
|
|
69
|
+
Success: false,
|
|
70
|
+
ResultCode: 'MISSING_PARAMETER',
|
|
71
|
+
Message: `'${name}' is required`,
|
|
72
|
+
});
|
|
73
|
+
const source = getJson('Source');
|
|
74
|
+
if (!source) {
|
|
75
|
+
const raw = getStr('Source');
|
|
76
|
+
if (raw == null || raw.length === 0)
|
|
77
|
+
return missing('Source');
|
|
78
|
+
return { Success: false, ResultCode: 'INVALID_PARAMETER', Message: "'Source' must be JSON-stringified AudienceSource" };
|
|
79
|
+
}
|
|
80
|
+
const recipientField = getStr('RecipientField');
|
|
81
|
+
const providerName = getStr('ProviderName');
|
|
82
|
+
const providerMessageTypeName = getStr('ProviderMessageTypeName');
|
|
83
|
+
const from = getStr('From');
|
|
84
|
+
const subject = getStr('Subject');
|
|
85
|
+
const body = getStr('Body');
|
|
86
|
+
if (!recipientField)
|
|
87
|
+
return missing('RecipientField');
|
|
88
|
+
if (!providerName)
|
|
89
|
+
return missing('ProviderName');
|
|
90
|
+
if (!providerMessageTypeName)
|
|
91
|
+
return missing('ProviderMessageTypeName');
|
|
92
|
+
if (!from)
|
|
93
|
+
return missing('From');
|
|
94
|
+
// Build a Partial<Message> and cast at the boundary — the engine
|
|
95
|
+
// resolves the concrete MessageType from `ProviderName` +
|
|
96
|
+
// `ProviderMessageTypeName` before sending. SendToAudience itself
|
|
97
|
+
// only reads From / Subject / Body off Message; To gets populated
|
|
98
|
+
// per recipient inside the engine. Using Partial here avoids the
|
|
99
|
+
// `undefined as unknown as Message['MessageType']` cast and is the
|
|
100
|
+
// honest type for what we're constructing (a stub the engine
|
|
101
|
+
// completes).
|
|
102
|
+
const messageStub = {
|
|
103
|
+
From: from,
|
|
104
|
+
To: '',
|
|
105
|
+
Subject: subject,
|
|
106
|
+
Body: body,
|
|
107
|
+
};
|
|
108
|
+
const credentials = getJson('Credentials');
|
|
109
|
+
try {
|
|
110
|
+
const result = await SendToAudience({
|
|
111
|
+
Source: source,
|
|
112
|
+
RecipientField: recipientField,
|
|
113
|
+
FullNameField: getStr('FullNameField'),
|
|
114
|
+
ProviderName: providerName,
|
|
115
|
+
ProviderMessageTypeName: providerMessageTypeName,
|
|
116
|
+
Message: messageStub,
|
|
117
|
+
Credentials: credentials,
|
|
118
|
+
PreviewOnly: getBool('PreviewOnly', false),
|
|
119
|
+
ContextUser: params.ContextUser,
|
|
120
|
+
Provider: params.Provider,
|
|
121
|
+
});
|
|
122
|
+
const failed = result.Results.filter((r) => !r.Success).length;
|
|
123
|
+
params.Params.push({ Name: 'TotalAudienceSize', Type: 'Output', Value: result.TotalAudienceSize });
|
|
124
|
+
params.Params.push({ Name: 'WillReceiveCount', Type: 'Output', Value: result.WillReceiveCount });
|
|
125
|
+
params.Params.push({ Name: 'SkippedCount', Type: 'Output', Value: result.SkippedCount });
|
|
126
|
+
params.Params.push({ Name: 'FailedCount', Type: 'Output', Value: failed });
|
|
127
|
+
params.Params.push({ Name: 'SkippedRecords', Type: 'Output', Value: JSON.stringify(result.Skipped) });
|
|
128
|
+
params.Params.push({ Name: 'PreviewOnly', Type: 'Output', Value: result.PreviewOnly });
|
|
129
|
+
const sent = result.Results.length - failed;
|
|
130
|
+
return {
|
|
131
|
+
Success: failed === 0,
|
|
132
|
+
ResultCode: failed === 0 ? (result.PreviewOnly ? 'PREVIEW' : 'SUCCESS') : 'PARTIAL_SUCCESS',
|
|
133
|
+
Message: result.PreviewOnly
|
|
134
|
+
? `Preview: ${result.WillReceiveCount} of ${result.TotalAudienceSize} would receive (${result.SkippedCount} skipped)`
|
|
135
|
+
: `Sent ${sent} message(s), ${failed} failed, ${result.SkippedCount} skipped`,
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
catch (e) {
|
|
139
|
+
const message = e instanceof Error ? e.message : String(e);
|
|
140
|
+
return { Success: false, ResultCode: 'UNEXPECTED_ERROR', Message: message };
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
SendToAudienceAction = __decorate([
|
|
145
|
+
RegisterClass(BaseAction, 'Send To Audience')
|
|
146
|
+
], SendToAudienceAction);
|
|
147
|
+
export { SendToAudienceAction };
|
|
148
|
+
//# sourceMappingURL=send-to-audience.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send-to-audience.action.js","sourceRoot":"","sources":["../../../src/custom/communication/send-to-audience.action.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,7 +46,20 @@ import { BaseAction } from "@memberjunction/actions";
|
|
|
46
46
|
export declare class RunAdhocQueryAction extends BaseAction {
|
|
47
47
|
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
|
|
48
48
|
/**
|
|
49
|
-
* Ensures query has a row limit to prevent overwhelming results
|
|
49
|
+
* Ensures query has a row limit to prevent overwhelming results.
|
|
50
|
+
*
|
|
51
|
+
* The prior regex `query.replace(/^(\s*SELECT\s+)/i, \`$1TOP ${maxRows} \`)`
|
|
52
|
+
* produced INVALID T-SQL for `SELECT DISTINCT …` inputs — it injected
|
|
53
|
+
* `TOP N` between `SELECT` and `DISTINCT`, but T-SQL requires
|
|
54
|
+
* `SELECT DISTINCT TOP N …` (DISTINCT first). The agent's "Run Ad-hoc
|
|
55
|
+
* Query" tool routinely emits DISTINCT and was getting stuck in retry
|
|
56
|
+
* loops because every SQL it tried got mangled. The same regex also
|
|
57
|
+
* silently dropped the cap on WITH/CTE inputs and only capped the first
|
|
58
|
+
* branch of UNION/INTERSECT/EXCEPT queries.
|
|
59
|
+
*
|
|
60
|
+
* Delegating to QueryPagingEngine.WrapWithMaxRows uses the AST-based
|
|
61
|
+
* row-cap path with full DISTINCT / set-op / CTE / TOP-PERCENT / WITH-TIES
|
|
62
|
+
* handling. Same function used by RenderPipeline for saved queries.
|
|
50
63
|
*/
|
|
51
64
|
private ensureRowLimit;
|
|
52
65
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-adhoc-query.action.d.ts","sourceRoot":"","sources":["../../../src/custom/data/run-adhoc-query.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEnF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAUrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,qBACa,mBAAoB,SAAQ,UAAU;cAE/B,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA4LvF
|
|
1
|
+
{"version":3,"file":"run-adhoc-query.action.d.ts","sourceRoot":"","sources":["../../../src/custom/data/run-adhoc-query.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEnF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAUrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,qBACa,mBAAoB,SAAQ,UAAU;cAE/B,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA4LvF;;;;;;;;;;;;;;;OAeG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA8BlC;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAwBnB;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAetB;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAczB;;OAEG;YACW,gBAAgB;IA2D9B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAOlC;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAQ9B;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IAehC;;OAEG;IACH,OAAO,CAAC,cAAc;IAQtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAYvB;;OAEG;IACH,OAAO,CAAC,oBAAoB;CA2E/B"}
|
|
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { RegisterClass, SQLExpressionValidator } from "@memberjunction/global";
|
|
8
8
|
import { BaseAction } from "@memberjunction/actions";
|
|
9
9
|
import { BaseEntity, LogError } from "@memberjunction/core";
|
|
10
|
-
import { QueryCompositionEngine } from "@memberjunction/generic-database-provider";
|
|
10
|
+
import { QueryCompositionEngine, QueryPagingEngine } from "@memberjunction/generic-database-provider";
|
|
11
11
|
import { AIPromptRunner } from '@memberjunction/ai-prompts';
|
|
12
12
|
import { AIPromptParams } from '@memberjunction/ai-core-plus';
|
|
13
13
|
import { AIEngine } from '@memberjunction/aiengine';
|
|
@@ -205,21 +205,36 @@ let RunAdhocQueryAction = class RunAdhocQueryAction extends BaseAction {
|
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
207
|
/**
|
|
208
|
-
* Ensures query has a row limit to prevent overwhelming results
|
|
208
|
+
* Ensures query has a row limit to prevent overwhelming results.
|
|
209
|
+
*
|
|
210
|
+
* The prior regex `query.replace(/^(\s*SELECT\s+)/i, \`$1TOP ${maxRows} \`)`
|
|
211
|
+
* produced INVALID T-SQL for `SELECT DISTINCT …` inputs — it injected
|
|
212
|
+
* `TOP N` between `SELECT` and `DISTINCT`, but T-SQL requires
|
|
213
|
+
* `SELECT DISTINCT TOP N …` (DISTINCT first). The agent's "Run Ad-hoc
|
|
214
|
+
* Query" tool routinely emits DISTINCT and was getting stuck in retry
|
|
215
|
+
* loops because every SQL it tried got mangled. The same regex also
|
|
216
|
+
* silently dropped the cap on WITH/CTE inputs and only capped the first
|
|
217
|
+
* branch of UNION/INTERSECT/EXCEPT queries.
|
|
218
|
+
*
|
|
219
|
+
* Delegating to QueryPagingEngine.WrapWithMaxRows uses the AST-based
|
|
220
|
+
* row-cap path with full DISTINCT / set-op / CTE / TOP-PERCENT / WITH-TIES
|
|
221
|
+
* handling. Same function used by RenderPipeline for saved queries.
|
|
209
222
|
*/
|
|
210
223
|
ensureRowLimit(query, maxRows) {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
return query;
|
|
224
|
+
try {
|
|
225
|
+
const provider = BaseEntity.Provider;
|
|
226
|
+
const platform = (provider?.PlatformKey ?? 'sqlserver');
|
|
227
|
+
return QueryPagingEngine.WrapWithMaxRows(query, maxRows, platform);
|
|
215
228
|
}
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
229
|
+
catch {
|
|
230
|
+
// Ultimate safety net: if WrapWithMaxRows throws, fall back to a
|
|
231
|
+
// DISTINCT-aware regex (still better than the original).
|
|
232
|
+
const hasTop = /SELECT\s+TOP\s+\d+/i.test(query);
|
|
233
|
+
const hasOffsetFetch = /OFFSET\s+\d+\s+ROWS\s+FETCH/i.test(query);
|
|
234
|
+
if (hasTop || hasOffsetFetch)
|
|
235
|
+
return query;
|
|
236
|
+
return query.replace(/^(\s*SELECT\s+(?:DISTINCT\s+|ALL\s+)?)/i, `$1TOP ${maxRows} `);
|
|
220
237
|
}
|
|
221
|
-
// Add TOP clause
|
|
222
|
-
return query.replace(/^(\s*SELECT\s+)/i, `$1TOP ${maxRows} `);
|
|
223
238
|
}
|
|
224
239
|
/**
|
|
225
240
|
* Generates validation warnings for potentially problematic queries
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-adhoc-query.action.js","sourceRoot":"","sources":["../../../src/custom/data/run-adhoc-query.action.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-adhoc-query.action.js","sourceRoot":"","sources":["../../../src/custom/data/run-adhoc-query.action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
|
|
2
|
+
/**
|
|
3
|
+
* Shared param-extraction helpers for the Phase 1 list Actions. Mirrors
|
|
4
|
+
* the patterns the older list actions inline individually — extracted here
|
|
5
|
+
* so the new actions stay small.
|
|
6
|
+
*/
|
|
7
|
+
export declare function getStringParam(params: RunActionParams, name: string): string | undefined;
|
|
8
|
+
export declare function getBooleanParam(params: RunActionParams, name: string, defaultValue: boolean): boolean;
|
|
9
|
+
export declare function getJsonParam<T>(params: RunActionParams, name: string): T | undefined;
|
|
10
|
+
export declare function addOutputParam(params: RunActionParams, name: string, value: unknown): void;
|
|
11
|
+
export declare function missingParam(name: string): ActionResultSimple;
|
|
12
|
+
//# sourceMappingURL=_action-helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_action-helpers.d.ts","sourceRoot":"","sources":["../../../src/custom/lists/_action-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAExF;;;;GAIG;AAEH,wBAAgB,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGxF;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,OAAO,GACpB,OAAO,CAOT;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAQpF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAE1F;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAM7D"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared param-extraction helpers for the Phase 1 list Actions. Mirrors
|
|
3
|
+
* the patterns the older list actions inline individually — extracted here
|
|
4
|
+
* so the new actions stay small.
|
|
5
|
+
*/
|
|
6
|
+
export function getStringParam(params, name) {
|
|
7
|
+
const param = params.Params.find((p) => p.Name.toLowerCase() === name.toLowerCase() && p.Type === 'Input');
|
|
8
|
+
return param?.Value != null ? String(param.Value) : undefined;
|
|
9
|
+
}
|
|
10
|
+
export function getBooleanParam(params, name, defaultValue) {
|
|
11
|
+
const param = params.Params.find((p) => p.Name.toLowerCase() === name.toLowerCase() && p.Type === 'Input');
|
|
12
|
+
if (param?.Value == null)
|
|
13
|
+
return defaultValue;
|
|
14
|
+
const v = String(param.Value).toLowerCase();
|
|
15
|
+
if (v === 'true' || v === '1' || v === 'yes')
|
|
16
|
+
return true;
|
|
17
|
+
if (v === 'false' || v === '0' || v === 'no')
|
|
18
|
+
return false;
|
|
19
|
+
return defaultValue;
|
|
20
|
+
}
|
|
21
|
+
export function getJsonParam(params, name) {
|
|
22
|
+
const raw = getStringParam(params, name);
|
|
23
|
+
if (raw == null || raw.trim().length === 0)
|
|
24
|
+
return undefined;
|
|
25
|
+
try {
|
|
26
|
+
return JSON.parse(raw);
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
return undefined;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function addOutputParam(params, name, value) {
|
|
33
|
+
params.Params.push({ Name: name, Type: 'Output', Value: value });
|
|
34
|
+
}
|
|
35
|
+
export function missingParam(name) {
|
|
36
|
+
return {
|
|
37
|
+
Success: false,
|
|
38
|
+
ResultCode: 'MISSING_PARAMETER',
|
|
39
|
+
Message: `'${name}' is required`,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=_action-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_action-helpers.js","sourceRoot":"","sources":["../../../src/custom/lists/_action-helpers.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,IAAY;IAClE,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAC3G,OAAO,KAAK,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,MAAuB,EACvB,IAAY,EACZ,YAAqB;IAErB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAC3G,IAAI,KAAK,EAAE,KAAK,IAAI,IAAI;QAAE,OAAO,YAAY,CAAC;IAC9C,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAC1D,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC3D,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,YAAY,CAAI,MAAuB,EAAE,IAAY;IACnE,MAAM,GAAG,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7D,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAM,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAuB,EAAE,IAAY,EAAE,KAAc;IAClF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO;QACL,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,mBAAmB;QAC/B,OAAO,EAAE,IAAI,IAAI,eAAe;KACjC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BaseAction } from '@memberjunction/actions';
|
|
2
|
+
import type { ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
|
|
3
|
+
/**
|
|
4
|
+
* Add a User View's current results to an existing List. Always additive;
|
|
5
|
+
* never removes. Cannot trigger the drop-guard.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* await runAction({
|
|
10
|
+
* ActionName: 'Add View Results To List',
|
|
11
|
+
* Params: [
|
|
12
|
+
* { Name: 'ViewID', Value: 'view-id' },
|
|
13
|
+
* { Name: 'ListID', Value: 'list-id' }
|
|
14
|
+
* ]
|
|
15
|
+
* });
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare class AddViewResultsToListAction extends BaseAction {
|
|
19
|
+
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=add-view-results-to-list.action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-view-results-to-list.action.d.ts","sourceRoot":"","sources":["../../../src/custom/lists/add-view-results-to-list.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAMxF;;;;;;;;;;;;;;GAcG;AACH,qBACa,0BAA2B,SAAQ,UAAU;cACxC,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAmBxF"}
|
|
@@ -0,0 +1,50 @@
|
|
|
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 { BaseAction } from '@memberjunction/actions';
|
|
8
|
+
import { RegisterClass } from '@memberjunction/global';
|
|
9
|
+
import { ListOperations } from '@memberjunction/lists';
|
|
10
|
+
import { addOutputParam, getStringParam, missingParam } from './_action-helpers.js';
|
|
11
|
+
/**
|
|
12
|
+
* Add a User View's current results to an existing List. Always additive;
|
|
13
|
+
* never removes. Cannot trigger the drop-guard.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* await runAction({
|
|
18
|
+
* ActionName: 'Add View Results To List',
|
|
19
|
+
* Params: [
|
|
20
|
+
* { Name: 'ViewID', Value: 'view-id' },
|
|
21
|
+
* { Name: 'ListID', Value: 'list-id' }
|
|
22
|
+
* ]
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
let AddViewResultsToListAction = class AddViewResultsToListAction extends BaseAction {
|
|
27
|
+
async InternalRunAction(params) {
|
|
28
|
+
const viewId = getStringParam(params, 'ViewID');
|
|
29
|
+
const listId = getStringParam(params, 'ListID');
|
|
30
|
+
if (!viewId)
|
|
31
|
+
return missingParam('ViewID');
|
|
32
|
+
if (!listId)
|
|
33
|
+
return missingParam('ListID');
|
|
34
|
+
const ops = new ListOperations(params.ContextUser, params.Provider);
|
|
35
|
+
const result = await ops.AddViewResultsToList(viewId, listId);
|
|
36
|
+
addOutputParam(params, 'Added', result.Counts?.Added);
|
|
37
|
+
addOutputParam(params, 'Removed', result.Counts?.Removed);
|
|
38
|
+
addOutputParam(params, 'Failed', result.Counts?.Failed);
|
|
39
|
+
return {
|
|
40
|
+
Success: result.Success,
|
|
41
|
+
ResultCode: result.ResultCode,
|
|
42
|
+
Message: result.Message,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
AddViewResultsToListAction = __decorate([
|
|
47
|
+
RegisterClass(BaseAction, 'Add View Results To List')
|
|
48
|
+
], AddViewResultsToListAction);
|
|
49
|
+
export { AddViewResultsToListAction };
|
|
50
|
+
//# sourceMappingURL=add-view-results-to-list.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-view-results-to-list.action.js","sourceRoot":"","sources":["../../../src/custom/lists/add-view-results-to-list.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjF;;;;;;;;;;;;;;GAcG;AAEI,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,UAAU;IAC9C,KAAK,CAAC,iBAAiB,CAAC,MAAuB;QACvD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM;YAAE,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM;YAAE,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE3C,MAAM,GAAG,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE9D,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtD,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC1D,cAAc,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExD,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;SACxB,CAAC;IACJ,CAAC;CACF,CAAA;AApBY,0BAA0B;IADtC,aAAa,CAAC,UAAU,EAAE,0BAA0B,CAAC;GACzC,0BAA0B,CAoBtC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { BaseAction } from '@memberjunction/actions';
|
|
2
|
+
import type { ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
|
|
3
|
+
export declare class BulkUpdateListItemStatusAction extends BaseAction {
|
|
4
|
+
protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=bulk-update-list-item-status.action.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bulk-update-list-item-status.action.d.ts","sourceRoot":"","sources":["../../../src/custom/lists/bulk-update-list-item-status.action.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AA0BxF,qBACa,8BAA+B,SAAQ,UAAU;cAC5C,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAgExF"}
|
|
@@ -0,0 +1,89 @@
|
|
|
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 { BaseAction } from '@memberjunction/actions';
|
|
8
|
+
import { Metadata, RunView } from '@memberjunction/core';
|
|
9
|
+
import { RegisterClass } from '@memberjunction/global';
|
|
10
|
+
import { addOutputParam, getJsonParam, getStringParam, missingParam, } from './_action-helpers.js';
|
|
11
|
+
/**
|
|
12
|
+
* Bulk-update the `Status` field on `MJ: List Detail` rows for a given
|
|
13
|
+
* list. Useful for review-style workflows where reviewers triage list
|
|
14
|
+
* items as Active / Complete / Disabled / Rejected.
|
|
15
|
+
*
|
|
16
|
+
* Params:
|
|
17
|
+
* - ListID (required)
|
|
18
|
+
* - RecordIDs: JSON-stringified array of RecordID values to update.
|
|
19
|
+
* - NewStatus: must match the MJ: List Detail Status check constraint
|
|
20
|
+
* (Active / Complete / Disabled / Error / Other / Pending / Rejected).
|
|
21
|
+
*/
|
|
22
|
+
const ALLOWED_STATUSES = ['Active', 'Complete', 'Disabled', 'Error', 'Other', 'Pending', 'Rejected'];
|
|
23
|
+
let BulkUpdateListItemStatusAction = class BulkUpdateListItemStatusAction extends BaseAction {
|
|
24
|
+
async InternalRunAction(params) {
|
|
25
|
+
const listId = getStringParam(params, 'ListID');
|
|
26
|
+
const recordIds = getJsonParam(params, 'RecordIDs');
|
|
27
|
+
const newStatus = getStringParam(params, 'NewStatus');
|
|
28
|
+
if (!listId)
|
|
29
|
+
return missingParam('ListID');
|
|
30
|
+
if (!recordIds || !Array.isArray(recordIds) || recordIds.length === 0) {
|
|
31
|
+
return {
|
|
32
|
+
Success: false,
|
|
33
|
+
ResultCode: 'INVALID_PARAMETER',
|
|
34
|
+
Message: "'RecordIDs' must be a JSON-stringified non-empty string array",
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
if (!newStatus || !ALLOWED_STATUSES.includes(newStatus)) {
|
|
38
|
+
return {
|
|
39
|
+
Success: false,
|
|
40
|
+
ResultCode: 'INVALID_PARAMETER',
|
|
41
|
+
Message: `NewStatus must be one of: ${ALLOWED_STATUSES.join(', ')} (got '${newStatus ?? ''}')`,
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
const md = params.Provider ?? new Metadata();
|
|
45
|
+
const rv = params.Provider ? RunView.FromMetadataProvider(params.Provider) : new RunView();
|
|
46
|
+
const filter = recordIds.map((id) => `'${id.replace(/'/g, "''")}'`).join(',');
|
|
47
|
+
const lookup = await rv.RunView({
|
|
48
|
+
EntityName: 'MJ: List Details',
|
|
49
|
+
ExtraFilter: `ListID='${listId}' AND RecordID IN (${filter})`,
|
|
50
|
+
ResultType: 'entity_object',
|
|
51
|
+
}, params.ContextUser);
|
|
52
|
+
if (!lookup.Success) {
|
|
53
|
+
return {
|
|
54
|
+
Success: false,
|
|
55
|
+
ResultCode: 'UNEXPECTED_ERROR',
|
|
56
|
+
Message: `Failed to load list details: ${lookup.ErrorMessage}`,
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
let updated = 0;
|
|
60
|
+
let failed = 0;
|
|
61
|
+
const errors = [];
|
|
62
|
+
for (const detail of lookup.Results ?? []) {
|
|
63
|
+
detail.Status = newStatus;
|
|
64
|
+
const ok = await detail.Save();
|
|
65
|
+
if (ok) {
|
|
66
|
+
updated++;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
failed++;
|
|
70
|
+
errors.push(`Failed to update '${detail.RecordID}': ${detail.LatestResult?.CompleteMessage ?? 'unknown'}`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
addOutputParam(params, 'Updated', updated);
|
|
74
|
+
addOutputParam(params, 'Failed', failed);
|
|
75
|
+
addOutputParam(params, 'Errors', errors);
|
|
76
|
+
return {
|
|
77
|
+
Success: failed === 0,
|
|
78
|
+
ResultCode: failed === 0 ? 'SUCCESS' : 'PARTIAL_SUCCESS',
|
|
79
|
+
Message: failed === 0
|
|
80
|
+
? `Updated ${updated} item(s) to '${newStatus}'`
|
|
81
|
+
: `Updated ${updated}, ${failed} failed`,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
BulkUpdateListItemStatusAction = __decorate([
|
|
86
|
+
RegisterClass(BaseAction, 'Bulk Update List Item Status')
|
|
87
|
+
], BulkUpdateListItemStatusAction);
|
|
88
|
+
export { BulkUpdateListItemStatusAction };
|
|
89
|
+
//# sourceMappingURL=bulk-update-list-item-status.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bulk-update-list-item-status.action.js","sourceRoot":"","sources":["../../../src/custom/lists/bulk-update-list-item-status.action.ts"],"names":[],"mappings":"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"}
|