markdown-maker 1.10.0 → 1.10.1

Sign up to get free protection for your applications and to get access to all the features.
package/build/cltool.js DELETED
@@ -1,161 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.argParser = void 0;
7
- var fs = require("fs"); /* for handling reading of files */
8
- var path = require("path"); /* for handling file paths */
9
- var Colors = require("colors.ts"); /* for adding colours to strings */
10
- var parse_1 = __importDefault(require("./parse"));
11
- var ws_1 = require("ws");
12
- Colors.enable();
13
- var ArgumentParser = require("argparse").ArgumentParser; /* for parsing clargs */
14
- var version = require("../package.json").version; /* package version number */
15
- var choki = require("chokidar");
16
- exports.argParser = new ArgumentParser({
17
- description: "Markdown bundler, with extra options. Extension file is loaded from ./extensions.js, if it exists",
18
- prog: "mdparse",
19
- });
20
- var configFileName = ".mdmconfig.json";
21
- //#region command line args
22
- exports.argParser.add_argument("src", {
23
- help: "file to be parsed. If this is a directory, it looks for entry point in the directory, see --entry",
24
- });
25
- exports.argParser.add_argument("--version", { action: "version", version: version });
26
- exports.argParser.add_argument("-v", "--verbose", {
27
- action: "store_true",
28
- help: "enable verbose output",
29
- });
30
- exports.argParser.add_argument("-D", "--debug", {
31
- action: "store_true",
32
- help: "enable debugging information",
33
- });
34
- exports.argParser.add_argument("-o", "--output", {
35
- help: "destination of bundle, by default is 'dist/bundle.md'",
36
- default: "dist/bundle.md",
37
- });
38
- exports.argParser.add_argument("-d", "--max-depth", {
39
- help: "maximum recursion depth, by default is 15",
40
- default: 15,
41
- type: "int",
42
- });
43
- exports.argParser.add_argument("-e", "--entry", {
44
- help: "assign entry point in directory, by default is 'main.md'",
45
- default: "main.md",
46
- });
47
- exports.argParser.add_argument("-w", "--watch", {
48
- action: "store_true",
49
- help: "recompile after a change in target target file or directory.",
50
- });
51
- exports.argParser.add_argument("-u", "--use-underscore", {
52
- action: "store_true",
53
- help: "set the parser to use '_' as seperator in ids for Table of Content. If the links in the table does not work, this is likely to be the issue.",
54
- });
55
- exports.argParser.add_argument("-t", "--toc-level", {
56
- help: "the section level of the table of contents, by default is 3",
57
- default: 3,
58
- type: "int",
59
- });
60
- exports.argParser.add_argument("-H", "--html", {
61
- action: "store_true",
62
- help: "compile HTML from the parsed markdown",
63
- });
64
- exports.argParser.add_argument("--allow-undefined", "-A", {
65
- action: "store_true",
66
- help: "allow the use of the \"<thing>\" syntax, without raising an error when 'thing' is not a variable. Mostly useful when writing inline html tags, and other non-strictly markdown related uses",
67
- });
68
- //#endregion
69
- function main() {
70
- var clargs, fileargs;
71
- var server;
72
- /* Read config file or parse args from cmd-line */
73
- if (fs.existsSync(configFileName)) {
74
- var data = JSON.parse(fs.readFileSync(configFileName)).opts;
75
- var args_1 = [];
76
- Object.entries(data).forEach(function (_a) {
77
- var key = _a[0], value = _a[1];
78
- if (key != "src" && value !== false) {
79
- args_1.push("--" + key);
80
- }
81
- if (typeof value != "boolean") {
82
- args_1.push(value);
83
- }
84
- });
85
- /* We skip [0] and [1], as it is the binary and source file, even when compiled*/
86
- for (var i = 2; i < process.argv.length; i++)
87
- args_1.push(process.argv[i]);
88
- clargs = exports.argParser.parse_args(args_1);
89
- }
90
- else {
91
- clargs = exports.argParser.parse_args();
92
- }
93
- /* if src is init, create config file and exit */
94
- if (clargs.src == "init") {
95
- var template = fs.readFileSync(path.join(__dirname, "..", "src", "templates", "configTemplate.json"));
96
- fs.writeFileSync(configFileName, template);
97
- fs.writeFileSync("main.md", "# Main\n");
98
- return;
99
- }
100
- /* helper method for calling parser */
101
- var compile = function (source, output, cb) {
102
- /* load data from file, if it exists,
103
- * otherwise, interpret as string */
104
- var parser = new parse_1.default(source, clargs);
105
- parser.to(output, function (file) {
106
- console.log("Compiled ".concat(file).green);
107
- if (cb)
108
- cb();
109
- });
110
- return parser;
111
- };
112
- var internalCooldown = 1000;
113
- function watcher(event, path) {
114
- var now = Date.now();
115
- if (!this.time)
116
- this.time = now;
117
- if (now - this.time < internalCooldown)
118
- return;
119
- console.log(path);
120
- console.log("Detected change in ".concat(path, "..."));
121
- try {
122
- compile(clargs.src, clargs.output, function () {
123
- /* after compile, send refresh command to clients */
124
- server.clients.forEach(function (client) {
125
- if (client.OPEN)
126
- client.send("refresh");
127
- });
128
- });
129
- }
130
- catch (e) {
131
- console.log(e.message);
132
- }
133
- this.time = now;
134
- }
135
- /* in case source is a directory, look for entry in directory */
136
- if (fs.existsSync(clargs.src) && fs.lstatSync(clargs.src).isDirectory()) {
137
- clargs.src = path.join(clargs.src, clargs.entry);
138
- }
139
- if (clargs.debug)
140
- console.dir(clargs);
141
- /* compile once */
142
- if (!clargs.watch)
143
- compile(clargs.src, clargs.output);
144
- /* watch the folder and recompile on change */
145
- else {
146
- var srcDirName = path.dirname(clargs.src);
147
- console.log("Watching ".concat(srcDirName, " for changes...").yellow);
148
- server = new ws_1.WebSocketServer({ port: 7788 });
149
- var _watcher = choki.watch(srcDirName).on("all", watcher);
150
- try {
151
- compile(clargs.src, clargs.output);
152
- }
153
- catch (e) {
154
- console.log(e.message);
155
- }
156
- }
157
- }
158
- /* main entrypoint */
159
- if (require.main === module)
160
- main();
161
- //# sourceMappingURL=cltool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cltool.js","sourceRoot":"","sources":["../src/cltool.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- import Parser from "./parse";
2
- export declare class MDMError extends Error {
3
- match: RegExpMatchArray;
4
- constructor(message: string, match: RegExpMatchArray);
5
- }
6
- export declare const commands: {
7
- preparse: Command[];
8
- parse: Command[];
9
- postparse: Command[];
10
- };
11
- export declare enum CommandType {
12
- PREPARSE = 0,
13
- PARSE = 1,
14
- POSTPARSE = 2
15
- }
16
- export declare enum TargetType {
17
- HTML = 0,
18
- MARKDOWN = 1
19
- }
20
- export declare class Command {
21
- validator: RegExp;
22
- acter: (match: RegExpMatchArray, parser: Parser) => string | void;
23
- type: CommandType;
24
- constructor(validator: RegExp, acter: (match: RegExpMatchArray, parser: Parser) => string | void, type: CommandType);
25
- act(match: any, parser: any): string | void;
26
- }
27
- export declare function load_extensions(parser: Parser): void;
28
- /**
29
- *
30
- * @param regex The regex to match the command
31
- * @param acter The function called when a match is found. Takes two arguments, `match` and `parser`. `match` is the result of the regex match, and `parser` is the parser instance. The function should return the replacement string.
32
- * @param type When the command should be run. Can be `CommandType.PREPARSE`, `CommandType.PARSE`, or `CommandType.POSTPARSE`. Defaults to `CommandType.PARSE`.
33
- */
34
- export declare function new_command(regex: RegExp, acter: (match: RegExpMatchArray, parser: Parser) => string, type?: CommandType): void;
35
- declare const _default: {
36
- commands: {
37
- preparse: Command[];
38
- parse: Command[];
39
- postparse: Command[];
40
- };
41
- load_extensions: typeof load_extensions;
42
- };
43
- export default _default;
package/build/commands.js DELETED
@@ -1,223 +0,0 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- var desc = Object.getOwnPropertyDescriptor(m, k);
20
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
- desc = { enumerable: true, get: function() { return m[k]; } };
22
- }
23
- Object.defineProperty(o, k2, desc);
24
- }) : (function(o, m, k, k2) {
25
- if (k2 === undefined) k2 = k;
26
- o[k2] = m[k];
27
- }));
28
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
- Object.defineProperty(o, "default", { enumerable: true, value: v });
30
- }) : function(o, v) {
31
- o["default"] = v;
32
- });
33
- var __importStar = (this && this.__importStar) || function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- var __importDefault = (this && this.__importDefault) || function (mod) {
41
- return (mod && mod.__esModule) ? mod : { "default": mod };
42
- };
43
- Object.defineProperty(exports, "__esModule", { value: true });
44
- exports.new_command = exports.load_extensions = exports.Command = exports.TargetType = exports.CommandType = exports.commands = exports.MDMError = void 0;
45
- var path = __importStar(require("path"));
46
- var parse_1 = __importDefault(require("./parse"));
47
- var fs = __importStar(require("fs"));
48
- var templates_1 = __importStar(require("./templates"));
49
- var require_runtime_1 = __importDefault(require("require-runtime"));
50
- var MDMError = /** @class */ (function (_super) {
51
- __extends(MDMError, _super);
52
- function MDMError(message, match) {
53
- var _this = _super.call(this, message) || this;
54
- _this.name = "MDMError";
55
- _this.match = match;
56
- return _this;
57
- }
58
- return MDMError;
59
- }(Error));
60
- exports.MDMError = MDMError;
61
- exports.commands = {
62
- preparse: [],
63
- parse: [],
64
- postparse: [],
65
- };
66
- var CommandType;
67
- (function (CommandType) {
68
- CommandType[CommandType["PREPARSE"] = 0] = "PREPARSE";
69
- CommandType[CommandType["PARSE"] = 1] = "PARSE";
70
- CommandType[CommandType["POSTPARSE"] = 2] = "POSTPARSE";
71
- })(CommandType = exports.CommandType || (exports.CommandType = {}));
72
- var TargetType;
73
- (function (TargetType) {
74
- TargetType[TargetType["HTML"] = 0] = "HTML";
75
- TargetType[TargetType["MARKDOWN"] = 1] = "MARKDOWN";
76
- })(TargetType = exports.TargetType || (exports.TargetType = {}));
77
- var Command = /** @class */ (function () {
78
- function Command(validator, acter, type) {
79
- this.type = type;
80
- this.validator = validator;
81
- this.acter = acter;
82
- /* add this function to appropriate file */
83
- switch (type) {
84
- case CommandType.PARSE:
85
- exports.commands.parse.push(this);
86
- break;
87
- case CommandType.PREPARSE:
88
- exports.commands.preparse.push(this);
89
- break;
90
- case CommandType.POSTPARSE:
91
- exports.commands.postparse.push(this);
92
- break;
93
- }
94
- }
95
- Command.prototype.act = function (match, parser) {
96
- return this.acter(match, parser);
97
- };
98
- return Command;
99
- }());
100
- exports.Command = Command;
101
- /* variable shorthand */
102
- new Command(/(\s|^)<(.+)>/, function (match, parser) { return "".concat(match[1], "#mdvar<").concat(match[2], ">"); }, CommandType.PREPARSE);
103
- /* mddef */
104
- new Command(/#mddef< *(.+?) *= *(.+?) *>/ /* first .+ is lazy so as to not match following spaces */, function (match, parser) {
105
- parser.opts.defs[match[1]] = match[2].replace("_", " ");
106
- }, CommandType.PARSE);
107
- /* mdvar */
108
- new Command(/#mdvar<(.+?)>/, function (match, parser) {
109
- var value = parser.opts.defs[match[1]];
110
- if (!value && !parser.opts.allow_undefined)
111
- throw new Error("Undefined variable: ".concat(match[1]));
112
- return (value = value || "<".concat(match[1], ">"));
113
- }, CommandType.PARSE);
114
- /** mdinclude */
115
- new Command(/#mdinclude<([\w.\/-]+)(?:[,\s]+([\w]+))?>/, function (match, parser) {
116
- /* increase the current recursive depth */
117
- parser.opts.depth++;
118
- if (parser.opts.depth > parser.opts.max_depth) {
119
- throw new Error("max depth exceeded!");
120
- }
121
- /* get the matching group */
122
- var _ = match[0], name = match[1], condition = match[2];
123
- /* implement conditional imports */
124
- if (condition && !parser.opts.args.includes(condition))
125
- return;
126
- var fsstat = fs.lstatSync(path.join(parser.wd, name));
127
- if (fsstat.isDirectory()) {
128
- /* check if a file with the same name of the
129
- * exists in the folder */
130
- if (fs.existsSync(path.join(parser.wd, name, "".concat(name, ".md")))) {
131
- name = path.join(name, "".concat(name, ".md"));
132
- }
133
- else {
134
- throw new Error("No entry file found in folder \"".concat(name, "\". Looking for \"").concat(name, ".md\""));
135
- }
136
- }
137
- var recursiveParser = new parse_1.default(path.join(parser.wd, name), parser.opts, {
138
- parent: parser,
139
- });
140
- /* keep the options the same */
141
- recursiveParser.opts = parser.opts;
142
- recursiveParser.parent = parser;
143
- var fileType = path.extname(recursiveParser.file);
144
- var blob = fileType === ".md"
145
- ? recursiveParser.get(parser.opts.targetType)
146
- : recursiveParser.raw;
147
- parser.opts.depth--;
148
- return blob;
149
- }, CommandType.PARSE);
150
- /* mdlabel */
151
- new Command(/#mdlabel<(\d+),\s?(.+)>/, function (match, parser) {
152
- if (parser.opts.targetType !== TargetType.HTML)
153
- return "";
154
- var level = Number.parseInt(match[1]);
155
- var title = match[2];
156
- var link = parser.titleId(title);
157
- parser.opts.secs.push({ level: level, title: title });
158
- return "<span id=\"".concat(link, "\"></span>");
159
- }, CommandType.PREPARSE);
160
- /* mdref */
161
- new Command(/#mdref<(.+)>/, function (match, parser) {
162
- for (var i = 0; i < parser.opts.secs.length; i++) {
163
- var title = parser.opts.secs[i].title;
164
- if (title === match[1])
165
- break;
166
- if (i === parser.opts.secs.length - 1)
167
- throw new Error("Reference to [".concat(match[1], "] could not be resolved!"));
168
- }
169
- match[1] = match[1].replace("_", " ");
170
- var link = parser.titleId(match[1]);
171
- if (parser.opts.targetType === TargetType.HTML)
172
- return "<a href=\"#".concat(link, "\">").concat(match[1], "</a>");
173
- else if (parser.opts.targetType === TargetType.MARKDOWN)
174
- return "[".concat(match[1], "](#").concat(link, ")");
175
- }, CommandType.PARSE);
176
- /* mdtemplate */
177
- new Command(/#mdtemplate<(\w+?)>/, function (match, parser) {
178
- var template = match[1];
179
- var replacement = templates_1.default[template];
180
- if (replacement !== undefined) {
181
- return replacement;
182
- }
183
- else {
184
- throw new MDMError("Template \"".concat(template, "\" not found!"), match);
185
- }
186
- }, CommandType.PARSE);
187
- new Command(/#mdmaketoc(?:<>)?/, function (match, parser) { return parser.gen_toc(); }, CommandType.POSTPARSE);
188
- var loaded_extentions = [];
189
- function load_extension(parser, file) {
190
- if (loaded_extentions.includes(file))
191
- return;
192
- if (fs.existsSync(file)) {
193
- var extensions = (0, require_runtime_1.default)(file);
194
- loaded_extentions.push(file);
195
- extensions.main(templates_1.new_template, new_command);
196
- if (parser.opts.verbose)
197
- console.log("Loaded extensions from ".concat(file).yellow);
198
- }
199
- else if (parser.opts.debug) {
200
- console.log("No extensions found at ".concat(file).red);
201
- }
202
- }
203
- function load_extensions(parser) {
204
- /* global extention */
205
- var global_extensions_path = path.join(__dirname, "extensions.js");
206
- load_extension(parser, global_extensions_path);
207
- /* project extention */
208
- var project_extensions_path = path.join(parser.wd_full, "extensions.js");
209
- load_extension(parser, project_extensions_path);
210
- }
211
- exports.load_extensions = load_extensions;
212
- /**
213
- *
214
- * @param regex The regex to match the command
215
- * @param acter The function called when a match is found. Takes two arguments, `match` and `parser`. `match` is the result of the regex match, and `parser` is the parser instance. The function should return the replacement string.
216
- * @param type When the command should be run. Can be `CommandType.PREPARSE`, `CommandType.PARSE`, or `CommandType.POSTPARSE`. Defaults to `CommandType.PARSE`.
217
- */
218
- function new_command(regex, acter, type) {
219
- new Command(regex, acter, type || CommandType.PARSE);
220
- }
221
- exports.new_command = new_command;
222
- exports.default = { commands: exports.commands, load_extensions: load_extensions };
223
- //# sourceMappingURL=commands.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
package/build/parse.d.ts DELETED
@@ -1,65 +0,0 @@
1
- import { Command } from "./commands";
2
- declare enum TargetType {
3
- HTML = 0,
4
- MARKDOWN = 1
5
- }
6
- declare class Parser {
7
- file: string;
8
- parent?: Parser;
9
- line_num: number;
10
- wd: string;
11
- wd_full: string;
12
- blobs: {
13
- [key: number]: string | undefined;
14
- };
15
- opts: {
16
- defs: {
17
- [key: string]: string;
18
- };
19
- secs: {
20
- level: number;
21
- title: string;
22
- }[];
23
- args: string[];
24
- depth: number;
25
- verbose: boolean;
26
- debug: boolean;
27
- max_depth: number;
28
- use_underscore: boolean;
29
- toc_level: number;
30
- allow_undefined: boolean;
31
- html: boolean;
32
- watch: boolean;
33
- targetType: TargetType | undefined;
34
- only_warn: boolean;
35
- parent?: Parser;
36
- isFileCallback: (s: string) => false | string;
37
- };
38
- raw: string;
39
- static TOKEN: string;
40
- constructor(filename: any, clargs: any, opts?: {
41
- parent?: Parser;
42
- isFileCallback?: (s: string) => false | string;
43
- });
44
- /**
45
- * parse wrapper for handling
46
- * preprocessing, parsing and postprocess
47
- **/
48
- parse(): any;
49
- mainparse(blob: string): string;
50
- preprocess(blob: string): string;
51
- postprocess(blob: string): string;
52
- parse_commands(blob: string, commands: Command[]): string;
53
- parse_all_commands(blob: string, commands: {
54
- [key: string]: Command[];
55
- }): string;
56
- titleId(title: string): string;
57
- gen_toc(): string;
58
- line_num_from_index(index: number): number;
59
- remove_double_blank_lines(blob: any): any;
60
- to(bundleName: string, callback: (fileName: string) => void): void;
61
- html(): any;
62
- get(targetType?: TargetType, callback?: (blob: string) => void): string;
63
- }
64
- export declare function splice(str: string, startIndex: number, width: number, newSubStr: string): string;
65
- export default Parser;