@aemforms/af-core 0.22.151 → 0.22.153
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/esm/afb-runtime.js
CHANGED
|
@@ -1882,7 +1882,7 @@ class BaseNode {
|
|
|
1882
1882
|
else {
|
|
1883
1883
|
qn = `${parent.qualifiedName}.${this.name}`;
|
|
1884
1884
|
}
|
|
1885
|
-
if (!this._isAncestorRepeatable()) {
|
|
1885
|
+
if (!this.repeatable && !this._isAncestorRepeatable()) {
|
|
1886
1886
|
this[qualifiedName] = qn;
|
|
1887
1887
|
}
|
|
1888
1888
|
return qn;
|
|
@@ -2873,7 +2873,7 @@ const request = async (context, uri, httpVerb, payload, success, error, headers)
|
|
|
2873
2873
|
method: httpVerb
|
|
2874
2874
|
};
|
|
2875
2875
|
let inputPayload;
|
|
2876
|
-
let encryptOutput = {};
|
|
2876
|
+
let encryptOutput = {}, cryptoMetadata = null;
|
|
2877
2877
|
try {
|
|
2878
2878
|
if (payload instanceof Promise) {
|
|
2879
2879
|
payload = await payload;
|
|
@@ -2887,6 +2887,7 @@ const request = async (context, uri, httpVerb, payload, success, error, headers)
|
|
|
2887
2887
|
encryptOutput = { ...payload };
|
|
2888
2888
|
headers = { ...payload.headers };
|
|
2889
2889
|
payload = payload.body;
|
|
2890
|
+
cryptoMetadata = payload.cryptoMetadata;
|
|
2890
2891
|
inputPayload = payload;
|
|
2891
2892
|
}
|
|
2892
2893
|
if (payload && payload instanceof FileObject && payload.data instanceof File) {
|
|
@@ -2951,6 +2952,7 @@ const request = async (context, uri, httpVerb, payload, success, error, headers)
|
|
|
2951
2952
|
response.originalRequest = {
|
|
2952
2953
|
url: endpoint,
|
|
2953
2954
|
method: httpVerb,
|
|
2955
|
+
...(cryptoMetadata && { cryptoMetadata }),
|
|
2954
2956
|
...encryptOutput
|
|
2955
2957
|
};
|
|
2956
2958
|
response.submitter = targetField;
|
|
@@ -3449,10 +3451,11 @@ class FunctionRuntimeImpl {
|
|
|
3449
3451
|
throw error;
|
|
3450
3452
|
}
|
|
3451
3453
|
let finalHeaders = {};
|
|
3452
|
-
let finalBody = {};
|
|
3454
|
+
let finalBody = {}, finalCryptoMetadata = null;
|
|
3453
3455
|
if (args.length === 5) {
|
|
3454
3456
|
finalBody = payload.body || {};
|
|
3455
3457
|
finalHeaders = payload.headers || {};
|
|
3458
|
+
finalCryptoMetadata = payload.cryptoMetadata;
|
|
3456
3459
|
}
|
|
3457
3460
|
else {
|
|
3458
3461
|
finalBody = payload || {};
|
|
@@ -3472,7 +3475,7 @@ class FunctionRuntimeImpl {
|
|
|
3472
3475
|
};
|
|
3473
3476
|
}
|
|
3474
3477
|
}
|
|
3475
|
-
const finalPayload = { 'body': finalBody, 'headers': finalHeaders };
|
|
3478
|
+
const finalPayload = { 'body': finalBody, 'headers': finalHeaders, ...(finalCryptoMetadata && { cryptoMetadata: finalCryptoMetadata }) };
|
|
3476
3479
|
try {
|
|
3477
3480
|
const response = await request(interpreter.globals, uri, httpVerb, finalPayload, success, errorFn, finalHeaders);
|
|
3478
3481
|
return response;
|
|
@@ -3706,6 +3709,57 @@ class FunctionRuntimeImpl {
|
|
|
3706
3709
|
return _today / MS_IN_DAY;
|
|
3707
3710
|
},
|
|
3708
3711
|
_signature: []
|
|
3712
|
+
},
|
|
3713
|
+
formatInput: {
|
|
3714
|
+
_func: (args) => {
|
|
3715
|
+
const input = args[0];
|
|
3716
|
+
const format = args[1];
|
|
3717
|
+
if (!input || !format) {
|
|
3718
|
+
return input;
|
|
3719
|
+
}
|
|
3720
|
+
const inputStr = String(input).replace(/\D/g, '');
|
|
3721
|
+
switch (String(format).toLowerCase()) {
|
|
3722
|
+
case 'phonenumber': {
|
|
3723
|
+
if (inputStr.length >= 10) {
|
|
3724
|
+
const areaCode = inputStr.substring(0, 3);
|
|
3725
|
+
const firstThree = inputStr.substring(3, 6);
|
|
3726
|
+
const lastFour = inputStr.substring(6, 10);
|
|
3727
|
+
return `(${areaCode}) ${firstThree}-${lastFour}`;
|
|
3728
|
+
}
|
|
3729
|
+
else if (inputStr.length >= 7) {
|
|
3730
|
+
const firstThree = inputStr.substring(0, 3);
|
|
3731
|
+
const lastFour = inputStr.substring(3, 7);
|
|
3732
|
+
return `(${firstThree}) ${lastFour}`;
|
|
3733
|
+
}
|
|
3734
|
+
return inputStr;
|
|
3735
|
+
}
|
|
3736
|
+
case 'socialsecuritynumber': {
|
|
3737
|
+
if (inputStr.length >= 9) {
|
|
3738
|
+
const firstThree = inputStr.substring(0, 3);
|
|
3739
|
+
const middleTwo = inputStr.substring(3, 5);
|
|
3740
|
+
const lastFour = inputStr.substring(5, 9);
|
|
3741
|
+
return `${firstThree}-${middleTwo}-${lastFour}`;
|
|
3742
|
+
}
|
|
3743
|
+
return inputStr;
|
|
3744
|
+
}
|
|
3745
|
+
case 'email-alphanumeric': {
|
|
3746
|
+
const alphanumeric = String(input).replace(/[^a-zA-Z0-9]/g, '');
|
|
3747
|
+
if (alphanumeric.length > 0) {
|
|
3748
|
+
return `${alphanumeric}@example.com`;
|
|
3749
|
+
}
|
|
3750
|
+
return input;
|
|
3751
|
+
}
|
|
3752
|
+
case 'zipcode': {
|
|
3753
|
+
if (inputStr.length >= 5) {
|
|
3754
|
+
return inputStr.substring(0, 5);
|
|
3755
|
+
}
|
|
3756
|
+
return inputStr;
|
|
3757
|
+
}
|
|
3758
|
+
default:
|
|
3759
|
+
return input;
|
|
3760
|
+
}
|
|
3761
|
+
},
|
|
3762
|
+
_signature: []
|
|
3709
3763
|
}
|
|
3710
3764
|
};
|
|
3711
3765
|
return { ...defaultFunctions, ...FunctionRuntimeImpl.getInstance().customFunctions };
|
|
@@ -111,6 +111,10 @@ declare class FunctionRuntimeImpl {
|
|
|
111
111
|
_func: () => number;
|
|
112
112
|
_signature: never[];
|
|
113
113
|
};
|
|
114
|
+
formatInput: {
|
|
115
|
+
_func: (args: Array<unknown>) => unknown;
|
|
116
|
+
_signature: never[];
|
|
117
|
+
};
|
|
114
118
|
};
|
|
115
119
|
}
|
|
116
120
|
export declare const FunctionRuntime: FunctionRuntimeImpl;
|
package/lib/BaseNode.js
CHANGED
|
@@ -111,6 +111,10 @@ declare class FunctionRuntimeImpl {
|
|
|
111
111
|
_func: () => number;
|
|
112
112
|
_signature: never[];
|
|
113
113
|
};
|
|
114
|
+
formatInput: {
|
|
115
|
+
_func: (args: Array<unknown>) => unknown;
|
|
116
|
+
_signature: never[];
|
|
117
|
+
};
|
|
114
118
|
};
|
|
115
119
|
}
|
|
116
120
|
export declare const FunctionRuntime: FunctionRuntimeImpl;
|
|
@@ -37,7 +37,7 @@ const request = (context, uri, httpVerb, payload, success, error, headers) => __
|
|
|
37
37
|
method: httpVerb
|
|
38
38
|
};
|
|
39
39
|
let inputPayload;
|
|
40
|
-
let encryptOutput = {};
|
|
40
|
+
let encryptOutput = {}, cryptoMetadata = null;
|
|
41
41
|
try {
|
|
42
42
|
if (payload instanceof Promise) {
|
|
43
43
|
payload = yield payload;
|
|
@@ -51,6 +51,7 @@ const request = (context, uri, httpVerb, payload, success, error, headers) => __
|
|
|
51
51
|
encryptOutput = Object.assign({}, payload);
|
|
52
52
|
headers = Object.assign({}, payload.headers);
|
|
53
53
|
payload = payload.body;
|
|
54
|
+
cryptoMetadata = payload.cryptoMetadata;
|
|
54
55
|
inputPayload = payload;
|
|
55
56
|
}
|
|
56
57
|
if (payload && payload instanceof FileObject_1.FileObject && payload.data instanceof File) {
|
|
@@ -109,7 +110,7 @@ const request = (context, uri, httpVerb, payload, success, error, headers) => __
|
|
|
109
110
|
};
|
|
110
111
|
try {
|
|
111
112
|
const response = yield (0, Fetch_1.request)(endpoint, inputPayload, requestOptions);
|
|
112
|
-
response.originalRequest = Object.assign({ url: endpoint, method: httpVerb }, encryptOutput);
|
|
113
|
+
response.originalRequest = Object.assign(Object.assign({ url: endpoint, method: httpVerb }, (cryptoMetadata && { cryptoMetadata })), encryptOutput);
|
|
113
114
|
response.submitter = targetField;
|
|
114
115
|
const enhancedPayload = Object.assign(Object.assign({}, baseEnhancedPayload), { response, request: response.originalRequest });
|
|
115
116
|
if ((response === null || response === void 0 ? void 0 : response.status) >= 200 && (response === null || response === void 0 ? void 0 : response.status) <= 299) {
|
|
@@ -602,10 +603,11 @@ class FunctionRuntimeImpl {
|
|
|
602
603
|
throw error;
|
|
603
604
|
}
|
|
604
605
|
let finalHeaders = {};
|
|
605
|
-
let finalBody = {};
|
|
606
|
+
let finalBody = {}, finalCryptoMetadata = null;
|
|
606
607
|
if (args.length === 5) {
|
|
607
608
|
finalBody = payload.body || {};
|
|
608
609
|
finalHeaders = payload.headers || {};
|
|
610
|
+
finalCryptoMetadata = payload.cryptoMetadata;
|
|
609
611
|
}
|
|
610
612
|
else {
|
|
611
613
|
finalBody = payload || {};
|
|
@@ -619,7 +621,7 @@ class FunctionRuntimeImpl {
|
|
|
619
621
|
finalHeaders = Object.assign(Object.assign({}, finalHeaders), retryOptions.headers);
|
|
620
622
|
}
|
|
621
623
|
}
|
|
622
|
-
const finalPayload = { 'body': finalBody, 'headers': finalHeaders };
|
|
624
|
+
const finalPayload = Object.assign({ 'body': finalBody, 'headers': finalHeaders }, (finalCryptoMetadata && { cryptoMetadata: finalCryptoMetadata }));
|
|
623
625
|
try {
|
|
624
626
|
const response = yield (0, exports.request)(interpreter.globals, uri, httpVerb, finalPayload, success, errorFn, finalHeaders);
|
|
625
627
|
return response;
|
|
@@ -856,6 +858,57 @@ class FunctionRuntimeImpl {
|
|
|
856
858
|
return _today / MS_IN_DAY;
|
|
857
859
|
},
|
|
858
860
|
_signature: []
|
|
861
|
+
},
|
|
862
|
+
formatInput: {
|
|
863
|
+
_func: (args) => {
|
|
864
|
+
const input = args[0];
|
|
865
|
+
const format = args[1];
|
|
866
|
+
if (!input || !format) {
|
|
867
|
+
return input;
|
|
868
|
+
}
|
|
869
|
+
const inputStr = String(input).replace(/\D/g, '');
|
|
870
|
+
switch (String(format).toLowerCase()) {
|
|
871
|
+
case 'phonenumber': {
|
|
872
|
+
if (inputStr.length >= 10) {
|
|
873
|
+
const areaCode = inputStr.substring(0, 3);
|
|
874
|
+
const firstThree = inputStr.substring(3, 6);
|
|
875
|
+
const lastFour = inputStr.substring(6, 10);
|
|
876
|
+
return `(${areaCode}) ${firstThree}-${lastFour}`;
|
|
877
|
+
}
|
|
878
|
+
else if (inputStr.length >= 7) {
|
|
879
|
+
const firstThree = inputStr.substring(0, 3);
|
|
880
|
+
const lastFour = inputStr.substring(3, 7);
|
|
881
|
+
return `(${firstThree}) ${lastFour}`;
|
|
882
|
+
}
|
|
883
|
+
return inputStr;
|
|
884
|
+
}
|
|
885
|
+
case 'socialsecuritynumber': {
|
|
886
|
+
if (inputStr.length >= 9) {
|
|
887
|
+
const firstThree = inputStr.substring(0, 3);
|
|
888
|
+
const middleTwo = inputStr.substring(3, 5);
|
|
889
|
+
const lastFour = inputStr.substring(5, 9);
|
|
890
|
+
return `${firstThree}-${middleTwo}-${lastFour}`;
|
|
891
|
+
}
|
|
892
|
+
return inputStr;
|
|
893
|
+
}
|
|
894
|
+
case 'email-alphanumeric': {
|
|
895
|
+
const alphanumeric = String(input).replace(/[^a-zA-Z0-9]/g, '');
|
|
896
|
+
if (alphanumeric.length > 0) {
|
|
897
|
+
return `${alphanumeric}@example.com`;
|
|
898
|
+
}
|
|
899
|
+
return input;
|
|
900
|
+
}
|
|
901
|
+
case 'zipcode': {
|
|
902
|
+
if (inputStr.length >= 5) {
|
|
903
|
+
return inputStr.substring(0, 5);
|
|
904
|
+
}
|
|
905
|
+
return inputStr;
|
|
906
|
+
}
|
|
907
|
+
default:
|
|
908
|
+
return input;
|
|
909
|
+
}
|
|
910
|
+
},
|
|
911
|
+
_signature: []
|
|
859
912
|
}
|
|
860
913
|
};
|
|
861
914
|
return Object.assign(Object.assign({}, defaultFunctions), FunctionRuntimeImpl.getInstance().customFunctions);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aemforms/af-core",
|
|
3
|
-
"version": "0.22.
|
|
3
|
+
"version": "0.22.153",
|
|
4
4
|
"description": "Core Module for Forms Runtime",
|
|
5
5
|
"author": "Adobe Systems",
|
|
6
6
|
"license": "Adobe Proprietary",
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
39
|
"@adobe/json-formula": "0.1.50",
|
|
40
|
-
"@aemforms/af-formatters": "^0.22.
|
|
40
|
+
"@aemforms/af-formatters": "^0.22.153"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@babel/preset-env": "^7.20.2",
|