* Add key * Add: a second index uuid, push changes to sync controller * Add: sync.js * Add: tokenManager * Change: log entire body for http error * Add: token flow * Fix: minor * Fix: move cleanup to stop function * Add: syncNow * Update dependencies * Fix: handle 401 error * Add: handle 401 error * Fix: then -> catch * Add: sync options to options page * Update db-to-cloud * Change: make prefs.set return a promise * Add: disble selector if connected * Add: update selector state * Fix: return promise in prefs.set * Fix: manage complex state * Fix: handle prefs change * Change: manage sync status in background * Add: show current status in the UI * Add: schedule a faster sync when db changed * Update dependencies * Add: include progress in sync status * Add: more detail status * Show status text only * Bump dependencies * Change: show loaded and total * Fix: syncTarget is undefined * Add: google and onedrive * Fix: token is not reused * Bump dependencies * Don't use minified version since it is hard to debug * Fix: expire time is incorrect * Change: switch google to code flow * Bump dependencies * Change: only modify pref if the initialization success? * Don't stop the sync if the first sync is not triggered by the user * Add: implement refresh token * Change: switch microsoft to code flow * Add: subtract expire with a latency * Add: microsoft client secret * Add: display error message * Fix: fromPref is not used * Change: try to revoke the token when log out * Add: revoke dropbox token * Fix: Google only generates one refresh token for one user by default * Bump dependencies, fix onedrive list issue * Fix: arguments sent to sync.put is wrong * Fix: don't schedule a sync on db changed if not connected * Bump dependencies. Fix issue of switching drives * Bump db-to-cloud, fix switching drive issue * Fix: only auth user on 401 error, don't display login window without user interaction * Fix: don't call revoke() if token is undefined * Add: login button to generate the access token interactively * Fix: make addMissingProperties a local * Fix: store missing props in an object * Fix: sync.getStatus should be sync * LATENCY -> NETWORK_LATENCY * Fix: cache the token forever if there is no expire time e.g. dropbox * Add some comments * Fix: i18n * Fix: i18n sync status * fixup! Fix: i18n sync status * Fix: 'sync to cloud' is displayed twice |
||
|---|---|---|
| .. | ||
| codemirror | ||
| db-to-cloud | ||
| dropbox | ||
| jsonlint | ||
| less-bundle | ||
| lz-string-unsafe | ||
| semver-bundle | ||
| stylelint-bundle | ||
| stylus-lang-bundle | ||
| usercss-meta | ||
| uuid | ||
| zipjs-browserify | ||
| README.md | ||
Vendor files are populated by the build script:
What the build script does
Using this repo, run npm install... the latest versions of:
CodeMirror(https://github.com/codemirror/CodeMirror) is installed.jsonlint(https://github.com/zaach/jsonlint) is installed.less(https://github.com/less/less.js) is installed.lz-string-unsafe(https://github.com/openstyles/lz-string-unsafe) is installed.semver-bundle(https://github.com/openstyles/semver-bundle) is installed.stylus-lang(https://github.com/openstyles/stylus-lang-bundle) is installed.usercss-meta(https://github.com/StylishThemes/parse-usercss) is installed.- The necessary build tools are installed; see
devDependenciesin thepackage.json.
Running the build script
Use npm run update to first update the packages in the node_modules folder & then update the vendor folder.
The following changes are made:
CodeMirror: Only existing files are updated directly from thenode_modulesfolder; see the CodeMirror readme for specifics.jsonlint: The uncompressedlib/jsonlint.jsis copied directly tovendor/jsonlint.less: The compresseddist/less.min.jsfile is copied directly intovendor/less.lz-string-unsafe: The compressedlz-string-unsafe.min.jsfile is copied directly intovendor/lz-string-unsafe.semver-bundle: Thedist/semver.jsfile is copied directly intovendor/semver.stylus-lang-bundle: Thestylus.min.jsfile is copied directly intovendor/stylus-lang-bundle.usercss-meta: Thedist/usercss-meta.min.jsfile is copied directly intovendor/usercss-meta.
Creating the ZIP
Use npm run zip.
This command creates a zip file that includes all the files from the repository except:
- All dot files (e.g.
.eslintrc&.gitignore). node_modulesfolder.toolsfolder.package.jsonfile.package-lock.jsonand/oryarn.lockfile(s).vendor/codemirror/libfiles. This path is excluded because it contains a file modified for development purposes only. Instead, the CodeMirror files are copied directly fromnode_modules/codemirror/lib.