react-gateway2
Advanced tools
Comparing version 0.0.5 to 0.0.6
@@ -16,4 +16,2 @@ "use strict"; | ||
var _process, _process$env; | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } | ||
@@ -23,3 +21,11 @@ | ||
var log = typeof process !== 'undefined' && ((_process = process) === null || _process === void 0 ? void 0 : (_process$env = _process.env) === null || _process$env === void 0 ? void 0 : _process$env.NODE_ENV) === 'debug' ? console.log : function () {}; | ||
function log() { | ||
var _process, _process$env, _useGatewayRegistry$g; | ||
return typeof process !== 'undefined' && ((_process = process) === null || _process === void 0 ? void 0 : (_process$env = _process.env) === null || _process$env === void 0 ? void 0 : _process$env.NODE_ENV) === 'debug' ? console.log({ | ||
args: arguments, | ||
registry: useGatewayRegistry === null || useGatewayRegistry === void 0 ? void 0 : (_useGatewayRegistry$g = useGatewayRegistry.getState()) === null || _useGatewayRegistry$g === void 0 ? void 0 : _useGatewayRegistry$g.toJS() | ||
}) : undefined; | ||
} | ||
var useGatewayRegistry = (0, _zustand.default)(function (set, get) { | ||
@@ -37,4 +43,10 @@ return { | ||
}, | ||
toJS: function toJS() { | ||
var registry = get(); | ||
return Object.fromEntries(['_containers', '_children', '_currentId'].map(function (key) { | ||
return [key, registry[key]]; | ||
})); | ||
}, | ||
_renderContainer: function _renderContainer(name, patch) { | ||
log('_renderContainer', arguments, get()); | ||
log('_renderContainer', name, patch); | ||
var registry = get(); | ||
@@ -58,3 +70,3 @@ var nextState = (0, _lodash.default)(registry, patch, { | ||
log('getGatewayContent', arguments, get()); | ||
log('getGatewayContent', name); | ||
return (_get$_containers = get()._containers) === null || _get$_containers === void 0 ? void 0 : (_get$_containers$name = _get$_containers[name]) === null || _get$_containers$name === void 0 ? void 0 : _get$_containers$name.children; | ||
@@ -64,11 +76,5 @@ }, | ||
var container = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
log('addContainer', arguments, get()); | ||
var registry = get(); // set({ | ||
// _containers: { | ||
// ...registry._containers, | ||
// [name]: container, | ||
// }, | ||
// }); | ||
log('addContainer', name, container); | ||
registry._renderContainer(name, { | ||
get()._renderContainer(name, { | ||
_containers: (0, _defineProperty2.default)({}, name, container) | ||
@@ -78,3 +84,3 @@ }); | ||
removeContainer: function removeContainer(name) { | ||
log('removeContainer', arguments, get()); | ||
log('removeContainer', name); | ||
set({ | ||
@@ -85,28 +91,27 @@ _containers: _objectSpread(_objectSpread({}, get().containers), {}, (0, _defineProperty2.default)({}, name, null)) | ||
addChild: function addChild(name, gatewayId, child) { | ||
log('addChild', arguments, get()); | ||
var registry = get(); | ||
set({ | ||
_children: _objectSpread(_objectSpread({}, registry._children), {}, (0, _defineProperty2.default)({}, name, _objectSpread(_objectSpread({}, registry._children[name]), {}, (0, _defineProperty2.default)({}, gatewayId, child)))) | ||
log('addChild', name, gatewayId, child); | ||
get()._renderContainer(name, { | ||
_children: (0, _defineProperty2.default)({}, name, (0, _defineProperty2.default)({}, gatewayId, child)) | ||
}); | ||
registry._renderContainer(name); | ||
}, | ||
clearChild: function clearChild(name, gatewayId) { | ||
log('clearChild', arguments, get()); | ||
var _children = get(function (state) { | ||
return state._children; | ||
}); | ||
set({ | ||
_children: _objectSpread(_objectSpread({}, _children), {}, (0, _defineProperty2.default)({}, name, _objectSpread(_objectSpread({}, _children[name]), {}, (0, _defineProperty2.default)({}, gatewayId, undefined)))) | ||
}); | ||
var apply = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true; | ||
log('clearChild', name, gatewayId); | ||
var nextState = { | ||
_children: (0, _defineProperty2.default)({}, name, (0, _defineProperty2.default)({}, gatewayId, null)) | ||
}; | ||
return apply ? set(function (state) { | ||
return (0, _lodash.default)(state, nextState); | ||
}) : nextState; | ||
}, | ||
register: function register(name, child) { | ||
log('register', arguments, get()); | ||
log('register', name, child); | ||
var registry = get(); | ||
var gatewayId = "".concat(name, "_").concat(registry._currentId); | ||
set({ | ||
_children: _objectSpread(_objectSpread({}, registry._children), {}, (0, _defineProperty2.default)({}, name, _objectSpread(_objectSpread({}, registry._children[name] || {}), {}, (0, _defineProperty2.default)({}, gatewayId, child)))), | ||
_currentId: registry._currentId + 1 | ||
set(function (state) { | ||
return (0, _lodash.default)(state, { | ||
_children: (0, _defineProperty2.default)({}, name, (0, _defineProperty2.default)({}, gatewayId, child)), | ||
_currentId: registry._currentId + 1 | ||
}); | ||
}); | ||
@@ -116,7 +121,7 @@ return gatewayId; | ||
unregister: function unregister(name, gatewayId) { | ||
log('unregister', arguments, get()); | ||
log('unregister', name, gatewayId); | ||
var registry = get(); | ||
registry.clearChild(name, gatewayId); | ||
var patch = registry.clearChild(name, gatewayId, false); | ||
registry._renderContainer(name); | ||
registry._renderContainer(name, patch); | ||
} | ||
@@ -123,0 +128,0 @@ }; |
{ | ||
"name": "react-gateway2", | ||
"version": "0.0.5", | ||
"version": "0.0.6", | ||
"description": "Render React DOM into a new context", | ||
@@ -5,0 +5,0 @@ "main": "lib/index.js", |
21279
236