respond-framework
Version:
create as fast you think
26 lines (25 loc) • 612 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _createSnapHandler = require("./helpers/createSnapHandler.js");
const createSnapProxy = (snap, parentState) => {
const {
affected,
cache,
proxy
} = parentState;
let state = cache.get(snap);
if (!state) {
state = {
cache
};
state.proxy = new Proxy(snap, (0, _createSnapHandler.default)(snap, state));
cache.set(snap, state);
}
state.affected = affected;
state.parentProxy = proxy;
return state.proxy;
};
var _default = exports.default = createSnapProxy;