@diplodoc/transform 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.diplodoc.md +38 -0
- package/CHANGELOG.md +404 -0
- package/LICENSE +21 -0
- package/README.md +41 -0
- package/README.ru.md +36 -0
- package/dist/css/yfm.css +736 -0
- package/dist/css/yfm.css.map +7 -0
- package/dist/css/yfm.min.css +2 -0
- package/dist/css/yfm.min.css.map +7 -0
- package/dist/js/code.d.ts +1 -0
- package/dist/js/cut.d.ts +1 -0
- package/dist/js/index.d.ts +5 -0
- package/dist/js/polyfill.d.ts +1 -0
- package/dist/js/tabs.d.ts +1 -0
- package/dist/js/term/index.d.ts +1 -0
- package/dist/js/term/utils.d.ts +10 -0
- package/dist/js/utils.d.ts +2 -0
- package/dist/js/yfm.js +432 -0
- package/dist/js/yfm.js.map +7 -0
- package/dist/js/yfm.min.js +2 -0
- package/dist/js/yfm.min.js.map +7 -0
- package/lib/getObject.d.ts +2 -0
- package/lib/getObject.js +11 -0
- package/lib/getObject.js.map +1 -0
- package/lib/headings.d.ts +4 -0
- package/lib/headings.js +73 -0
- package/lib/headings.js.map +1 -0
- package/lib/highlight.d.ts +3 -0
- package/lib/highlight.js +29 -0
- package/lib/highlight.js.map +1 -0
- package/lib/index.d.ts +7 -0
- package/lib/index.js +35 -0
- package/lib/index.js.map +1 -0
- package/lib/liquid/conditions.d.ts +4 -0
- package/lib/liquid/conditions.js +181 -0
- package/lib/liquid/conditions.js.map +1 -0
- package/lib/liquid/cycles.d.ts +4 -0
- package/lib/liquid/cycles.js +160 -0
- package/lib/liquid/cycles.js.map +1 -0
- package/lib/liquid/errors.d.ts +3 -0
- package/lib/liquid/errors.js +13 -0
- package/lib/liquid/errors.js.map +1 -0
- package/lib/liquid/evaluation.d.ts +3 -0
- package/lib/liquid/evaluation.js +138 -0
- package/lib/liquid/evaluation.js.map +1 -0
- package/lib/liquid/filters.d.ts +9 -0
- package/lib/liquid/filters.js +22 -0
- package/lib/liquid/filters.js.map +1 -0
- package/lib/liquid/index.d.ts +9 -0
- package/lib/liquid/index.js +87 -0
- package/lib/liquid/index.js.map +1 -0
- package/lib/liquid/lexical.d.ts +14 -0
- package/lib/liquid/lexical.js +79 -0
- package/lib/liquid/lexical.js.map +1 -0
- package/lib/liquid/services/argv.d.ts +15 -0
- package/lib/liquid/services/argv.js +17 -0
- package/lib/liquid/services/argv.js.map +1 -0
- package/lib/liquid/sourceMap.d.ts +24 -0
- package/lib/liquid/sourceMap.js +56 -0
- package/lib/liquid/sourceMap.js.map +1 -0
- package/lib/liquid/substitutions.d.ts +2 -0
- package/lib/liquid/substitutions.js +36 -0
- package/lib/liquid/substitutions.js.map +1 -0
- package/lib/liquid/utils.d.ts +8 -0
- package/lib/liquid/utils.js +24 -0
- package/lib/liquid/utils.js.map +1 -0
- package/lib/log.d.ts +18 -0
- package/lib/log.js +54 -0
- package/lib/log.js.map +1 -0
- package/lib/md.d.ts +14 -0
- package/lib/md.js +96 -0
- package/lib/md.js.map +1 -0
- package/lib/plugins/anchors/collect.d.ts +5 -0
- package/lib/plugins/anchors/collect.js +81 -0
- package/lib/plugins/anchors/collect.js.map +1 -0
- package/lib/plugins/anchors/constants.d.ts +2 -0
- package/lib/plugins/anchors/constants.js +6 -0
- package/lib/plugins/anchors/constants.js.map +1 -0
- package/lib/plugins/anchors/index.d.ts +7 -0
- package/lib/plugins/anchors/index.js +134 -0
- package/lib/plugins/anchors/index.js.map +1 -0
- package/lib/plugins/changelog/collect.d.ts +8 -0
- package/lib/plugins/changelog/collect.js +50 -0
- package/lib/plugins/changelog/collect.js.map +1 -0
- package/lib/plugins/changelog/index.d.ts +6 -0
- package/lib/plugins/changelog/index.js +131 -0
- package/lib/plugins/changelog/index.js.map +1 -0
- package/lib/plugins/changelog/types.d.ts +10 -0
- package/lib/plugins/changelog/types.js +3 -0
- package/lib/plugins/changelog/types.js.map +1 -0
- package/lib/plugins/checkbox/checkbox.d.ts +7 -0
- package/lib/plugins/checkbox/checkbox.js +91 -0
- package/lib/plugins/checkbox/checkbox.js.map +1 -0
- package/lib/plugins/checkbox/index.d.ts +8 -0
- package/lib/plugins/checkbox/index.js +12 -0
- package/lib/plugins/checkbox/index.js.map +1 -0
- package/lib/plugins/code.d.ts +3 -0
- package/lib/plugins/code.js +61 -0
- package/lib/plugins/code.js.map +1 -0
- package/lib/plugins/cut.d.ts +3 -0
- package/lib/plugins/cut.js +70 -0
- package/lib/plugins/cut.js.map +1 -0
- package/lib/plugins/deflist.d.ts +3 -0
- package/lib/plugins/deflist.js +8 -0
- package/lib/plugins/deflist.js.map +1 -0
- package/lib/plugins/file/const.d.ts +27 -0
- package/lib/plugins/file/const.js +47 -0
- package/lib/plugins/file/const.js.map +1 -0
- package/lib/plugins/file/file.d.ts +8 -0
- package/lib/plugins/file/file.js +63 -0
- package/lib/plugins/file/file.js.map +1 -0
- package/lib/plugins/file/index.d.ts +4 -0
- package/lib/plugins/file/index.js +9 -0
- package/lib/plugins/file/index.js.map +1 -0
- package/lib/plugins/images/collect.d.ts +8 -0
- package/lib/plugins/images/collect.js +43 -0
- package/lib/plugins/images/collect.js.map +1 -0
- package/lib/plugins/images/index.d.ts +10 -0
- package/lib/plugins/images/index.js +81 -0
- package/lib/plugins/images/index.js.map +1 -0
- package/lib/plugins/imsize/const.d.ts +7 -0
- package/lib/plugins/imsize/const.js +12 -0
- package/lib/plugins/imsize/const.js.map +1 -0
- package/lib/plugins/imsize/helpers.d.ts +6 -0
- package/lib/plugins/imsize/helpers.js +64 -0
- package/lib/plugins/imsize/helpers.js.map +1 -0
- package/lib/plugins/imsize/index.d.ts +8 -0
- package/lib/plugins/imsize/index.js +12 -0
- package/lib/plugins/imsize/index.js.map +1 -0
- package/lib/plugins/imsize/plugin.d.ts +3 -0
- package/lib/plugins/imsize/plugin.js +188 -0
- package/lib/plugins/imsize/plugin.js.map +1 -0
- package/lib/plugins/includes/collect.d.ts +8 -0
- package/lib/plugins/includes/collect.js +49 -0
- package/lib/plugins/includes/collect.js.map +1 -0
- package/lib/plugins/includes/index.d.ts +8 -0
- package/lib/plugins/includes/index.js +98 -0
- package/lib/plugins/includes/index.js.map +1 -0
- package/lib/plugins/links/collect.d.ts +7 -0
- package/lib/plugins/links/collect.js +74 -0
- package/lib/plugins/links/collect.js.map +1 -0
- package/lib/plugins/links/constants.d.ts +1 -0
- package/lib/plugins/links/constants.js +5 -0
- package/lib/plugins/links/constants.js.map +1 -0
- package/lib/plugins/links/index.d.ts +24 -0
- package/lib/plugins/links/index.js +178 -0
- package/lib/plugins/links/index.js.map +1 -0
- package/lib/plugins/meta.d.ts +3 -0
- package/lib/plugins/meta.js +8 -0
- package/lib/plugins/meta.js.map +1 -0
- package/lib/plugins/monospace.d.ts +3 -0
- package/lib/plugins/monospace.js +109 -0
- package/lib/plugins/monospace.js.map +1 -0
- package/lib/plugins/notes.d.ts +3 -0
- package/lib/plugins/notes.js +103 -0
- package/lib/plugins/notes.js.map +1 -0
- package/lib/plugins/sup.d.ts +3 -0
- package/lib/plugins/sup.js +8 -0
- package/lib/plugins/sup.js.map +1 -0
- package/lib/plugins/table/index.d.ts +3 -0
- package/lib/plugins/table/index.js +215 -0
- package/lib/plugins/table/index.js.map +1 -0
- package/lib/plugins/tabs.d.ts +4 -0
- package/lib/plugins/tabs.js +4 -0
- package/lib/plugins/tabs.js.map +1 -0
- package/lib/plugins/term/constants.d.ts +1 -0
- package/lib/plugins/term/constants.js +5 -0
- package/lib/plugins/term/constants.js.map +1 -0
- package/lib/plugins/term/index.d.ts +3 -0
- package/lib/plugins/term/index.js +108 -0
- package/lib/plugins/term/index.js.map +1 -0
- package/lib/plugins/term/termDefinitions.d.ts +4 -0
- package/lib/plugins/term/termDefinitions.js +125 -0
- package/lib/plugins/term/termDefinitions.js.map +1 -0
- package/lib/plugins/typings.d.ts +12 -0
- package/lib/plugins/typings.js +3 -0
- package/lib/plugins/typings.js.map +1 -0
- package/lib/plugins/utils.d.ts +6 -0
- package/lib/plugins/utils.js +30 -0
- package/lib/plugins/utils.js.map +1 -0
- package/lib/plugins/video/const.d.ts +10 -0
- package/lib/plugins/video/const.js +22 -0
- package/lib/plugins/video/const.js.map +1 -0
- package/lib/plugins/video/index.d.ts +8 -0
- package/lib/plugins/video/index.js +104 -0
- package/lib/plugins/video/index.js.map +1 -0
- package/lib/plugins/video/parsers.d.ts +6 -0
- package/lib/plugins/video/parsers.js +64 -0
- package/lib/plugins/video/parsers.js.map +1 -0
- package/lib/plugins/video/types.d.ts +34 -0
- package/lib/plugins/video/types.js +3 -0
- package/lib/plugins/video/types.js.map +1 -0
- package/lib/plugins/video/utils.d.ts +2 -0
- package/lib/plugins/video/utils.js +25 -0
- package/lib/plugins/video/utils.js.map +1 -0
- package/lib/plugins.d.ts +3 -0
- package/lib/plugins.js +36 -0
- package/lib/plugins.js.map +1 -0
- package/lib/sanitize.d.ts +12 -0
- package/lib/sanitize.js +572 -0
- package/lib/sanitize.js.map +1 -0
- package/lib/title.d.ts +7 -0
- package/lib/title.js +18 -0
- package/lib/title.js.map +1 -0
- package/lib/typings.d.ts +57 -0
- package/lib/typings.js +3 -0
- package/lib/typings.js.map +1 -0
- package/lib/utils.d.ts +13 -0
- package/lib/utils.js +79 -0
- package/lib/utils.js.map +1 -0
- package/lib/utilsFS.d.ts +27 -0
- package/lib/utilsFS.js +89 -0
- package/lib/utilsFS.js.map +1 -0
- package/lib/yfmlint/index.d.ts +26 -0
- package/lib/yfmlint/index.js +72 -0
- package/lib/yfmlint/index.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/index.d.ts +9 -0
- package/lib/yfmlint/markdownlint-custom-rule/index.js +22 -0
- package/lib/yfmlint/markdownlint-custom-rule/index.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm001.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm001.js +28 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm001.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm002.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm002.js +33 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm002.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm003.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm003.js +33 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm003.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm004.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm004.js +28 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm004.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm005.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm005.js +28 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm005.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm006.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm006.js +28 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm006.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm007.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm007.js +29 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm007.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm008.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm008.js +28 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm008.js.map +1 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm009.d.ts +2 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm009.js +47 -0
- package/lib/yfmlint/markdownlint-custom-rule/yfm009.js.map +1 -0
- package/lib/yfmlint/typings.d.ts +12 -0
- package/lib/yfmlint/typings.js +3 -0
- package/lib/yfmlint/typings.js.map +1 -0
- package/lib/yfmlint/utils.d.ts +9 -0
- package/lib/yfmlint/utils.js +22 -0
- package/lib/yfmlint/utils.js.map +1 -0
- package/lib/yfmlint/yfmlint.d.ts +3 -0
- package/lib/yfmlint/yfmlint.js +69 -0
- package/lib/yfmlint/yfmlint.js.map +1 -0
- package/package.json +106 -0
- package/src/.eslintrc +10 -0
- package/src/js/code.ts +65 -0
- package/src/js/cut.ts +57 -0
- package/src/js/index.ts +6 -0
- package/src/js/polyfill.js +27 -0
- package/src/js/term/index.ts +79 -0
- package/src/js/term/utils.ts +151 -0
- package/src/js/utils.ts +9 -0
- package/src/scss/_anchor.scss +33 -0
- package/src/scss/_code.scss +23 -0
- package/src/scss/_common.scss +407 -0
- package/src/scss/_cut.scss +42 -0
- package/src/scss/_file.scss +35 -0
- package/src/scss/_highlight.scss +96 -0
- package/src/scss/_note.scss +73 -0
- package/src/scss/_print.scss +20 -0
- package/src/scss/_term.scss +79 -0
- package/src/scss/_variables.scss +16 -0
- package/src/scss/yfm.scss +11 -0
- package/src/transform/getObject.ts +10 -0
- package/src/transform/headings.ts +88 -0
- package/src/transform/highlight.ts +33 -0
- package/src/transform/index.ts +50 -0
- package/src/transform/liquid/conditions.ts +259 -0
- package/src/transform/liquid/cycles.ts +244 -0
- package/src/transform/liquid/errors.ts +10 -0
- package/src/transform/liquid/evaluation.ts +145 -0
- package/src/transform/liquid/filters.ts +19 -0
- package/src/transform/liquid/index.ts +141 -0
- package/src/transform/liquid/lexical.ts +86 -0
- package/src/transform/liquid/services/argv.ts +23 -0
- package/src/transform/liquid/sourceMap.ts +72 -0
- package/src/transform/liquid/substitutions.ts +40 -0
- package/src/transform/liquid/utils.ts +30 -0
- package/src/transform/log.ts +60 -0
- package/src/transform/md.ts +123 -0
- package/src/transform/plugins/anchors/collect.ts +101 -0
- package/src/transform/plugins/anchors/constants.ts +2 -0
- package/src/transform/plugins/anchors/index.ts +166 -0
- package/src/transform/plugins/changelog/collect.ts +66 -0
- package/src/transform/plugins/changelog/index.ts +164 -0
- package/src/transform/plugins/changelog/types.ts +10 -0
- package/src/transform/plugins/checkbox/checkbox.ts +107 -0
- package/src/transform/plugins/checkbox/index.ts +15 -0
- package/src/transform/plugins/code.ts +79 -0
- package/src/transform/plugins/cut.ts +98 -0
- package/src/transform/plugins/deflist.ts +5 -0
- package/src/transform/plugins/file/README.md +34 -0
- package/src/transform/plugins/file/const.ts +46 -0
- package/src/transform/plugins/file/file.ts +82 -0
- package/src/transform/plugins/file/index.ts +10 -0
- package/src/transform/plugins/images/collect.ts +60 -0
- package/src/transform/plugins/images/index.ts +119 -0
- package/src/transform/plugins/imsize/const.ts +7 -0
- package/src/transform/plugins/imsize/helpers.ts +75 -0
- package/src/transform/plugins/imsize/index.ts +14 -0
- package/src/transform/plugins/imsize/plugin.ts +214 -0
- package/src/transform/plugins/includes/collect.ts +73 -0
- package/src/transform/plugins/includes/index.ts +127 -0
- package/src/transform/plugins/links/collect.ts +92 -0
- package/src/transform/plugins/links/constants.ts +1 -0
- package/src/transform/plugins/links/index.ts +218 -0
- package/src/transform/plugins/meta.ts +5 -0
- package/src/transform/plugins/monospace.ts +141 -0
- package/src/transform/plugins/notes.ts +134 -0
- package/src/transform/plugins/sup.ts +5 -0
- package/src/transform/plugins/table/index.ts +290 -0
- package/src/transform/plugins/tabs.ts +3 -0
- package/src/transform/plugins/term/constants.ts +1 -0
- package/src/transform/plugins/term/index.ts +139 -0
- package/src/transform/plugins/term/termDefinitions.ts +177 -0
- package/src/transform/plugins/typings.ts +14 -0
- package/src/transform/plugins/utils.ts +38 -0
- package/src/transform/plugins/video/const.ts +20 -0
- package/src/transform/plugins/video/index.ts +134 -0
- package/src/transform/plugins/video/parsers.ts +65 -0
- package/src/transform/plugins/video/types.ts +27 -0
- package/src/transform/plugins/video/utils.ts +24 -0
- package/src/transform/plugins.ts +35 -0
- package/src/transform/sanitize.ts +596 -0
- package/src/transform/title.ts +22 -0
- package/src/transform/typings.ts +64 -0
- package/src/transform/utils.ts +91 -0
- package/src/transform/utilsFS.ts +128 -0
- package/src/transform/yfmlint/README.md +48 -0
- package/src/transform/yfmlint/index.ts +124 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/index.ts +9 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm001.ts +36 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm002.ts +33 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm003.ts +33 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm004.ts +27 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm005.ts +27 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm006.ts +26 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm007.ts +28 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm008.ts +26 -0
- package/src/transform/yfmlint/markdownlint-custom-rule/yfm009.ts +54 -0
- package/src/transform/yfmlint/typings.ts +13 -0
- package/src/transform/yfmlint/utils.ts +31 -0
- package/src/transform/yfmlint/yfmlint.ts +73 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transform/plugins/changelog/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/transform/plugins/changelog/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type MarkdownIt from 'markdown-it';
|
|
2
|
+
import type StateCore from 'markdown-it/lib/rules_core/state_core';
|
|
3
|
+
export declare type CheckboxOptions = {
|
|
4
|
+
idPrefix?: string;
|
|
5
|
+
divClass?: string;
|
|
6
|
+
};
|
|
7
|
+
export declare const checkboxReplace: (_md: MarkdownIt, opts: CheckboxOptions) => (state: StateCore) => void;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkboxReplace = void 0;
|
|
4
|
+
// eslint-disable-next-line no-useless-escape
|
|
5
|
+
const pattern = /^\[(X|\s|\_|\-)\]\s(.*)/i;
|
|
6
|
+
function matchOpenToken(tokens, i) {
|
|
7
|
+
return (tokens[i].type === 'paragraph_open' &&
|
|
8
|
+
tokens[i + 1].type === 'inline' &&
|
|
9
|
+
tokens[i + 1].content.match(pattern));
|
|
10
|
+
}
|
|
11
|
+
const checkboxReplace = function (_md, opts) {
|
|
12
|
+
let lastId = 0;
|
|
13
|
+
const defaults = {
|
|
14
|
+
divClass: 'checkbox',
|
|
15
|
+
idPrefix: 'checkbox',
|
|
16
|
+
};
|
|
17
|
+
const options = Object.assign(defaults, opts);
|
|
18
|
+
const createTokens = function (state, checked, label, i) {
|
|
19
|
+
let token;
|
|
20
|
+
const nodes = [];
|
|
21
|
+
/**
|
|
22
|
+
* <div class="checkbox">
|
|
23
|
+
*/
|
|
24
|
+
token = new state.Token('checkbox_open', 'div', 1);
|
|
25
|
+
token.block = true;
|
|
26
|
+
token.map = state.tokens[i].map;
|
|
27
|
+
token.attrs = [['class', options.divClass]];
|
|
28
|
+
nodes.push(token);
|
|
29
|
+
/**
|
|
30
|
+
* <input type="checkbox" id="checkbox{n}" checked="true">
|
|
31
|
+
*/
|
|
32
|
+
const id = options.idPrefix + lastId;
|
|
33
|
+
lastId += 1;
|
|
34
|
+
token = new state.Token('checkbox_input', 'input', 0);
|
|
35
|
+
token.block = true;
|
|
36
|
+
token.map = state.tokens[i].map;
|
|
37
|
+
token.attrs = [
|
|
38
|
+
['type', 'checkbox'],
|
|
39
|
+
['id', id],
|
|
40
|
+
['disabled', ''],
|
|
41
|
+
];
|
|
42
|
+
if (checked === true) {
|
|
43
|
+
token.attrs.push(['checked', 'true']);
|
|
44
|
+
}
|
|
45
|
+
nodes.push(token);
|
|
46
|
+
/**
|
|
47
|
+
* <label for="checkbox{n}">
|
|
48
|
+
*/
|
|
49
|
+
token = new state.Token('checkbox_label_open', 'label', 1);
|
|
50
|
+
token.attrs = [['for', id]];
|
|
51
|
+
nodes.push(token);
|
|
52
|
+
/**
|
|
53
|
+
* content of label tag
|
|
54
|
+
*/
|
|
55
|
+
token = state.md.parseInline(label, state.env)[0];
|
|
56
|
+
nodes.push(token);
|
|
57
|
+
/**
|
|
58
|
+
* closing tags
|
|
59
|
+
*/
|
|
60
|
+
token = new state.Token('checkbox_label_close', 'label', -1);
|
|
61
|
+
token.block = true;
|
|
62
|
+
token.map = state.tokens[i].map;
|
|
63
|
+
nodes.push(token);
|
|
64
|
+
token = new state.Token('checkbox_close', 'div', -1);
|
|
65
|
+
token.block = true;
|
|
66
|
+
token.map = state.tokens[i].map;
|
|
67
|
+
nodes.push(token);
|
|
68
|
+
return nodes;
|
|
69
|
+
};
|
|
70
|
+
const splitTextToken = function (state, matches, i) {
|
|
71
|
+
let checked = false;
|
|
72
|
+
const value = matches[1];
|
|
73
|
+
const label = matches[2];
|
|
74
|
+
if (value === 'X' || value === 'x') {
|
|
75
|
+
checked = true;
|
|
76
|
+
}
|
|
77
|
+
return createTokens(state, checked, label, i);
|
|
78
|
+
};
|
|
79
|
+
return function (state) {
|
|
80
|
+
const blockTokens = state.tokens;
|
|
81
|
+
for (let i = 0; i < blockTokens.length; i++) {
|
|
82
|
+
const match = matchOpenToken(blockTokens, i);
|
|
83
|
+
if (!match) {
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
blockTokens.splice(i, 3, ...splitTextToken(state, match, i));
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
exports.checkboxReplace = checkboxReplace;
|
|
91
|
+
//# sourceMappingURL=checkbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkbox.js","sourceRoot":"","sources":["../../../src/transform/plugins/checkbox/checkbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import MarkdownIt from 'markdown-it';
|
|
2
|
+
import { CheckboxOptions } from './checkbox';
|
|
3
|
+
/**
|
|
4
|
+
* Checkbox plugin for markdown-it.
|
|
5
|
+
* Forked from https://github.com/mcecot/markdown-it-checkbox
|
|
6
|
+
*/
|
|
7
|
+
declare const checkbox: (md: MarkdownIt, options: CheckboxOptions) => MarkdownIt;
|
|
8
|
+
export = checkbox;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const checkbox_1 = require("./checkbox");
|
|
3
|
+
/**
|
|
4
|
+
* Checkbox plugin for markdown-it.
|
|
5
|
+
* Forked from https://github.com/mcecot/markdown-it-checkbox
|
|
6
|
+
*/
|
|
7
|
+
const checkbox = (md, options) => {
|
|
8
|
+
md.core.ruler.push('checkbox', (0, checkbox_1.checkboxReplace)(md, options));
|
|
9
|
+
return md;
|
|
10
|
+
};
|
|
11
|
+
module.exports = checkbox;
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transform/plugins/checkbox/index.ts"],"names":[],"mappings":";AACA,yCAA4D;AAE5D;;;GAGG;AAEH,MAAM,QAAQ,GAAG,CAAC,EAAc,EAAE,OAAwB,EAAE,EAAE;IAC1D,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAA,0BAAe,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7D,OAAO,EAAE,CAAC;AACd,CAAC,CAAC;AAEF,iBAAS,QAAQ,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable max-len */
|
|
3
|
+
const utils_1 = require("./utils");
|
|
4
|
+
const wrapInClipboard = (element, id) => {
|
|
5
|
+
return `
|
|
6
|
+
<div class="yfm-clipboard">
|
|
7
|
+
${element}
|
|
8
|
+
<svg width="16" height="16" viewBox="0 0 24 24" class="yfm-clipboard-button" data-animation="${id}">
|
|
9
|
+
<path
|
|
10
|
+
fill="currentColor"
|
|
11
|
+
d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"
|
|
12
|
+
/>
|
|
13
|
+
<path
|
|
14
|
+
stroke="currentColor"
|
|
15
|
+
fill="transparent"
|
|
16
|
+
stroke-width="1.5"
|
|
17
|
+
d="M9.5 13l3 3l5 -5"
|
|
18
|
+
visibility="hidden"
|
|
19
|
+
>
|
|
20
|
+
<animate
|
|
21
|
+
id="visibileAnimation-${id}"
|
|
22
|
+
attributeName="visibility"
|
|
23
|
+
from="hidden"
|
|
24
|
+
to="visible"
|
|
25
|
+
dur="0.2s"
|
|
26
|
+
fill="freeze"
|
|
27
|
+
begin=""
|
|
28
|
+
/>
|
|
29
|
+
<animate
|
|
30
|
+
id="hideAnimation-${id}"
|
|
31
|
+
attributeName="visibility"
|
|
32
|
+
from="visible"
|
|
33
|
+
to="hidden"
|
|
34
|
+
dur="1s"
|
|
35
|
+
begin="visibileAnimation-${id}.end+1"
|
|
36
|
+
fill="freeze"
|
|
37
|
+
/>
|
|
38
|
+
</path>
|
|
39
|
+
</svg>
|
|
40
|
+
</div>
|
|
41
|
+
`;
|
|
42
|
+
};
|
|
43
|
+
function termReplace(str, env) {
|
|
44
|
+
const regTerms = Object.keys(env.terms)
|
|
45
|
+
.map((el) => el.substr(1))
|
|
46
|
+
.join('|');
|
|
47
|
+
const regText = '\\[([^\\[]+)\\](\\(\\*(' + regTerms + ')\\))';
|
|
48
|
+
const reg = new RegExp(regText, 'g');
|
|
49
|
+
const termCode = str.replace(reg, (_match, p1, _p2, p3) => `<i class="yfm yfm-term_title" term-key=":${p3}" id="${(0, utils_1.generateID)()}">${p1}</i>`);
|
|
50
|
+
return termCode || str;
|
|
51
|
+
}
|
|
52
|
+
const code = (md) => {
|
|
53
|
+
const superCodeRenderer = md.renderer.rules.fence;
|
|
54
|
+
md.renderer.rules.fence = function (tokens, idx, options, env, self) {
|
|
55
|
+
const superCode = superCodeRenderer === null || superCodeRenderer === void 0 ? void 0 : superCodeRenderer(tokens, idx, options, env, self);
|
|
56
|
+
const superCodeWithTerms = superCode && (env === null || env === void 0 ? void 0 : env.terms) ? termReplace(superCode, env) : superCode;
|
|
57
|
+
return wrapInClipboard(superCodeWithTerms, idx);
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
module.exports = code;
|
|
61
|
+
//# sourceMappingURL=code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/transform/plugins/code.ts"],"names":[],"mappings":";AAAA,4BAA4B;AAG5B,mCAAmC;AAEnC,MAAM,eAAe,GAAG,CAAC,OAA2B,EAAE,EAAU,EAAE,EAAE;IAChE,OAAO;;MAEL,OAAO;mGACsF,EAAE;;;;;;;;;;;;;wCAa7D,EAAE;;;;;;;;;oCASN,EAAE;;;;;2CAKK,EAAE;;;;;;CAM5C,CAAC;AACF,CAAC,CAAC;AAQF,SAAS,WAAW,CAAC,GAAW,EAAE,GAAY;IAC1C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;SAClC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACzB,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,MAAM,OAAO,GAAG,yBAAyB,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC/D,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAErC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CACxB,GAAG,EACH,CAAC,MAAc,EAAE,EAAU,EAAE,GAAW,EAAE,EAAU,EAAE,EAAE,CACpD,4CAA4C,EAAE,SAAS,IAAA,kBAAU,GAAE,KAAK,EAAE,MAAM,CACvF,CAAC;IAEF,OAAO,QAAQ,IAAI,GAAG,CAAC;AAC3B,CAAC;AAED,MAAM,IAAI,GAAuB,CAAC,EAAE,EAAE,EAAE;IACpC,MAAM,iBAAiB,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;IAClD,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI;QAC/D,MAAM,SAAS,GAAG,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAG,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACvE,MAAM,kBAAkB,GACpB,SAAS,KAAI,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,CAAA,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEtE,OAAO,eAAe,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,iBAAS,IAAI,CAAC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const utils_1 = require("./utils");
|
|
3
|
+
const CUT_REGEXP = /^{%\s*cut\s*["|'](.*)["|']\s*%}/;
|
|
4
|
+
const matchCloseToken = (tokens, i) => {
|
|
5
|
+
return (tokens[i].type === 'paragraph_open' &&
|
|
6
|
+
tokens[i + 1].type === 'inline' &&
|
|
7
|
+
tokens[i + 1].content.trim() === '{% endcut %}');
|
|
8
|
+
};
|
|
9
|
+
const matchOpenToken = (tokens, i) => {
|
|
10
|
+
return (tokens[i].type === 'paragraph_open' &&
|
|
11
|
+
tokens[i + 1].type === 'inline' &&
|
|
12
|
+
tokens[i + 1].content.match(CUT_REGEXP));
|
|
13
|
+
};
|
|
14
|
+
const findCloseTokenIdx = (0, utils_1.nestedCloseTokenIdxFactory)('Cut', matchOpenToken, matchCloseToken);
|
|
15
|
+
const cut = (md, { path, log }) => {
|
|
16
|
+
const plugin = (state) => {
|
|
17
|
+
const tokens = state.tokens;
|
|
18
|
+
let i = 0;
|
|
19
|
+
while (i < tokens.length) {
|
|
20
|
+
const match = matchOpenToken(tokens, i);
|
|
21
|
+
if (match) {
|
|
22
|
+
const closeTokenIdx = findCloseTokenIdx(tokens, i + 4, path, log);
|
|
23
|
+
if (!closeTokenIdx) {
|
|
24
|
+
i += 3;
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
const newOpenToken = new state.Token('yfm_cut_open', 'div', 1);
|
|
28
|
+
newOpenToken.attrSet('class', 'yfm-cut');
|
|
29
|
+
newOpenToken.map = tokens[i].map;
|
|
30
|
+
const titleOpen = new state.Token('yfm_cut_title_open', 'div', 1);
|
|
31
|
+
titleOpen.attrSet('class', 'yfm-cut-title');
|
|
32
|
+
const titleInline = state.md.parseInline(match[1] === undefined ? 'ad' : match[1], state.env)[0];
|
|
33
|
+
const titleClose = new state.Token('yfm_cut_title_close', 'div', -1);
|
|
34
|
+
const contentOpen = new state.Token('yfm_cut_content_open', 'div', 1);
|
|
35
|
+
contentOpen.attrSet('class', 'yfm-cut-content');
|
|
36
|
+
if (newOpenToken.map) {
|
|
37
|
+
const contentOpenStart = newOpenToken.map[0] + 1;
|
|
38
|
+
const contentOpenEnd = newOpenToken.map[0] + 2;
|
|
39
|
+
contentOpen.map = [contentOpenStart, contentOpenEnd];
|
|
40
|
+
}
|
|
41
|
+
const contentClose = new state.Token('yfm_cut_content_close', 'div', -1);
|
|
42
|
+
const newCloseToken = new state.Token('yfm_cut_close', 'div', -1);
|
|
43
|
+
newCloseToken.map = tokens[closeTokenIdx].map;
|
|
44
|
+
const insideTokens = [
|
|
45
|
+
newOpenToken,
|
|
46
|
+
titleOpen,
|
|
47
|
+
titleInline,
|
|
48
|
+
titleClose,
|
|
49
|
+
contentOpen,
|
|
50
|
+
...tokens.slice(i + 3, closeTokenIdx),
|
|
51
|
+
contentClose,
|
|
52
|
+
newCloseToken,
|
|
53
|
+
];
|
|
54
|
+
tokens.splice(i, closeTokenIdx - i + 3, ...insideTokens);
|
|
55
|
+
i++;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
i++;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
try {
|
|
63
|
+
md.core.ruler.before('curly_attributes', 'cut', plugin);
|
|
64
|
+
}
|
|
65
|
+
catch (e) {
|
|
66
|
+
md.core.ruler.push('cut', plugin);
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
module.exports = cut;
|
|
70
|
+
//# sourceMappingURL=cut.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cut.js","sourceRoot":"","sources":["../../src/transform/plugins/cut.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
// @ts-expect-error
|
|
6
|
+
const markdown_it_deflist_1 = __importDefault(require("markdown-it-deflist"));
|
|
7
|
+
module.exports = markdown_it_deflist_1.default;
|
|
8
|
+
//# sourceMappingURL=deflist.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deflist.js","sourceRoot":"","sources":["../../src/transform/plugins/deflist.ts"],"names":[],"mappings":";;;;AAAA,mBAAmB;AACnB,8EAA0C;AAG1C,iBAAS,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare enum FileSpecialAttr {
|
|
2
|
+
Src = "src",
|
|
3
|
+
Name = "name",
|
|
4
|
+
Lang = "lang"
|
|
5
|
+
}
|
|
6
|
+
export declare enum LinkHtmlAttr {
|
|
7
|
+
Download = "download",
|
|
8
|
+
Href = "href",
|
|
9
|
+
HrefLang = "hreflang",
|
|
10
|
+
Media = "media",
|
|
11
|
+
Ping = "ping",
|
|
12
|
+
ReferrerPolicy = "referrerpolicy",
|
|
13
|
+
Rel = "rel",
|
|
14
|
+
Target = "target",
|
|
15
|
+
Type = "type"
|
|
16
|
+
}
|
|
17
|
+
export declare const FILE_TO_LINK_ATTRS_MAP: Record<FileSpecialAttr, LinkHtmlAttr>;
|
|
18
|
+
export declare const RULE_NAME = "yfm_file_inline";
|
|
19
|
+
export declare const KNOWN_ATTRS: readonly string[];
|
|
20
|
+
export declare const REQUIRED_ATTRS: readonly string[];
|
|
21
|
+
export declare const FILE_TOKEN = "yfm_file";
|
|
22
|
+
export declare const PREFIX = "{% file ";
|
|
23
|
+
export declare const PREFIX_LENGTH: number;
|
|
24
|
+
export declare enum FileClassName {
|
|
25
|
+
Link = "yfm-file",
|
|
26
|
+
Icon = "yfm-file__icon"
|
|
27
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FileClassName = exports.PREFIX_LENGTH = exports.PREFIX = exports.FILE_TOKEN = exports.REQUIRED_ATTRS = exports.KNOWN_ATTRS = exports.RULE_NAME = exports.FILE_TO_LINK_ATTRS_MAP = exports.LinkHtmlAttr = exports.FileSpecialAttr = void 0;
|
|
4
|
+
var FileSpecialAttr;
|
|
5
|
+
(function (FileSpecialAttr) {
|
|
6
|
+
FileSpecialAttr["Src"] = "src";
|
|
7
|
+
FileSpecialAttr["Name"] = "name";
|
|
8
|
+
FileSpecialAttr["Lang"] = "lang";
|
|
9
|
+
})(FileSpecialAttr = exports.FileSpecialAttr || (exports.FileSpecialAttr = {}));
|
|
10
|
+
// https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attributes
|
|
11
|
+
var LinkHtmlAttr;
|
|
12
|
+
(function (LinkHtmlAttr) {
|
|
13
|
+
LinkHtmlAttr["Download"] = "download";
|
|
14
|
+
LinkHtmlAttr["Href"] = "href";
|
|
15
|
+
LinkHtmlAttr["HrefLang"] = "hreflang";
|
|
16
|
+
LinkHtmlAttr["Media"] = "media";
|
|
17
|
+
LinkHtmlAttr["Ping"] = "ping";
|
|
18
|
+
LinkHtmlAttr["ReferrerPolicy"] = "referrerpolicy";
|
|
19
|
+
LinkHtmlAttr["Rel"] = "rel";
|
|
20
|
+
LinkHtmlAttr["Target"] = "target";
|
|
21
|
+
LinkHtmlAttr["Type"] = "type";
|
|
22
|
+
})(LinkHtmlAttr = exports.LinkHtmlAttr || (exports.LinkHtmlAttr = {}));
|
|
23
|
+
exports.FILE_TO_LINK_ATTRS_MAP = {
|
|
24
|
+
[FileSpecialAttr.Src]: LinkHtmlAttr.Href,
|
|
25
|
+
[FileSpecialAttr.Name]: LinkHtmlAttr.Download,
|
|
26
|
+
[FileSpecialAttr.Lang]: LinkHtmlAttr.HrefLang,
|
|
27
|
+
};
|
|
28
|
+
exports.RULE_NAME = 'yfm_file_inline';
|
|
29
|
+
exports.KNOWN_ATTRS = [
|
|
30
|
+
FileSpecialAttr.Src,
|
|
31
|
+
FileSpecialAttr.Name,
|
|
32
|
+
FileSpecialAttr.Lang,
|
|
33
|
+
LinkHtmlAttr.ReferrerPolicy,
|
|
34
|
+
LinkHtmlAttr.Rel,
|
|
35
|
+
LinkHtmlAttr.Target,
|
|
36
|
+
LinkHtmlAttr.Type,
|
|
37
|
+
];
|
|
38
|
+
exports.REQUIRED_ATTRS = [FileSpecialAttr.Src, FileSpecialAttr.Name];
|
|
39
|
+
exports.FILE_TOKEN = 'yfm_file';
|
|
40
|
+
exports.PREFIX = '{% file ';
|
|
41
|
+
exports.PREFIX_LENGTH = exports.PREFIX.length;
|
|
42
|
+
var FileClassName;
|
|
43
|
+
(function (FileClassName) {
|
|
44
|
+
FileClassName["Link"] = "yfm-file";
|
|
45
|
+
FileClassName["Icon"] = "yfm-file__icon";
|
|
46
|
+
})(FileClassName = exports.FileClassName || (exports.FileClassName = {}));
|
|
47
|
+
//# sourceMappingURL=const.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/transform/plugins/file/const.ts"],"names":[],"mappings":";;;AAAA,IAAY,eAIX;AAJD,WAAY,eAAe;IACvB,8BAAW,CAAA;IACX,gCAAa,CAAA;IACb,gCAAa,CAAA;AACjB,CAAC,EAJW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAI1B;AAED,yEAAyE;AACzE,IAAY,YAUX;AAVD,WAAY,YAAY;IACpB,qCAAqB,CAAA;IACrB,6BAAa,CAAA;IACb,qCAAqB,CAAA;IACrB,+BAAe,CAAA;IACf,6BAAa,CAAA;IACb,iDAAiC,CAAA;IACjC,2BAAW,CAAA;IACX,iCAAiB,CAAA;IACjB,6BAAa,CAAA;AACjB,CAAC,EAVW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAUvB;AAEY,QAAA,sBAAsB,GAA0C;IACzE,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,IAAI;IACxC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,QAAQ;IAC7C,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,QAAQ;CAChD,CAAC;AAEW,QAAA,SAAS,GAAG,iBAAiB,CAAC;AAC9B,QAAA,WAAW,GAAsB;IAC1C,eAAe,CAAC,GAAG;IACnB,eAAe,CAAC,IAAI;IACpB,eAAe,CAAC,IAAI;IACpB,YAAY,CAAC,cAAc;IAC3B,YAAY,CAAC,GAAG;IAChB,YAAY,CAAC,MAAM;IACnB,YAAY,CAAC,IAAI;CACpB,CAAC;AACW,QAAA,cAAc,GAAsB,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;AAEhF,QAAA,UAAU,GAAG,UAAU,CAAC;AAExB,QAAA,MAAM,GAAG,UAAU,CAAC;AACpB,QAAA,aAAa,GAAG,cAAM,CAAC,MAAM,CAAC;AAE3C,IAAY,aAGX;AAHD,WAAY,aAAa;IACrB,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;AAC3B,CAAC,EAHW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAGxB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type MarkdownIt from 'markdown-it';
|
|
2
|
+
import type ParserInline from 'markdown-it/lib/parser_inline';
|
|
3
|
+
import type Renderer from 'markdown-it/lib/renderer';
|
|
4
|
+
export declare type FileOptions = {
|
|
5
|
+
fileExtraAttrs: [string, string][];
|
|
6
|
+
};
|
|
7
|
+
export declare const fileRenderer: (md: MarkdownIt) => Renderer.RenderRule;
|
|
8
|
+
export declare const fileParser: (_md: MarkdownIt, opts?: FileOptions) => ParserInline.RuleInline;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.fileParser = exports.fileRenderer = void 0;
|
|
4
|
+
const const_1 = require("./const");
|
|
5
|
+
const fileRenderer = (md) => {
|
|
6
|
+
const iconHtml = `<span class="${md.utils.escapeHtml(const_1.FileClassName.Icon)}"></span>`;
|
|
7
|
+
return (tokens, idx, _opts, _env, self) => {
|
|
8
|
+
const token = tokens[idx];
|
|
9
|
+
return `<a${self.renderAttrs(token)}>${iconHtml}${md.utils.escapeHtml(token.content)}</a>`;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
exports.fileRenderer = fileRenderer;
|
|
13
|
+
const fileParser = (_md, opts) => {
|
|
14
|
+
return (state, silent) => {
|
|
15
|
+
if (state.src.substring(state.pos, state.pos + const_1.PREFIX_LENGTH) !== const_1.PREFIX)
|
|
16
|
+
return false;
|
|
17
|
+
// the rest of line after '{% file '
|
|
18
|
+
const searchStr = state.src.slice(state.pos + const_1.PREFIX_LENGTH, state.posMax);
|
|
19
|
+
// loking for pattern 'src="..." name="..." etc="value" %}'
|
|
20
|
+
const matchResult = searchStr.match(/^((?:\s*\w+=(?:"[^"]+"|'[^']+')\s)+)\s*%}/);
|
|
21
|
+
if (!matchResult)
|
|
22
|
+
return false;
|
|
23
|
+
const paramsGroupLength = matchResult[0].length; // '(src="..." name="...")'.length
|
|
24
|
+
const paramsStr = matchResult[1]; // 'src="..." name="..."'
|
|
25
|
+
// find pairs of key="foo" or key='bar'
|
|
26
|
+
const params = paramsStr.match(/\w+=(?:"[^"]+"|'[^']+')/g);
|
|
27
|
+
if (!params)
|
|
28
|
+
return false;
|
|
29
|
+
const attrsObj = {};
|
|
30
|
+
params.forEach((param) => {
|
|
31
|
+
const indexKey = param.indexOf('=');
|
|
32
|
+
const key = param.slice(0, indexKey);
|
|
33
|
+
const value = param.slice(indexKey + 2, -1);
|
|
34
|
+
if (const_1.KNOWN_ATTRS.includes(key) && value) {
|
|
35
|
+
attrsObj[key] = value;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
const hasAllRequiredAttrs = const_1.REQUIRED_ATTRS.every((attr) => attr in attrsObj);
|
|
39
|
+
if (!hasAllRequiredAttrs)
|
|
40
|
+
return false;
|
|
41
|
+
if (!silent) {
|
|
42
|
+
const token = state.push(const_1.FILE_TOKEN, '', 0);
|
|
43
|
+
token.block = false;
|
|
44
|
+
token.markup = const_1.PREFIX;
|
|
45
|
+
token.content = attrsObj[const_1.FileSpecialAttr.Name];
|
|
46
|
+
token.attrs = Object.entries(attrsObj);
|
|
47
|
+
token.attrSet('class', const_1.FileClassName.Link);
|
|
48
|
+
for (const attr of token.attrs) {
|
|
49
|
+
if (attr[0] in const_1.FILE_TO_LINK_ATTRS_MAP) {
|
|
50
|
+
attr[0] = const_1.FILE_TO_LINK_ATTRS_MAP[attr[0]];
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
if (Array.isArray(opts === null || opts === void 0 ? void 0 : opts.fileExtraAttrs)) {
|
|
54
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
55
|
+
token.attrs.push(...opts.fileExtraAttrs);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
state.pos = state.pos + const_1.PREFIX_LENGTH + paramsGroupLength;
|
|
59
|
+
return true;
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
exports.fileParser = fileParser;
|
|
63
|
+
//# sourceMappingURL=file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../../src/transform/plugins/file/file.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const const_1 = require("./const");
|
|
3
|
+
const file_1 = require("./file");
|
|
4
|
+
const filePlugin = (md, opts) => {
|
|
5
|
+
md.inline.ruler.push(const_1.RULE_NAME, (0, file_1.fileParser)(md, opts));
|
|
6
|
+
md.renderer.rules[const_1.FILE_TOKEN] = (0, file_1.fileRenderer)(md);
|
|
7
|
+
};
|
|
8
|
+
module.exports = filePlugin;
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transform/plugins/file/index.ts"],"names":[],"mappings":";AACA,mCAA8C;AAC9C,iCAA6D;AAE7D,MAAM,UAAU,GAAmC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE;IAC5D,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAS,EAAE,IAAA,iBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;IACtD,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAU,CAAC,GAAG,IAAA,mBAAY,EAAC,EAAE,CAAC,CAAC;AACrD,CAAC,CAAC;AAEF,iBAAS,UAAU,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { MarkdownItPluginOpts } from '../typings';
|
|
2
|
+
declare type Options = MarkdownItPluginOpts & {
|
|
3
|
+
destPath: string;
|
|
4
|
+
copyFile: (path: string, dest: string) => void;
|
|
5
|
+
singlePage: boolean;
|
|
6
|
+
};
|
|
7
|
+
declare const collect: (input: string, options: Options) => string | null;
|
|
8
|
+
export = collect;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
const markdown_it_1 = __importDefault(require("markdown-it"));
|
|
6
|
+
const path_1 = require("path");
|
|
7
|
+
const utils_1 = require("../../utils");
|
|
8
|
+
const utilsFS_1 = require("../../utilsFS");
|
|
9
|
+
const imsize_1 = __importDefault(require("../imsize"));
|
|
10
|
+
const collect = (input, options) => {
|
|
11
|
+
const md = new markdown_it_1.default().use(imsize_1.default);
|
|
12
|
+
const { root, path, destPath = '', copyFile, singlePage } = options;
|
|
13
|
+
const tokens = md.parse(input, {});
|
|
14
|
+
let result = input;
|
|
15
|
+
tokens.forEach((token) => {
|
|
16
|
+
if (token.type !== 'inline') {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const children = token.children || [];
|
|
20
|
+
children.forEach((childToken) => {
|
|
21
|
+
if (childToken.type !== 'image') {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const src = childToken.attrGet('src') || '';
|
|
25
|
+
if (!(0, utils_1.isLocalUrl)(src)) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
const targetPath = (0, utilsFS_1.resolveRelativePath)(path, src);
|
|
29
|
+
const targetDestPath = (0, utilsFS_1.resolveRelativePath)(destPath, src);
|
|
30
|
+
if (singlePage && !path.includes('_includes/')) {
|
|
31
|
+
const newSrc = (0, path_1.relative)(root, (0, utilsFS_1.resolveRelativePath)(path, src));
|
|
32
|
+
result = result.replace(src, newSrc);
|
|
33
|
+
}
|
|
34
|
+
copyFile(targetPath, targetDestPath);
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
if (singlePage) {
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
return null;
|
|
41
|
+
};
|
|
42
|
+
module.exports = collect;
|
|
43
|
+
//# sourceMappingURL=collect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collect.js","sourceRoot":"","sources":["../../../src/transform/plugins/images/collect.ts"],"names":[],"mappings":";;;;AAAA,8DAAqC;AACrC,+BAA8B;AAE9B,uCAAuC;AACvC,2CAAkD;AAClD,uDAA+B;AAS/B,MAAM,OAAO,GAAG,CAAC,KAAa,EAAE,OAAgB,EAAE,EAAE;IAChD,MAAM,EAAE,GAAG,IAAI,qBAAU,EAAE,CAAC,GAAG,CAAC,gBAAM,CAAC,CAAC;IAExC,MAAM,EAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,GAAG,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAC,GAAG,OAAO,CAAC;IAClE,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnC,IAAI,MAAM,GAAG,KAAK,CAAC;IAEnB,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE;YACzB,OAAO;SACV;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC;QAEtC,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;YAC5B,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE;gBAC7B,OAAO;aACV;YAED,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAE5C,IAAI,CAAC,IAAA,kBAAU,EAAC,GAAG,CAAC,EAAE;gBAClB,OAAO;aACV;YAED,MAAM,UAAU,GAAG,IAAA,6BAAmB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAClD,MAAM,cAAc,GAAG,IAAA,6BAAmB,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAE1D,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;gBAC5C,MAAM,MAAM,GAAG,IAAA,eAAQ,EAAC,IAAI,EAAE,IAAA,6BAAmB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;gBAE9D,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;aACxC;YAED,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,IAAI,UAAU,EAAE;QACZ,OAAO,MAAM,CAAC;KACjB;IAED,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,iBAAS,OAAO,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { MarkdownItPluginCb, MarkdownItPluginOpts } from '../typings';
|
|
2
|
+
interface ImageOpts extends MarkdownItPluginOpts {
|
|
3
|
+
assetsPublicPath: string;
|
|
4
|
+
}
|
|
5
|
+
interface SVGOpts extends MarkdownItPluginOpts {
|
|
6
|
+
notFoundCb: (s: string) => void;
|
|
7
|
+
}
|
|
8
|
+
declare type Opts = SVGOpts & ImageOpts;
|
|
9
|
+
declare const index: MarkdownItPluginCb<Opts>;
|
|
10
|
+
export = index;
|