@infinite-canvas-tutorial/webcomponents
Version:
WebComponents UI implementation
38 lines • 1.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LitStateManagement = exports.apiContext = exports.nodesContext = exports.appStateContext = void 0;
const context_1 = require("@lit/context");
const ecs_1 = require("@infinite-canvas-tutorial/ecs");
exports.appStateContext = (0, context_1.createContext)(Symbol('appAtate'));
exports.nodesContext = (0, context_1.createContext)(Symbol('nodes'));
exports.apiContext = (0, context_1.createContext)(Symbol('api'));
/**
* Delegate the methods to the LitElement's context which will trigger re-rendering.
*/
class LitStateManagement extends ecs_1.DefaultStateManagement {
constructor(appStateProvider, nodesProvider) {
super();
this.appStateProvider = appStateProvider;
this.nodesProvider = nodesProvider;
}
getAppState() {
return this.appStateProvider.value;
}
setAppState(appState) {
super.setAppState(appState);
this.appStateProvider.value = appState;
}
getNodes() {
return this.nodesProvider.value || [];
}
setNodes(nodes) {
super.setNodes(nodes);
this.nodesProvider.value = nodes;
}
onChange(snapshot) {
super.onChange(snapshot);
// console.log('onChange', snapshot);
}
}
exports.LitStateManagement = LitStateManagement;
//# sourceMappingURL=context.js.map