Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit c5fe1d8

Browse files
committed
add @resource for pages
1 parent 3650763 commit c5fe1d8

File tree

10 files changed

+34
-24
lines changed

10 files changed

+34
-24
lines changed

lib/build/lint.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
var chalk_1 = require('chalk');
33
var validKeys = {
44
info: ['title', 'description'],
5-
page: ['title', 'description', 'onPageComplete', 'tasks', 'video', 'resource'],
5+
page: ['title', 'description', 'onPageComplete', 'tasks', 'video', 'resources'],
66
task: ['description', 'tests', 'actions', 'hints']
77
};
88
function lintOutput(json) {

lib/build/parser/actions.js

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -47,16 +47,6 @@ function addToTasks(_a) {
4747
task: task,
4848
});
4949
break;
50-
case 'resource':
51-
result = doAction({
52-
type: 'resource',
53-
isArray: isActionArray,
54-
actionValue: actionValue,
55-
result: result,
56-
page: page,
57-
task: task
58-
});
59-
break;
6050
case 'continue':
6151
break;
6252
case 'action':

lib/build/parser/match.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@ var regex = {
88
'##': match('#', 2),
99
'+': match('\\+', 1),
1010
'```': match('`', 3),
11-
'action': /^@(action|test|hint|openConsole|resource)/,
11+
'action': /^@(action|test|hint|openConsole)/,
1212
'import': /^@import\((.+)\)$/,
1313
'onPageComplete': /^(@onPageComplete.+)/,
14+
'resource': /^(@resource.+)/,
1415
};
1516
function parseWithCode(code) {
1617
return function (line) {
@@ -32,6 +33,7 @@ exports.codeBlock = parseWithCode('```');
3233
exports.isAction = parseWithCode('action');
3334
exports.isImport = parseWithCode('import');
3435
exports.isPageComplete = parseWithCode('onPageComplete');
36+
exports.isResource = parseWithCode('resource');
3537
exports.isArray = function (line) {
3638
var isMatch = line.match(/^\[.+\]$/);
3739
return isMatch ? isMatch[0] : null;

lib/build/parser/page.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,12 @@ function page(_a) {
3737
currentPageComplete = null;
3838
}
3939
continue;
40+
case (!!Match.isResource(line)):
41+
if (!result.pages[index.page].resources) {
42+
result.pages[index.page].resources = [];
43+
}
44+
result.pages[index.page].resources.push(cleanup_1.trimValue(Match.isResource(line)));
45+
continue;
4046
case !!Match.codeBlock(line):
4147
if (line.length > 3) {
4248
result.pages[index.page].description += '\n' + line;

lib/build/parser/task.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,12 @@ function task(_a) {
3232
currentPageComplete = null;
3333
}
3434
continue;
35+
case (!!Match.isResource(line)):
36+
if (!result.pages[index.page].resources) {
37+
result.pages[index.page].resources = [];
38+
}
39+
result.pages[index.page].resources.push(cleanup_1.trimValue(Match.isResource(line)));
40+
continue;
3541
case !!currentAction:
3642
if (line.length === 0) {
3743
currentAction += '\n';

src/build/lint.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import {yellow, red} from 'chalk';
22

33
const validKeys = {
44
info: ['title', 'description'],
5-
page: ['title', 'description', 'onPageComplete', 'tasks', 'video', 'resource'],
5+
page: ['title', 'description', 'onPageComplete', 'tasks', 'video', 'resources'],
66
task: ['description', 'tests', 'actions', 'hints']
77
};
88

src/build/parser/actions.ts

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,6 @@ export function addToTasks({ result, line, index: {page, task} }) {
5050
task,
5151
});
5252
break;
53-
case 'resource':
54-
result = doAction({
55-
type: 'resource',
56-
isArray: isActionArray,
57-
actionValue,
58-
result,
59-
page,
60-
task
61-
});
62-
break;
6353
case 'continue':
6454
break;
6555
case 'action':

src/build/parser/match.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,10 @@ var regex = {
99
'##': match('#', 2),
1010
'+': match('\\+', 1),
1111
'```': match('`', 3),
12-
'action': /^@(action|test|hint|openConsole|resource)/,
12+
'action': /^@(action|test|hint|openConsole)/,
1313
'import': /^@import\((.+)\)$/,
1414
'onPageComplete': /^(@onPageComplete.+)/,
15+
'resource': /^(@resource.+)/,
1516
};
1617

1718
function parseWithCode(code: string) {
@@ -34,6 +35,7 @@ export const codeBlock = parseWithCode('```');
3435
export const isAction = parseWithCode('action');
3536
export const isImport = parseWithCode('import');
3637
export const isPageComplete = parseWithCode('onPageComplete');
38+
export const isResource = parseWithCode('resource')
3739

3840
export const isArray = function(line: string): string {
3941
let isMatch = line.match(/^\[.+\]$/);

src/build/parser/page.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,13 @@ export default function page({ dir, result, lines, index }) {
4444
}
4545
continue;
4646

47+
case (!!Match.isResource(line)):
48+
if (!result.pages[index.page].resources) {
49+
result.pages[index.page].resources = [];
50+
}
51+
result.pages[index.page].resources.push(trimValue(Match.isResource(line)));
52+
continue;
53+
4754
// ``` `
4855
case !!Match.codeBlock(line):
4956
if (line.length > 3) {

src/build/parser/task.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ export default function task({ dir, result, lines, index }) {
3939
}
4040
continue;
4141

42+
case (!!Match.isResource(line)):
43+
if (!result.pages[index.page].resources) {
44+
result.pages[index.page].resources = [];
45+
}
46+
result.pages[index.page].resources.push(trimValue(Match.isResource(line)));
47+
continue;
48+
4249
// @action multiline
4350
case !!currentAction:
4451
if (line.length === 0) {

0 commit comments

Comments
 (0)