diff options
Diffstat (limited to 'third_party/js/PKI.js/src/Helpers.ts')
-rw-r--r-- | third_party/js/PKI.js/src/Helpers.ts | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/third_party/js/PKI.js/src/Helpers.ts b/third_party/js/PKI.js/src/Helpers.ts new file mode 100644 index 0000000000..c95f3e6cf7 --- /dev/null +++ b/third_party/js/PKI.js/src/Helpers.ts @@ -0,0 +1,34 @@ +import { EMPTY_STRING } from "./constants"; + +/** + * String preparation function. In a future here will be realization of algorithm from RFC4518 + * @param inputString JavaScript string. As soon as for each ASN.1 string type we have a specific + * transformation function here we will work with pure JavaScript string + * @returns Formatted string + */ +export function stringPrep(inputString: string): string { + //#region Initial variables + let isSpace = false; + let cutResult = EMPTY_STRING; + //#endregion + + const result = inputString.trim(); // Trim input string + + //#region Change all sequence of SPACE down to SPACE char + for (let i = 0; i < result.length; i++) { + if (result.charCodeAt(i) === 32) { + if (isSpace === false) + isSpace = true; + } else { + if (isSpace) { + cutResult += " "; + isSpace = false; + } + + cutResult += result[i]; + } + } + //#endregion + + return cutResult.toLowerCase(); +} |