Comparing version 9.5.1 to 9.6.0
457
changelog.md
@@ -0,581 +1,584 @@ | ||
## 9.6.0 / 2018-01-28 | ||
* Added prettier | ||
* Added a new, correct way of handling CSP | ||
## 9.5.1 / 2018-01-08 | ||
- Add postinstall script with donation log. | ||
* Added postinstall script with donation log. | ||
## 9.5.0 / 2018-01-02 | ||
- Export `toCssValue` utility function for css-vendor package. | ||
* Export `toCssValue` utility function for css-vendor package. | ||
## 9.4.0 / 2017-12-16 | ||
- Added array values support when used with function values. It now also supports priority option "!important" (#629) | ||
- Use classNamePrefix option in production mode (#638) | ||
- Added onUpdate to docs and types, now officially supported | ||
- Fixed class names collisions with multiple jss instances (#644) | ||
* Added array values support when used with function values. It now also supports priority option "!important" (#629) | ||
* Use classNamePrefix option in production mode (#638) | ||
* Added onUpdate to docs and types, now officially supported | ||
* Fixed class names collisions with multiple jss instances (#644) | ||
## 9.3.3 / 2017-11-15 | ||
- Added CSS.escape fallback, so that polyfill is not required. | ||
* Added CSS.escape fallback, so that polyfill is not required. | ||
## 9.3.2 / 2017-11-14 | ||
- Don't put escaped class names into classes hash | ||
* Don't put escaped class names into classes hash | ||
## 9.3.1 / 2017-11-13 | ||
- Never use window object directly | ||
* Never use window object directly | ||
## 9.3.0 / 2017-11-13 | ||
- Add CSS class name escaping for dev mode also we support emoji now! (#624) | ||
- Added CSP over webpack (#559) | ||
* Add CSS class name escaping for dev mode also we support emoji now! (#624) | ||
* Added CSP over webpack (#559) | ||
## 9.2.0 / 2017-11-06 | ||
- Allow empty rules when option {link: true} is used. | ||
- Simplify internal logic for function values. | ||
- Introduce function rules - similar to function values, now function can return the entire style object. | ||
* Allow empty rules when option {link: true} is used. | ||
* Simplify internal logic for function values. | ||
* Introduce function rules - similar to function values, now function can return the entire style object. | ||
## 9.1.0 / 2017-10-31 | ||
- Added Observable rules. Now not only values can be an observable, but also the entire style object. | ||
* Added Observable rules. Now not only values can be an observable, but also the entire style object. | ||
## 9.0.0 / 2017-09-30 | ||
- Added `SheetsManager.size` getter to get amount of items in `SheetsManager`. | ||
- Refactored `StyleRule.selector` for better performance. Breaking change - it doesn't reregister rule in the classes map any more. It was used mainly in jss-isolate (#419). | ||
- Method `jss.setup()` can now be called multiple times and will merge properly the options. Also it will avoid applying same plugins more than once by comparing the reference (#576). | ||
- Fixed linker, which didn't work if selectors were escaped (#557). | ||
- In production `createGenerateClassName()` option will now produce short selectors and warn about memory leaks. (#546) | ||
- Update flow to v0.54.1. | ||
- Support observable values (#442). | ||
- Warn when dynamic properties update but link: true option is not set (#581) | ||
* Added `SheetsManager.size` getter to get amount of items in `SheetsManager`. | ||
* Refactored `StyleRule.selector` for better performance. Breaking change - it doesn't reregister rule in the classes map any more. It was used mainly in jss-isolate (#419). | ||
* Method `jss.setup()` can now be called multiple times and will merge properly the options. Also it will avoid applying same plugins more than once by comparing the reference (#576). | ||
* Fixed linker, which didn't work if selectors were escaped (#557). | ||
* In production `createGenerateClassName()` option will now produce short selectors and warn about memory leaks. (#546) | ||
* Update flow to v0.54.1. | ||
* Support observable values (#442). | ||
* Warn when dynamic properties update but link: true option is not set (#581) | ||
## 8.1.0 / 2017-07-12 | ||
- Added webpackbin examples | ||
- Added size-limit tool | ||
- Added SheetsManager | ||
* Added webpackbin examples | ||
* Added size-limit tool | ||
* Added SheetsManager | ||
## 8.0.0 / 2017-06-20 | ||
- Option `insertionPoint` can now accept a DOM node | ||
- DOM node provided in `insertionPoint` can be inside of an iframe. | ||
- Warn when an `insertionPoint` was specified but not found in the DOM. | ||
* Option `insertionPoint` can now accept a DOM node | ||
* DOM node provided in `insertionPoint` can be inside of an iframe. | ||
* Warn when an `insertionPoint` was specified but not found in the DOM. | ||
### Breaking changes for users | ||
- Option `generateClassName` which was used in Jss constructor and `Jss.setup` has been removed. A new option is called `createGenerateClassName` which is a factory that returns the old `generateClassName`. We need this to reset counters on SSR for each request. | ||
- Removed default `insertionPoint` value ("jss") in order to have warnings when insertionPoint is not found in the DOM. With the default one we simply don't know when to warn. | ||
* Option `generateClassName` which was used in Jss constructor and `Jss.setup` has been removed. A new option is called `createGenerateClassName` which is a factory that returns the old `generateClassName`. We need this to reset counters on SSR for each request. | ||
* Removed default `insertionPoint` value ("jss") in order to have warnings when insertionPoint is not found in the DOM. With the default one we simply don't know when to warn. | ||
### Potentially breaking changes for plugins | ||
- KeyframeRule has been renamed to KeyframesRule. | ||
- KeyframeRule.type === 'keyframe' => KeyFrames.type === 'keyframes'. | ||
- RegularRule has been renamed to StyleRule | ||
- RegularRule.type === 'regular' => StyleRule.type === 'style'. | ||
- RegularRule.name => RegularRule.key | ||
- ConditionalRule.selector => ConditionalRule.key | ||
- FontFaceRule.selector => FontFaceRule.key | ||
- SimpleRule.name => SimpleRule.key | ||
- ViewportRule.name => ViewportRule.key | ||
- RulesContainer => RuleList | ||
* KeyframeRule has been renamed to KeyframesRule. | ||
* KeyframeRule.type === 'keyframe' => KeyFrames.type === 'keyframes'. | ||
* RegularRule has been renamed to StyleRule | ||
* RegularRule.type === 'regular' => StyleRule.type === 'style'. | ||
* RegularRule.name => RegularRule.key | ||
* ConditionalRule.selector => ConditionalRule.key | ||
* FontFaceRule.selector => FontFaceRule.key | ||
* SimpleRule.name => SimpleRule.key | ||
* ViewportRule.name => ViewportRule.key | ||
* RulesContainer => RuleList | ||
## 7.1.7 / 2017-06-15 | ||
- Fix CSS flow types | ||
* Fix CSS flow types | ||
## 7.1.6 / 2017-06-14 | ||
- Fix dynamic values for conditional and keyframe rules | ||
* Fix dynamic values for conditional and keyframe rules | ||
## 7.1.5 / 2017-05-28 | ||
- Prevent duplicates in the sheets registry (#504) | ||
- Optimize `sheets.add` for a big registry | ||
* Prevent duplicates in the sheets registry (#504) | ||
* Optimize `sheets.add` for a big registry | ||
## 7.1.4 / 2017-05-27 | ||
- Fixed undefined rule support (#489) | ||
* Fixed undefined rule support (#489) | ||
## 7.1.3 / 2017-05-26 | ||
- Fixes flow error when updating to the latest version (#507) | ||
- Fixes createStyleSheet type definitions error (#495) | ||
- Fixes function values for for nested rules (#500) | ||
* Fixes flow error when updating to the latest version (#507) | ||
* Fixes createStyleSheet type definitions error (#495) | ||
* Fixes function values for for nested rules (#500) | ||
## 7.1.2 / 2017-05-12 | ||
- Fixes function values within keyframes (#471) | ||
* Fixes function values within keyframes (#471) | ||
## 7.1.1 / 2017-04-26 | ||
- Fixes rendering rules with function values only (#475) | ||
* Fixes rendering rules with function values only (#475) | ||
## 7.1.0 / 2017-04-21 | ||
- Support updating specific rule in `sheet.update(name, data)` | ||
* Support updating specific rule in `sheet.update(name, data)` | ||
## 7.0.3 / 2017-04-14 | ||
- Fix a bug when dynamically inserted rules disapeared after reattaching the sheet (#438) | ||
* Fix a bug when dynamically inserted rules disapeared after reattaching the sheet (#438) | ||
## 7.0.2 / 2017-04-14 | ||
- Remove temporarily jss-isolate from the tests | ||
* Remove temporarily jss-isolate from the tests | ||
## 7.0.1 / 2017-04-14 | ||
- Fix `getDynamicStyles` when nested object is in the same styles object (#467) | ||
* Fix `getDynamicStyles` when nested object is in the same styles object (#467) | ||
## 7.0.0 / 2017-04-10 | ||
- Perf improvement through removing of JSON.parse(JSON.stringify(style)) | ||
- New hook `onProcessStyle` | ||
- New hook `onChangeValue` | ||
* Perf improvement through removing of JSON.parse(JSON.stringify(style)) | ||
* New hook `onProcessStyle` | ||
* New hook `onChangeValue` | ||
### Bugfixes | ||
- Run plugins over property names with function values (#441) | ||
- Function values inside of nested rules (#445) | ||
* Run plugins over property names with function values (#441) | ||
* Function values inside of nested rules (#445) | ||
### Breaking changes | ||
- New signature of `generateClassName(rule, sheet)` option. | ||
- Property `rule.originalStyle` is now available through `rule.options.parent.rules.raw[rule.name]`. It is longer but its a better place and is used in plugins only. | ||
- Plugin signature for the hook `onProcessRule` shortcut `jss.use((rule) => {})` is not supported any more. Instead this hook is supported using its full name: `jss.use({onProcessRule: () => {}})` | ||
* New signature of `generateClassName(rule, sheet)` option. | ||
* Property `rule.originalStyle` is now available through `rule.options.parent.rules.raw[rule.name]`. It is longer but its a better place and is used in plugins only. | ||
* Plugin signature for the hook `onProcessRule` shortcut `jss.use((rule) => {})` is not supported any more. Instead this hook is supported using its full name: `jss.use({onProcessRule: () => {}})` | ||
## 6.5.0 / 2017-03-14 | ||
- Dynamic Sheets for theming and animations. #356 | ||
* Dynamic Sheets for theming and animations. #356 | ||
## 6.4.0 / 2017-03-10 | ||
- Reintroduced counter based class generation algorithm. #432 | ||
* Reintroduced counter based class generation algorithm. #432 | ||
## 6.3.0 / 2017-02-16 | ||
- Introduced new option `insertionPoint`. | ||
- Reduced amount of files in the package, dropped .npmignore file. | ||
- Removed babel-runtime from the build. | ||
- Added a new hook `onProcessSheet`. | ||
- Started a list of companies/products using JSS, see docs/users.md | ||
* Introduced new option `insertionPoint`. | ||
* Reduced amount of files in the package, dropped .npmignore file. | ||
* Removed babel-runtime from the build. | ||
* Added a new hook `onProcessSheet`. | ||
* Started a list of companies/products using JSS, see docs/users.md | ||
## 6.2.0 / 2017-01-15 | ||
- Added @viewport and @-ms-viewport support (used in bootstrap). | ||
* Added @viewport and @-ms-viewport support (used in bootstrap). | ||
## 6.1.1 / 2017-01-04 | ||
- Allow sheet.link() call when VirtualRenderer is used. | ||
* Allow sheet.link() call when VirtualRenderer is used. | ||
## 6.1.0 / 2016-12-26 | ||
- Add jss-cache to the tests suit. | ||
- Don't run processors on a rule which has been processed already. | ||
- Add test for onCreateRule arguments. | ||
- Add sheet as a second argument to the onProcessRule hook. | ||
* Add jss-cache to the tests suit. | ||
* Don't run processors on a rule which has been processed already. | ||
* Add test for onCreateRule arguments. | ||
* Add sheet as a second argument to the onProcessRule hook. | ||
## 6.0.2 / 2016-12-23 | ||
- Call `onCreateRule` for every rule type. | ||
- RulesContainer is now exported for the plugins. | ||
- Using babel-runtime for the lib build now. | ||
- Using webpack 2 now. | ||
- Preparation for the bugfix - nesting within @global (#380) | ||
- Preparation for the bugfix - nested @media inside of a rule inside of @global (#387). | ||
* Call `onCreateRule` for every rule type. | ||
* RulesContainer is now exported for the plugins. | ||
* Using babel-runtime for the lib build now. | ||
* Using webpack 2 now. | ||
* Preparation for the bugfix - nesting within @global (#380) | ||
* Preparation for the bugfix - nested @media inside of a rule inside of @global (#387). | ||
## 6.0.1 / 2016-12-10 | ||
- Don't insert empty rules #363. | ||
* Don't insert empty rules #363. | ||
## 6.0.0 / 2016-12-09 | ||
- Added flow types. | ||
- Added a new plugins API. It is backwards compatible. See plugins section. | ||
- Perf improvements. | ||
* Added flow types. | ||
* Added a new plugins API. It is backwards compatible. See plugins section. | ||
* Perf improvements. | ||
### Breaking changes | ||
- Option "named" has been removed from JSS core and replaced by a jss-global plugin. From now on global styles are only possible using that plugin. | ||
- Sheets are not added to the sheets registry automatically server-side any more. In order to prevent leaking styles between requests, you now need to create your own SheetsRegistry instance and add sheets to it manually. Make sure to create a new instance for each request. On the client, sheets are still automatically added to the registry. | ||
* Option "named" has been removed from JSS core and replaced by a jss-global plugin. From now on global styles are only possible using that plugin. | ||
* Sheets are not added to the sheets registry automatically server-side any more. In order to prevent leaking styles between requests, you now need to create your own SheetsRegistry instance and add sheets to it manually. Make sure to create a new instance for each request. On the client, sheets are still automatically added to the registry. | ||
## 5.5.6 / 2016-11-03 | ||
- test suite | ||
- new is-in-browser detection #305 | ||
- warning when using an unknown at-rule | ||
- start using flow #296 | ||
* test suite | ||
* new is-in-browser detection #305 | ||
* warning when using an unknown at-rule | ||
* start using flow #296 | ||
## 5.5.5 / 2016-09-23 | ||
- remove rewire from build | ||
- update roadmap | ||
* remove rewire from build | ||
* update roadmap | ||
## 5.5.4 / 2016-09-19 | ||
- always use `cssRules.insertRule` when using addRule on attached sheet, mixing them results in weird overwrite of a rule added by insertRule by a media query rendered using text node. | ||
- catch errors from `cssRules.insertRule` and use a warning in development | ||
* always use `cssRules.insertRule` when using addRule on attached sheet, mixing them results in weird overwrite of a rule added by insertRule by a media query rendered using text node. | ||
* catch errors from `cssRules.insertRule` and use a warning in development | ||
## 5.5.3 / 2016-09-19 | ||
- add edge browser for browserstack | ||
- fix addRule insertion order from plugins when sheet is attached | ||
- fix @media insertion in IE | ||
* add edge browser for browserstack | ||
* fix addRule insertion order from plugins when sheet is attached | ||
* fix @media insertion in IE | ||
## 5.5.2 / 2016-09-9 | ||
- Skip empty values #307 | ||
* Skip empty values #307 | ||
## 5.5.1 / 2016-09-6 | ||
- Fix adding rules during the plugins loop | ||
* Fix adding rules during the plugins loop | ||
## 5.5.0 / 2016-09-6 | ||
- Fix wrong order of nested rules #285 | ||
- Add `index` option to `sheet.addRule` which allows to specify the order or added rules | ||
- Add `<style>` node position control option `index` and insertion point comment | ||
- Better browser detection by using `is-browser` package | ||
* Fix wrong order of nested rules #285 | ||
* Add `index` option to `sheet.addRule` which allows to specify the order or added rules | ||
* Add `<style>` node position control option `index` and insertion point comment | ||
* Better browser detection by using `is-browser` package | ||
## 5.4.0 / 2016-08-15 | ||
- More docs | ||
- More benchmarks | ||
- Make sheet.addRule accept options | ||
* More docs | ||
* More benchmarks | ||
* Make sheet.addRule accept options | ||
## 5.3.0 / 2016-08-06 | ||
- Added `jss.setup` method which accepts options like the contructor and can be used for presets | ||
- Docs | ||
- Create Rodamap | ||
- Cleanup DomRenderer from IE8 code. | ||
- Fix benchmark, use a new jss instance, because there is sheets registry | ||
* Added `jss.setup` method which accepts options like the contructor and can be used for presets | ||
* Docs | ||
* Create Rodamap | ||
* Cleanup DomRenderer from IE8 code. | ||
* Fix benchmark, use a new jss instance, because there is sheets registry | ||
## 5.2.0 / 2016-07-27 | ||
- Added `sheet.deleteRule` #266 | ||
* Added `sheet.deleteRule` #266 | ||
## 5.1.0 / 2016-07-13 | ||
- alternative syntax for space and comma separated values #264 | ||
* alternative syntax for space and comma separated values #264 | ||
## 5.0.0 / 2016-07-10 | ||
- new fallbacks api #256 | ||
- rule.applyTo doesn't support fallbacks any more | ||
- support conditionals overwrite upfront #259, #180 | ||
- remove compatibility fix for babel 5, now you need to use `var jss = require('jss').default` in ES5 | ||
* new fallbacks api #256 | ||
* rule.applyTo doesn't support fallbacks any more | ||
* support conditionals overwrite upfront #259, #180 | ||
* remove compatibility fix for babel 5, now you need to use `var jss = require('jss').default` in ES5 | ||
## 4.0.3 / 2016-07-05 | ||
- fixed bug when plugins called twice on createStyleSheet #258 | ||
- enable node 7 #248 | ||
* fixed bug when plugins called twice on createStyleSheet #258 | ||
* enable node 7 #248 | ||
## 4.0.2 / 2016-06-28 | ||
- allow adding rules to a detached sheet #253 | ||
* allow adding rules to a detached sheet #253 | ||
## 4.0.1 / 2016-06-23 | ||
- fix jss.version in lib | ||
* fix jss.version in lib | ||
## 4.0.0 / 2016-06-23 | ||
- user defined classname generation function | ||
- deterministic class names generation | ||
- run plugins separately when creating rules in a batch | ||
* user defined classname generation function | ||
* deterministic class names generation | ||
* run plugins separately when creating rules in a batch | ||
## 3.11.1 / 2016-05-11 | ||
- register children of a conditional in sheet.classes #81 | ||
* register children of a conditional in sheet.classes #81 | ||
## 3.11.0 / 2016-05-06 | ||
- added option element to .createStyleSheet #231 | ||
* added option element to .createStyleSheet #231 | ||
## 3.10.0 / 2016-05-02 | ||
- fix multiple @imports | ||
- added benchmarks | ||
- rewrote all tests with mocha | ||
* fix multiple @imports | ||
* added benchmarks | ||
* rewrote all tests with mocha | ||
## 3.9.1 / 2016-04-26 | ||
- fix multiple @media in one sheet | ||
* fix multiple @media in one sheet | ||
## 3.9.0 / 2016-04-24 | ||
- update linter eslint-config-jss@1.0.0 | ||
* update linter eslint-config-jss@1.0.0 | ||
## 3.8.0 / 2016-04-24 | ||
- added jss.version to the build (Daijiro Wachi) | ||
* added jss.version to the build (Daijiro Wachi) | ||
## 3.7.0 / 2016-04-21 | ||
- docs | ||
- font-face rule can now handle array of font-faces (Ken Carpenter) | ||
* docs | ||
* font-face rule can now handle array of font-faces (Ken Carpenter) | ||
## 3.6.3 / 2016-03-12 | ||
- fix rule registration in style sheet, previous commits resulted in a selector instead of class nem within sheet.classes map. | ||
* fix rule registration in style sheet, previous commits resulted in a selector instead of class nem within sheet.classes map. | ||
## 3.6.2 / 2016-04-12 | ||
- register rule when changed worked by setting selector | ||
* register rule when changed worked by setting selector | ||
## 3.6.1 / 2016-03-11 | ||
- Update StyleSheet#rules when modifying selector | ||
* Update StyleSheet#rules when modifying selector | ||
## 3.6.0 / 2016-04-08 | ||
- implement selector setter, now Rule#selector can be set, due to the fact not every browser implements selectorText setter, the entire sheet will be rerendered in such browsers. Should be used with caution. | ||
* implement selector setter, now Rule#selector can be set, due to the fact not every browser implements selectorText setter, the entire sheet will be rerendered in such browsers. Should be used with caution. | ||
## 3.5.0 / 2016-04-04 | ||
- fixed breaking change, which made exports of 3.4.0 incompatible with 3.3.0 | ||
- fix font-face rule type | ||
* fixed breaking change, which made exports of 3.4.0 incompatible with 3.3.0 | ||
* fix font-face rule type | ||
## 3.4.0 / 2016-04-03 | ||
- added style sheets registry accesible via jss.sheets | ||
- updated babel to version 6 | ||
* added style sheets registry accesible via jss.sheets | ||
* updated babel to version 6 | ||
## 3.3.0 / 2016-01-31 | ||
- fixed bug: nested rule inside of a @media conditional | ||
- new docs | ||
- trim empty rules (@wldcordeiro) | ||
- support node 5 (@nikgraf) | ||
* fixed bug: nested rule inside of a @media conditional | ||
* new docs | ||
* trim empty rules (@wldcordeiro) | ||
* support node 5 (@nikgraf) | ||
## 3.2.0 / 2015-11-27 | ||
- jss-debug is deprecated, rule name is inside of generated class name now | ||
- no more "type" option for style sheet, its always set to text/css | ||
- no more "title" option for style sheet, its not a part of the spec http://www.w3.org/TR/html-markup/style.html | ||
- added meta option, now you can for e.g. set the name of your component and find it on style element. | ||
- fixed bug when multiple conditionals used in one sheet | ||
* jss-debug is deprecated, rule name is inside of generated class name now | ||
* no more "type" option for style sheet, its always set to text/css | ||
* no more "title" option for style sheet, its not a part of the spec http://www.w3.org/TR/html-markup/style.html | ||
* added meta option, now you can for e.g. set the name of your component and find it on style element. | ||
* fixed bug when multiple conditionals used in one sheet | ||
## 3.1.1 / 2015-11-14 | ||
- added Rule#originalStyle property to access original style object from a plugin | ||
* added Rule#originalStyle property to access original style object from a plugin | ||
## 3.1.0 / 2015-11-12 | ||
- new testing infrastructure with browserstack and codeship | ||
* new testing infrastructure with browserstack and codeship | ||
## 3.0.0 / 2015-10-19 | ||
- internal rewrite for cleaner code (ConditionalRule, KeyframeRule, SimpleRule) | ||
- moved all DOM related methods to dom.js module | ||
- now child rules exist only in ConditionalRule, simplified Rule and StyleSheet logic | ||
- fixed Named rules not generating when using @media only #81 | ||
- added support for @charset, @import, @namespace, @supports | ||
- removed jss.Rule from public access, use jss.createRule() instead | ||
- removed jss.Jss from public access, use jss.create() instead | ||
- removed jss.StyleSheet from public access, use jss.createStyleSheet() instead | ||
* internal rewrite for cleaner code (ConditionalRule, KeyframeRule, SimpleRule) | ||
* moved all DOM related methods to dom.js module | ||
* now child rules exist only in ConditionalRule, simplified Rule and StyleSheet logic | ||
* fixed Named rules not generating when using @media only #81 | ||
* added support for @charset, @import, @namespace, @supports | ||
* removed jss.Rule from public access, use jss.createRule() instead | ||
* removed jss.Jss from public access, use jss.create() instead | ||
* removed jss.StyleSheet from public access, use jss.createStyleSheet() instead | ||
## 2.3.4 / 2015-09-21 | ||
- remove bower.json | ||
- remove dist from repository | ||
- add dist to npm package | ||
- add cdnjs support | ||
* remove bower.json | ||
* remove dist from repository | ||
* add dist to npm package | ||
* add cdnjs support | ||
## 2.3.3 / 2015-09-20 | ||
- remove xpkg, update npmignore and ingore list for bower | ||
* remove xpkg, update npmignore and ingore list for bower | ||
## 2.3.2 / 2015-09-19 | ||
- reference rule name on the rule instance to fix jss-debug | ||
* reference rule name on the rule instance to fix jss-debug | ||
## 2.3.1 / 2015-09-15 | ||
- use eslint-config-jss | ||
* use eslint-config-jss | ||
## 2.3.0 / 2015-09-10 | ||
- migrate to es6 | ||
- move examples to jss-examples repository | ||
* migrate to es6 | ||
* move examples to jss-examples repository | ||
## 2.2.1 / 2015-09-6 | ||
- remove @media from classes hash | ||
* remove @media from classes hash | ||
## 2.2.0 / 2015-09-6 | ||
- added support for named at-rules e.g. @media | ||
* added support for named at-rules e.g. @media | ||
## 2.1.6 / 2015-09-2 | ||
- removed invalid characters | ||
* removed invalid characters | ||
## 2.1.5 / 2015-08-20 | ||
- stop mutating original rules passed by user. expecting style to be a plaing object. | ||
* stop mutating original rules passed by user. expecting style to be a plaing object. | ||
## 2.1.4 / 2015-07-31 | ||
- add internal method uid.reset() for testing | ||
* add internal method uid.reset() for testing | ||
## 2.1.3 / 2015-07-31 | ||
- rename global reference to globalReference | ||
* rename global reference to globalReference | ||
## 2.1.2 / 2015-07-28 | ||
- avoid conflicts of jss ids when multiple jss versions are used on the same page | ||
* avoid conflicts of jss ids when multiple jss versions are used on the same page | ||
## 2.1.1 / 2015-07-20 | ||
- remove browser field from package.json, it makes webpack use dist version instead of src. | ||
* remove browser field from package.json, it makes webpack use dist version instead of src. | ||
## 2.1.0 / 2015-07-18 | ||
- create Jss constructor so that we can have multiple jss instances with different plugins, needed when you want to reuse jss lib from different standalone components which have own jss configuration and should not clash. | ||
* create Jss constructor so that we can have multiple jss instances with different plugins, needed when you want to reuse jss lib from different standalone components which have own jss configuration and should not clash. | ||
## 2.0.0 / 2015-06-17 | ||
- create jss-cli package, remove bin script from jss | ||
* create jss-cli package, remove bin script from jss | ||
## 1.0.8 / 2015-03-16 | ||
- fix bower package name | ||
- make change condition to include any non-null value in Rule#prop (Stephen Saunders) | ||
* fix bower package name | ||
* make change condition to include any non-null value in Rule#prop (Stephen Saunders) | ||
## 1.0.7 / 2015-02-26 | ||
- remove NO-BREAK SPACE chars | ||
* remove NO-BREAK SPACE chars | ||
## 1.0.6 / 2015-02-24 | ||
- add rule.toJSON() | ||
* add rule.toJSON() | ||
## 1.0.5 / 2015-02-17 | ||
- support any node version above 0.8 | ||
* support any node version above 0.8 | ||
## 1.0.4 / 2015-02-6 | ||
- allow rule options to be passed in internal rule#addRule method to allow nested rules to have different options than parent one (for now just "named") | ||
* allow rule options to be passed in internal rule#addRule method to allow nested rules to have different options than parent one (for now just "named") | ||
## 1.0.3 / 2015-01-31 | ||
- pass rule name to make debug plugin possible | ||
* pass rule name to make debug plugin possible | ||
## 1.0.2 / 2015-01-31 | ||
- fix duplicated rule rendering | ||
* fix duplicated rule rendering | ||
## 1.0.1 / 2015-01-31 | ||
- run plugins on inner rules of at-rules | ||
* run plugins on inner rules of at-rules | ||
## 1.0.0 / 2015-01-31 | ||
- styles have named: true option by default, this is backwards incompatible | ||
- at-rules like @media can now also have named rules | ||
* styles have named: true option by default, this is backwards incompatible | ||
* at-rules like @media can now also have named rules | ||
## 0.10.2 / 2015-01-31 | ||
- fixed #40 there is no colons in all at-rules with nested declarations | ||
* fixed #40 there is no colons in all at-rules with nested declarations | ||
## 0.10.1 / 2014-12-21 | ||
- fixed firefox issues | ||
* fixed firefox issues | ||
## 0.10.0 / 2014-12-21 | ||
- added rule.prop() for dynamic rule properties #15 | ||
* added rule.prop() for dynamic rule properties #15 | ||
## 0.9.0 / 2014-12-21 | ||
- added Rule#prop() for setting and getting rule props dynamically | ||
- added `link` option in order to make .prop() work but still without to add perf overhead by default. | ||
- added example for .prop() | ||
* added Rule#prop() for setting and getting rule props dynamically | ||
* added `link` option in order to make .prop() work but still without to add perf overhead by default. | ||
* added example for .prop() | ||
## 0.8.2 / 2014-12-17 | ||
- added build for "support non browser env #12" | ||
- added calendar example | ||
* added build for "support non browser env #12" | ||
* added calendar example | ||
## 0.8.1 / 2014-11-29 | ||
- supported non browser env #12 | ||
* supported non browser env #12 | ||
## 0.8.0 / 2014-11-29 | ||
- renamed Stylesheet to StyleSheet because its wrong. | ||
* renamed Stylesheet to StyleSheet because its wrong. | ||
## 0.7.0 / 2014-11-29 | ||
- moved jss to separate github organization | ||
- moved all plugins to separate repositories (don't force people use plugins they don't need) | ||
* moved jss to separate github organization | ||
* moved all plugins to separate repositories (don't force people use plugins they don't need) | ||
## 0.6.0 / 2014-11-28 | ||
- renamed processors to plugins | ||
- added public .use function for registering plugins | ||
* renamed processors to plugins | ||
* added public .use function for registering plugins | ||
## 0.5.0 / 2014-11-27 | ||
- supported multiple declarations with identical property names #22 | ||
* supported multiple declarations with identical property names #22 | ||
## 0.4.0 / 2014-11-23 | ||
- supported nested rules when using .addRule method #20 | ||
* supported nested rules when using .addRule method #20 | ||
## 0.3.2 / 2014-11-19 | ||
- rewrittn prefixer for feature testing using camel cased version because of firefox | ||
* rewrittn prefixer for feature testing using camel cased version because of firefox | ||
## 0.3.0 / 2014-11-19 | ||
- added vendor prefixes plugin for properties #21 | ||
* added vendor prefixes plugin for properties #21 | ||
## 0.2.10 / 2014-11-10 | ||
- supported nested extend | ||
- added more complex topcoat example | ||
* supported nested extend | ||
* added more complex topcoat example | ||
## 0.2.9 / 2014-11-03 | ||
- added @keyframes and @media support #16 | ||
* added @keyframes and @media support #16 | ||
## 0.2.8 / 2014-11-02 | ||
- added possibility write multi nested selector in one line #18 | ||
* added possibility write multi nested selector in one line #18 | ||
## 0.2.7 / 2014-11-02 | ||
- added @font-face to cli converter | ||
- added @keyframes to cli converter | ||
* added @font-face to cli converter | ||
* added @keyframes to cli converter | ||
## 0.2.6 / 2014-11-02 | ||
- createed perf comparence for bootstrap #13 | ||
* createed perf comparence for bootstrap #13 | ||
## 0.2.5 / 2014-11-02 | ||
- createed css->jss converter #11 | ||
* createed css->jss converter #11 | ||
## 0.2.4 / 2014-11-01 | ||
- made tests runnable from githubs gh-pages http://jsstyles.github.io/jss/test/ | ||
* made tests runnable from githubs gh-pages http://jsstyles.github.io/jss/test/ | ||
## 0.2.3 / 2014-11-01 | ||
- fixed test failing in firefox #14 | ||
* fixed test failing in firefox #14 | ||
## 0.2.2 / 2014-11-01 | ||
- Renamed param "generateClasses" to "named" in createStyleSheet | ||
- If `named` is true, ss.rules[name] is accessible using the name. | ||
- ss.addRules will render new rules after style element has been rendered too. | ||
- document ss.addRules | ||
* Renamed param "generateClasses" to "named" in createStyleSheet | ||
* If `named` is true, ss.rules[name] is accessible using the name. | ||
* ss.addRules will render new rules after style element has been rendered too. | ||
* document ss.addRules | ||
@@ -582,0 +585,0 @@ ## 0.2.1 / 2014-10-29 |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.jss=t():e.jss=t()}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=37)}([function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(1),l=r(a),f=n(8),c=r(f),d=n(4),h=r(d),y=function(){function e(t,n,r){i(this,e),this.type="style",this.isProcessed=!1;var u=r.sheet,o=r.Renderer,s=r.selector;this.key=t,this.options=r,this.style=n,s&&(this.selectorText=s),this.renderer=u?u.renderer:new o}return s(e,[{key:"prop",value:function(e,t){if(null!=t){if(this.style[e]!==t)if(t=this.options.jss.plugins.onChangeValue(t,e,this),this.style[e]=t,this.renderable)this.renderer.setStyle(this.renderable,e,t);else{var n=this.options.sheet;n&&n.attached&&(0,l.default)(!1,'Rule is not linked. Missing sheet option "link: true".')}return this}return this.style[e]}},{key:"applyTo",value:function(e){var t=this.toJSON();for(var n in t)this.renderer.setStyle(e,n,t[n]);return this}},{key:"toJSON",value:function(){var e={};for(var t in this.style){var n=this.style[t];"object"!==(void 0===n?"undefined":o(n))?e[t]=n:Array.isArray(n)&&(e[t]=(0,h.default)(n))}return e}},{key:"toString",value:function(e){var t=this.options.sheet,n=!!t&&t.options.link,r=n?u({},e,{allowEmpty:!0}):e;return(0,c.default)(this.selector,this.style,r)}},{key:"selector",set:function(e){if(e!==this.selectorText&&(this.selectorText=e,this.renderable)){if(!this.renderer.setSelector(this.renderable,e)&&this.renderable){var t=this.renderer.replaceRule(this.renderable,this);t&&(this.renderable=t)}}},get:function(){return this.selectorText}}]),e}();t.default=y},function(e,t,n){"use strict";var r=function(){};e.exports=r},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),s=n(3),a=r(s),l=n(13),f=r(l),c=n(0),d=r(c),h=n(28),y=r(h),v=function(){function e(t){i(this,e),this.map={},this.raw={},this.index=[],this.options=t,this.classes=t.classes}return o(e,[{key:"add",value:function(e,t,n){var r=this.options,i=r.parent,o=r.sheet,s=r.jss,l=r.Renderer,f=r.generateClassName;n=u({classes:this.classes,parent:i,sheet:o,jss:s,Renderer:l,generateClassName:f},n),!n.selector&&this.classes[e]&&(n.selector="."+(0,y.default)(this.classes[e])),this.raw[e]=t;var c=(0,a.default)(e,t,n),h=void 0;!n.selector&&c instanceof d.default&&(h=f(c,o),c.selector="."+(0,y.default)(h)),this.register(c,h);var v=void 0===n.index?this.index.length:n.index;return this.index.splice(v,0,c),c}},{key:"get",value:function(e){return this.map[e]}},{key:"remove",value:function(e){this.unregister(e),this.index.splice(this.indexOf(e),1)}},{key:"indexOf",value:function(e){return this.index.indexOf(e)}},{key:"process",value:function(){var e=this.options.jss.plugins;this.index.slice(0).forEach(e.onProcessRule,e)}},{key:"register",value:function(e,t){this.map[e.key]=e,e instanceof d.default&&(this.map[e.selector]=e,t&&(this.classes[e.key]=t))}},{key:"unregister",value:function(e){delete this.map[e.key],e instanceof d.default&&(delete this.map[e.selector],delete this.classes[e.key])}},{key:"update",value:function(e,t){var n=this.options,r=n.jss.plugins,i=n.sheet;if("string"==typeof e)return void r.onUpdate(t,this.get(e),i);for(var u=0;u<this.index.length;u++)r.onUpdate(e,this.index[u],i)}},{key:"link",value:function(e){for(var t=this.options.sheet.renderer.getUnescapedKeysMap(this.index),n=0;n<e.length;n++){var r=e[n],i=this.options.sheet.renderer.getKey(r);t[i]&&(i=t[i]);var u=this.map[i];u&&(0,f.default)(u,r)}}},{key:"toString",value:function(e){for(var t="",n=this.options.sheet,r=!!n&&n.options.link,i=0;i<this.index.length;i++){var u=this.index[i],o=u.toString(e);(o||r)&&(t&&(t+="\n"),t+=o)}return t}}]),e}();t.default=v},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"unnamed",t=arguments[1],n=arguments[2],r=n.jss,i=(0,f.default)(t),u=r.plugins.onCreateRule(e,i,n);return u||("@"===e[0]&&(0,o.default)(!1,"[JSS] Unknown at-rule %s",e),new a.default(e,i,n))}Object.defineProperty(t,"__esModule",{value:!0}),t.default=i;var u=n(1),o=r(u),s=n(0),a=r(s),l=n(27),f=r(l)},function(e,t,n){"use strict";function r(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!Array.isArray(e))return e;var n="";if(Array.isArray(e[0]))for(var r=0;r<e.length&&"!important"!==e[r];r++)n&&(n+=", "),n+=i(e[r]," ");else n=i(e,", ");return t||"!important"!==e[e.length-1]||(n+=" !important"),n}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=function(e,t){for(var n="",r=0;r<e.length&&"!important"!==e[r];r++)n&&(n+=t),n+=e[r];return n}},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.create=t.createGenerateClassName=t.sheets=t.RuleList=t.SheetsManager=t.SheetsRegistry=t.toCssValue=t.getDynamicStyles=void 0;var i=n(29);Object.defineProperty(t,"getDynamicStyles",{enumerable:!0,get:function(){return r(i).default}});var u=n(4);Object.defineProperty(t,"toCssValue",{enumerable:!0,get:function(){return r(u).default}});var o=n(9);Object.defineProperty(t,"SheetsRegistry",{enumerable:!0,get:function(){return r(o).default}});var s=n(16);Object.defineProperty(t,"SheetsManager",{enumerable:!0,get:function(){return r(s).default}});var a=n(2);Object.defineProperty(t,"RuleList",{enumerable:!0,get:function(){return r(a).default}});var l=n(7);Object.defineProperty(t,"sheets",{enumerable:!0,get:function(){return r(l).default}});var f=n(11);Object.defineProperty(t,"createGenerateClassName",{enumerable:!0,get:function(){return r(f).default}});var c=n(14),d=r(c),h=t.create=function(e){return new d.default(e)};t.default=h()},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9),i=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default=new i.default},function(e,t,n){"use strict";function r(e,t){for(var n="",r=0;r<t;r++)n+=" ";return n+e}function i(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i="";if(!t)return i;var u=n.indent,s=void 0===u?0:u,a=t.fallbacks;if(s++,a)if(Array.isArray(a))for(var l=0;l<a.length;l++){var f=a[l];for(var c in f){var d=f[c];null!=d&&(i+="\n"+r(c+": "+(0,o.default)(d)+";",s))}}else for(var h in a){var y=a[h];null!=y&&(i+="\n"+r(h+": "+(0,o.default)(y)+";",s))}for(var v in t){var p=t[v];null!=p&&"fallbacks"!==v&&(i+="\n"+r(v+": "+(0,o.default)(p)+";",s))}return i||n.allowEmpty?(s--,i=r(e+" {"+i+"\n",s)+r("}",s)):i}Object.defineProperty(t,"__esModule",{value:!0}),t.default=i;var u=n(4),o=function(e){return e&&e.__esModule?e:{default:e}}(u)},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=function(){function e(){r(this,e),this.registry=[]}return i(e,[{key:"add",value:function(e){var t=this.registry,n=e.options.index;if(-1===t.indexOf(e)){if(0===t.length||n>=this.index)return void t.push(e);for(var r=0;r<t.length;r++)if(t[r].options.index>n)return void t.splice(r,0,e)}}},{key:"reset",value:function(){this.registry=[]}},{key:"remove",value:function(e){var t=this.registry.indexOf(e);this.registry.splice(t,1)}},{key:"toString",value:function(e){return this.registry.filter(function(e){return e.attached}).map(function(t){return t.toString(e)}).join("\n")}},{key:"index",get:function(){return 0===this.registry.length?0:this.registry[this.registry.length-1].options.index}}]),e}();t.default=u},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),s=n(13),a=r(s),l=n(2),f=r(l),c=function(){function e(t,n){i(this,e),this.attached=!1,this.deployed=!1,this.linked=!1,this.classes={},this.options=u({},n,{sheet:this,parent:this,classes:this.classes}),this.renderer=new n.Renderer(this),this.rules=new f.default(this.options);for(var r in t)this.rules.add(r,t[r]);this.rules.process()}return o(e,[{key:"attach",value:function(){return this.attached?this:(this.deployed||this.deploy(),this.renderer.attach(),!this.linked&&this.options.link&&this.link(),this.attached=!0,this)}},{key:"detach",value:function(){return this.attached?(this.renderer.detach(),this.attached=!1,this):this}},{key:"addRule",value:function(e,t,n){var r=this.queue;this.attached&&!r&&(this.queue=[]);var i=this.rules.add(e,t,n);return this.options.jss.plugins.onProcessRule(i),this.attached?this.deployed?(r?r.push(i):(this.insertRule(i),this.queue&&(this.queue.forEach(this.insertRule,this),this.queue=void 0)),i):i:(this.deployed=!1,i)}},{key:"insertRule",value:function(e){var t=this.renderer.insertRule(e);t&&this.options.link&&(0,a.default)(e,t)}},{key:"addRules",value:function(e,t){var n=[];for(var r in e)n.push(this.addRule(r,e[r],t));return n}},{key:"getRule",value:function(e){return this.rules.get(e)}},{key:"deleteRule",value:function(e){var t=this.rules.get(e);return!!t&&(this.rules.remove(t),!this.attached||!t.renderable||this.renderer.deleteRule(t.renderable))}},{key:"indexOf",value:function(e){return this.rules.indexOf(e)}},{key:"deploy",value:function(){return this.renderer.deploy(),this.deployed=!0,this}},{key:"link",value:function(){var e=this.renderer.getRules();return e&&this.rules.link(e),this.linked=!0,this}},{key:"update",value:function(e,t){return this.rules.update(e,t),this}},{key:"toString",value:function(e){return this.rules.toString(e)}}]),e}();t.default=c},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(1),u=r(i),o=n(10),s=(r(o),n(31)),a=r(s);t.default=function(){var e=0;return function(t,n){(e+=1)>1e10&&(0,u.default)(!1,"[JSS] You might have a memory leak. Rule counter is at %s.",e);var r="c",i="";return n&&(r=n.options.classNamePrefix||"c",null!=n.options.jss.id&&(i+=n.options.jss.id)),""+r+a.default+i+e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(33),i=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default=function(e){return e&&e[i.default]&&e===e[i.default]()}},function(e,t,n){"use strict";function r(e,t){e.renderable=t,e.rules&&t.cssRules&&e.rules.link(t.cssRules)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(32),l=r(a),f=n(10),c=r(f),d=n(15),h=r(d),y=n(19),v=r(y),p=n(18),b=r(p),g=n(17),m=r(g),k=n(7),_=r(k),P=n(0),O=r(P),j=n(11),S=r(j),w=n(3),R=r(w),x=n(20),M=r(x),C=n(21),E=r(C),T=v.default.concat([b.default,m.default]),N=0,A=function(){function e(t){i(this,e),this.id=N++,this.version="9.5.1",this.plugins=new h.default,this.options={createGenerateClassName:S.default,Renderer:l.default?M.default:E.default,plugins:[]},this.generateClassName=(0,S.default)(),this.use.apply(this,T),this.setup(t)}return s(e,[{key:"setup",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.createGenerateClassName&&(this.options.createGenerateClassName=e.createGenerateClassName,this.generateClassName=e.createGenerateClassName()),null!=e.insertionPoint&&(this.options.insertionPoint=e.insertionPoint),(e.virtual||e.Renderer)&&(this.options.Renderer=e.Renderer||(e.virtual?E.default:M.default)),e.plugins&&this.use.apply(this,e.plugins),this}},{key:"createStyleSheet",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.index;"number"!=typeof n&&(n=0===_.default.index?0:_.default.index+1);var r=new c.default(e,o({},t,{jss:this,generateClassName:t.generateClassName||this.generateClassName,insertionPoint:this.options.insertionPoint,Renderer:this.options.Renderer,index:n}));return this.plugins.onProcessSheet(r),r}},{key:"removeStyleSheet",value:function(e){return e.detach(),_.default.remove(e),this}},{key:"createRule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};"object"===(void 0===e?"undefined":u(e))&&(n=t,t=e,e=void 0);var r=n;r.jss=this,r.Renderer=this.options.Renderer,r.generateClassName||(r.generateClassName=this.generateClassName),r.classes||(r.classes={});var i=(0,R.default)(e,t,r);return!r.selector&&i instanceof O.default&&(i.selector="."+r.generateClassName(i)),this.plugins.onProcessRule(i),i}},{key:"use",value:function(){for(var e=this,t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return n.forEach(function(t){-1===e.options.plugins.indexOf(t)&&(e.options.plugins.push(t),e.plugins.use(t))}),this}}]),e}();t.default=A},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(){r(this,e),this.hooks={onCreateRule:[],onProcessRule:[],onProcessStyle:[],onProcessSheet:[],onChangeValue:[],onUpdate:[]}}return i(e,[{key:"onCreateRule",value:function(e,t,n){for(var r=0;r<this.hooks.onCreateRule.length;r++){var i=this.hooks.onCreateRule[r](e,t,n);if(i)return i}return null}},{key:"onProcessRule",value:function(e){if(!e.isProcessed){for(var t=e.options.sheet,n=0;n<this.hooks.onProcessRule.length;n++)this.hooks.onProcessRule[n](e,t);e.style&&this.onProcessStyle(e.style,e,t),e.isProcessed=!0}}},{key:"onProcessStyle",value:function(e,t,n){for(var r=e,i=0;i<this.hooks.onProcessStyle.length;i++)r=this.hooks.onProcessStyle[i](r,t,n),t.style=r}},{key:"onProcessSheet",value:function(e){for(var t=0;t<this.hooks.onProcessSheet.length;t++)this.hooks.onProcessSheet[t](e)}},{key:"onUpdate",value:function(e,t,n){for(var r=0;r<this.hooks.onUpdate.length;r++)this.hooks.onUpdate[r](e,t,n)}},{key:"onChangeValue",value:function(e,t,n){for(var r=e,i=0;i<this.hooks.onChangeValue.length;i++)r=this.hooks.onChangeValue[i](r,t,n);return r}},{key:"use",value:function(e){for(var t in e)this.hooks[t]?this.hooks[t].push(e[t]):(0,o.default)(!1,'[JSS] Unknown hook "%s".',t)}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(){r(this,e),this.sheets=[],this.refs=[],this.keys=[]}return i(e,[{key:"get",value:function(e){var t=this.keys.indexOf(e);return this.sheets[t]}},{key:"add",value:function(e,t){var n=this.sheets,r=this.refs,i=this.keys,u=n.indexOf(t);return-1!==u?u:(n.push(t),r.push(0),i.push(e),n.length-1)}},{key:"manage",value:function(e){var t=this.keys.indexOf(e),n=this.sheets[t];return 0===this.refs[t]&&n.attach(),this.refs[t]++,this.keys[t]||this.keys.splice(t,0,e),n}},{key:"unmanage",value:function(e){var t=this.keys.indexOf(e);if(-1===t)return void(0,o.default)(!1,"SheetsManager: can't find sheet to unmanage");this.refs[t]>0&&0===--this.refs[t]&&this.sheets[t].detach()}},{key:"size",get:function(){return this.keys.length}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),u=r(i),o=n(0),s=r(o),a=n(30),l=r(a),f=n(3),c=r(f),d=Date.now(),h="fnValues"+d,y="fnStyle"+ ++d;t.default={onCreateRule:function(e,t,n){if("function"!=typeof t)return null;var r=(0,c.default)(e,{},n);return r[y]=t,r},onProcessStyle:function(e,t){var n={};for(var r in e){var i=e[r];"function"==typeof i&&(delete e[r],n[(0,l.default)(r)]=i)}return t=t,t[h]=n,e},onUpdate:function(e,t){if(t.rules instanceof u.default)return void t.rules.update(e);if(t instanceof s.default){if(t=t,t[h])for(var n in t[h])t.prop(n,t[h][n](e));t=t;var r=t[y];if(r){var i=r(e);for(var o in i)t.prop(o,i[o])}}}}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(0),u=r(i),o=n(3),s=r(o),a=n(12),l=r(a);t.default={onCreateRule:function(e,t,n){if(!(0,l.default)(t))return null;var r=t,i=(0,s.default)(e,{},n);return r.subscribe(function(e){for(var t in e)i.prop(t,e[t])}),i},onProcessRule:function(e){if(e instanceof u.default){var t=e,n=t.style;for(var r in n){(function(e){var r=n[e];if(!(0,l.default)(r))return"continue";delete n[e],r.subscribe({next:function(n){t.prop(e,n)}})})(r)}}}}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(25),u=r(i),o=n(24),s=r(o),a=n(22),l=r(a),f=n(23),c=r(f),d=n(26),h=r(d),y={"@charset":u.default,"@import":u.default,"@namespace":u.default,"@keyframes":s.default,"@media":l.default,"@supports":l.default,"@font-face":c.default,"@viewport":h.default,"@-ms-viewport":h.default};t.default=Object.keys(y).map(function(e){var t=new RegExp("^"+e);return{onCreateRule:function(n,r,i){return t.test(n)?new y[e](n,r,i):null}}})},function(e,t,n){"use strict";(function(e){function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){try{return e.style.getPropertyValue(t)}catch(e){return""}}function o(e,t,n){try{var r=n;if(Array.isArray(n)&&(r=(0,_.default)(n,!0),"!important"===n[n.length-1]))return e.style.setProperty(t,r,"important"),!0;e.style.setProperty(t,r)}catch(e){return!1}return!0}function s(e,t){return e.selectorText=t,e.selectorText===t}function a(e,t){for(var n=0;n<e.length;n++){var r=e[n];if(r.attached&&r.options.index>t.index&&r.options.insertionPoint===t.insertionPoint)return r}return null}function l(e,t){for(var n=e.length-1;n>=0;n--){var r=e[n];if(r.attached&&r.options.insertionPoint===t.insertionPoint)return r}return null}function f(e){for(var t=j(),n=0;n<t.childNodes.length;n++){var r=t.childNodes[n];if(8===r.nodeType&&r.nodeValue.trim()===e)return r}return null}function c(e){var t=b.default.registry;if(t.length>0){var n=a(t,e);if(n)return n.renderer.element;if(n=l(t,e))return n.renderer.element.nextElementSibling}var r=e.insertionPoint;if(r&&"string"==typeof r){var i=f(r);if(i)return i.nextSibling;(0,v.default)("jss"===r,'[JSS] Insertion point "%s" not found.',r)}return null}function d(e,t){var n=t.insertionPoint,r=c(t);if(r){var i=r.parentNode;return void(i&&i.insertBefore(e,r))}if(n&&"number"==typeof n.nodeType){var u=n,o=u.parentNode;return void(o?o.insertBefore(e,u.nextSibling):(0,v.default)(!1,"[JSS] Insertion point is not in the DOM."))}j().insertBefore(e,r)}Object.defineProperty(t,"__esModule",{value:!0});var h=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),y=n(1),v=r(y),p=n(7),b=r(p),g=n(0),m=r(g),k=n(4),_=r(k),P={STYLE_RULE:1,KEYFRAMES_RULE:7},O=function(){var e=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.substr(t,e.indexOf("{")-1)};return function(t){if(t.type===P.STYLE_RULE)return t.selectorText;if(t.type===P.KEYFRAMES_RULE){var n=t.name;if(n)return"@keyframes "+n;var r=t.cssText;return"@"+e(r,r.indexOf("keyframes"))}return e(t.cssText)}}(),j=function(){var e=void 0;return function(){return e||(e=document.head||document.getElementsByTagName("head")[0]),e}}(),S=function(){var e=void 0,t=!1;return function(n){var r={};e||(e=document.createElement("style"));for(var i=0;i<n.length;i++){var u=n[i];if(u instanceof m.default){var o=u.selector;if(o&&-1!==o.indexOf("\\")){t||(j().appendChild(e),t=!0),e.textContent=o+" {}";var s=e,a=s.sheet;if(a){var l=a.cssRules;l&&(r[l[0].selectorText]=u.key)}}}}return t&&(j().removeChild(e),t=!1),r}}(),w=function(){function t(n){i(this,t),this.getStyle=u,this.setStyle=o,this.setSelector=s,this.getKey=O,this.getUnescapedKeysMap=S,this.hasInsertedRules=!1,n&&b.default.add(n),this.sheet=n;var r=this.sheet?this.sheet.options:{},a=r.media,l=r.meta,f=r.element;this.element=f||document.createElement("style"),this.element.type="text/css",this.element.setAttribute("data-jss",""),a&&this.element.setAttribute("media",a),l&&this.element.setAttribute("data-meta",l);var c=e.__webpack_nonce__;c&&this.element.setAttribute("nonce",c)}return h(t,[{key:"attach",value:function(){!this.element.parentNode&&this.sheet&&(this.hasInsertedRules&&(this.deploy(),this.hasInsertedRules=!1),d(this.element,this.sheet.options))}},{key:"detach",value:function(){this.element.parentNode.removeChild(this.element)}},{key:"deploy",value:function(){this.sheet&&(this.element.textContent="\n"+this.sheet.toString()+"\n")}},{key:"insertRule",value:function(e,t){var n=this.element.sheet,r=n.cssRules,i=e.toString();if(t||(t=r.length),!i)return!1;try{n.insertRule(i,t)}catch(t){return(0,v.default)(!1,"[JSS] Can not insert an unsupported rule \n\r%s",e),!1}return this.hasInsertedRules=!0,r[t]}},{key:"deleteRule",value:function(e){var t=this.element.sheet,n=this.indexOf(e);return-1!==n&&(t.deleteRule(n),!0)}},{key:"indexOf",value:function(e){for(var t=this.element.sheet.cssRules,n=0;n<t.length;n++)if(e===t[n])return n;return-1}},{key:"replaceRule",value:function(e,t){var n=this.indexOf(e),r=this.insertRule(t,n);return this.element.sheet.deleteRule(n),r}},{key:"getRules",value:function(){return this.element.sheet.cssRules}}]),t}();t.default=w}).call(t,n(5))},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=function(){function e(){r(this,e)}return i(e,[{key:"setStyle",value:function(){return!0}},{key:"getStyle",value:function(){return""}},{key:"setSelector",value:function(){return!0}},{key:"getKey",value:function(){return""}},{key:"attach",value:function(){}},{key:"detach",value:function(){}},{key:"deploy",value:function(){}},{key:"insertRule",value:function(){return!1}},{key:"deleteRule",value:function(){return!0}},{key:"replaceRule",value:function(){return!1}},{key:"getRules",value:function(){}},{key:"indexOf",value:function(){return-1}}]),e}();t.default=u},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},u=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(2),s=function(e){return e&&e.__esModule?e:{default:e}}(o),a=function(){function e(t,n,u){r(this,e),this.type="conditional",this.isProcessed=!1,this.key=t,this.options=u,this.rules=new s.default(i({},u,{parent:this}));for(var o in n)this.rules.add(o,n[o]);this.rules.process()}return u(e,[{key:"getRule",value:function(e){return this.rules.get(e)}},{key:"indexOf",value:function(e){return this.rules.indexOf(e)}},{key:"addRule",value:function(e,t,n){var r=this.rules.add(e,t,n);return this.options.jss.plugins.onProcessRule(r),r}},{key:"toString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{indent:1},t=this.rules.toString(e);return t?this.key+" {\n"+t+"\n}":""}}]),e}();t.default=a},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(8),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(t,n,i){r(this,e),this.type="font-face",this.isProcessed=!1,this.key=t,this.style=n,this.options=i}return i(e,[{key:"toString",value:function(e){if(Array.isArray(this.style)){for(var t="",n=0;n<this.style.length;n++)t+=(0,o.default)(this.key,this.style[n]),this.style[n+1]&&(t+="\n");return t}return(0,o.default)(this.key,this.style,e)}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},u=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(2),s=function(e){return e&&e.__esModule?e:{default:e}}(o),a=function(){function e(t,n,u){r(this,e),this.type="keyframes",this.isProcessed=!1,this.key=t,this.options=u,this.rules=new s.default(i({},u,{parent:this}));for(var o in n)this.rules.add(o,n[o],i({},this.options,{parent:this,selector:o}));this.rules.process()}return u(e,[{key:"toString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{indent:1},t=this.rules.toString(e);return t&&(t+="\n"),this.key+" {\n"+t+"}"}}]),e}();t.default=a},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=function(){function e(t,n,i){r(this,e),this.type="simple",this.isProcessed=!1,this.key=t,this.value=n,this.options=i}return i(e,[{key:"toString",value:function(e){if(Array.isArray(this.value)){for(var t="",n=0;n<this.value.length;n++)t+=this.key+" "+this.value[n]+";",this.value[n+1]&&(t+="\n");return t}return this.key+" "+this.value+";"}}]),e}();t.default=u},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(8),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(t,n,i){r(this,e),this.type="viewport",this.isProcessed=!1,this.key=t,this.style=n,this.options=i}return i(e,[{key:"toString",value:function(e){return(0,o.default)(this.key,this.style,e)}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e){if(null==e)return e;var t=void 0===e?"undefined":i(e);if("string"===t||"number"===t||"function"===t)return e;if(s(e))return e.map(r);if((0,o.default)(e))return e;var n={};for(var u in e){var a=e[u];"object"!==(void 0===a?"undefined":i(a))?n[u]=a:n[u]=r(a)}return n}Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=r;var u=n(12),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=Array.isArray},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0});e.CSS;t.default=function(e){return e}}).call(t,n(5))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=function(e){function t(e){var n=null;for(var i in e){var u=e[i],o=void 0===u?"undefined":r(u);if("function"===o)n||(n={}),n[i]=u;else if("object"===o&&null!==u&&!Array.isArray(u)){var s=t(u);s&&(n||(n={}),n[i]=s)}}return n}return t(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=/([A-Z])/g,i=function(e){return"-"+e.toLowerCase()};t.default=function(e){return e.replace(r,i)}},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0});var n="2f1acc6c3a606b082e5eef5e54414ffb";null==e[n]&&(e[n]=0),t.default=e[n]++}).call(t,n(5))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"isBrowser",function(){return i});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i="object"===("undefined"==typeof window?"undefined":r(window))&&"object"===("undefined"==typeof document?"undefined":r(document))&&9===document.nodeType;t.default=i},function(e,t,n){e.exports=n(34)},function(e,t,n){"use strict";(function(e,r){Object.defineProperty(t,"__esModule",{value:!0});var i,u=n(35),o=function(e){return e&&e.__esModule?e:{default:e}}(u);i="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==e?e:r;var s=(0,o.default)(i);t.default=s}).call(t,n(5),n(36)(e))},function(e,t,n){"use strict";function r(e){var t,n=e.Symbol;return"function"==typeof n?n.observable?t=n.observable:(t=n("observable"),n.observable=t):t="@@observable",t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){n(6),e.exports=n(6)}])}); | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.jss=t():e.jss=t()}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var n={};return t.m=e,t.c=n,t.i=function(e){return e},t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=37)}([function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(1),l=r(a),f=n(7),c=r(f),d=n(4),h=r(d),y=function(){function e(t,n,r){i(this,e),this.type="style",this.isProcessed=!1;var u=r.sheet,o=r.Renderer,s=r.selector;this.key=t,this.options=r,this.style=n,s&&(this.selectorText=s),this.renderer=u?u.renderer:new o}return s(e,[{key:"prop",value:function(e,t){if(null!=t){if(this.style[e]!==t)if(t=this.options.jss.plugins.onChangeValue(t,e,this),this.style[e]=t,this.renderable)this.renderer.setStyle(this.renderable,e,t);else{var n=this.options.sheet;n&&n.attached&&(0,l.default)(!1,'Rule is not linked. Missing sheet option "link: true".')}return this}return this.style[e]}},{key:"applyTo",value:function(e){var t=this.toJSON();for(var n in t)this.renderer.setStyle(e,n,t[n]);return this}},{key:"toJSON",value:function(){var e={};for(var t in this.style){var n=this.style[t];"object"!==(void 0===n?"undefined":o(n))?e[t]=n:Array.isArray(n)&&(e[t]=(0,h.default)(n))}return e}},{key:"toString",value:function(e){var t=this.options.sheet,n=!!t&&t.options.link,r=n?u({},e,{allowEmpty:!0}):e;return(0,c.default)(this.selector,this.style,r)}},{key:"selector",set:function(e){if(e!==this.selectorText&&(this.selectorText=e,this.renderable)){if(!this.renderer.setSelector(this.renderable,e)&&this.renderable){var t=this.renderer.replaceRule(this.renderable,this);t&&(this.renderable=t)}}},get:function(){return this.selectorText}}]),e}();t.default=y},function(e,t,n){"use strict";var r=function(){};e.exports=r},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),s=n(3),a=r(s),l=n(13),f=r(l),c=n(0),d=r(c),h=n(28),y=r(h),v=function(){function e(t){i(this,e),this.map={},this.raw={},this.index=[],this.options=t,this.classes=t.classes}return o(e,[{key:"add",value:function(e,t,n){var r=this.options,i=r.parent,o=r.sheet,s=r.jss,l=r.Renderer,f=r.generateClassName;n=u({classes:this.classes,parent:i,sheet:o,jss:s,Renderer:l,generateClassName:f},n),!n.selector&&this.classes[e]&&(n.selector="."+(0,y.default)(this.classes[e])),this.raw[e]=t;var c=(0,a.default)(e,t,n),h=void 0;!n.selector&&c instanceof d.default&&(h=f(c,o),c.selector="."+(0,y.default)(h)),this.register(c,h);var v=void 0===n.index?this.index.length:n.index;return this.index.splice(v,0,c),c}},{key:"get",value:function(e){return this.map[e]}},{key:"remove",value:function(e){this.unregister(e),this.index.splice(this.indexOf(e),1)}},{key:"indexOf",value:function(e){return this.index.indexOf(e)}},{key:"process",value:function(){var e=this.options.jss.plugins;this.index.slice(0).forEach(e.onProcessRule,e)}},{key:"register",value:function(e,t){this.map[e.key]=e,e instanceof d.default&&(this.map[e.selector]=e,t&&(this.classes[e.key]=t))}},{key:"unregister",value:function(e){delete this.map[e.key],e instanceof d.default&&(delete this.map[e.selector],delete this.classes[e.key])}},{key:"update",value:function(e,t){var n=this.options,r=n.jss.plugins,i=n.sheet;if("string"==typeof e)return void r.onUpdate(t,this.get(e),i);for(var u=0;u<this.index.length;u++)r.onUpdate(e,this.index[u],i)}},{key:"link",value:function(e){for(var t=this.options.sheet.renderer.getUnescapedKeysMap(this.index),n=0;n<e.length;n++){var r=e[n],i=this.options.sheet.renderer.getKey(r);t[i]&&(i=t[i]);var u=this.map[i];u&&(0,f.default)(u,r)}}},{key:"toString",value:function(e){for(var t="",n=this.options.sheet,r=!!n&&n.options.link,i=0;i<this.index.length;i++){var u=this.index[i],o=u.toString(e);(o||r)&&(t&&(t+="\n"),t+=o)}return t}}]),e}();t.default=v},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"unnamed",t=arguments[1],n=arguments[2],r=n.jss,i=(0,f.default)(t),u=r.plugins.onCreateRule(e,i,n);return u||("@"===e[0]&&(0,o.default)(!1,"[JSS] Unknown at-rule %s",e),new a.default(e,i,n))}Object.defineProperty(t,"__esModule",{value:!0}),t.default=i;var u=n(1),o=r(u),s=n(0),a=r(s),l=n(27),f=r(l)},function(e,t,n){"use strict";function r(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!Array.isArray(e))return e;var n="";if(Array.isArray(e[0]))for(var r=0;r<e.length&&"!important"!==e[r];r++)n&&(n+=", "),n+=i(e[r]," ");else n=i(e,", ");return t||"!important"!==e[e.length-1]||(n+=" !important"),n}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r;var i=function(e,t){for(var n="",r=0;r<e.length&&"!important"!==e[r];r++)n&&(n+=t),n+=e[r];return n}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.create=t.createGenerateClassName=t.sheets=t.RuleList=t.SheetsManager=t.SheetsRegistry=t.toCssValue=t.getDynamicStyles=void 0;var i=n(29);Object.defineProperty(t,"getDynamicStyles",{enumerable:!0,get:function(){return r(i).default}});var u=n(4);Object.defineProperty(t,"toCssValue",{enumerable:!0,get:function(){return r(u).default}});var o=n(9);Object.defineProperty(t,"SheetsRegistry",{enumerable:!0,get:function(){return r(o).default}});var s=n(16);Object.defineProperty(t,"SheetsManager",{enumerable:!0,get:function(){return r(s).default}});var a=n(2);Object.defineProperty(t,"RuleList",{enumerable:!0,get:function(){return r(a).default}});var l=n(6);Object.defineProperty(t,"sheets",{enumerable:!0,get:function(){return r(l).default}});var f=n(11);Object.defineProperty(t,"createGenerateClassName",{enumerable:!0,get:function(){return r(f).default}});var c=n(14),d=r(c),h=t.create=function(e){return new d.default(e)};t.default=h()},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9),i=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default=new i.default},function(e,t,n){"use strict";function r(e,t){for(var n="",r=0;r<t;r++)n+=" ";return n+e}function i(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i="";if(!t)return i;var u=n.indent,s=void 0===u?0:u,a=t.fallbacks;if(s++,a)if(Array.isArray(a))for(var l=0;l<a.length;l++){var f=a[l];for(var c in f){var d=f[c];null!=d&&(i+="\n"+r(c+": "+(0,o.default)(d)+";",s))}}else for(var h in a){var y=a[h];null!=y&&(i+="\n"+r(h+": "+(0,o.default)(y)+";",s))}for(var v in t){var p=t[v];null!=p&&"fallbacks"!==v&&(i+="\n"+r(v+": "+(0,o.default)(p)+";",s))}return i||n.allowEmpty?(s--,i=r(e+" {"+i+"\n",s)+r("}",s)):i}Object.defineProperty(t,"__esModule",{value:!0}),t.default=i;var u=n(4),o=function(e){return e&&e.__esModule?e:{default:e}}(u)},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=function(){function e(){r(this,e),this.registry=[]}return i(e,[{key:"add",value:function(e){var t=this.registry,n=e.options.index;if(-1===t.indexOf(e)){if(0===t.length||n>=this.index)return void t.push(e);for(var r=0;r<t.length;r++)if(t[r].options.index>n)return void t.splice(r,0,e)}}},{key:"reset",value:function(){this.registry=[]}},{key:"remove",value:function(e){var t=this.registry.indexOf(e);this.registry.splice(t,1)}},{key:"toString",value:function(e){return this.registry.filter(function(e){return e.attached}).map(function(t){return t.toString(e)}).join("\n")}},{key:"index",get:function(){return 0===this.registry.length?0:this.registry[this.registry.length-1].options.index}}]),e}();t.default=u},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),s=n(13),a=r(s),l=n(2),f=r(l),c=function(){function e(t,n){i(this,e),this.attached=!1,this.deployed=!1,this.linked=!1,this.classes={},this.options=u({},n,{sheet:this,parent:this,classes:this.classes}),this.renderer=new n.Renderer(this),this.rules=new f.default(this.options);for(var r in t)this.rules.add(r,t[r]);this.rules.process()}return o(e,[{key:"attach",value:function(){return this.attached?this:(this.deployed||this.deploy(),this.renderer.attach(),!this.linked&&this.options.link&&this.link(),this.attached=!0,this)}},{key:"detach",value:function(){return this.attached?(this.renderer.detach(),this.attached=!1,this):this}},{key:"addRule",value:function(e,t,n){var r=this.queue;this.attached&&!r&&(this.queue=[]);var i=this.rules.add(e,t,n);return this.options.jss.plugins.onProcessRule(i),this.attached?this.deployed?(r?r.push(i):(this.insertRule(i),this.queue&&(this.queue.forEach(this.insertRule,this),this.queue=void 0)),i):i:(this.deployed=!1,i)}},{key:"insertRule",value:function(e){var t=this.renderer.insertRule(e);t&&this.options.link&&(0,a.default)(e,t)}},{key:"addRules",value:function(e,t){var n=[];for(var r in e)n.push(this.addRule(r,e[r],t));return n}},{key:"getRule",value:function(e){return this.rules.get(e)}},{key:"deleteRule",value:function(e){var t=this.rules.get(e);return!!t&&(this.rules.remove(t),!this.attached||!t.renderable||this.renderer.deleteRule(t.renderable))}},{key:"indexOf",value:function(e){return this.rules.indexOf(e)}},{key:"deploy",value:function(){return this.renderer.deploy(),this.deployed=!0,this}},{key:"link",value:function(){var e=this.renderer.getRules();return e&&this.rules.link(e),this.linked=!0,this}},{key:"update",value:function(e,t){return this.rules.update(e,t),this}},{key:"toString",value:function(e){return this.rules.toString(e)}}]),e}();t.default=c},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(1),u=r(i),o=n(10),s=(r(o),n(31)),a=r(s);t.default=function(){var e=0;return function(t,n){(e+=1)>1e10&&(0,u.default)(!1,"[JSS] You might have a memory leak. Rule counter is at %s.",e);var r="c",i="";return n&&(r=n.options.classNamePrefix||"c",null!=n.options.jss.id&&(i+=n.options.jss.id)),""+r+a.default+i+e}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(33),i=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default=function(e){return e&&e[i.default]&&e===e[i.default]()}},function(e,t,n){"use strict";function r(e,t){e.renderable=t,e.rules&&t.cssRules&&e.rules.link(t.cssRules)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(32),l=r(a),f=n(10),c=r(f),d=n(15),h=r(d),y=n(19),v=r(y),p=n(18),b=r(p),g=n(17),m=r(g),k=n(6),_=r(k),P=n(0),O=r(P),j=n(11),S=r(j),w=n(3),R=r(w),x=n(20),M=r(x),C=n(21),E=r(C),T=v.default.concat([b.default,m.default]),N=0,A=function(){function e(t){i(this,e),this.id=N++,this.version="9.6.0",this.plugins=new h.default,this.options={createGenerateClassName:S.default,Renderer:l.default?M.default:E.default,plugins:[]},this.generateClassName=(0,S.default)(),this.use.apply(this,T),this.setup(t)}return s(e,[{key:"setup",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.createGenerateClassName&&(this.options.createGenerateClassName=e.createGenerateClassName,this.generateClassName=e.createGenerateClassName()),null!=e.insertionPoint&&(this.options.insertionPoint=e.insertionPoint),(e.virtual||e.Renderer)&&(this.options.Renderer=e.Renderer||(e.virtual?E.default:M.default)),e.plugins&&this.use.apply(this,e.plugins),this}},{key:"createStyleSheet",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.index;"number"!=typeof n&&(n=0===_.default.index?0:_.default.index+1);var r=new c.default(e,o({},t,{jss:this,generateClassName:t.generateClassName||this.generateClassName,insertionPoint:this.options.insertionPoint,Renderer:this.options.Renderer,index:n}));return this.plugins.onProcessSheet(r),r}},{key:"removeStyleSheet",value:function(e){return e.detach(),_.default.remove(e),this}},{key:"createRule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};"object"===(void 0===e?"undefined":u(e))&&(n=t,t=e,e=void 0);var r=n;r.jss=this,r.Renderer=this.options.Renderer,r.generateClassName||(r.generateClassName=this.generateClassName),r.classes||(r.classes={});var i=(0,R.default)(e,t,r);return!r.selector&&i instanceof O.default&&(i.selector="."+r.generateClassName(i)),this.plugins.onProcessRule(i),i}},{key:"use",value:function(){for(var e=this,t=arguments.length,n=Array(t),r=0;r<t;r++)n[r]=arguments[r];return n.forEach(function(t){-1===e.options.plugins.indexOf(t)&&(e.options.plugins.push(t),e.plugins.use(t))}),this}}]),e}();t.default=A},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(){r(this,e),this.hooks={onCreateRule:[],onProcessRule:[],onProcessStyle:[],onProcessSheet:[],onChangeValue:[],onUpdate:[]}}return i(e,[{key:"onCreateRule",value:function(e,t,n){for(var r=0;r<this.hooks.onCreateRule.length;r++){var i=this.hooks.onCreateRule[r](e,t,n);if(i)return i}return null}},{key:"onProcessRule",value:function(e){if(!e.isProcessed){for(var t=e.options.sheet,n=0;n<this.hooks.onProcessRule.length;n++)this.hooks.onProcessRule[n](e,t);e.style&&this.onProcessStyle(e.style,e,t),e.isProcessed=!0}}},{key:"onProcessStyle",value:function(e,t,n){for(var r=e,i=0;i<this.hooks.onProcessStyle.length;i++)r=this.hooks.onProcessStyle[i](r,t,n),t.style=r}},{key:"onProcessSheet",value:function(e){for(var t=0;t<this.hooks.onProcessSheet.length;t++)this.hooks.onProcessSheet[t](e)}},{key:"onUpdate",value:function(e,t,n){for(var r=0;r<this.hooks.onUpdate.length;r++)this.hooks.onUpdate[r](e,t,n)}},{key:"onChangeValue",value:function(e,t,n){for(var r=e,i=0;i<this.hooks.onChangeValue.length;i++)r=this.hooks.onChangeValue[i](r,t,n);return r}},{key:"use",value:function(e){for(var t in e)this.hooks[t]?this.hooks[t].push(e[t]):(0,o.default)(!1,'[JSS] Unknown hook "%s".',t)}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(1),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(){r(this,e),this.sheets=[],this.refs=[],this.keys=[]}return i(e,[{key:"get",value:function(e){var t=this.keys.indexOf(e);return this.sheets[t]}},{key:"add",value:function(e,t){var n=this.sheets,r=this.refs,i=this.keys,u=n.indexOf(t);return-1!==u?u:(n.push(t),r.push(0),i.push(e),n.length-1)}},{key:"manage",value:function(e){var t=this.keys.indexOf(e),n=this.sheets[t];return 0===this.refs[t]&&n.attach(),this.refs[t]++,this.keys[t]||this.keys.splice(t,0,e),n}},{key:"unmanage",value:function(e){var t=this.keys.indexOf(e);if(-1===t)return void(0,o.default)(!1,"SheetsManager: can't find sheet to unmanage");this.refs[t]>0&&0===--this.refs[t]&&this.sheets[t].detach()}},{key:"size",get:function(){return this.keys.length}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),u=r(i),o=n(0),s=r(o),a=n(30),l=r(a),f=n(3),c=r(f),d=Date.now(),h="fnValues"+d,y="fnStyle"+ ++d;t.default={onCreateRule:function(e,t,n){if("function"!=typeof t)return null;var r=(0,c.default)(e,{},n);return r[y]=t,r},onProcessStyle:function(e,t){var n={};for(var r in e){var i=e[r];"function"==typeof i&&(delete e[r],n[(0,l.default)(r)]=i)}return t=t,t[h]=n,e},onUpdate:function(e,t){if(t.rules instanceof u.default)return void t.rules.update(e);if(t instanceof s.default){if(t=t,t[h])for(var n in t[h])t.prop(n,t[h][n](e));t=t;var r=t[y];if(r){var i=r(e);for(var o in i)t.prop(o,i[o])}}}}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(0),u=r(i),o=n(3),s=r(o),a=n(12),l=r(a);t.default={onCreateRule:function(e,t,n){if(!(0,l.default)(t))return null;var r=t,i=(0,s.default)(e,{},n);return r.subscribe(function(e){for(var t in e)i.prop(t,e[t])}),i},onProcessRule:function(e){if(e instanceof u.default){var t=e,n=t.style;for(var r in n){(function(e){var r=n[e];if(!(0,l.default)(r))return"continue";delete n[e],r.subscribe({next:function(n){t.prop(e,n)}})})(r)}}}}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(25),u=r(i),o=n(24),s=r(o),a=n(22),l=r(a),f=n(23),c=r(f),d=n(26),h=r(d),y={"@charset":u.default,"@import":u.default,"@namespace":u.default,"@keyframes":s.default,"@media":l.default,"@supports":l.default,"@font-face":c.default,"@viewport":h.default,"@-ms-viewport":h.default};t.default=Object.keys(y).map(function(e){var t=new RegExp("^"+e);return{onCreateRule:function(n,r,i){return t.test(n)?new y[e](n,r,i):null}}})},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){try{return e.style.getPropertyValue(t)}catch(e){return""}}function o(e,t,n){try{var r=n;if(Array.isArray(n)&&(r=(0,_.default)(n,!0),"!important"===n[n.length-1]))return e.style.setProperty(t,r,"important"),!0;e.style.setProperty(t,r)}catch(e){return!1}return!0}function s(e,t){return e.selectorText=t,e.selectorText===t}function a(e,t){for(var n=0;n<e.length;n++){var r=e[n];if(r.attached&&r.options.index>t.index&&r.options.insertionPoint===t.insertionPoint)return r}return null}function l(e,t){for(var n=e.length-1;n>=0;n--){var r=e[n];if(r.attached&&r.options.insertionPoint===t.insertionPoint)return r}return null}function f(e){for(var t=S(),n=0;n<t.childNodes.length;n++){var r=t.childNodes[n];if(8===r.nodeType&&r.nodeValue.trim()===e)return r}return null}function c(e){var t=b.default.registry;if(t.length>0){var n=a(t,e);if(n)return n.renderer.element;if(n=l(t,e))return n.renderer.element.nextElementSibling}var r=e.insertionPoint;if(r&&"string"==typeof r){var i=f(r);if(i)return i.nextSibling;(0,v.default)("jss"===r,'[JSS] Insertion point "%s" not found.',r)}return null}function d(e,t){var n=t.insertionPoint,r=c(t);if(r){var i=r.parentNode;return void(i&&i.insertBefore(e,r))}if(n&&"number"==typeof n.nodeType){var u=n,o=u.parentNode;return void(o?o.insertBefore(e,u.nextSibling):(0,v.default)(!1,"[JSS] Insertion point is not in the DOM."))}S().insertBefore(e,r)}Object.defineProperty(t,"__esModule",{value:!0});var h=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),y=n(1),v=r(y),p=n(6),b=r(p),g=n(0),m=r(g),k=n(4),_=r(k),P=function(e){var t=void 0;return function(){return t||(t=e()),t}},O={STYLE_RULE:1,KEYFRAMES_RULE:7},j=function(){var e=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return e.substr(t,e.indexOf("{")-1)};return function(t){if(t.type===O.STYLE_RULE)return t.selectorText;if(t.type===O.KEYFRAMES_RULE){var n=t.name;if(n)return"@keyframes "+n;var r=t.cssText;return"@"+e(r,r.indexOf("keyframes"))}return e(t.cssText)}}(),S=P(function(){return document.head||document.getElementsByTagName("head")[0]}),w=function(){var e=void 0,t=!1;return function(n){var r={};e||(e=document.createElement("style"));for(var i=0;i<n.length;i++){var u=n[i];if(u instanceof m.default){var o=u.selector;if(o&&-1!==o.indexOf("\\")){t||(S().appendChild(e),t=!0),e.textContent=o+" {}";var s=e,a=s.sheet;if(a){var l=a.cssRules;l&&(r[l[0].selectorText]=u.key)}}}}return t&&(S().removeChild(e),t=!1),r}}(),R=P(function(){var e=document.querySelector('meta[property="csp-nonce"]');return e?e.getAttribute("content"):null}),x=function(){function e(t){i(this,e),this.getStyle=u,this.setStyle=o,this.setSelector=s,this.getKey=j,this.getUnescapedKeysMap=w,this.hasInsertedRules=!1,t&&b.default.add(t),this.sheet=t;var n=this.sheet?this.sheet.options:{},r=n.media,a=n.meta,l=n.element;this.element=l||document.createElement("style"),this.element.type="text/css",this.element.setAttribute("data-jss",""),r&&this.element.setAttribute("media",r),a&&this.element.setAttribute("data-meta",a);var f=R();f&&this.element.setAttribute("nonce",f)}return h(e,[{key:"attach",value:function(){!this.element.parentNode&&this.sheet&&(this.hasInsertedRules&&(this.deploy(),this.hasInsertedRules=!1),d(this.element,this.sheet.options))}},{key:"detach",value:function(){this.element.parentNode.removeChild(this.element)}},{key:"deploy",value:function(){this.sheet&&(this.element.textContent="\n"+this.sheet.toString()+"\n")}},{key:"insertRule",value:function(e,t){var n=this.element.sheet,r=n.cssRules,i=e.toString();if(t||(t=r.length),!i)return!1;try{n.insertRule(i,t)}catch(t){return(0,v.default)(!1,"[JSS] Can not insert an unsupported rule \n\r%s",e),!1}return this.hasInsertedRules=!0,r[t]}},{key:"deleteRule",value:function(e){var t=this.element.sheet,n=this.indexOf(e);return-1!==n&&(t.deleteRule(n),!0)}},{key:"indexOf",value:function(e){for(var t=this.element.sheet.cssRules,n=0;n<t.length;n++)if(e===t[n])return n;return-1}},{key:"replaceRule",value:function(e,t){var n=this.indexOf(e),r=this.insertRule(t,n);return this.element.sheet.deleteRule(n),r}},{key:"getRules",value:function(){return this.element.sheet.cssRules}}]),e}();t.default=x},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=function(){function e(){r(this,e)}return i(e,[{key:"setStyle",value:function(){return!0}},{key:"getStyle",value:function(){return""}},{key:"setSelector",value:function(){return!0}},{key:"getKey",value:function(){return""}},{key:"attach",value:function(){}},{key:"detach",value:function(){}},{key:"deploy",value:function(){}},{key:"insertRule",value:function(){return!1}},{key:"deleteRule",value:function(){return!0}},{key:"replaceRule",value:function(){return!1}},{key:"getRules",value:function(){}},{key:"indexOf",value:function(){return-1}}]),e}();t.default=u},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},u=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(2),s=function(e){return e&&e.__esModule?e:{default:e}}(o),a=function(){function e(t,n,u){r(this,e),this.type="conditional",this.isProcessed=!1,this.key=t,this.options=u,this.rules=new s.default(i({},u,{parent:this}));for(var o in n)this.rules.add(o,n[o]);this.rules.process()}return u(e,[{key:"getRule",value:function(e){return this.rules.get(e)}},{key:"indexOf",value:function(e){return this.rules.indexOf(e)}},{key:"addRule",value:function(e,t,n){var r=this.rules.add(e,t,n);return this.options.jss.plugins.onProcessRule(r),r}},{key:"toString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{indent:1},t=this.rules.toString(e);return t?this.key+" {\n"+t+"\n}":""}}]),e}();t.default=a},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(t,n,i){r(this,e),this.type="font-face",this.isProcessed=!1,this.key=t,this.style=n,this.options=i}return i(e,[{key:"toString",value:function(e){if(Array.isArray(this.style)){for(var t="",n=0;n<this.style.length;n++)t+=(0,o.default)(this.key,this.style[n]),this.style[n+1]&&(t+="\n");return t}return(0,o.default)(this.key,this.style,e)}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},u=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(2),s=function(e){return e&&e.__esModule?e:{default:e}}(o),a=function(){function e(t,n,u){r(this,e),this.type="keyframes",this.isProcessed=!1,this.key=t,this.options=u,this.rules=new s.default(i({},u,{parent:this}));for(var o in n)this.rules.add(o,n[o],i({},this.options,{parent:this,selector:o}));this.rules.process()}return u(e,[{key:"toString",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{indent:1},t=this.rules.toString(e);return t&&(t+="\n"),this.key+" {\n"+t+"}"}}]),e}();t.default=a},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=function(){function e(t,n,i){r(this,e),this.type="simple",this.isProcessed=!1,this.key=t,this.value=n,this.options=i}return i(e,[{key:"toString",value:function(e){if(Array.isArray(this.value)){for(var t="",n=0;n<this.value.length;n++)t+=this.key+" "+this.value[n]+";",this.value[n+1]&&(t+="\n");return t}return this.key+" "+this.value+";"}}]),e}();t.default=u},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=function(){function e(t,n,i){r(this,e),this.type="viewport",this.isProcessed=!1,this.key=t,this.style=n,this.options=i}return i(e,[{key:"toString",value:function(e){return(0,o.default)(this.key,this.style,e)}}]),e}();t.default=s},function(e,t,n){"use strict";function r(e){if(null==e)return e;var t=void 0===e?"undefined":i(e);if("string"===t||"number"===t||"function"===t)return e;if(s(e))return e.map(r);if((0,o.default)(e))return e;var n={};for(var u in e){var a=e[u];"object"!==(void 0===a?"undefined":i(a))?n[u]=a:n[u]=r(a)}return n}Object.defineProperty(t,"__esModule",{value:!0});var i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=r;var u=n(12),o=function(e){return e&&e.__esModule?e:{default:e}}(u),s=Array.isArray},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0});e.CSS;t.default=function(e){return e}}).call(t,n(8))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.default=function(e){function t(e){var n=null;for(var i in e){var u=e[i],o=void 0===u?"undefined":r(u);if("function"===o)n||(n={}),n[i]=u;else if("object"===o&&null!==u&&!Array.isArray(u)){var s=t(u);s&&(n||(n={}),n[i]=s)}}return n}return t(e)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=/([A-Z])/g,i=function(e){return"-"+e.toLowerCase()};t.default=function(e){return e.replace(r,i)}},function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0});var n="2f1acc6c3a606b082e5eef5e54414ffb";null==e[n]&&(e[n]=0),t.default=e[n]++}).call(t,n(8))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"isBrowser",function(){return i});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i="object"===("undefined"==typeof window?"undefined":r(window))&&"object"===("undefined"==typeof document?"undefined":r(document))&&9===document.nodeType;t.default=i},function(e,t,n){e.exports=n(34)},function(e,t,n){"use strict";(function(e,r){Object.defineProperty(t,"__esModule",{value:!0});var i,u=n(35),o=function(e){return e&&e.__esModule?e:{default:e}}(u);i="undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==e?e:r;var s=(0,o.default)(i);t.default=s}).call(t,n(8),n(36)(e))},function(e,t,n){"use strict";function r(e){var t,n=e.Symbol;return"function"==typeof n?n.observable?t=n.observable:(t=n("observable"),n.observable=t):t="@@observable",t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=r},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,n){n(5),e.exports=n(5)}])}); |
@@ -26,3 +26,3 @@ declare type DOMString = string | ||
declare interface CSSStyleRule extends CSSRuleBase<{type: 1|1}> { | ||
declare interface CSSStyleRule extends CSSRuleBase<{type: 1 | 1}> { | ||
+type: 1; | ||
@@ -44,3 +44,3 @@ +style: CSSStyleDeclaration; | ||
declare interface CSSKeyframeRule extends CSSRuleBase<{type: 8|8}> { | ||
declare interface CSSKeyframeRule extends CSSRuleBase<{type: 8 | 8}> { | ||
+type: 8; | ||
@@ -51,3 +51,3 @@ +style: CSSStyleDeclaration; | ||
declare interface CSSKeyframesRule extends CSSRuleBase<{type: 7|7}> { | ||
declare interface CSSKeyframesRule extends CSSRuleBase<{type: 7 | 7}> { | ||
+type: 7; | ||
@@ -61,3 +61,3 @@ +cssRules: CSSRuleList; | ||
declare interface CSSMediaRule extends CSSGroupingRule<{type: 4|4}> { | ||
declare interface CSSMediaRule extends CSSGroupingRule<{type: 4 | 4}> { | ||
+type: 4; | ||
@@ -70,8 +70,5 @@ +mediaList: { | ||
deleteMedium(medium: DOMString): void | ||
} | ||
}; | ||
} | ||
declare type CSSOMRule = | ||
| CSSStyleRule | ||
| CSSMediaRule | ||
| CSSKeyframesRule | ||
declare type CSSOMRule = CSSStyleRule | CSSMediaRule | CSSKeyframesRule |
@@ -74,3 +74,3 @@ 'use strict'; | ||
this.id = instanceCounter++; | ||
this.version = "9.5.1"; | ||
this.version = "9.6.0"; | ||
this.plugins = new _PluginsRegistry2['default'](); | ||
@@ -77,0 +77,0 @@ this.options = { |
@@ -30,2 +30,13 @@ 'use strict'; | ||
/** | ||
* Cache the value from the first time a function is called. | ||
*/ | ||
var memoize = function memoize(fn) { | ||
var value = void 0; | ||
return function () { | ||
if (!value) value = fn(); | ||
return value; | ||
}; | ||
}; | ||
/** | ||
* Get a style property. | ||
@@ -115,9 +126,5 @@ */ | ||
*/ | ||
var getHead = function () { | ||
var head = void 0; | ||
return function () { | ||
if (!head) head = document.head || document.getElementsByTagName('head')[0]; | ||
return head; | ||
}; | ||
}(); | ||
var getHead = memoize(function () { | ||
return document.head || document.getElementsByTagName('head')[0]; | ||
}); | ||
@@ -272,2 +279,10 @@ /** | ||
/** | ||
* Read jss nonce setting from the page if the user has set it. | ||
*/ | ||
var getNonce = memoize(function () { | ||
var node = document.querySelector('meta[property="csp-nonce"]'); | ||
return node ? node.getAttribute('content') : null; | ||
}); | ||
var DomRenderer = function () { | ||
@@ -299,4 +314,3 @@ function DomRenderer(sheet) { | ||
if (meta) this.element.setAttribute('data-meta', meta); | ||
// eslint-disable-next-line no-underscore-dangle | ||
var nonce = global.__webpack_nonce__; | ||
var nonce = getNonce(); | ||
if (nonce) this.element.setAttribute('nonce', nonce); | ||
@@ -303,0 +317,0 @@ } |
@@ -69,3 +69,3 @@ 'use strict'; | ||
// eslint-ignore-next-line no-console | ||
(0, _warning2['default'])(false, 'SheetsManager: can\'t find sheet to unmanage'); | ||
(0, _warning2['default'])(false, "SheetsManager: can't find sheet to unmanage"); | ||
return; | ||
@@ -72,0 +72,0 @@ } |
@@ -56,12 +56,11 @@ 'use strict'; | ||
} | ||
} | ||
// Object syntax {fallbacks: {prop: value}} | ||
else { | ||
for (var _prop in fallbacks) { | ||
var _value = fallbacks[_prop]; | ||
if (_value != null) { | ||
result += '\n' + indentStr(_prop + ': ' + (0, _toCssValue2['default'])(_value) + ';', indent); | ||
} | ||
} else { | ||
// Object syntax {fallbacks: {prop: value}} | ||
for (var _prop in fallbacks) { | ||
var _value = fallbacks[_prop]; | ||
if (_value != null) { | ||
result += '\n' + indentStr(_prop + ': ' + (0, _toCssValue2['default'])(_value) + ';', indent); | ||
} | ||
} | ||
} | ||
} | ||
@@ -68,0 +67,0 @@ |
{ | ||
"name": "jss", | ||
"description": "A lib for generating Style Sheets with JavaScript.", | ||
"version": "9.5.1", | ||
"version": "9.6.0", | ||
"author": { | ||
@@ -49,5 +49,6 @@ "name": "Oleg Slobodskoi", | ||
"es5-shim": "^4.5.9", | ||
"eslint": "^3.11.1", | ||
"eslint": "^3.19.0", | ||
"eslint-config-airbnb": "^13.0.0", | ||
"eslint-config-jss": "^3.0.0", | ||
"eslint-config-prettier": "^2.9.0", | ||
"eslint-plugin-flowtype": "^2.29.1", | ||
@@ -85,2 +86,3 @@ "eslint-plugin-import": "^2.2.0", | ||
"pre-commit": "^1.1.3", | ||
"prettier": "^1.10.2", | ||
"rimraf": "^2.5.4", | ||
@@ -101,4 +103,5 @@ "size-limit": "^0.2.0", | ||
"flow:copy-src": "flow-copy-source -i './src/**' src lib", | ||
"lint": "eslint ./src ./tests ./benchmark ./*.js && npm run flow", | ||
"lint": "eslint ./src ./tests ./benchmark ./*.js && npm run flow && npm run format", | ||
"lint:staged": "lint-staged && npm run flow", | ||
"format": "prettier --write **/*", | ||
"test": "cross-env NODE_ENV=test karma start --single-run", | ||
@@ -109,3 +112,3 @@ "test:watch": "cross-env NODE_ENV=test karma start", | ||
"bench": "cross-env BENCHMARK=true karma start --single-run", | ||
"size": "size-limit 7.1KB dist/jss.js", | ||
"size": "size-limit 7.2KB dist/jss.js", | ||
"prepublishOnly": "npm run all", | ||
@@ -128,5 +131,7 @@ "postinstall": "node -e \"console.log('\\u001b[35m\\u001b[1mLove JSS? You can now support us on open collective:\\u001b[22m\\u001b[39m\\n > \\u001b[34mhttps://opencollective.com/jss/donate\\u001b[0m')\"" | ||
"lint-staged": { | ||
"./src/**/*.js ./tests/**/*.js ./benchmark/**/*.js ./*.js": [ | ||
"eslint", | ||
"git add" | ||
"**/*.{js,md,json}": [ | ||
"prettier" | ||
], | ||
"**/*.js": [ | ||
"eslint" | ||
] | ||
@@ -133,0 +138,0 @@ }, |
@@ -10,6 +10,2 @@ # JSS | ||
<a target='_blank' rel='nofollow' href='https://app.codesponsor.io/link/yHSURRBaaXYK5KyrNZXn4iHe/cssinjs/jss'> | ||
<img alt='Sponsor' width='888' height='68' src='https://app.codesponsor.io/embed/yHSURRBaaXYK5KyrNZXn4iHe/cssinjs/jss.svg' /> | ||
</a> | ||
[JSS is a more powerful abstraction](https://medium.com/@oleg008/jss-is-css-d7d41400b635) over CSS. It uses JavaScript as a language to describe styles in a declarative and maintainable way. It is a [high performance](https://github.com/cssinjs/jss/blob/master/docs/performance.md) JS to CSS compiler which works at runtime and server-side. This core library is low level and framework agnostic. It is about 6KB (minified and gzipped) and is extensible via [plugins](./docs/plugins.md) API. | ||
@@ -21,5 +17,5 @@ | ||
- [React-JSS](https://github.com/cssinjs/react-jss) - HOC interface for React with theming, try it on [playground](https://codesandbox.io/s/j3l06yyqpw). | ||
- [Styled-JSS](https://github.com/cssinjs/styled-jss) - styled components interface for React, try it on [playground](https://codesandbox.io/s/xl89zx8zz4). | ||
- [Aphrodite-JSS](https://github.com/cssinjs/aphrodite-jss) - aphrodite like API. | ||
* [React-JSS](https://github.com/cssinjs/react-jss) - HOC interface for React with theming, try it on [playground](https://codesandbox.io/s/j3l06yyqpw). | ||
* [Styled-JSS](https://github.com/cssinjs/styled-jss) - styled components interface for React, try it on [playground](https://codesandbox.io/s/xl89zx8zz4). | ||
* [Aphrodite-JSS](https://github.com/cssinjs/aphrodite-jss) - aphrodite like API. | ||
@@ -65,3 +61,5 @@ ## TOC | ||
'&:hover': { | ||
background: color('blue').darken(0.3).hex() | ||
background: color('blue') | ||
.darken(0.3) | ||
.hex() | ||
} | ||
@@ -113,30 +111,31 @@ }, | ||
``` | ||
## When should I use it? | ||
- You build a JavaScript heavy application. | ||
- You use components based architecture. | ||
- You build a reusable UI library. | ||
- You need a collision free CSS (external content, third-party UI components ...). | ||
- You need code sharing between js and css. | ||
- Minimal download size is important to you. | ||
- Robustness and code reuse is important to you. | ||
- Ease of maintenance is important to you. | ||
- You just want to use any of its [benefits](./docs/benefits.md) | ||
* You build a JavaScript heavy application. | ||
* You use components based architecture. | ||
* You build a reusable UI library. | ||
* You need a collision free CSS (external content, third-party UI components ...). | ||
* You need code sharing between js and css. | ||
* Minimal download size is important to you. | ||
* Robustness and code reuse is important to you. | ||
* Ease of maintenance is important to you. | ||
* You just want to use any of its [benefits](./docs/benefits.md) | ||
## Roadmap | ||
- ~~Make it easier for newcomers to setup jss with plugins (like presets).~~ | ||
- ~~Make JSON DSL even better, for e.g. [jss-expand](https://github.com/typical000/jss-expand).~~ | ||
- ~~Make it easy to see when changes in the core break plugins (integrate plugins test suite).~~ | ||
- ~~Make community create plugins (better plugins API documentation, infrastructure).~~ | ||
- ~~Introduce a way for theming with react-jss~~ | ||
- Help release [material-ui](https://github.com/callemall/material-ui/tree/v1-alpha) alpha version. | ||
- Use [ISTF](https://github.com/cssinjs/istf-spec) | ||
- Better React Native support. | ||
- Stylelint integration #490. | ||
- Source maps #469 | ||
- Flow and typescript typings for the JSON DSL #375 #361 | ||
- Do more benchmarking, include plugins, always track perf regressions. | ||
- Make SSR even better (vendor prefixer server-side, smaller critical CSS) | ||
- Make CLI tool better: allow integration of styles written in various preprocessing languages as well as pure css #166 | ||
* ~~Make it easier for newcomers to setup jss with plugins (like presets).~~ | ||
* ~~Make JSON DSL even better, for e.g. [jss-expand](https://github.com/typical000/jss-expand).~~ | ||
* ~~Make it easy to see when changes in the core break plugins (integrate plugins test suite).~~ | ||
* ~~Make community create plugins (better plugins API documentation, infrastructure).~~ | ||
* ~~Introduce a way for theming with react-jss~~ | ||
* Help release [material-ui](https://github.com/callemall/material-ui/tree/v1-alpha) alpha version. | ||
* Use [ISTF](https://github.com/cssinjs/istf-spec) | ||
* Better React Native support. | ||
* Stylelint integration #490. | ||
* Source maps #469 | ||
* Flow and typescript typings for the JSON DSL #375 #361 | ||
* Do more benchmarking, include plugins, always track perf regressions. | ||
* Make SSR even better (vendor prefixer server-side, smaller critical CSS) | ||
* Make CLI tool better: allow integration of styles written in various preprocessing languages as well as pure css #166 | ||
@@ -143,0 +142,0 @@ ## Browsers Support |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Native code
Supply chain riskContains native code (e.g., compiled binaries or shared libraries). Including native code can obscure malicious behavior.
Found 1 instance in 1 package
4536
0
399573
60
70
223