From 2c024b19b876cef0fbbcf1e2aa7de9def36fc5b1 Mon Sep 17 00:00:00 2001 From: Kaycee Date: Sun, 13 Aug 2023 19:46:22 +0100 Subject: [PATCH] Second mini challenge --- .DS_Store | Bin 0 -> 6148 bytes Desktop.code-workspace | 7 +++++ package-lock.json | 48 ++++++++++++++--------------- package.json | 1 + src/.DS_Store | Bin 0 -> 6148 bytes src/isolate-duplicates/index.js | 52 +++++++++++++++++++++++++++++++- src/isolate-duplicates/test.js | 2 +- src/morse/index.js | 43 +++++++++++++++++++++++++- src/remove-dulplicates/index.js | 18 ++++++++++- 9 files changed, 143 insertions(+), 28 deletions(-) create mode 100644 .DS_Store create mode 100644 Desktop.code-workspace create mode 100644 src/.DS_Store diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..06e10ec5173afd8dcef92ae9fd89ef39c62320a8 GIT binary patch literal 6148 zcmeHKO>fgM7=GQBEoBT938Y<+B5^IH-4J5p5=wXAfP@wV2S6ohO39YRRnyW#RVioq z5BvqL{1W~PCwN}llajW(R)G9U_T!KD@f$yJ?3jo|cNTSs8bstEG1jgl+hE+!Y0WC8 zg?U1a(V_uKO6eoTYu>iODqt1(+Z5n$_a>dukTRN5@%tU2c1GFrL=M74hVbJ};we(= zw=$H7Zs2Q|6oKET3sss?!lSM5zQgxhfp?3>6kxYFM?Ql8eXyjetEjw-Y#5;&xje!Z zJaHG1i@Y6rNvD|G7*9Sb#}HpveCzN$!JK>a0@%U~qZP)l6-E_0PH0f}s*E;!h4XA| zwEYo|lQ^5U+doC6TD!Kh>+Cvv&U^opocq&YI?KAj&~5f51yR%&y$N(e!-K&1on4j`vxz86*F`G>`&4}raV{n-p6{%3g>}YPaEDWuc_kN zK-Jn76fp19+1o-a8^S7J75KLl;QhfxV)P8=8r9Z;OkDwhH8d+jnST?Q;~Mk~<{Hrh z6PgOtRAH_dLetUi8b8lqu2IuTn9GMSk%hUT2o)XUyULw}r_ttC0joe+fvT=H`20V) z`u<-g*_u_rD)3(^AZk6o*Ts~~*}674K5Jd14@hk6muplMWacD={8Ej@1*s21508taT&;S4c literal 0 HcmV?d00001 diff --git a/Desktop.code-workspace b/Desktop.code-workspace new file mode 100644 index 0000000..2a0ed79 --- /dev/null +++ b/Desktop.code-workspace @@ -0,0 +1,7 @@ +{ + "folders": [ + { + "path": ".." + } + ] +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 94d9068..71155be 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2431,9 +2431,9 @@ } }, "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -2577,9 +2577,9 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, "bin": { "json5": "lib/cli.js" @@ -3046,9 +3046,9 @@ "dev": true }, "node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -3342,9 +3342,9 @@ } }, "node_modules/ts-jest/node_modules/semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -5361,9 +5361,9 @@ }, "dependencies": { "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -5474,9 +5474,9 @@ "dev": true }, "json5": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz", - "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true }, "kleur": { @@ -5816,9 +5816,9 @@ "dev": true }, "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true }, "shebang-command": { @@ -6023,9 +6023,9 @@ }, "dependencies": { "semver": { - "version": "7.3.7", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz", - "integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "requires": { "lru-cache": "^6.0.0" diff --git a/package.json b/package.json index 2041ccc..55b416d 100644 --- a/package.json +++ b/package.json @@ -22,4 +22,5 @@ "volta": { "node": "16.14.2" } + } diff --git a/src/.DS_Store b/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..1b88076e689e18481353e7754fb7a2470c47f4d0 GIT binary patch literal 6148 zcmeHK!EVz)5S>jE>Zn4BDv)|XT8V3bq(z8`iwWhx6(cwR3U+OQRo5HEPIHJN`3xV! zl`r9U;LYx~N(tpup@L?l**7~oGuA$@cfCZU#`APY)FYw*%Gm0n`Hk>6>xQ(vrvp^B zMocwjbdOS+Z$yjZIx@iTZkKYZ$WTG+?{A8JPDkEXy(r94QkVqsyjY$>@Bgp@i>N~< zs4zpF?3c)|mq#XxYU*o#OQuC$)q}xz)!J%zZfpnJ!A|f#`eYVS9oO?}9M9fz@0Bq{ za%RWL>pWXbdbggLvX1jIo7sds%@FeLOqj~Lu=)3pbF|0MW8)Ab5am*VE>-y}hH~lfYabVSY#h3DQvULx{F9Zxp(y)w z)YmqgROnDzVL%wT$iSBC_W1mNe);|XVv_WP0b$_3VnDSIqr)+#ZP$?;jMp&y_u o9M?EJPk~{NV#M-Mya%-czh(m%dTboR1CbvAOM^7Rz+YwHC*c`)ng9R* literal 0 HcmV?d00001 diff --git a/src/isolate-duplicates/index.js b/src/isolate-duplicates/index.js index 79ae426..f0e8e5c 100644 --- a/src/isolate-duplicates/index.js +++ b/src/isolate-duplicates/index.js @@ -1,3 +1,53 @@ -function isolateDuplicates(text) {} +function isolateDuplicates(text) { + let general= [] + let arr = [] + let acc = [] + let count = 0 + let op = [] + let cl = [] + let lower; + if(typeof text === "string"){lower = text.toLowerCase()} + else{ throw Error("Please enter a valid string")} + for(let i=0;i 3){ + if(lower[i] == lower[i+1]){ + general.push(text[i]) + }else if(lower[i] != lower[i+1]){ + general.push(text[i]) + general.push(']') + cl++ + } + } + } } + if(op.length>cl.length){general.push(']')} + arr.push(general.join('')) + arr.push(count) + return arr +} module.exports = isolateDuplicates; diff --git a/src/isolate-duplicates/test.js b/src/isolate-duplicates/test.js index 887c159..2eedabb 100644 --- a/src/isolate-duplicates/test.js +++ b/src/isolate-duplicates/test.js @@ -54,4 +54,4 @@ describe("Find Duplicates", () => { 7, ]); }); -}); +}); \ No newline at end of file diff --git a/src/morse/index.js b/src/morse/index.js index cf65063..6cfd249 100644 --- a/src/morse/index.js +++ b/src/morse/index.js @@ -58,6 +58,47 @@ const MORSE_CODE = { Object.freeze(MORSE_CODE); -function morse(text) {} +function morse(text) { + let arr; + if(typeof text == "string" && typeof text != 'object'){ + arr = text.split(' ') + let result = [] + let gap = 0 + for (let i=0;i=0;i--){ + let value = obj[k[i]] + let newVal = [] + for(let j=0;j