From af69a60d3d663cb69f741ab89b31b3156c33096b Mon Sep 17 00:00:00 2001 From: Vut Pov Date: Wed, 3 Jun 2020 13:06:30 +0700 Subject: [PATCH] initial --- .babelrc | 7 + .gitignore | 1 + .idea/.gitignore | 2 + .idea/BaseContextProvider.iml | 9 + .idea/misc.xml | 6 + .idea/modules.xml | 8 + .idea/vcs.xml | 6 + .npmignore | 4 + lib/BaseContextProvider.js | 14 + package-lock.json | 5143 +++++++++++++++++++++++++++++++++ package.json | 28 + src/baseContextProvider.js | 60 + webpack.config.js | 20 + 13 files changed, 5308 insertions(+) create mode 100644 .babelrc create mode 100644 .gitignore create mode 100644 .idea/.gitignore create mode 100644 .idea/BaseContextProvider.iml create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .npmignore create mode 100644 lib/BaseContextProvider.js create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src/baseContextProvider.js create mode 100644 webpack.config.js diff --git a/.babelrc b/.babelrc new file mode 100644 index 0000000..464c25d --- /dev/null +++ b/.babelrc @@ -0,0 +1,7 @@ +{ + "presets": [ + "react", + "env", + "stage-0" + ] +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b512c09 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +node_modules \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..5c98b42 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,2 @@ +# Default ignored files +/workspace.xml \ No newline at end of file diff --git a/.idea/BaseContextProvider.iml b/.idea/BaseContextProvider.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/BaseContextProvider.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..24eb271 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..5593a08 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..e64027b --- /dev/null +++ b/.npmignore @@ -0,0 +1,4 @@ +src +demo +.babelrc +webpack.config.js \ No newline at end of file diff --git a/lib/BaseContextProvider.js b/lib/BaseContextProvider.js new file mode 100644 index 0000000..af60b31 --- /dev/null +++ b/lib/BaseContextProvider.js @@ -0,0 +1,14 @@ +module.exports=function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.baseContextWrap=void 0;var n=Object.assign||function(e){for(var t=1;t$.length&&$.push(e)}function A(e,t,r){return null==e?0:function e(t,r,n,o){var f=typeof t;"undefined"!==f&&"boolean"!==f||(t=null);var i=!1;if(null===t)i=!0;else switch(f){case"string":case"number":i=!0;break;case"object":switch(t.$$typeof){case u:case c:i=!0}}if(i)return n(o,t,""===r?"."+T(t,0):r),1;if(i=0,r=""===r?".":r+":",Array.isArray(t))for(var l=0;l{children} + } +} + +export const baseContextWrap = (Provider) => { + return (Component) => (props) => } /> +} + + export function baseUseContext(context) { + return function() { + return React.useContext(context) + } + } + + export function baseWithContext(context, contextPassPropKey) { + const Consumer = context.Consumer + return (Component) => (props) => ( + + {(contextValue) => ( + + )} + + ) +} + +BaseContextProvider.propTypes = {} + +BaseContextProvider.defaultProps = {} + +export default BaseContextProvider diff --git a/webpack.config.js b/webpack.config.js new file mode 100644 index 0000000..5980f55 --- /dev/null +++ b/webpack.config.js @@ -0,0 +1,20 @@ +var path = require('path'); + +module.exports = { + mode: 'production', + entry: './src/baseContextProvider.js', + output: { + path: path.resolve('lib'), + filename: 'BaseContextProvider.js', + libraryTarget: 'commonjs2' + }, + module: { + rules: [ + { + test: /\.jsx?$/, + exclude: /(node_modules)/, + use: 'babel-loader' + } + ] + } +} \ No newline at end of file