@abaplint/core
Version:
abaplint - Core API
28 lines • 1.88 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ModifyLine = void 0;
const combi_1 = require("../combi");
const expressions_1 = require("../expressions");
const version_1 = require("../../../version");
class ModifyLine {
getMatcher() {
const onOff = (0, combi_1.alt)("ON", "OFF");
const eq = (0, combi_1.seq)("=", expressions_1.Source);
const form = (0, combi_1.seq)((0, combi_1.alt)("INVERSE", "INPUT", "COLOR", "HOTSPOT"), (0, combi_1.opt)((0, combi_1.alt)(eq, onOff)));
const from = (0, combi_1.seq)("FROM", expressions_1.Source);
const value = (0, combi_1.seq)("FIELD VALUE", (0, combi_1.plus)((0, combi_1.seq)(expressions_1.Source, (0, combi_1.optPrio)(from))));
const format = (0, combi_1.seq)("FIELD FORMAT", expressions_1.Source, (0, combi_1.opt)(form));
const lineValue = (0, combi_1.seq)("LINE VALUE FROM", expressions_1.Source);
const index = (0, combi_1.seq)("INDEX", expressions_1.Source);
const page = (0, combi_1.seq)("OF PAGE", expressions_1.Source);
const ocp = (0, combi_1.str)("OF CURRENT PAGE");
const intensified = (0, combi_1.seq)("INTENSIFIED", onOff);
const intensifiedOpt = (0, combi_1.seq)("INTENSIFIED", (0, combi_1.opt)(onOff));
const lineFormat = (0, combi_1.seq)("LINE FORMAT", (0, combi_1.per)("INPUT OFF", "INVERSE", "RESET", intensifiedOpt, expressions_1.Color));
const options = (0, combi_1.per)(index, value, format, page, lineFormat, lineValue, ocp, intensified, expressions_1.Color);
const ret = (0, combi_1.seq)("MODIFY", (0, combi_1.altPrio)("CURRENT LINE", (0, combi_1.seq)("LINE", expressions_1.Source)), (0, combi_1.opt)(options));
return (0, combi_1.verNot)(version_1.Version.Cloud, ret);
}
}
exports.ModifyLine = ModifyLine;
//# sourceMappingURL=modify_line.js.map