Commit Graph

88 Commits

Author SHA1 Message Date
eight
bdae1c3697 Change: simpler styleCodeEmpty 2018-10-11 20:00:25 +08:00
eight
bd4a453f45 Merge branch 'dev-usercss-meta' into dev-exclusions 2018-10-11 19:49:37 +08:00
eight
d2b36a168e Kill hidden globals 2018-10-10 23:05:20 +08:00
eight
2fd531e253 Rewrite linter system (#487)
* Add: implement new linter system

* Refactor: pull out editor worker

* Switch to new linter and worker

* Enable eslint cache

* Fix: undefined error

* Windows compatibility

* Fix: refresh linter if the editor.linter changes

* Add: stylelint

* Add: getStylelintRules, getCsslintRules

* Fix: logic to get correct linter

* WIP: linter-report

* Fix: toggle hidden state

* Add: matain the order of lint report for section editor

* Add: unhook event

* Add: gotoLintIssue

* Fix: shouldn't delete rule.init

* Add: linter-help-dialog

* Drop linterConfig

* Add: linter-config-dialog, cacheFn

* Add: use cacheFn

* Drop lint.js

* Add: refresh. Fix report order

* Fix: hide empty table

* Add: updateCount. Fix table caption

* Switch to new linter/worker

* Fix: remove unneeded comment

* Fix: cacheFn -> cacheFirstCall

* Fix: use cacheFirstCall

* Fix: cache metaIndex

* Fix: i < trs.length

* Fix: drop isEmpty

* Fix: expose some simple states to global

* Fix: return object code style

* Fix: use proxy to reflect API

* Fix: eslint-disable-line -> eslint-disable-next-line

* Fix: requestId -> id

* Fix: one-liner

* Fix: one-liner

* Fix: move dom event block to top

* Fix: pending -> pendingResponse

* Fix: onSuccess -> onUpdated

* Fix: optimize row removing when i === 0

* Fix: hook/unhook -> enableForEditor/disableForEditor

* Fix: linter.refresh -> linter.run

* Fix: some shadowing

* Fix: simplify getAnnotations

* Fix: cacheFirstCall -> memoize

* Fix: table.update -> table.updateCaption

* Fix: unneeded reassign

* Fix: callbacks -> listeners

* Fix: don't compose but extend

* Refactor: replace linter modules with linter-defaults and linter-engines

* Fix: implement linter fallbacks

* Fix: linter.onChange -> linter.onLintingUpdated

* Fix: cms -> tables

* Fix: parseMozFormat is not called correctly

* Move csslint-loader to background

* Fix: watch config changes

* Fix: switch to LINTER_DEFAULTS

* Fix: csslint-loader -> parserlib-loader
2018-10-01 09:03:17 -05:00
eight
79833d8bba Fix: a better way to draw list? 2018-09-26 11:40:04 +08:00
eight
d5ee31a080 Fix: a better way to draw character list? 2018-09-26 11:37:50 +08:00
eight
1fe0586b29 Add: i18n error message 2018-09-26 10:33:02 +08:00
eight
3d32b0428b Fix: vars might be empty 2018-09-25 21:38:40 +08:00
eight
b853be13f8 Enhance: swith to usercss-meta (in worker) 2018-09-25 21:14:46 +08:00
Rob Garrison
a4d2e3dd9c Remove misleading comment 2018-09-24 07:02:04 -05:00
Rob Garrison
75d2ef2cc1 Fix strict equals 2018-09-24 07:02:04 -05:00
Rob Garrison
7be33a9237 Fix default values 2018-09-24 07:02:04 -05:00
Rob Garrison
d136fdbafa Allow including null in number/range variables 2018-09-24 07:02:04 -05:00
Rob Garrison
7d533d4d4a Fix select default option extraction 2018-09-24 07:02:04 -05:00
Rob Garrison
2a2191049f Don't allow step to be set to zero 2018-09-24 07:02:04 -05:00
Rob Garrison
1881552348 Remove va.range & add min/max/step to va directly 2018-09-24 07:02:04 -05:00
Rob Garrison
a277800868 Fix all the things 2018-09-24 07:02:04 -05:00
Rob Garrison
7cd4380ee4 Ensure range default & value types match 2018-09-24 07:02:04 -05:00
Rob Garrison
ae6e2647a3 Add proper number & range validation 2018-09-24 07:02:04 -05:00
Rob Garrison
f6998de6ec Include units in number & range variable 2018-09-24 07:02:04 -05:00
Rob Garrison
2291197277 UserCSS Number variable now accepts a range 2018-09-24 07:02:04 -05:00
Rob Garrison
d9c748d92f Change range settings to [default, min, max, step] 2018-09-24 07:02:04 -05:00
Rob Garrison
1dc24fac1b Use string slice instead of replace 2018-09-24 07:02:04 -05:00
Rob Garrison
95f9f9c5d4 Rename to defaultValue 2018-09-24 07:02:04 -05:00
Rob Garrison
9b483d993b Add default select option. See #492 2018-09-24 07:02:04 -05:00
Rob Garrison
1632a8f364 Add number & range variables. See #492 2018-09-24 07:02:04 -05:00
Rob Garrison
c61d34d053 Update libraries (#440) 2018-07-21 20:58:54 +03:00
tophf
165f7b5684 don't add varDef to code if there are no vars 2018-07-15 17:55:54 +03:00
tophf
26f673f30d move linter worker loaders to edit/ 2018-07-10 11:35:19 +03:00
tophf
d8b776bedf try installing from full code if 'sections' is empty in style json
fixes #414
2018-07-05 15:46:01 +03:00
tophf
766a38e9e8 polyfill Error.captureStackTrace in FF
fixes #412
2018-07-04 19:21:21 +03:00
tophf
5ef347a4d9 LESS preprocessor
closes #373
2018-04-19 20:02:23 +03:00
tophf
dbba338229 report line:ch in live-preview errors for usercss 2018-03-11 16:47:27 +03:00
tophf
022e588c97 allow errors in usercss when saving in editor and live-reloading 2018-01-07 16:36:30 +03:00
tophf
2036819442 reuse parserCache on subsequent saving of usercss 2018-01-07 12:31:23 +03:00
tophf
d2cba96e10 refactor CSSLint
* reduce linting delay
* parse mozformat in worker
* allow empty functions in 'filter:' property
  https://drafts.fxtf.org/filter-effects/#supported-filter-functions
* support comma-separated list in :lang()
* strip vendor prefix in isLiteral()
2018-01-07 12:31:23 +03:00
tophf
807ea6aa70 extract colorconverter.js 2018-01-07 11:52:43 +03:00
tophf
e6d04fad6d meta value starts after a name on the same line 2018-01-04 11:10:59 +03:00
tophf
6607455e8f silence eslint; switch shirt-circuiting to single-line if/else 2017-12-18 10:27:50 +03:00
tophf
f40dc29497 add rudimentary reject/catch for mozParser inside worker 2017-12-07 08:41:52 +03:00
tophf
f337e18515 recognize usercss @updateURL
* installation URL is preferred - same behavior as before

* @updateURL is used when the style was drag'n'dropped into the manage page
  because there's no real URL in this case

* install-usercss page shows the new update URL, which is set as per the above,
  under the checkbox that enables updates
2017-12-06 22:35:19 +03:00
tophf
1273903b05 import usercss files drag'n'dropped into the manage page 2017-12-06 11:03:43 +03:00
tophf
f5516db8f4 off-load mozParser to a worker 2017-12-01 02:35:56 +03:00
tophf
9c3229717f fixup d660e6bd: off-by-1 in parseStringUnquoted 2017-12-01 00:23:06 +03:00
tophf
d660e6bd72 usercss validator: more precise error position report 2017-11-27 14:54:18 +03:00
tophf
8d3fd9cc3b fixups for a58f42de (backtick) and 05677d93 (copy changed meta) 2017-11-27 03:19:31 +03:00
tophf
23efcb1db8 usercss: inform when the entire metadata block is missing/invalid 2017-11-26 21:13:54 +03:00
tophf
a58f42dee0 usercss editor: save as template when @name is empty
* reduced the flickering on page open
* show * in title for new styles
* align the values in the default template
* don't ask to save an untouched template
* don't spam the console with errors
* trivial code refactor and cosmetics
2017-11-26 18:43:40 +03:00
tophf
0e518bddcb don't add usercss vars to empty sections 2017-11-26 04:52:14 +03:00
eight
d02984ee2a Add: expose parseError.index 2017-11-09 15:53:09 +08:00