ParamLineToken (EN) - bhsd-harry/wikiparser-node GitHub Wiki
One-line parameter inside <dynamicpagelist> or <inputbox>. This class inherits all the properties and methods of the Token class which are not repeated here.
✅ Available in the Mini and Browser versions.
✅ Expand
type: string
Name of the extension tag in lowercase, read-only.
// name
var line = Parser.parse('<inputbox>type=create</inputbox>')
.querySelector('param-line');
assert.equal(line, 'type=create');
assert.strictEqual(line.name, 'inputbox');✅ Expand
type: 'param-line'
// type
var line = Parser.parse('<inputbox>type=create</inputbox>')
.querySelector('param-line');
assert.equal(line, 'type=create');
assert.strictEqual(line.type, 'param-line');Expand
returns: this
Deep clone the node.
// cloneNode (main)
var line = Parser.parse('<inputbox>type=create</inputbox>')
.querySelector('param-line');
assert.equal(line, 'type=create');
assert.deepStrictEqual(line.cloneNode(), line);✅ Expand
returns: LintError[]
Report potential grammar errors.
// lint
var line = Parser.parse(`<dynamicpagelist>category=<nowiki>a</nowiki>
</dynamicpagelist>`).querySelector('param-line');
assert.equal(line, 'category=<nowiki>a</nowiki>');
assert.deepStrictEqual(line.lint(), [
{
rule: 'no-ignored',
severity: 'error',
message: 'invalid parameter of <dynamicpagelist>',
startLine: 0,
startCol: 17,
startIndex: 17,
endLine: 0,
endCol: 44,
endIndex: 44,
},
]);
line = Parser.parse('<dynamicpagelist>category</dynamicpagelist>')
.querySelector('param-line');
assert.equal(line, 'category');
assert.deepStrictEqual(line.lint(), [
{
rule: 'no-ignored',
severity: 'error',
message: 'invalid parameter of <dynamicpagelist>',
startLine: 0,
startCol: 17,
startIndex: 17,
endLine: 0,
endCol: 25,
endIndex: 25,
suggestions: [
{
desc: 'remove',
range: [17, 25],
text: '',
},
],
},
]);
line = Parser.parse('<inputbox># {{template}}</inputbox>')
.querySelector('param-line');
assert.equal(line, '# {{template}}');
assert.deepStrictEqual(line.lint(), [
{
rule: 'no-ignored',
severity: 'error',
message: 'invalid parameter of <inputbox>',
startLine: 0,
startCol: 10,
startIndex: 10,
endLine: 0,
endCol: 24,
endIndex: 24,
suggestions: [
{
desc: 'remove',
range: [10, 24],
text: '',
},
],
},
]);
line = Parser.parse('<dynamicpagelist>CATEGORY=A</dynamicpagelist>')
.querySelector('param-line');
assert.equal(line, 'CATEGORY=A');
assert.deepStrictEqual(line.lint(), [
{
rule: 'no-ignored',
severity: 'error',
message: 'invalid parameter of <dynamicpagelist>',
startLine: 0,
startCol: 17,
startIndex: 17,
endLine: 0,
endCol: 27,
endIndex: 27,
suggestions: [
{
desc: 'remove',
range: [17, 27],
text: '',
},
],
},
]);
line = Parser.parse('<inputbox>{{{1}}}</inputbox>', true)
.querySelector('param-line');
assert.equal(line, '{{{1}}}');
assert.deepStrictEqual(line.lint(), [
{
rule: 'arg-in-ext',
severity: 'warning',
message: 'template argument inside an extension tag',
startLine: 0,
startCol: 10,
startIndex: 10,
endLine: 0,
endCol: 17,
endIndex: 17,
},
]);