A music player that connects to your cloud/distributed storage.
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Remove browserify dependency

+56 -60
+1 -1
Makefile
··· 59 59 60 60 61 61 vendor: 62 - @echo "> Browserify vendor dependencies" 62 + @echo "> Copy vendor dependencies" 63 63 @stack build && stack exec vendor 64 64 65 65
-5
package-lock.json
··· 4 4 "lockfileVersion": 1, 5 5 "requires": true, 6 6 "dependencies": { 7 - "1-liners": { 8 - "version": "0.4.0", 9 - "resolved": "https://registry.npmjs.org/1-liners/-/1-liners-0.4.0.tgz", 10 - "integrity": "sha1-sL+77uRaB7hqv/qyy5IgtrEqjio=" 11 - }, 12 7 "7zip-bin": { 13 8 "version": "4.0.2", 14 9 "resolved": "https://registry.npmjs.org/7zip-bin/-/7zip-bin-4.0.2.tgz",
+1 -4
package.json
··· 7 7 "repository": "github:icidasset/diffuse", 8 8 "license": "MIT", 9 9 "devDependencies": { 10 - "browserify": "^16.2.2", 11 10 "electron": "^2.0.2", 12 11 "electron-builder": "20.14.7", 13 - "elm-doctest": "^0.3.7", 14 - "netlify-cli": "^1.2.2" 12 + "elm-doctest": "^0.3.7" 15 13 }, 16 14 "dependencies": { 17 15 "blockstack": "^17.2.0", 18 - "camelcase": "^5.0.0", 19 16 "expand-home-dir": "0.0.3", 20 17 "express": "^4.16.3", 21 18 "globby": "^8.0.1",
+1 -1
src/Js/Workers/Authentication/blockstack.js
··· 1 - importScripts("/vendor/package.js"); 1 + importScripts("/vendor/blockstack.js"); 2 2 3 3 4 4 //
+3 -3
src/Js/Workers/Authentication/local.js
··· 1 - importScripts("/vendor/package.js"); 1 + importScripts("/vendor/text-encoding.js"); 2 2 3 3 4 4 const KEY = location.hostname + ".json"; ··· 91 91 // 🖍 Utensils 92 92 93 93 function arrayBufToString(buf) { 94 - return new encoding.TextDecoder("utf-8").decode(new Uint8Array(buf)); 94 + return new TextDecoder("utf-8").decode(new Uint8Array(buf)); 95 95 } 96 96 97 97 98 98 function stringToArrayBuf(str) { 99 - return new encoding.TextEncoder().encode(str).buffer; 99 + return new TextEncoder().encode(str).buffer; 100 100 }
+1 -1
src/Js/Workers/Authentication/remote-storage.js
··· 1 - importScripts("/vendor/package.js"); 1 + importScripts("/vendor/remotestorage.js"); 2 2 3 3 4 4 const KEY = "diffuse";
+1 -1
src/Js/Workers/search.js
··· 4 4 // 5 5 // This worker is responsible for searching through a `Track` collection. 6 6 7 - importScripts("/vendor/package.js"); 7 + importScripts("/vendor/lunr.js"); 8 8 9 9 10 10 let index;
+1 -1
src/Js/Workers/slave.js
··· 4 4 // 5 5 // This worker is responsible for executing CPU-heavy tasks with the help of Elm. 6 6 7 - importScripts("/vendor/package.js"); 7 + importScripts("/vendor/jsmediatags.js"); 8 8 importScripts("/lib/processing.js"); 9 9 importScripts("/lib/urls.js"); 10 10 importScripts("/slave.js");
+12
src/Js/elm-loader.js
··· 342 342 app.ports.setIsTouchDevice.send(true); 343 343 window.removeEventListener("touchstart", onFirstTouch, false); 344 344 }); 345 + 346 + 347 + 348 + // 349 + // 🛠 350 + 351 + function camelcase(text) { 352 + return text.toLowerCase().replace(/^([A-Z])|[\s-_]+(\w)/g, (_, a, b) => { 353 + if (b) return b.toUpperCase(); 354 + return a.toLowerCase(); 355 + }); 356 + }
+6 -1
src/Static/Html/Proxy.html
··· 56 56 '<div class="in-the-middle"><svg class="spinner" height="29" width="29" viewbox="0 0 30 30"><circle class="spinner-circle" cx="15" cy="15" fill="none" r="14" stroke-linecap="round" stroke-width="2"></circle></svg></div>'; 57 57 </script> 58 58 59 - <script src="/vendor/package.js"></script> 59 + <script src="/vendor/blockstack.js"></script> 60 + <script src="/vendor/pep.js"></script> 61 + <script src="/vendor/remotestorage.js"></script> 62 + <script src="/vendor/text-encoding.js"></script> 63 + <script src="/vendor/tocca.js"></script> 64 + <script src="/vendor/x0popup.js"></script> 60 65 61 66 <script> 62 67 // Fix for loading Elm in an Electron environment
-14
src/Vendor/package.js
··· 1 - self.jsmediatags = require("jsmediatags"); 2 - self.XhrFileReader = require("jsmediatags/build2/XhrFileReader"); 3 - 4 - self.blockstack = require("blockstack"); 5 - self.camelcase = require("camelcase"); 6 - self.encoding = require("text-encoding"); 7 - self.lunr = require("lunr"); 8 - self.RemoteStorage = require("remotestoragejs/release/remotestorage"); 9 - 10 - if (self.document) { 11 - self.tocca = require("tocca"); 12 - self.x0p = require("x0popup"); 13 - require("pepjs"); 14 - }
+1 -16
system/Build/Main.hs
··· 49 49 50 50 51 51 data Sequence 52 - = CachePolyfill 53 - | Css 52 + = Css 54 53 | Favicons 55 54 | Fonts 56 55 | Hosting ··· 82 81 83 82 -- Js 84 83 , ( Javascript, list "Js/**/*.js" ) 85 - , ( CachePolyfill, list serviceCachePolyfill ) 86 84 ] 87 85 88 86 89 - {-| Path to the Service-Worker Cache polyfill. 90 - -} 91 - serviceCachePolyfill :: [Char] 92 - serviceCachePolyfill = 93 - "../node_modules/serviceworker-cache-polyfill/index.js" 94 - 95 - 96 87 97 88 -- Flows 98 89 ··· 135 126 |> map lowerCasePath 136 127 |> rename "workers/service.js" "service-worker.js" 137 128 |> insertVersion (x !~> "timestamp") 138 - 139 - 140 - flow _ (CachePolyfill, dict) = 141 - dict 142 - |> rename "index.js" "service-cache.js" 143 - |> prefixDirname "vendor/" 144 129 145 130 146 131 {-| Other -}
+28 -12
system/Vendor/Main.hs
··· 5 5 import Shikensu 6 6 import Shikensu.Contrib 7 7 import Shikensu.Contrib.IO as Shikensu 8 - import Shikensu.Utilities (mapIO) 9 - import System.Process (readProcess) 10 8 11 9 import qualified Data.Text as Text 12 10 import qualified Data.Text.Encoding as Text ··· 17 15 18 16 main :: IO Dictionary 19 17 main = 20 - Shikensu.listRelative [ "src/Vendor/**/*.js" ] "./" 21 - >>= mapIO browserify 22 - >>= return . prefixDirname "vendor" 18 + Shikensu.listRelative 19 + [ "src/Vendor/**/*.js" 20 + 21 + -- 22 + , "node_modules/blockstack/dist/blockstack.js" 23 + , "node_modules/jsmediatags/dist/jsmediatags.min.js" 24 + , "node_modules/lunr/lunr.js" 25 + , "node_modules/pepjs/dist/pep.min.js" 26 + , "node_modules/remotestoragejs/release/remotestorage.js" 27 + , "node_modules/serviceworker-cache-polyfill/index.js" 28 + , "node_modules/text-encoding/lib/encoding.js" 29 + , "node_modules/tocca/Tocca.min.js" 30 + , "node_modules/x0popup/dist/x0popup.min.js" 31 + ] 32 + "./" 33 + >>= read 34 + >>= flow 23 35 >>= write "./build" 24 36 25 37 26 38 27 - -- Browserify 39 + -- Flow 28 40 29 41 30 - browserify :: Definition -> IO Definition 31 - browserify def = 32 - readProcess "./node_modules/.bin/browserify" [ workspacePath def ] "" 33 - |> fmap (Text.pack) 34 - |> fmap (Text.encodeUtf8) 35 - |> fmap (\c -> def { content = Just c }) 42 + flow :: Dictionary -> IO Dictionary 43 + flow = 44 + rename "encoding.js" "text-encoding.js" 45 + .> rename "index.js" "service-cache.js" 46 + .> rename "jsmediatags.min.js" "jsmediatags.js" 47 + .> rename "pep.min.js" "pep.js" 48 + .> rename "Tocca.min.js" "tocca.js" 49 + .> rename "x0popup.min.js" "x0popup.js" 50 + .> prefixDirname "vendor" 51 + .> return