@aemforms/af-core 0.22.155 → 0.22.156
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 +22 -1
- package/lib/utils/FormUtils.js +22 -1
- package/package.json +2 -2
package/esm/afb-runtime.js
CHANGED
|
@@ -1038,7 +1038,28 @@ const replaceTemplatePlaceholders = (str, values = []) => {
|
|
|
1038
1038
|
});
|
|
1039
1039
|
};
|
|
1040
1040
|
const sanitizeName = (name) => {
|
|
1041
|
-
const nameRegex = /^[A-Za-
|
|
1041
|
+
const nameRegex = /^[A-Za-z0-9_$][A-Za-z0-9_.[\]]*$/;
|
|
1042
|
+
if (name.includes('.')) {
|
|
1043
|
+
const parts = name.split('.');
|
|
1044
|
+
const sanitizedParts = parts.map((part) => {
|
|
1045
|
+
if (part.includes('[')) {
|
|
1046
|
+
const bracketIndex = part.indexOf('[');
|
|
1047
|
+
const namePart = part.substring(0, bracketIndex);
|
|
1048
|
+
const bracketPart = part.substring(bracketIndex);
|
|
1049
|
+
if (!nameRegex.test(namePart)) {
|
|
1050
|
+
return `"${namePart}"${bracketPart}`;
|
|
1051
|
+
}
|
|
1052
|
+
return part;
|
|
1053
|
+
}
|
|
1054
|
+
else {
|
|
1055
|
+
if (!nameRegex.test(part)) {
|
|
1056
|
+
return `"${part}"`;
|
|
1057
|
+
}
|
|
1058
|
+
return part;
|
|
1059
|
+
}
|
|
1060
|
+
});
|
|
1061
|
+
return sanitizedParts.join('.');
|
|
1062
|
+
}
|
|
1042
1063
|
if (!nameRegex.test(name)) {
|
|
1043
1064
|
return `"${name}"`;
|
|
1044
1065
|
}
|
package/lib/utils/FormUtils.js
CHANGED
|
@@ -286,7 +286,28 @@ const replaceTemplatePlaceholders = (str, values = []) => {
|
|
|
286
286
|
};
|
|
287
287
|
exports.replaceTemplatePlaceholders = replaceTemplatePlaceholders;
|
|
288
288
|
const sanitizeName = (name) => {
|
|
289
|
-
const nameRegex = /^[A-Za-
|
|
289
|
+
const nameRegex = /^[A-Za-z0-9_$][A-Za-z0-9_.[\]]*$/;
|
|
290
|
+
if (name.includes('.')) {
|
|
291
|
+
const parts = name.split('.');
|
|
292
|
+
const sanitizedParts = parts.map((part) => {
|
|
293
|
+
if (part.includes('[')) {
|
|
294
|
+
const bracketIndex = part.indexOf('[');
|
|
295
|
+
const namePart = part.substring(0, bracketIndex);
|
|
296
|
+
const bracketPart = part.substring(bracketIndex);
|
|
297
|
+
if (!nameRegex.test(namePart)) {
|
|
298
|
+
return `"${namePart}"${bracketPart}`;
|
|
299
|
+
}
|
|
300
|
+
return part;
|
|
301
|
+
}
|
|
302
|
+
else {
|
|
303
|
+
if (!nameRegex.test(part)) {
|
|
304
|
+
return `"${part}"`;
|
|
305
|
+
}
|
|
306
|
+
return part;
|
|
307
|
+
}
|
|
308
|
+
});
|
|
309
|
+
return sanitizedParts.join('.');
|
|
310
|
+
}
|
|
290
311
|
if (!nameRegex.test(name)) {
|
|
291
312
|
return `"${name}"`;
|
|
292
313
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aemforms/af-core",
|
|
3
|
-
"version": "0.22.
|
|
3
|
+
"version": "0.22.156",
|
|
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.156"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@babel/preset-env": "^7.20.2",
|