aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/utils.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2023-02-02 23:26:34 -0800
committerAdam Soltys <[email protected]>2023-02-02 23:26:34 -0800
commit01333bb3f33da6b2c51e910c0fe74637a8c8e24e (patch)
treeaf238aebeab67adb0cf8f4cf9037b42270809b44 /src/lib/utils.js
parent43d893ff0195f14cd1fcb8acec17b7ca20ff6c28 (diff)
downloadcoinos-ui-01333bb3f33da6b2c51e910c0fe74637a8c8e24e.tar.gz
coinos-ui-01333bb3f33da6b2c51e910c0fe74637a8c8e24e.zip
move invoices, combine profile and dashboard
Diffstat (limited to 'src/lib/utils.js')
-rw-r--r--src/lib/utils.js26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/lib/utils.js b/src/lib/utils.js
index 2b5dda90..d0b0b1c2 100644
--- a/src/lib/utils.js
+++ b/src/lib/utils.js
@@ -202,3 +202,29 @@ export const stretch = async (password, salt) =>
);
export const bip32 = await BIP32Factory(ecc);
+
+function get_bigrams(string) {
+ var s = string.toLowerCase();
+ var v = s.split('');
+ for (var i = 0; i < v.length; i++) {
+ v[i] = s.slice(i, i + 2);
+ }
+ return v;
+}
+
+export function ss(str1, str2) {
+ if (str1.length > 0 && str2.length > 0) {
+ var pairs1 = get_bigrams(str1);
+ var pairs2 = get_bigrams(str2);
+ var union = pairs1.length + pairs2.length;
+ var hits = 0;
+ for (var x = 0; x < pairs1.length; x++) {
+ for (var y = 0; y < pairs2.length; y++) {
+ if (pairs1[x] == pairs2[y]) hit_count++;
+ }
+ }
+ if (hits > 0) return (2.0 * hits) / union;
+ }
+
+ return 0.0;
+}