@memberjunction/core-actions 4.2.0 → 4.3.1
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.
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-param-helper.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/json-param-helper.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { describe, it, expect, vi } from 'vitest';
|
|
2
|
+
// ---------------------------------------------------------------------------
|
|
3
|
+
// Mock @memberjunction/actions-base to provide the RunActionParams type
|
|
4
|
+
// without pulling in the full MJ framework.
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
vi.mock('@memberjunction/actions-base', () => {
|
|
7
|
+
return {};
|
|
8
|
+
});
|
|
9
|
+
// ---------------------------------------------------------------------------
|
|
10
|
+
// Import the class under test
|
|
11
|
+
// ---------------------------------------------------------------------------
|
|
12
|
+
import { JSONParamHelper } from '../custom/utilities/json-param-helper.js';
|
|
13
|
+
/**
|
|
14
|
+
* Helper to build a minimal RunActionParams-compatible object for testing.
|
|
15
|
+
*/
|
|
16
|
+
function makeParams(params) {
|
|
17
|
+
return {
|
|
18
|
+
Params: params.map((p) => ({
|
|
19
|
+
Name: p.Name,
|
|
20
|
+
Value: p.Value !== undefined ? p.Value : undefined,
|
|
21
|
+
Type: p.Type || 'Input',
|
|
22
|
+
})),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
// =====================================================================
|
|
26
|
+
// JSONParamHelper.getJSONParam
|
|
27
|
+
// =====================================================================
|
|
28
|
+
describe('JSONParamHelper.getJSONParam', () => {
|
|
29
|
+
it('should return the object value when the object parameter is present', () => {
|
|
30
|
+
const params = makeParams([{ Name: 'Requirements', Value: { minLength: 8 } }]);
|
|
31
|
+
const result = JSONParamHelper.getJSONParam(params, 'Requirements');
|
|
32
|
+
expect(result).toEqual({ minLength: 8 });
|
|
33
|
+
});
|
|
34
|
+
it('should parse and return the string parameter when object param is absent', () => {
|
|
35
|
+
const params = makeParams([
|
|
36
|
+
{ Name: 'RequirementsString', Value: '{"minLength": 12}' },
|
|
37
|
+
]);
|
|
38
|
+
const result = JSONParamHelper.getJSONParam(params, 'Requirements');
|
|
39
|
+
expect(result).toEqual({ minLength: 12 });
|
|
40
|
+
});
|
|
41
|
+
it('should prefer the object parameter over the string parameter', () => {
|
|
42
|
+
const params = makeParams([
|
|
43
|
+
{ Name: 'Requirements', Value: { fromObject: true } },
|
|
44
|
+
{ Name: 'RequirementsString', Value: '{"fromString": true}' },
|
|
45
|
+
]);
|
|
46
|
+
const result = JSONParamHelper.getJSONParam(params, 'Requirements');
|
|
47
|
+
expect(result).toEqual({ fromObject: true });
|
|
48
|
+
});
|
|
49
|
+
it('should return undefined when neither parameter exists', () => {
|
|
50
|
+
const params = makeParams([{ Name: 'SomethingElse', Value: 'irrelevant' }]);
|
|
51
|
+
const result = JSONParamHelper.getJSONParam(params, 'Requirements');
|
|
52
|
+
expect(result).toBeUndefined();
|
|
53
|
+
});
|
|
54
|
+
it('should throw an error when string parameter contains invalid JSON', () => {
|
|
55
|
+
const params = makeParams([
|
|
56
|
+
{ Name: 'RequirementsString', Value: 'not valid json' },
|
|
57
|
+
]);
|
|
58
|
+
expect(() => JSONParamHelper.getJSONParam(params, 'Requirements')).toThrow(/Failed to parse/);
|
|
59
|
+
});
|
|
60
|
+
it('should be case-insensitive on parameter name matching', () => {
|
|
61
|
+
const params = makeParams([{ Name: ' requirements ', Value: { ok: true } }]);
|
|
62
|
+
const result = JSONParamHelper.getJSONParam(params, 'Requirements');
|
|
63
|
+
expect(result).toEqual({ ok: true });
|
|
64
|
+
});
|
|
65
|
+
it('should return numeric zero as a valid value (not skip it)', () => {
|
|
66
|
+
const params = makeParams([{ Name: 'Count', Value: 0 }]);
|
|
67
|
+
const result = JSONParamHelper.getJSONParam(params, 'Count');
|
|
68
|
+
expect(result).toBe(0);
|
|
69
|
+
});
|
|
70
|
+
it('should return false as a valid value (not skip it)', () => {
|
|
71
|
+
const params = makeParams([{ Name: 'Flag', Value: false }]);
|
|
72
|
+
const result = JSONParamHelper.getJSONParam(params, 'Flag');
|
|
73
|
+
expect(result).toBe(false);
|
|
74
|
+
});
|
|
75
|
+
it('should skip null values and fall through to string param', () => {
|
|
76
|
+
const params = makeParams([
|
|
77
|
+
{ Name: 'Data', Value: null },
|
|
78
|
+
{ Name: 'DataString', Value: '{"fallback": true}' },
|
|
79
|
+
]);
|
|
80
|
+
const result = JSONParamHelper.getJSONParam(params, 'Data');
|
|
81
|
+
expect(result).toEqual({ fallback: true });
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
// =====================================================================
|
|
85
|
+
// JSONParamHelper.hasJSONParam
|
|
86
|
+
// =====================================================================
|
|
87
|
+
describe('JSONParamHelper.hasJSONParam', () => {
|
|
88
|
+
it('should return true when the object parameter exists', () => {
|
|
89
|
+
const params = makeParams([{ Name: 'Config', Value: {} }]);
|
|
90
|
+
expect(JSONParamHelper.hasJSONParam(params, 'Config')).toBe(true);
|
|
91
|
+
});
|
|
92
|
+
it('should return true when the string parameter exists', () => {
|
|
93
|
+
const params = makeParams([{ Name: 'ConfigString', Value: '{}' }]);
|
|
94
|
+
expect(JSONParamHelper.hasJSONParam(params, 'Config')).toBe(true);
|
|
95
|
+
});
|
|
96
|
+
it('should return false when neither parameter exists', () => {
|
|
97
|
+
const params = makeParams([]);
|
|
98
|
+
expect(JSONParamHelper.hasJSONParam(params, 'Config')).toBe(false);
|
|
99
|
+
});
|
|
100
|
+
it('should return false when parameter value is null', () => {
|
|
101
|
+
const params = makeParams([{ Name: 'Config', Value: null }]);
|
|
102
|
+
expect(JSONParamHelper.hasJSONParam(params, 'Config')).toBe(false);
|
|
103
|
+
});
|
|
104
|
+
it('should return false when parameter value is undefined', () => {
|
|
105
|
+
const params = makeParams([{ Name: 'Config', Value: undefined }]);
|
|
106
|
+
expect(JSONParamHelper.hasJSONParam(params, 'Config')).toBe(false);
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
// =====================================================================
|
|
110
|
+
// JSONParamHelper.getRequiredJSONParam
|
|
111
|
+
// =====================================================================
|
|
112
|
+
describe('JSONParamHelper.getRequiredJSONParam', () => {
|
|
113
|
+
it('should return the value when parameter exists', () => {
|
|
114
|
+
const params = makeParams([{ Name: 'Schema', Value: { type: 'object' } }]);
|
|
115
|
+
const result = JSONParamHelper.getRequiredJSONParam(params, 'Schema');
|
|
116
|
+
expect(result).toEqual({ type: 'object' });
|
|
117
|
+
});
|
|
118
|
+
it('should throw an error when parameter is missing', () => {
|
|
119
|
+
const params = makeParams([]);
|
|
120
|
+
expect(() => JSONParamHelper.getRequiredJSONParam(params, 'Schema')).toThrow(/Schema parameter is required/);
|
|
121
|
+
});
|
|
122
|
+
it('should throw a helpful error message describing both param formats', () => {
|
|
123
|
+
const params = makeParams([]);
|
|
124
|
+
expect(() => JSONParamHelper.getRequiredJSONParam(params, 'MyParam')).toThrow(/MyParam object or MyParamString/);
|
|
125
|
+
});
|
|
126
|
+
});
|
|
127
|
+
//# sourceMappingURL=json-param-helper.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json-param-helper.test.js","sourceRoot":"","sources":["../../src/__tests__/json-param-helper.test.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": "4.
|
|
4
|
+
"version": "4.3.1",
|
|
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",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"scripts": {
|
|
12
12
|
"start": "ts-node-dev src/index.ts",
|
|
13
13
|
"build": "tsc && tsc-alias -f",
|
|
14
|
-
"test": "echo \"
|
|
14
|
+
"test": "echo \"No tests configured yet\""
|
|
15
15
|
},
|
|
16
16
|
"author": "MemberJunction.com",
|
|
17
17
|
"license": "ISC",
|
|
@@ -24,30 +24,30 @@
|
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"@asamuzakjp/css-color": "^4.1.2",
|
|
26
26
|
"@dagrejs/dagre": "^1.1.8",
|
|
27
|
-
"@memberjunction/actions": "4.
|
|
28
|
-
"@memberjunction/actions-base": "4.
|
|
29
|
-
"@memberjunction/ai": "4.
|
|
30
|
-
"@memberjunction/ai-mcp-client": "4.
|
|
31
|
-
"@memberjunction/ai-agent-manager": "4.
|
|
32
|
-
"@memberjunction/ai-agents": "4.
|
|
33
|
-
"@memberjunction/ai-betty-bot": "4.
|
|
34
|
-
"@memberjunction/ai-core-plus": "4.
|
|
35
|
-
"@memberjunction/ai-engine-base": "4.
|
|
36
|
-
"@memberjunction/ai-prompts": "4.
|
|
37
|
-
"@memberjunction/ai-vector-sync": "4.
|
|
38
|
-
"@memberjunction/aiengine": "4.
|
|
39
|
-
"@memberjunction/code-execution": "4.
|
|
40
|
-
"@memberjunction/communication-engine": "4.
|
|
41
|
-
"@memberjunction/communication-types": "4.
|
|
42
|
-
"@memberjunction/content-autotagging": "4.
|
|
43
|
-
"@memberjunction/core": "4.
|
|
44
|
-
"@memberjunction/core-entities": "4.
|
|
45
|
-
"@memberjunction/core-entities-server": "4.
|
|
46
|
-
"@memberjunction/export-engine": "4.
|
|
47
|
-
"@memberjunction/external-change-detection": "4.
|
|
48
|
-
"@memberjunction/global": "4.
|
|
49
|
-
"@memberjunction/sqlserver-dataprovider": "4.
|
|
50
|
-
"@memberjunction/storage": "4.
|
|
27
|
+
"@memberjunction/actions": "4.3.1",
|
|
28
|
+
"@memberjunction/actions-base": "4.3.1",
|
|
29
|
+
"@memberjunction/ai": "4.3.1",
|
|
30
|
+
"@memberjunction/ai-mcp-client": "4.3.1",
|
|
31
|
+
"@memberjunction/ai-agent-manager": "4.3.1",
|
|
32
|
+
"@memberjunction/ai-agents": "4.3.1",
|
|
33
|
+
"@memberjunction/ai-betty-bot": "4.3.1",
|
|
34
|
+
"@memberjunction/ai-core-plus": "4.3.1",
|
|
35
|
+
"@memberjunction/ai-engine-base": "4.3.1",
|
|
36
|
+
"@memberjunction/ai-prompts": "4.3.1",
|
|
37
|
+
"@memberjunction/ai-vector-sync": "4.3.1",
|
|
38
|
+
"@memberjunction/aiengine": "4.3.1",
|
|
39
|
+
"@memberjunction/code-execution": "4.3.1",
|
|
40
|
+
"@memberjunction/communication-engine": "4.3.1",
|
|
41
|
+
"@memberjunction/communication-types": "4.3.1",
|
|
42
|
+
"@memberjunction/content-autotagging": "4.3.1",
|
|
43
|
+
"@memberjunction/core": "4.3.1",
|
|
44
|
+
"@memberjunction/core-entities": "4.3.1",
|
|
45
|
+
"@memberjunction/core-entities-server": "4.3.1",
|
|
46
|
+
"@memberjunction/export-engine": "4.3.1",
|
|
47
|
+
"@memberjunction/external-change-detection": "4.3.1",
|
|
48
|
+
"@memberjunction/global": "4.3.1",
|
|
49
|
+
"@memberjunction/sqlserver-dataprovider": "4.3.1",
|
|
50
|
+
"@memberjunction/storage": "4.3.1",
|
|
51
51
|
"@types/d3-cloud": "^1.2.9",
|
|
52
52
|
"@types/d3-force": "^3.0.10",
|
|
53
53
|
"@types/d3-hierarchy": "^3.1.7",
|