sparnatural
Version:
Visual client-side SPARQL query builder and knowledge graph exploration tool
60 lines • 3.3 kB
JavaScript
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
};
var _GroupWrapperEventStore_instances, _GroupWrapperEventStore_registerGrpWrapperEvents;
import { OptionTypes } from "../criteriagroup/optionsgroup/OptionsGroup";
import { addAndComponent } from "./events/AddAndComponent";
import { addWhereComponent } from "./events/AddWhereComponent";
import { completeGrpInput } from "./events/CompleteGrpInput";
import { inCompleteGrpInput } from "./events/InCompleteGrpInput";
import { removeEndClass } from "./events/RemoveEndClass";
import { removeGrpWrapper } from "./events/RemoveGrpWrapper";
export default class GroupWrapperEventStore {
constructor(grpWrapper) {
_GroupWrapperEventStore_instances.add(this);
this.grpWrapper = grpWrapper;
__classPrivateFieldGet(this, _GroupWrapperEventStore_instances, "m", _GroupWrapperEventStore_registerGrpWrapperEvents).call(this);
}
}
_GroupWrapperEventStore_instances = new WeakSet(), _GroupWrapperEventStore_registerGrpWrapperEvents = function _GroupWrapperEventStore_registerGrpWrapperEvents() {
this.grpWrapper.html[0].addEventListener("onGrpInputCompleted", (e) => {
e.stopImmediatePropagation();
completeGrpInput(this.grpWrapper);
});
this.grpWrapper.html[0].addEventListener("onGrpInputNotCompleted", (e) => {
e.stopImmediatePropagation();
inCompleteGrpInput(this.grpWrapper);
});
this.grpWrapper.html[0].addEventListener("onRemoveEndClass", (e) => {
e.stopImmediatePropagation();
removeEndClass(this.grpWrapper);
});
this.grpWrapper.html[0].addEventListener("onRemoveGrp", (e) => {
e.stopImmediatePropagation();
removeGrpWrapper(this.grpWrapper);
});
this.grpWrapper.html[0].addEventListener("addAndComponent", (e) => {
e.stopImmediatePropagation();
addAndComponent(this.grpWrapper, e.detail);
});
this.grpWrapper.html[0].addEventListener("addWhereComponent", (e) => {
e.stopImmediatePropagation();
completeGrpInput(this.grpWrapper);
addWhereComponent(this.grpWrapper, e.detail);
});
this.grpWrapper.html[0].addEventListener("optionTriggered", (e) => {
if (!("detail" in e) || e.detail == "" || !e.detail)
throw Error("No OptionalType payload received! optionTriggered must send payload of type OptionTypes!");
e.stopImmediatePropagation();
let newOptionState = e.detail;
if (newOptionState === this.grpWrapper.explicitOptionState) {
// button was clicked twice, it means we want to switch it off to NONE
newOptionState = OptionTypes.NONE;
}
this.grpWrapper.triggerOption(newOptionState);
this.grpWrapper.html[0].dispatchEvent(new CustomEvent("generateQuery", { bubbles: true }));
});
};
//# sourceMappingURL=GroupWrapperEventStore.js.map