Grabbed dndbeyond's source code
``` ~/go/bin/sourcemapper -output ddb -jsurl https://media.dndbeyond.com/character-app/static/js/main.90aa78c5.js ```
This commit is contained in:
Generated
Vendored
+49
@@ -0,0 +1,49 @@
|
||||
import $$observable from 'symbol-observable';
|
||||
import { createRule } from 'jss';
|
||||
|
||||
var isObservable = function isObservable(value) {
|
||||
return value && value[$$observable] && value === value[$$observable]();
|
||||
};
|
||||
|
||||
var observablePlugin = function observablePlugin(updateOptions) {
|
||||
return {
|
||||
onCreateRule: function onCreateRule(name, decl, options) {
|
||||
if (!isObservable(decl)) return null;
|
||||
var style$ = decl;
|
||||
var rule = createRule(name, {}, options); // TODO
|
||||
// Call `stream.subscribe()` returns a subscription, which should be explicitly
|
||||
// unsubscribed from when we know this sheet is no longer needed.
|
||||
|
||||
style$.subscribe(function (style) {
|
||||
for (var prop in style) {
|
||||
rule.prop(prop, style[prop], updateOptions);
|
||||
}
|
||||
});
|
||||
return rule;
|
||||
},
|
||||
onProcessRule: function onProcessRule(rule) {
|
||||
if (rule && rule.type !== 'style') return;
|
||||
var styleRule = rule;
|
||||
var style = styleRule.style;
|
||||
|
||||
var _loop = function _loop(prop) {
|
||||
var value = style[prop];
|
||||
if (!isObservable(value)) return "continue";
|
||||
delete style[prop];
|
||||
value.subscribe({
|
||||
next: function next(nextValue) {
|
||||
styleRule.prop(prop, nextValue, updateOptions);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
for (var prop in style) {
|
||||
var _ret = _loop(prop);
|
||||
|
||||
if (_ret === "continue") continue;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
export default observablePlugin;
|
||||
Reference in New Issue
Block a user