f9db43a2e9
* 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
devDependencies
in 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_modules
folder; see the CodeMirror readme for specifics.jsonlint
: The uncompressedlib/jsonlint.js
is copied directly tovendor/jsonlint
.less
: The compresseddist/less.min.js
file is copied directly intovendor/less
.lz-string-unsafe
: The compressedlz-string-unsafe.min.js
file is copied directly intovendor/lz-string-unsafe
.semver-bundle
: Thedist/semver.js
file is copied directly intovendor/semver
.stylus-lang-bundle
: Thestylus.min.js
file is copied directly intovendor/stylus-lang-bundle
.usercss-meta
: Thedist/usercss-meta.min.js
file 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_modules
folder.tools
folder.package.json
file.package-lock.json
and/oryarn.lock
file(s).vendor/codemirror/lib
files. 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
.