1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.Onbuild = void 0;
|
4 | const vscode_languageserver_types_1 = require("vscode-languageserver-types");
|
5 | const parser_1 = require("../parser");
|
6 | const instruction_1 = require("../instruction");
|
7 | class Onbuild extends instruction_1.Instruction {
|
8 | constructor(document, range, dockerfile, escapeChar, instruction, instructionRange) {
|
9 | super(document, range, dockerfile, escapeChar, instruction, instructionRange);
|
10 | }
|
11 | getTrigger() {
|
12 | let trigger = this.getTriggerWord();
|
13 | return trigger === null ? null : trigger.toUpperCase();
|
14 | }
|
15 | getTriggerWord() {
|
16 | return this.getRangeContent(this.getTriggerRange());
|
17 | }
|
18 | getTriggerRange() {
|
19 | let args = this.getArguments();
|
20 | return args.length > 0 ? args[0].getRange() : null;
|
21 | }
|
22 | getTriggerInstruction() {
|
23 | let triggerRange = this.getTriggerRange();
|
24 | if (triggerRange === null) {
|
25 | return null;
|
26 | }
|
27 | let args = this.getArguments();
|
28 | return parser_1.Parser.createInstruction(this.document, this.dockerfile, this.escapeChar, vscode_languageserver_types_1.Range.create(args[0].getRange().start, this.getRange().end), this.getTriggerWord(), triggerRange);
|
29 | }
|
30 | }
|
31 | exports.Onbuild = Onbuild;
|