UNPKG

preact-redux

Version:

Wraps react-redux up for Preact, without preact-compat

1 lines 9.71 kB
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n(require("preact"),require("preact-context"),require("redux")):"function"==typeof define&&define.amd?define(["preact","preact-context","redux"],n):(t=t||self).preactRedux=n(t.preact,t.preactContext,t.Redux)}(this,function(t,n,r){"use strict";function e(){return(e=Object.assign||function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&(t[e]=r[e])}return t}).apply(this,arguments)}function o(t,n){t.prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n}function u(t,n){if(null==t)return{};var r,e,o={},u=Object.keys(t);for(e=0;e<u.length;e++)n.indexOf(r=u[e])>=0||(o[r]=t[r]);return o}function i(){}var c={createContext:n.createContext,forwardRef:i,createElement:t.h},a=c.createContext(null),f=function(t){function n(n){var r;r=t.call(this,n)||this;var e=n.store;return r.state={storeState:e.getState(),store:e},r}o(n,t);var r=n.prototype;return r.componentDidMount=function(){this.t=!0,this.subscribe()},r.componentWillUnmount=function(){this.unsubscribe&&this.unsubscribe(),this.t=!1},r.componentDidUpdate=function(t){this.props.store!==t.store&&(this.unsubscribe&&this.unsubscribe(),this.subscribe())},r.subscribe=function(){var t=this,n=this.props.store;this.unsubscribe=n.subscribe(function(){var r=n.getState();t.t&&t.setState(function(t){return t.storeState===r?null:{storeState:r}})});var r=n.getState();r!==this.state.storeState&&this.setState({storeState:r})},r.render=function(){return c.createElement((this.props.context||a).Provider,{value:this.state},this.props.children)},n}(t.Component);function s(t,n){return t(n={exports:{}},n.exports),n.exports}var p,v=s(function(t,n){Object.defineProperty(n,"o",{value:!0});var r=60103,e=60106,o=60107,u=60108,i=60114,c=60109,a=60110,f=60111,s=60111,p=60112,v=60113,d=60115,l=60116;function h(t){if("object"==typeof t&&null!==t){var n=t.$$typeof;switch(n){case r:switch(t=t.type){case f:case s:case o:case i:case u:case v:return t;default:switch(t=t&&t.$$typeof){case a:case p:case c:return t;default:return n}}case l:case d:case e:return n}}}function y(t){return h(t)===s}n.typeOf=h,n.AsyncMode=f,n.ConcurrentMode=s,n.ContextConsumer=a,n.ContextProvider=c,n.Element=r,n.ForwardRef=p,n.Fragment=o,n.Lazy=l,n.Memo=d,n.Portal=e,n.Profiler=i,n.StrictMode=u,n.Suspense=v,n.isValidElementType=function(t){return"string"==typeof t||"function"==typeof t||t===o||t===s||t===i||t===u||t===v||"object"==typeof t&&null!==t&&(t.$$typeof===l||t.$$typeof===d||t.$$typeof===c||t.$$typeof===a||t.$$typeof===p)},n.isAsyncMode=function(t){return y(t)||h(t)===f},n.isConcurrentMode=y,n.isContextConsumer=function(t){return h(t)===a},n.isContextProvider=function(t){return h(t)===c},n.isElement=function(t){return"object"==typeof t&&null!==t&&t.$$typeof===r},n.isForwardRef=function(t){return h(t)===p},n.isFragment=function(t){return h(t)===o},n.isLazy=function(t){return h(t)===l},n.isMemo=function(t){return h(t)===d},n.isPortal=function(t){return h(t)===e},n.isProfiler=function(t){return h(t)===i},n.isStrictMode=function(t){return h(t)===u},n.isSuspense=function(t){return h(t)===v}});(p=v)&&p.o&&Object.prototype.hasOwnProperty.call(p,"default");var d=s(function(t){t.exports=v}),l=d.isContextConsumer,h={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},y={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},m={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},b={};function P(t){return d.isMemo(t)?m:b[t.$$typeof]||h}b[d.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0};var j=Object.defineProperty,g=Object.getOwnPropertyNames,O=Object.getOwnPropertySymbols,w=Object.getOwnPropertyDescriptor,S=Object.getPrototypeOf,x=Object.prototype;var C=function t(n,r,e){if("string"!=typeof r){if(x){var o=S(r);o&&o!==x&&t(n,o,e)}var u=g(r);O&&(u=u.concat(O(r)));for(var i=P(n),c=P(r),a=0;a<u.length;++a){var f=u[a];if(!(y[f]||e&&e[f]||c&&c[f]||i&&i[f])){var s=w(r,f);try{j(n,f,s)}catch(t){}}}return n}return n};function E(n,r){var i=void 0===r?{}:r,f=i.getDisplayName,s=void 0===f?function(t){return"ConnectAdvanced("+t+")"}:f,p=i.methodName,v=void 0===p?"connectAdvanced":p,d=i.renderCountProp,h=void 0===d?void 0:d,y=i.shouldHandleStateChanges,m=void 0===y||y,b=i.storeKey,P=void 0===b?"store":b,j=i.forwardRef,g=void 0!==j&&j,O=i.context,w=void 0===O?a:O,S=u(i,["getDisplayName","methodName","renderCountProp","shouldHandleStateChanges","storeKey","withRef","forwardRef","context"]),x=w;return function(r){var u=r.displayName||r.name||"Component",i=s(u),a=e({},S,{getDisplayName:s,methodName:v,renderCountProp:h,shouldHandleStateChanges:m,storeKey:P,displayName:i,wrappedComponentName:u,WrappedComponent:r}),f=S.pure,p=t.Component;f&&(p=t.Component);var d=function(t){function u(r){var o,u,i,a,s,p,v,d,l,h,y;return(o=t.call(this,r)||this).selectDerivedProps=function(t,r,e,o){if(f&&u===r&&i===t)return a;e===s&&p===o||(s=e,p=o,v=n(e.dispatch,o)),u=r,i=t;var c=v(t,r);return a=c},o.selectChildElement=function(t,n,r){return n===d&&r===l&&y===t||(d=n,l=r,y=t,h=c.createElement(t,e({},n,{ref:r}))),h},o.indirectRenderWrappedComponent=o.indirectRenderWrappedComponent.bind(function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(o)),o}o(u,t);var i=u.prototype;return i.indirectRenderWrappedComponent=function(t){return this.renderWrappedComponent(t)},i.renderWrappedComponent=function(t){var n,e=this.props;g&&(e=this.props.wrapperProps,n=this.props.forwardedRef);var o=this.selectDerivedProps(t.storeState,e,t.store,a);return this.selectChildElement(r,o,n)},i.render=function(){var t=this.props.context&&this.props.context.Consumer&&l(c.createElement(this.props.context.Consumer,null))?this.props.context:x;return c.createElement(t.Consumer,null,this.indirectRenderWrappedComponent)},u}(p);if(d.WrappedComponent=r,d.displayName=i,g){var y=c.forwardRef(function(t,n){return c.createElement(d,{wrapperProps:t,forwardedRef:n})});return y.displayName=i,y.WrappedComponent=r,C(y,r)}return C(d,r)}}var T=Object.prototype.hasOwnProperty;function q(t,n){return t===n?0!==t||0!==n||1/t==1/n:t!=t&&n!=n}function N(t,n){if(q(t,n))return!0;if("object"!=typeof t||null===t||"object"!=typeof n||null===n)return!1;var r=Object.keys(t);if(r.length!==Object.keys(n).length)return!1;for(var e=0;e<r.length;e++)if(!T.call(n,r[e])||!q(t[r[e]],n[r[e]]))return!1;return!0}function D(t){return function(n,r){var e=t(n,r);function o(){return e}return o.dependsOnOwnProps=!1,o}}function M(t){return null!=t.dependsOnOwnProps?!!t.dependsOnOwnProps:1!==t.length}function R(t){return function(){var n=function(t,r){return n.dependsOnOwnProps?n.mapToProps(t,r):n.mapToProps(t)};return n.dependsOnOwnProps=!0,n.mapToProps=function(r,e){n.mapToProps=t,n.dependsOnOwnProps=M(t);var o=n(r,e);return"function"==typeof o&&(n.mapToProps=o,n.dependsOnOwnProps=M(o),o=n(r,e)),o},n}}function $(t,n,r){return e({},r,t,n)}var A,H,F,K,_,I,W,k,z,B,G,J,L=[function(t){return"function"==typeof t?function(t){return function(n,r){var e,o=r.pure,u=r.areMergedPropsEqual,i=!1;return function(n,r,c){var a=t(n,r,c);return i?o&&u(a,e)||(e=a):(i=!0,e=a),e}}}(t):void 0},function(t){return t?void 0:function(){return $}}];function Q(t,n,r,e){return function(o,u){return r(t(o,u),n(e,u),u)}}function U(t,n,r,e,o){var u,i,c,a,f,s=o.areStatesEqual,p=o.areOwnPropsEqual,v=o.areStatePropsEqual,d=!1;function l(o,d){var l,h,y=!p(d,i),m=!s(o,u);return u=o,i=d,y&&m?(c=t(u,i),n.dependsOnOwnProps&&(a=n(e,i)),f=r(c,a,i)):y?(t.dependsOnOwnProps&&(c=t(u,i)),n.dependsOnOwnProps&&(a=n(e,i)),f=r(c,a,i)):m?(l=t(u,i),h=!v(l,c),c=l,h&&(f=r(c,a,i)),f):f}return function(o,s){return d?l(o,s):(c=t(u=o,i=s),a=n(e,i),f=r(c,a,i),d=!0,f)}}function V(t,n){var r=n.initMapStateToProps,e=n.initMapDispatchToProps,o=n.initMergeProps,i=u(n,["initMapStateToProps","initMapDispatchToProps","initMergeProps"]),c=r(t,i),a=e(t,i),f=o(t,i);return(i.pure?U:Q)(c,a,f,t,i)}function X(t,n,r){for(var e=n.length-1;e>=0;e--){var o=n[e](t);if(o)return o}return function(n,e){throw Error("Invalid value of type "+typeof t+" for "+r+" argument when connecting component "+e.wrappedComponentName+".")}}function Y(t,n){return t===n}return{Provider:f,connect:(K=void 0===(F=(H=void 0===A?{}:A).connectHOC)?E:F,I=void 0===(_=H.mapStateToPropsFactories)?[function(t){return"function"==typeof t?R(t):void 0},function(t){return t?void 0:D(function(){return{}})}]:_,k=void 0===(W=H.mapDispatchToPropsFactories)?[function(t){return"function"==typeof t?R(t):void 0},function(t){return t?void 0:D(function(t){return{dispatch:t}})},function(t){return t&&"object"==typeof t?D(function(n){return r.bindActionCreators(t,n)}):void 0}]:W,B=void 0===(z=H.mergePropsFactories)?L:z,J=void 0===(G=H.selectorFactory)?V:G,function(t,n,r,o){var i=void 0===o?{}:o,c=i.pure,a=void 0===c||c,f=i.areStatesEqual,s=void 0===f?Y:f,p=i.areOwnPropsEqual,v=void 0===p?N:p,d=i.areStatePropsEqual,l=void 0===d?N:d,h=i.areMergedPropsEqual,y=void 0===h?N:h,m=u(i,["pure","areStatesEqual","areOwnPropsEqual","areStatePropsEqual","areMergedPropsEqual"]),b=X(t,I,"mapStateToProps"),P=X(n,k,"mapDispatchToProps"),j=X(r,B,"mergeProps");return K(J,e({methodName:"connect",getDisplayName:function(t){return"Connect("+t+")"},shouldHandleStateChanges:!!t,initMapStateToProps:b,initMapDispatchToProps:P,initMergeProps:j,pure:a,areStatesEqual:s,areOwnPropsEqual:v,areStatePropsEqual:l,areMergedPropsEqual:y},m))}),connectAdvanced:E,ReactReduxContext:a}});