Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/modules / ___dist / observable-utils / deps / oneServerSideRender.js
Size: Mime:
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.oneServerSideRender = oneServerSideRender;
Object.defineProperty(exports, "isUniqueRouteChange", {
  enumerable: true,
  get: function get() {
    return _router.isUniqueRouteChange;
  }
});
exports.default = void 0;

var _reactJobs = require("../../SSR/react-jobs");

var _router = require("../../router");

/**
 * --------------------------------------------------------------------------
 * @NOTE
 * these we can do before ever rendering the class
 * which is faster, since this decorator is run at definition/execution time
 * before "runtime"
 * --------------------------------------------------------------------------
 */
function oneServerSideRender(functionToCallApis) {
  return (0, _reactJobs.withJob)({
    work: functionToCallApis,
    shouldWorkAgain: _router.isUniqueRouteChange
  });
}

var _default = oneServerSideRender; // --------------------------------------------------------------------------
// POC
// --------------------------------------------------------------------------
//
// let oneServerSideRender = (
//   onRequest,
//   shouldWorkAgain = isUniqueRouteChange,
//   Target
// ) => {
//   const workRequest = props => {
//     return onRequest(oneRouter.entries(), props)
//     // const { query, path } = onRequest(oneRouter.entries())
//     // return request(query, path)
//   }
//   const connectWithJob = withJob({
//     work: workRequest,
//     shouldWorkAgain,
//   })
//   console.log('In SSR', workRequest)
//   return connectWithJob(Target)
// }
// oneServerSideRender = curry(3, oneServerSideRender)
// ===
// const addServerSideRendering = withJob({
//   work: functionToCallApis,
//   shouldWorkAgain: isUniqueRouteChange,
// })
// ===
// componentWillMountMethod() {
//   const { store, omniStore, jobResult } = tapProps(this.props, false)
//   return dataToStoreHandler(store, jobResult)
// }
// ===
// function componentWillReceivePropsMethod(nextProps) {
//   if (nextProps.jobResult.identifier !== this.props.jobResult.identifier) {
//     const store = this.props.store || omniContainer.store
//     return dataToStoreHandler(store, nextProps.jobResult)
//   }
//   return false
// }

exports.default = _default;