{"action":"created","issue":{"url":"https://api.github.com/repos/slammayjammay/hyper-postprocessing/issues/6","repository_url":"https://api.github.com/repos/slammayjammay/hyper-postprocessing","labels_url":"https://api.github.com/repos/slammayjammay/hyper-postprocessing/issues/6/labels{/name}","comments_url":"https://api.github.com/repos/slammayjammay/hyper-postprocessing/issues/6/comments","events_url":"https://api.github.com/repos/slammayjammay/hyper-postprocessing/issues/6/events","html_url":"https://github.com/slammayjammay/hyper-postprocessing/issues/6","id":345936885,"node_id":"MDU6SXNzdWUzNDU5MzY4ODU=","number":6,"title":"Allow exporting for use in other plugins","user":{"login":"cakenggt","id":1410189,"node_id":"MDQ6VXNlcjE0MTAxODk=","avatar_url":"https://avatars2.githubusercontent.com/u/1410189?v=4","gravatar_id":"","url":"https://api.github.com/users/cakenggt","html_url":"https://github.com/cakenggt","followers_url":"https://api.github.com/users/cakenggt/followers","following_url":"https://api.github.com/users/cakenggt/following{/other_user}","gists_url":"https://api.github.com/users/cakenggt/gists{/gist_id}","starred_url":"https://api.github.com/users/cakenggt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cakenggt/subscriptions","organizations_url":"https://api.github.com/users/cakenggt/orgs","repos_url":"https://api.github.com/users/cakenggt/repos","events_url":"https://api.github.com/users/cakenggt/events{/privacy}","received_events_url":"https://api.github.com/users/cakenggt/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-07-30T21:12:19Z","updated_at":"2018-08-02T04:46:38Z","closed_at":null,"author_association":"NONE","body":"It would be nice if you could import the main component and the custom css from this plugin and provide the main component with a custom config (as opposed to the component searching your computer for the hyper-postprocessing.js file as it does now). This would allow other postprocessing shaders to be written and packaged up as complete hyper plugins, as opposed to the user having to download this plugin and then another shader file and combine them on their own computer."},"comment":{"url":"https://api.github.com/repos/slammayjammay/hyper-postprocessing/issues/comments/409804374","html_url":"https://github.com/slammayjammay/hyper-postprocessing/issues/6#issuecomment-409804374","issue_url":"https://api.github.com/repos/slammayjammay/hyper-postprocessing/issues/6","id":409804374,"node_id":"MDEyOklzc3VlQ29tbWVudDQwOTgwNDM3NA==","user":{"login":"slammayjammay","id":11801881,"node_id":"MDQ6VXNlcjExODAxODgx","avatar_url":"https://avatars3.githubusercontent.com/u/11801881?v=4","gravatar_id":"","url":"https://api.github.com/users/slammayjammay","html_url":"https://github.com/slammayjammay","followers_url":"https://api.github.com/users/slammayjammay/followers","following_url":"https://api.github.com/users/slammayjammay/following{/other_user}","gists_url":"https://api.github.com/users/slammayjammay/gists{/gist_id}","starred_url":"https://api.github.com/users/slammayjammay/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slammayjammay/subscriptions","organizations_url":"https://api.github.com/users/slammayjammay/orgs","repos_url":"https://api.github.com/users/slammayjammay/repos","events_url":"https://api.github.com/users/slammayjammay/events{/privacy}","received_events_url":"https://api.github.com/users/slammayjammay/received_events","type":"User","site_admin":false},"created_at":"2018-08-02T04:46:38Z","updated_at":"2018-08-02T04:46:38Z","author_association":"OWNER","body":"Great idea. Definitely on board with the idea to allow other plugins to make use of this one. There might be a couple downsides by making this import-able though:\r\n\r\n1) After importing this component, you'd have to return it inside of `exports.decorateTerm` for it to receive the different plugin callbacks (`onDecorated`, `componentWillReceiveProps`, etc.). Which is fine except in the case of multiple plugins making use of this, which would result in multiple instances of it. This would not allow chaining multiple hyper-shader-plugins together.\r\n2) If instead this component exported a singleton with some sort of API to allow for different effects from multiple plugins, something would need to call the singleton's plugin callbacks at the right time.\r\n\r\nI can't think of a good way to resolve those two so I'm a little hesitant.\r\n\r\nAlternatively there might be another way to allow other plugins to make use of this one. Something involving the `exports.middleware` callback, where you have access to the `.hyper.js` config file. Maybe each hyper-shader-plugin could add in their shaders to the config when initializing, then this plugin could read from it? "}}
{"actor":{"display_login":"slammayjammay"}}