@tryghost/url-utils 5.0.0-rc.1 → 5.1.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/lib/UrlUtils.d.ts +147 -0
- package/lib/UrlUtils.js +270 -220
- package/lib/index.d.ts +2 -0
- package/lib/index.js +6 -0
- package/lib/utils/absolute-to-relative.d.ts +19 -0
- package/lib/utils/absolute-to-relative.js +16 -19
- package/lib/utils/absolute-to-transform-ready.d.ts +13 -0
- package/lib/utils/absolute-to-transform-ready.js +39 -94
- package/lib/utils/build-early-exit-match.d.ts +24 -0
- package/lib/utils/build-early-exit-match.js +39 -0
- package/lib/utils/deduplicate-double-slashes.d.ts +2 -0
- package/lib/utils/deduplicate-double-slashes.js +7 -3
- package/lib/utils/deduplicate-subdirectory.d.ts +9 -0
- package/lib/utils/deduplicate-subdirectory.js +5 -9
- package/lib/utils/html-absolute-to-relative.d.ts +3 -0
- package/lib/utils/html-absolute-to-relative.js +12 -12
- package/lib/utils/html-absolute-to-transform-ready.d.ts +3 -0
- package/lib/utils/html-absolute-to-transform-ready.js +18 -38
- package/lib/utils/html-relative-to-absolute.d.ts +3 -0
- package/lib/utils/html-relative-to-absolute.js +11 -10
- package/lib/utils/html-relative-to-transform-ready.d.ts +3 -0
- package/lib/utils/html-relative-to-transform-ready.js +18 -13
- package/lib/utils/html-to-transform-ready.d.ts +3 -0
- package/lib/utils/html-to-transform-ready.js +18 -10
- package/lib/utils/html-transform.d.ts +3 -0
- package/lib/utils/html-transform.js +26 -47
- package/lib/utils/index.d.ts +76 -0
- package/lib/utils/index.js +116 -37
- package/lib/utils/is-ssl.d.ts +2 -0
- package/lib/utils/is-ssl.js +5 -5
- package/lib/utils/lexical-absolute-to-relative.d.ts +3 -0
- package/lib/utils/lexical-absolute-to-relative.js +12 -11
- package/lib/utils/lexical-absolute-to-transform-ready.d.ts +3 -0
- package/lib/utils/lexical-absolute-to-transform-ready.js +13 -12
- package/lib/utils/lexical-relative-to-absolute.d.ts +3 -0
- package/lib/utils/lexical-relative-to-absolute.js +11 -9
- package/lib/utils/lexical-relative-to-transform-ready.d.ts +3 -0
- package/lib/utils/lexical-relative-to-transform-ready.js +11 -9
- package/lib/utils/lexical-to-transform-ready.d.ts +3 -0
- package/lib/utils/lexical-to-transform-ready.js +18 -10
- package/lib/utils/lexical-transform.d.ts +3 -0
- package/lib/utils/lexical-transform.js +25 -36
- package/lib/utils/markdown-absolute-to-relative.d.ts +3 -0
- package/lib/utils/markdown-absolute-to-relative.js +13 -13
- package/lib/utils/markdown-absolute-to-transform-ready.d.ts +3 -0
- package/lib/utils/markdown-absolute-to-transform-ready.js +19 -15
- package/lib/utils/markdown-relative-to-absolute.d.ts +3 -0
- package/lib/utils/markdown-relative-to-absolute.js +13 -13
- package/lib/utils/markdown-relative-to-transform-ready.d.ts +3 -0
- package/lib/utils/markdown-relative-to-transform-ready.js +13 -13
- package/lib/utils/markdown-to-transform-ready.d.ts +3 -0
- package/lib/utils/markdown-to-transform-ready.js +18 -10
- package/lib/utils/markdown-transform.d.ts +3 -0
- package/lib/utils/markdown-transform.js +15 -30
- package/lib/utils/mobiledoc-absolute-to-relative.d.ts +3 -0
- package/lib/utils/mobiledoc-absolute-to-relative.js +12 -11
- package/lib/utils/mobiledoc-absolute-to-transform-ready.d.ts +3 -0
- package/lib/utils/mobiledoc-absolute-to-transform-ready.js +13 -12
- package/lib/utils/mobiledoc-relative-to-absolute.d.ts +3 -0
- package/lib/utils/mobiledoc-relative-to-absolute.js +11 -9
- package/lib/utils/mobiledoc-relative-to-transform-ready.d.ts +3 -0
- package/lib/utils/mobiledoc-relative-to-transform-ready.js +11 -9
- package/lib/utils/mobiledoc-to-transform-ready.d.ts +3 -0
- package/lib/utils/mobiledoc-to-transform-ready.js +18 -10
- package/lib/utils/mobiledoc-transform.d.ts +3 -0
- package/lib/utils/mobiledoc-transform.js +8 -13
- package/lib/utils/plaintext-absolute-to-transform-ready.d.ts +5 -0
- package/lib/utils/plaintext-absolute-to-transform-ready.js +29 -16
- package/lib/utils/plaintext-relative-to-transform-ready.d.ts +3 -0
- package/lib/utils/plaintext-relative-to-transform-ready.js +16 -9
- package/lib/utils/plaintext-to-transform-ready.d.ts +5 -0
- package/lib/utils/plaintext-to-transform-ready.js +18 -10
- package/lib/utils/relative-to-absolute.d.ts +15 -0
- package/lib/utils/relative-to-absolute.js +28 -33
- package/lib/utils/relative-to-transform-ready.d.ts +8 -0
- package/lib/utils/relative-to-transform-ready.js +23 -18
- package/lib/utils/replace-permalink.d.ts +16 -0
- package/lib/utils/replace-permalink.js +45 -10
- package/lib/utils/strip-subdirectory-from-path.d.ts +9 -0
- package/lib/utils/strip-subdirectory-from-path.js +7 -11
- package/lib/utils/to-transform-ready.d.ts +5 -0
- package/lib/utils/to-transform-ready.js +18 -10
- package/lib/utils/transform-ready-to-absolute.d.ts +9 -0
- package/lib/utils/transform-ready-to-absolute.js +10 -28
- package/lib/utils/transform-ready-to-relative.d.ts +3 -0
- package/lib/utils/transform-ready-to-relative.js +5 -8
- package/lib/utils/types.d.ts +92 -0
- package/lib/utils/types.js +2 -0
- package/lib/utils/url-join.d.ts +12 -0
- package/lib/utils/url-join.js +12 -12
- package/package.json +20 -12
- package/index.js +0 -1
|
@@ -1,63 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const cheerio = require('cheerio');
|
|
1
4
|
function escapeRegExp(string) {
|
|
2
5
|
return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
3
6
|
}
|
|
4
|
-
|
|
5
7
|
function extractSrcsetUrls(srcset = '') {
|
|
6
8
|
return srcset.split(',').map((part) => {
|
|
7
9
|
return part.trim().split(/\s+/)[0];
|
|
8
10
|
});
|
|
9
11
|
}
|
|
10
|
-
|
|
11
12
|
function extractStyleUrls(style = '') {
|
|
12
13
|
const urls = [];
|
|
13
14
|
const regex = /url\(['|"]([^)]+)['|"]\)/g;
|
|
14
15
|
let match;
|
|
15
|
-
|
|
16
16
|
while ((match = regex.exec(style)) !== null) {
|
|
17
17
|
urls.push(match[1]);
|
|
18
18
|
}
|
|
19
|
-
|
|
20
19
|
return urls;
|
|
21
20
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
21
|
+
function htmlTransform(html = '', siteUrl, transformFunction, itemPath, _options = {}) {
|
|
22
|
+
const defaultOptions = {
|
|
23
|
+
assetsOnly: false,
|
|
24
|
+
secure: false
|
|
25
|
+
};
|
|
25
26
|
const options = Object.assign({}, defaultOptions, _options || {});
|
|
26
|
-
|
|
27
27
|
if (!html || (options.earlyExitMatchStr && !html.match(new RegExp(options.earlyExitMatchStr)))) {
|
|
28
28
|
return html;
|
|
29
29
|
}
|
|
30
|
-
|
|
31
|
-
const cheerio = require('cheerio');
|
|
32
|
-
const htmlContent = cheerio.load(html, {decodeEntities: false});
|
|
33
|
-
|
|
34
|
-
// replacements is keyed with the attr name + original relative value so
|
|
35
|
-
// that we can implement skips for untouchable urls
|
|
36
|
-
//
|
|
37
|
-
// replacements = {
|
|
38
|
-
// 'href="/test"': [
|
|
39
|
-
// {name: 'href', originalValue: '/test', absoluteValue: '.../test'},
|
|
40
|
-
// {name: 'href', originalValue: '/test', skip: true}, // found inside a <code> element
|
|
41
|
-
// {name: 'href', originalValue: '/test', absoluteValue: '.../test'},
|
|
42
|
-
// ]
|
|
43
|
-
// }
|
|
30
|
+
const htmlContent = cheerio.load(html, { decodeEntities: false });
|
|
44
31
|
const replacements = {};
|
|
45
|
-
|
|
46
32
|
function addReplacement(replacement) {
|
|
47
33
|
const key = `${replacement.name}="${replacement.originalValue}"`;
|
|
48
|
-
|
|
49
34
|
if (!replacements[key]) {
|
|
50
35
|
replacements[key] = [];
|
|
51
36
|
}
|
|
52
|
-
|
|
53
37
|
replacements[key].push(replacement);
|
|
54
38
|
}
|
|
55
|
-
|
|
56
39
|
// find all of the relative url attributes that we care about
|
|
57
40
|
['href', 'src', 'srcset', 'style'].forEach((attributeName) => {
|
|
58
41
|
htmlContent('[' + attributeName + ']').each((ix, el) => {
|
|
59
42
|
// ignore <stream> elems and html inside of <code> elements
|
|
60
|
-
|
|
43
|
+
const elementName = 'name' in el ? el.name : null;
|
|
44
|
+
if (elementName === 'stream' || htmlContent(el).closest('code').length) {
|
|
61
45
|
addReplacement({
|
|
62
46
|
name: attributeName,
|
|
63
47
|
originalValue: htmlContent(el).attr(attributeName),
|
|
@@ -65,28 +49,24 @@ function htmlTransform(html = '', siteUrl, transformFunction, itemPath, _options
|
|
|
65
49
|
});
|
|
66
50
|
return;
|
|
67
51
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
const originalValue = el.attr(attributeName);
|
|
71
|
-
|
|
52
|
+
const elWrapper = htmlContent(el);
|
|
53
|
+
const originalValue = elWrapper.attr(attributeName);
|
|
72
54
|
if (attributeName === 'srcset' || attributeName === 'style') {
|
|
73
55
|
let urls;
|
|
74
|
-
|
|
75
56
|
if (attributeName === 'srcset') {
|
|
76
57
|
urls = extractSrcsetUrls(originalValue);
|
|
77
|
-
}
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
78
60
|
urls = extractStyleUrls(originalValue);
|
|
79
61
|
}
|
|
80
|
-
const absoluteUrls = urls.map(url => transformFunction(url, siteUrl, itemPath, options));
|
|
62
|
+
const absoluteUrls = urls.map((url) => transformFunction(url, siteUrl, itemPath, options));
|
|
81
63
|
let transformedValue = originalValue;
|
|
82
|
-
|
|
83
64
|
urls.forEach((url, i) => {
|
|
84
65
|
if (absoluteUrls[i]) {
|
|
85
|
-
|
|
66
|
+
const regex = new RegExp(escapeRegExp(url), 'g');
|
|
86
67
|
transformedValue = transformedValue.replace(regex, absoluteUrls[i]);
|
|
87
68
|
}
|
|
88
69
|
});
|
|
89
|
-
|
|
90
70
|
if (transformedValue !== originalValue) {
|
|
91
71
|
addReplacement({
|
|
92
72
|
name: attributeName,
|
|
@@ -94,9 +74,9 @@ function htmlTransform(html = '', siteUrl, transformFunction, itemPath, _options
|
|
|
94
74
|
transformedValue
|
|
95
75
|
});
|
|
96
76
|
}
|
|
97
|
-
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
98
79
|
const transformedValue = transformFunction(originalValue, siteUrl, itemPath, options);
|
|
99
|
-
|
|
100
80
|
if (transformedValue !== originalValue) {
|
|
101
81
|
addReplacement({
|
|
102
82
|
name: attributeName,
|
|
@@ -107,24 +87,25 @@ function htmlTransform(html = '', siteUrl, transformFunction, itemPath, _options
|
|
|
107
87
|
}
|
|
108
88
|
});
|
|
109
89
|
});
|
|
110
|
-
|
|
111
90
|
// Loop over all replacements and use a regex to replace urls in the original html string.
|
|
112
91
|
// Allows indentation and formatting to be kept compared to using DOM manipulation and render
|
|
113
92
|
for (const [, attrs] of Object.entries(replacements)) {
|
|
114
93
|
let skipCount = 0;
|
|
115
|
-
|
|
116
|
-
attrs.forEach(({skip, name, originalValue, transformedValue}) => {
|
|
94
|
+
attrs.forEach(({ skip, name, originalValue, transformedValue }) => {
|
|
117
95
|
if (skip) {
|
|
118
96
|
skipCount += 1;
|
|
119
97
|
return;
|
|
120
98
|
}
|
|
121
|
-
|
|
99
|
+
// transformedValue is guaranteed to exist here because we only add replacements
|
|
100
|
+
// when transformedValue !== originalValue, and we've already skipped entries with skip: true
|
|
101
|
+
if (!transformedValue) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
122
104
|
// this regex avoids matching unrelated plain text by checking that the attribute/value pair
|
|
123
105
|
// is surrounded by <> - that should be sufficient because if the plain text had that wrapper
|
|
124
106
|
// it would be parsed as a tag
|
|
125
107
|
// eslint-disable-next-line no-useless-escape
|
|
126
108
|
const regex = new RegExp(`<[a-zA-Z][^>]*?(${name}=['"](${escapeRegExp(originalValue)})['"]).*?>`, 'gs');
|
|
127
|
-
|
|
128
109
|
let matchCount = 0;
|
|
129
110
|
html = html.replace(regex, (match, p1) => {
|
|
130
111
|
let result = match;
|
|
@@ -136,8 +117,6 @@ function htmlTransform(html = '', siteUrl, transformFunction, itemPath, _options
|
|
|
136
117
|
});
|
|
137
118
|
});
|
|
138
119
|
}
|
|
139
|
-
|
|
140
120
|
return html;
|
|
141
121
|
}
|
|
142
|
-
|
|
143
|
-
module.exports = htmlTransform;
|
|
122
|
+
exports.default = htmlTransform;
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import absoluteToRelative from './absolute-to-relative';
|
|
2
|
+
import absoluteToTransformReady from './absolute-to-transform-ready';
|
|
3
|
+
import deduplicateDoubleSlashes from './deduplicate-double-slashes';
|
|
4
|
+
import deduplicateSubdirectory from './deduplicate-subdirectory';
|
|
5
|
+
import htmlAbsoluteToRelative from './html-absolute-to-relative';
|
|
6
|
+
import htmlAbsoluteToTransformReady from './html-absolute-to-transform-ready';
|
|
7
|
+
import htmlRelativeToAbsolute from './html-relative-to-absolute';
|
|
8
|
+
import htmlRelativeToTransformReady from './html-relative-to-transform-ready';
|
|
9
|
+
import htmlToTransformReady from './html-to-transform-ready';
|
|
10
|
+
import isSSL from './is-ssl';
|
|
11
|
+
import lexicalAbsoluteToRelative from './lexical-absolute-to-relative';
|
|
12
|
+
import lexicalAbsoluteToTransformReady from './lexical-absolute-to-transform-ready';
|
|
13
|
+
import lexicalRelativeToAbsolute from './lexical-relative-to-absolute';
|
|
14
|
+
import lexicalRelativeToTransformReady from './lexical-relative-to-transform-ready';
|
|
15
|
+
import lexicalToTransformReady from './lexical-to-transform-ready';
|
|
16
|
+
import markdownAbsoluteToRelative from './markdown-absolute-to-relative';
|
|
17
|
+
import markdownRelativeToAbsolute from './markdown-relative-to-absolute';
|
|
18
|
+
import markdownAbsoluteToTransformReady from './markdown-absolute-to-transform-ready';
|
|
19
|
+
import markdownRelativeToTransformReady from './markdown-relative-to-transform-ready';
|
|
20
|
+
import markdownToTransformReady from './markdown-to-transform-ready';
|
|
21
|
+
import mobiledocAbsoluteToRelative from './mobiledoc-absolute-to-relative';
|
|
22
|
+
import mobiledocRelativeToAbsolute from './mobiledoc-relative-to-absolute';
|
|
23
|
+
import mobiledocAbsoluteToTransformReady from './mobiledoc-absolute-to-transform-ready';
|
|
24
|
+
import mobiledocRelativeToTransformReady from './mobiledoc-relative-to-transform-ready';
|
|
25
|
+
import mobiledocToTransformReady from './mobiledoc-to-transform-ready';
|
|
26
|
+
import plaintextAbsoluteToTransformReady from './plaintext-absolute-to-transform-ready';
|
|
27
|
+
import plaintextRelativeToTransformReady from './plaintext-relative-to-transform-ready';
|
|
28
|
+
import plaintextToTransformReady from './plaintext-to-transform-ready';
|
|
29
|
+
import relativeToAbsolute from './relative-to-absolute';
|
|
30
|
+
import relativeToTransformReady from './relative-to-transform-ready';
|
|
31
|
+
import replacePermalink from './replace-permalink';
|
|
32
|
+
import stripSubdirectoryFromPath from './strip-subdirectory-from-path';
|
|
33
|
+
import toTransformReady from './to-transform-ready';
|
|
34
|
+
import transformReadyToAbsolute from './transform-ready-to-absolute';
|
|
35
|
+
import transformReadyToRelative from './transform-ready-to-relative';
|
|
36
|
+
import urlJoin from './url-join';
|
|
37
|
+
export { absoluteToRelative, absoluteToTransformReady, deduplicateDoubleSlashes, deduplicateSubdirectory, htmlAbsoluteToRelative, htmlRelativeToAbsolute, htmlAbsoluteToTransformReady, htmlRelativeToTransformReady, htmlToTransformReady, isSSL, lexicalAbsoluteToRelative, lexicalAbsoluteToTransformReady, lexicalRelativeToAbsolute, lexicalRelativeToTransformReady, lexicalToTransformReady, markdownAbsoluteToRelative, markdownRelativeToAbsolute, markdownAbsoluteToTransformReady, markdownRelativeToTransformReady, markdownToTransformReady, mobiledocAbsoluteToRelative, mobiledocRelativeToAbsolute, mobiledocAbsoluteToTransformReady, mobiledocRelativeToTransformReady, mobiledocToTransformReady, plaintextAbsoluteToTransformReady, plaintextRelativeToTransformReady, plaintextToTransformReady, relativeToAbsolute, relativeToTransformReady, replacePermalink, stripSubdirectoryFromPath, toTransformReady, transformReadyToAbsolute, transformReadyToRelative, urlJoin };
|
|
38
|
+
declare const utils: {
|
|
39
|
+
absoluteToRelative: (url: string, rootUrl?: string, _options?: import("./absolute-to-relative").AbsoluteToRelativeOptionsInput) => string;
|
|
40
|
+
absoluteToTransformReady: (url: string, root: string, _options?: import("./absolute-to-transform-ready").AbsoluteToTransformReadyOptionsInput) => string;
|
|
41
|
+
deduplicateDoubleSlashes: typeof deduplicateDoubleSlashes;
|
|
42
|
+
deduplicateSubdirectory: (url: string, rootUrl: string) => string;
|
|
43
|
+
htmlAbsoluteToRelative: typeof htmlAbsoluteToRelative;
|
|
44
|
+
htmlRelativeToAbsolute: typeof htmlRelativeToAbsolute;
|
|
45
|
+
htmlAbsoluteToTransformReady: (html: string | undefined, siteUrl: string, _options?: import("./types").AbsoluteToTransformReadyOptionsInput) => string;
|
|
46
|
+
htmlRelativeToTransformReady: (html: string | undefined, root: string, itemPath: string | null | import("./relative-to-transform-ready").RelativeToTransformReadyOptionsInput, _options?: import("./relative-to-transform-ready").RelativeToTransformReadyOptionsInput) => string;
|
|
47
|
+
htmlToTransformReady: typeof htmlToTransformReady;
|
|
48
|
+
isSSL: typeof isSSL;
|
|
49
|
+
lexicalAbsoluteToRelative: typeof lexicalAbsoluteToRelative;
|
|
50
|
+
lexicalRelativeToAbsolute: typeof lexicalRelativeToAbsolute;
|
|
51
|
+
lexicalAbsoluteToTransformReady: typeof lexicalAbsoluteToTransformReady;
|
|
52
|
+
lexicalRelativeToTransformReady: typeof lexicalRelativeToTransformReady;
|
|
53
|
+
lexicalToTransformReady: typeof lexicalToTransformReady;
|
|
54
|
+
markdownAbsoluteToRelative: typeof markdownAbsoluteToRelative;
|
|
55
|
+
markdownAbsoluteToTransformReady: typeof markdownAbsoluteToTransformReady;
|
|
56
|
+
markdownRelativeToAbsolute: typeof markdownRelativeToAbsolute;
|
|
57
|
+
markdownRelativeToTransformReady: typeof markdownRelativeToTransformReady;
|
|
58
|
+
markdownToTransformReady: typeof markdownToTransformReady;
|
|
59
|
+
mobiledocAbsoluteToRelative: typeof mobiledocAbsoluteToRelative;
|
|
60
|
+
mobiledocAbsoluteToTransformReady: typeof mobiledocAbsoluteToTransformReady;
|
|
61
|
+
mobiledocRelativeToAbsolute: typeof mobiledocRelativeToAbsolute;
|
|
62
|
+
mobiledocRelativeToTransformReady: typeof mobiledocRelativeToTransformReady;
|
|
63
|
+
mobiledocToTransformReady: typeof mobiledocToTransformReady;
|
|
64
|
+
plaintextAbsoluteToTransformReady: (plaintext: string, rootUrl: string, itemPath: string | null | Partial<Partial<import("./types").AbsoluteToTransformReadyOptions> & Partial<import("./types").BaseUrlOptions>>, options?: Partial<Partial<import("./types").AbsoluteToTransformReadyOptions> & Partial<import("./types").BaseUrlOptions>>) => string;
|
|
65
|
+
plaintextRelativeToTransformReady: (plaintext: string, rootUrl: string, itemPath: string | null | import("./relative-to-transform-ready").RelativeToTransformReadyOptionsInput, options?: import("./relative-to-transform-ready").RelativeToTransformReadyOptionsInput) => string;
|
|
66
|
+
plaintextToTransformReady: typeof plaintextToTransformReady;
|
|
67
|
+
relativeToAbsolute: (path: string, rootUrl: string, itemPath: string | null | import("./relative-to-absolute").RelativeToAbsoluteOptionsInput, _options?: import("./relative-to-absolute").RelativeToAbsoluteOptionsInput) => string;
|
|
68
|
+
relativeToTransformReady: (url: string, root: string, itemPath: string | null | import("./relative-to-transform-ready").RelativeToTransformReadyOptionsInput, _options?: import("./relative-to-transform-ready").RelativeToTransformReadyOptionsInput) => string;
|
|
69
|
+
replacePermalink: typeof replacePermalink;
|
|
70
|
+
stripSubdirectoryFromPath: (path?: string, rootUrl?: string) => string;
|
|
71
|
+
toTransformReady: typeof toTransformReady;
|
|
72
|
+
transformReadyToAbsolute: (str: string | undefined, root: string, _options?: import("./transform-ready-to-absolute").TransformReadyToAbsoluteOptionsInput) => string;
|
|
73
|
+
transformReadyToRelative: (str: string | undefined, root: string, _options?: import("./types").TransformReadyReplacementOptionsInput) => string;
|
|
74
|
+
urlJoin: typeof urlJoin;
|
|
75
|
+
};
|
|
76
|
+
export default utils;
|
package/lib/utils/index.js
CHANGED
|
@@ -1,38 +1,117 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
deduplicateDoubleSlashes: require('./deduplicate-double-slashes'),
|
|
5
|
-
deduplicateSubdirectory: require('./deduplicate-subdirectory'),
|
|
6
|
-
htmlAbsoluteToRelative: require('./html-absolute-to-relative'),
|
|
7
|
-
htmlRelativeToAbsolute: require('./html-relative-to-absolute'),
|
|
8
|
-
htmlAbsoluteToTransformReady: require('./html-absolute-to-transform-ready'),
|
|
9
|
-
htmlRelativeToTransformReady: require('./html-relative-to-transform-ready'),
|
|
10
|
-
htmlToTransformReady: require('./html-to-transform-ready'),
|
|
11
|
-
isSSL: require('./is-ssl'),
|
|
12
|
-
markdownAbsoluteToRelative: require('./markdown-absolute-to-relative'),
|
|
13
|
-
markdownRelativeToAbsolute: require('./markdown-relative-to-absolute'),
|
|
14
|
-
markdownAbsoluteToTransformReady: require('./markdown-absolute-to-transform-ready'),
|
|
15
|
-
markdownRelativeToTransformReady: require('./markdown-relative-to-transform-ready'),
|
|
16
|
-
markdownToTransformReady: require('./markdown-to-transform-ready'),
|
|
17
|
-
mobiledocAbsoluteToRelative: require('./mobiledoc-absolute-to-relative'),
|
|
18
|
-
mobiledocRelativeToAbsolute: require('./mobiledoc-relative-to-absolute'),
|
|
19
|
-
mobiledocAbsoluteToTransformReady: require('./mobiledoc-absolute-to-transform-ready'),
|
|
20
|
-
mobiledocRelativeToTransformReady: require('./mobiledoc-relative-to-transform-ready'),
|
|
21
|
-
mobiledocToTransformReady: require('./mobiledoc-to-transform-ready'),
|
|
22
|
-
lexicalAbsoluteToRelative: require('./lexical-absolute-to-relative'),
|
|
23
|
-
lexicalRelativeToAbsolute: require('./lexical-relative-to-absolute'),
|
|
24
|
-
lexicalAbsoluteToTransformReady: require('./lexical-absolute-to-transform-ready'),
|
|
25
|
-
lexicalRelativeToTransformReady: require('./lexical-relative-to-transform-ready'),
|
|
26
|
-
lexicalToTransformReady: require('./lexical-to-transform-ready'),
|
|
27
|
-
plaintextAbsoluteToTransformReady: require('./plaintext-absolute-to-transform-ready'),
|
|
28
|
-
plaintextRelativeToTransformReady: require('./plaintext-relative-to-transform-ready'),
|
|
29
|
-
plaintextToTransformReady: require('./plaintext-to-transform-ready'),
|
|
30
|
-
relativeToAbsolute: require('./relative-to-absolute'),
|
|
31
|
-
relativeToTransformReady: require('./relative-to-transform-ready'),
|
|
32
|
-
replacePermalink: require('./replace-permalink'),
|
|
33
|
-
stripSubdirectoryFromPath: require('./strip-subdirectory-from-path'),
|
|
34
|
-
toTransformReady: require('./to-transform-ready'),
|
|
35
|
-
transformReadyToAbsolute: require('./transform-ready-to-absolute'),
|
|
36
|
-
transformReadyToRelative: require('./transform-ready-to-relative'),
|
|
37
|
-
urlJoin: require('./url-join')
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
4
|
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.urlJoin = exports.transformReadyToRelative = exports.transformReadyToAbsolute = exports.toTransformReady = exports.stripSubdirectoryFromPath = exports.replacePermalink = exports.relativeToTransformReady = exports.relativeToAbsolute = exports.plaintextToTransformReady = exports.plaintextRelativeToTransformReady = exports.plaintextAbsoluteToTransformReady = exports.mobiledocToTransformReady = exports.mobiledocRelativeToTransformReady = exports.mobiledocAbsoluteToTransformReady = exports.mobiledocRelativeToAbsolute = exports.mobiledocAbsoluteToRelative = exports.markdownToTransformReady = exports.markdownRelativeToTransformReady = exports.markdownAbsoluteToTransformReady = exports.markdownRelativeToAbsolute = exports.markdownAbsoluteToRelative = exports.lexicalToTransformReady = exports.lexicalRelativeToTransformReady = exports.lexicalRelativeToAbsolute = exports.lexicalAbsoluteToTransformReady = exports.lexicalAbsoluteToRelative = exports.isSSL = exports.htmlToTransformReady = exports.htmlRelativeToTransformReady = exports.htmlAbsoluteToTransformReady = exports.htmlRelativeToAbsolute = exports.htmlAbsoluteToRelative = exports.deduplicateSubdirectory = exports.deduplicateDoubleSlashes = exports.absoluteToTransformReady = exports.absoluteToRelative = void 0;
|
|
7
|
+
const absolute_to_relative_1 = __importDefault(require("./absolute-to-relative"));
|
|
8
|
+
exports.absoluteToRelative = absolute_to_relative_1.default;
|
|
9
|
+
const absolute_to_transform_ready_1 = __importDefault(require("./absolute-to-transform-ready"));
|
|
10
|
+
exports.absoluteToTransformReady = absolute_to_transform_ready_1.default;
|
|
11
|
+
const deduplicate_double_slashes_1 = __importDefault(require("./deduplicate-double-slashes"));
|
|
12
|
+
exports.deduplicateDoubleSlashes = deduplicate_double_slashes_1.default;
|
|
13
|
+
const deduplicate_subdirectory_1 = __importDefault(require("./deduplicate-subdirectory"));
|
|
14
|
+
exports.deduplicateSubdirectory = deduplicate_subdirectory_1.default;
|
|
15
|
+
const html_absolute_to_relative_1 = __importDefault(require("./html-absolute-to-relative"));
|
|
16
|
+
exports.htmlAbsoluteToRelative = html_absolute_to_relative_1.default;
|
|
17
|
+
const html_absolute_to_transform_ready_1 = __importDefault(require("./html-absolute-to-transform-ready"));
|
|
18
|
+
exports.htmlAbsoluteToTransformReady = html_absolute_to_transform_ready_1.default;
|
|
19
|
+
const html_relative_to_absolute_1 = __importDefault(require("./html-relative-to-absolute"));
|
|
20
|
+
exports.htmlRelativeToAbsolute = html_relative_to_absolute_1.default;
|
|
21
|
+
const html_relative_to_transform_ready_1 = __importDefault(require("./html-relative-to-transform-ready"));
|
|
22
|
+
exports.htmlRelativeToTransformReady = html_relative_to_transform_ready_1.default;
|
|
23
|
+
const html_to_transform_ready_1 = __importDefault(require("./html-to-transform-ready"));
|
|
24
|
+
exports.htmlToTransformReady = html_to_transform_ready_1.default;
|
|
25
|
+
const is_ssl_1 = __importDefault(require("./is-ssl"));
|
|
26
|
+
exports.isSSL = is_ssl_1.default;
|
|
27
|
+
const lexical_absolute_to_relative_1 = __importDefault(require("./lexical-absolute-to-relative"));
|
|
28
|
+
exports.lexicalAbsoluteToRelative = lexical_absolute_to_relative_1.default;
|
|
29
|
+
const lexical_absolute_to_transform_ready_1 = __importDefault(require("./lexical-absolute-to-transform-ready"));
|
|
30
|
+
exports.lexicalAbsoluteToTransformReady = lexical_absolute_to_transform_ready_1.default;
|
|
31
|
+
const lexical_relative_to_absolute_1 = __importDefault(require("./lexical-relative-to-absolute"));
|
|
32
|
+
exports.lexicalRelativeToAbsolute = lexical_relative_to_absolute_1.default;
|
|
33
|
+
const lexical_relative_to_transform_ready_1 = __importDefault(require("./lexical-relative-to-transform-ready"));
|
|
34
|
+
exports.lexicalRelativeToTransformReady = lexical_relative_to_transform_ready_1.default;
|
|
35
|
+
const lexical_to_transform_ready_1 = __importDefault(require("./lexical-to-transform-ready"));
|
|
36
|
+
exports.lexicalToTransformReady = lexical_to_transform_ready_1.default;
|
|
37
|
+
const markdown_absolute_to_relative_1 = __importDefault(require("./markdown-absolute-to-relative"));
|
|
38
|
+
exports.markdownAbsoluteToRelative = markdown_absolute_to_relative_1.default;
|
|
39
|
+
const markdown_relative_to_absolute_1 = __importDefault(require("./markdown-relative-to-absolute"));
|
|
40
|
+
exports.markdownRelativeToAbsolute = markdown_relative_to_absolute_1.default;
|
|
41
|
+
const markdown_absolute_to_transform_ready_1 = __importDefault(require("./markdown-absolute-to-transform-ready"));
|
|
42
|
+
exports.markdownAbsoluteToTransformReady = markdown_absolute_to_transform_ready_1.default;
|
|
43
|
+
const markdown_relative_to_transform_ready_1 = __importDefault(require("./markdown-relative-to-transform-ready"));
|
|
44
|
+
exports.markdownRelativeToTransformReady = markdown_relative_to_transform_ready_1.default;
|
|
45
|
+
const markdown_to_transform_ready_1 = __importDefault(require("./markdown-to-transform-ready"));
|
|
46
|
+
exports.markdownToTransformReady = markdown_to_transform_ready_1.default;
|
|
47
|
+
const mobiledoc_absolute_to_relative_1 = __importDefault(require("./mobiledoc-absolute-to-relative"));
|
|
48
|
+
exports.mobiledocAbsoluteToRelative = mobiledoc_absolute_to_relative_1.default;
|
|
49
|
+
const mobiledoc_relative_to_absolute_1 = __importDefault(require("./mobiledoc-relative-to-absolute"));
|
|
50
|
+
exports.mobiledocRelativeToAbsolute = mobiledoc_relative_to_absolute_1.default;
|
|
51
|
+
const mobiledoc_absolute_to_transform_ready_1 = __importDefault(require("./mobiledoc-absolute-to-transform-ready"));
|
|
52
|
+
exports.mobiledocAbsoluteToTransformReady = mobiledoc_absolute_to_transform_ready_1.default;
|
|
53
|
+
const mobiledoc_relative_to_transform_ready_1 = __importDefault(require("./mobiledoc-relative-to-transform-ready"));
|
|
54
|
+
exports.mobiledocRelativeToTransformReady = mobiledoc_relative_to_transform_ready_1.default;
|
|
55
|
+
const mobiledoc_to_transform_ready_1 = __importDefault(require("./mobiledoc-to-transform-ready"));
|
|
56
|
+
exports.mobiledocToTransformReady = mobiledoc_to_transform_ready_1.default;
|
|
57
|
+
const plaintext_absolute_to_transform_ready_1 = __importDefault(require("./plaintext-absolute-to-transform-ready"));
|
|
58
|
+
exports.plaintextAbsoluteToTransformReady = plaintext_absolute_to_transform_ready_1.default;
|
|
59
|
+
const plaintext_relative_to_transform_ready_1 = __importDefault(require("./plaintext-relative-to-transform-ready"));
|
|
60
|
+
exports.plaintextRelativeToTransformReady = plaintext_relative_to_transform_ready_1.default;
|
|
61
|
+
const plaintext_to_transform_ready_1 = __importDefault(require("./plaintext-to-transform-ready"));
|
|
62
|
+
exports.plaintextToTransformReady = plaintext_to_transform_ready_1.default;
|
|
63
|
+
const relative_to_absolute_1 = __importDefault(require("./relative-to-absolute"));
|
|
64
|
+
exports.relativeToAbsolute = relative_to_absolute_1.default;
|
|
65
|
+
const relative_to_transform_ready_1 = __importDefault(require("./relative-to-transform-ready"));
|
|
66
|
+
exports.relativeToTransformReady = relative_to_transform_ready_1.default;
|
|
67
|
+
const replace_permalink_1 = __importDefault(require("./replace-permalink"));
|
|
68
|
+
exports.replacePermalink = replace_permalink_1.default;
|
|
69
|
+
const strip_subdirectory_from_path_1 = __importDefault(require("./strip-subdirectory-from-path"));
|
|
70
|
+
exports.stripSubdirectoryFromPath = strip_subdirectory_from_path_1.default;
|
|
71
|
+
const to_transform_ready_1 = __importDefault(require("./to-transform-ready"));
|
|
72
|
+
exports.toTransformReady = to_transform_ready_1.default;
|
|
73
|
+
const transform_ready_to_absolute_1 = __importDefault(require("./transform-ready-to-absolute"));
|
|
74
|
+
exports.transformReadyToAbsolute = transform_ready_to_absolute_1.default;
|
|
75
|
+
const transform_ready_to_relative_1 = __importDefault(require("./transform-ready-to-relative"));
|
|
76
|
+
exports.transformReadyToRelative = transform_ready_to_relative_1.default;
|
|
77
|
+
const url_join_1 = __importDefault(require("./url-join"));
|
|
78
|
+
exports.urlJoin = url_join_1.default;
|
|
79
|
+
const utils = {
|
|
80
|
+
absoluteToRelative: absolute_to_relative_1.default,
|
|
81
|
+
absoluteToTransformReady: absolute_to_transform_ready_1.default,
|
|
82
|
+
deduplicateDoubleSlashes: deduplicate_double_slashes_1.default,
|
|
83
|
+
deduplicateSubdirectory: deduplicate_subdirectory_1.default,
|
|
84
|
+
htmlAbsoluteToRelative: html_absolute_to_relative_1.default,
|
|
85
|
+
htmlRelativeToAbsolute: html_relative_to_absolute_1.default,
|
|
86
|
+
htmlAbsoluteToTransformReady: html_absolute_to_transform_ready_1.default,
|
|
87
|
+
htmlRelativeToTransformReady: html_relative_to_transform_ready_1.default,
|
|
88
|
+
htmlToTransformReady: html_to_transform_ready_1.default,
|
|
89
|
+
isSSL: is_ssl_1.default,
|
|
90
|
+
lexicalAbsoluteToRelative: lexical_absolute_to_relative_1.default,
|
|
91
|
+
lexicalRelativeToAbsolute: lexical_relative_to_absolute_1.default,
|
|
92
|
+
lexicalAbsoluteToTransformReady: lexical_absolute_to_transform_ready_1.default,
|
|
93
|
+
lexicalRelativeToTransformReady: lexical_relative_to_transform_ready_1.default,
|
|
94
|
+
lexicalToTransformReady: lexical_to_transform_ready_1.default,
|
|
95
|
+
markdownAbsoluteToRelative: markdown_absolute_to_relative_1.default,
|
|
96
|
+
markdownAbsoluteToTransformReady: markdown_absolute_to_transform_ready_1.default,
|
|
97
|
+
markdownRelativeToAbsolute: markdown_relative_to_absolute_1.default,
|
|
98
|
+
markdownRelativeToTransformReady: markdown_relative_to_transform_ready_1.default,
|
|
99
|
+
markdownToTransformReady: markdown_to_transform_ready_1.default,
|
|
100
|
+
mobiledocAbsoluteToRelative: mobiledoc_absolute_to_relative_1.default,
|
|
101
|
+
mobiledocAbsoluteToTransformReady: mobiledoc_absolute_to_transform_ready_1.default,
|
|
102
|
+
mobiledocRelativeToAbsolute: mobiledoc_relative_to_absolute_1.default,
|
|
103
|
+
mobiledocRelativeToTransformReady: mobiledoc_relative_to_transform_ready_1.default,
|
|
104
|
+
mobiledocToTransformReady: mobiledoc_to_transform_ready_1.default,
|
|
105
|
+
plaintextAbsoluteToTransformReady: plaintext_absolute_to_transform_ready_1.default,
|
|
106
|
+
plaintextRelativeToTransformReady: plaintext_relative_to_transform_ready_1.default,
|
|
107
|
+
plaintextToTransformReady: plaintext_to_transform_ready_1.default,
|
|
108
|
+
relativeToAbsolute: relative_to_absolute_1.default,
|
|
109
|
+
relativeToTransformReady: relative_to_transform_ready_1.default,
|
|
110
|
+
replacePermalink: replace_permalink_1.default,
|
|
111
|
+
stripSubdirectoryFromPath: strip_subdirectory_from_path_1.default,
|
|
112
|
+
toTransformReady: to_transform_ready_1.default,
|
|
113
|
+
transformReadyToAbsolute: transform_ready_to_absolute_1.default,
|
|
114
|
+
transformReadyToRelative: transform_ready_to_relative_1.default,
|
|
115
|
+
urlJoin: url_join_1.default
|
|
116
|
+
};
|
|
117
|
+
exports.default = utils;
|
package/lib/utils/is-ssl.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
3
|
// require the whatwg compatible URL library (same behaviour in node and browser)
|
|
2
|
-
const
|
|
3
|
-
|
|
4
|
+
const url_1 = require("url");
|
|
4
5
|
function isSSL(urlToParse) {
|
|
5
|
-
const {protocol} = new URL(urlToParse);
|
|
6
|
+
const { protocol } = new url_1.URL(urlToParse);
|
|
6
7
|
return protocol === 'https:';
|
|
7
8
|
}
|
|
8
|
-
|
|
9
|
-
module.exports = isSSL;
|
|
9
|
+
exports.default = isSSL;
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
const absolute_to_relative_1 = __importDefault(require("./absolute-to-relative"));
|
|
7
|
+
const lexical_transform_1 = __importDefault(require("./lexical-transform"));
|
|
4
8
|
function lexicalAbsoluteToRelative(serializedLexical, siteUrl, _options = {}) {
|
|
5
|
-
const defaultOptions = {assetsOnly: false, secure: false, nodes: [], transformMap: {}};
|
|
6
|
-
const overrideOptions = {siteUrl, transformType: 'absoluteToRelative'};
|
|
9
|
+
const defaultOptions = { assetsOnly: false, secure: false, nodes: [], transformMap: {} };
|
|
10
|
+
const overrideOptions = { siteUrl, transformType: 'absoluteToRelative' };
|
|
7
11
|
const options = Object.assign({}, defaultOptions, _options, overrideOptions);
|
|
8
|
-
|
|
9
12
|
const transformFunction = function (_url, _siteUrl, _itemPath, __options) {
|
|
10
|
-
return
|
|
13
|
+
return (0, absolute_to_relative_1.default)(_url, _siteUrl, __options);
|
|
11
14
|
};
|
|
12
|
-
|
|
13
|
-
return lexicalTransform(serializedLexical, siteUrl, transformFunction, '', options);
|
|
15
|
+
return (0, lexical_transform_1.default)(serializedLexical, siteUrl, transformFunction, '', options);
|
|
14
16
|
}
|
|
15
|
-
|
|
16
|
-
module.exports = lexicalAbsoluteToRelative;
|
|
17
|
+
exports.default = lexicalAbsoluteToRelative;
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
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
|
+
const absolute_to_transform_ready_1 = __importDefault(require("./absolute-to-transform-ready"));
|
|
7
|
+
const lexical_transform_1 = __importDefault(require("./lexical-transform"));
|
|
8
|
+
function lexicalAbsoluteToTransformReady(serializedLexical, siteUrl, _options = {}) {
|
|
9
|
+
const defaultOptions = { assetsOnly: false, secure: false, nodes: [], transformMap: {} };
|
|
10
|
+
const overrideOptions = { siteUrl, transformType: 'toTransformReady' };
|
|
7
11
|
const options = Object.assign({}, defaultOptions, _options, overrideOptions);
|
|
8
|
-
|
|
9
12
|
const transformFunction = function (_url, _siteUrl, _itemPath, __options) {
|
|
10
|
-
return
|
|
13
|
+
return (0, absolute_to_transform_ready_1.default)(_url, _siteUrl, __options);
|
|
11
14
|
};
|
|
12
|
-
|
|
13
|
-
return lexicalTransform(serializedLexical, siteUrl, transformFunction, '', options);
|
|
15
|
+
return (0, lexical_transform_1.default)(serializedLexical, siteUrl, transformFunction, '', options);
|
|
14
16
|
}
|
|
15
|
-
|
|
16
|
-
module.exports = lexicalAbsoluteToRelative;
|
|
17
|
+
exports.default = lexicalAbsoluteToTransformReady;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
const relative_to_absolute_1 = __importDefault(require("./relative-to-absolute"));
|
|
7
|
+
const lexical_transform_1 = __importDefault(require("./lexical-transform"));
|
|
4
8
|
function lexicalRelativeToAbsolute(serializedLexical, siteUrl, itemPath, _options = {}) {
|
|
5
|
-
const defaultOptions = {assetsOnly: false, secure: false, nodes: [], transformMap: {}};
|
|
6
|
-
const overrideOptions = {siteUrl, itemPath, transformType: 'relativeToAbsolute'};
|
|
9
|
+
const defaultOptions = { assetsOnly: false, secure: false, nodes: [], transformMap: {} };
|
|
10
|
+
const overrideOptions = { siteUrl, itemPath, transformType: 'relativeToAbsolute' };
|
|
7
11
|
const options = Object.assign({}, defaultOptions, _options, overrideOptions);
|
|
8
|
-
|
|
9
|
-
return lexicalTransform(serializedLexical, siteUrl, relativeToAbsolute, itemPath, options);
|
|
12
|
+
return (0, lexical_transform_1.default)(serializedLexical, siteUrl, relative_to_absolute_1.default, itemPath, options);
|
|
10
13
|
}
|
|
11
|
-
|
|
12
|
-
module.exports = lexicalRelativeToAbsolute;
|
|
14
|
+
exports.default = lexicalRelativeToAbsolute;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { LexicalTransformOptionsInput } from './types';
|
|
2
|
+
declare function lexicalRelativeToTransformReady(serializedLexical: string, siteUrl: string, itemPath: string | null, _options?: LexicalTransformOptionsInput): string;
|
|
3
|
+
export default lexicalRelativeToTransformReady;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
const relative_to_transform_ready_1 = __importDefault(require("./relative-to-transform-ready"));
|
|
7
|
+
const lexical_transform_1 = __importDefault(require("./lexical-transform"));
|
|
4
8
|
function lexicalRelativeToTransformReady(serializedLexical, siteUrl, itemPath, _options = {}) {
|
|
5
|
-
const defaultOptions = {assetsOnly: false, secure: false, nodes: [], transformMap: {}};
|
|
6
|
-
const overrideOptions = {siteUrl, transformType: 'toTransformReady'};
|
|
9
|
+
const defaultOptions = { assetsOnly: false, secure: false, nodes: [], transformMap: {} };
|
|
10
|
+
const overrideOptions = { siteUrl, transformType: 'toTransformReady' };
|
|
7
11
|
const options = Object.assign({}, defaultOptions, _options, overrideOptions);
|
|
8
|
-
|
|
9
|
-
return lexicalTransform(serializedLexical, siteUrl, relativeToTransformReady, itemPath, options);
|
|
12
|
+
return (0, lexical_transform_1.default)(serializedLexical, siteUrl, relative_to_transform_ready_1.default, itemPath, options);
|
|
10
13
|
}
|
|
11
|
-
|
|
12
|
-
module.exports = lexicalRelativeToTransformReady;
|
|
14
|
+
exports.default = lexicalRelativeToTransformReady;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { LexicalTransformOptionsInput } from './types';
|
|
2
|
+
declare function lexicalToTransformReady(lexical: string, siteUrl: string, itemPath: string | null | LexicalTransformOptionsInput, options?: LexicalTransformOptionsInput): string;
|
|
3
|
+
export default lexicalToTransformReady;
|
|
@@ -1,13 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
const lexical_relative_to_absolute_1 = __importDefault(require("./lexical-relative-to-absolute"));
|
|
7
|
+
const lexical_absolute_to_transform_ready_1 = __importDefault(require("./lexical-absolute-to-transform-ready"));
|
|
4
8
|
function lexicalToTransformReady(lexical, siteUrl, itemPath, options) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
9
|
+
let finalItemPath = null;
|
|
10
|
+
let finalOptions = options || {};
|
|
11
|
+
if (typeof itemPath === 'object' && itemPath !== null && !options) {
|
|
12
|
+
finalOptions = itemPath;
|
|
13
|
+
finalItemPath = null;
|
|
8
14
|
}
|
|
9
|
-
|
|
10
|
-
|
|
15
|
+
else if (typeof itemPath === 'string') {
|
|
16
|
+
finalItemPath = itemPath;
|
|
17
|
+
}
|
|
18
|
+
const absolute = (0, lexical_relative_to_absolute_1.default)(lexical, siteUrl, finalItemPath, finalOptions);
|
|
19
|
+
return (0, lexical_absolute_to_transform_ready_1.default)(absolute, siteUrl, finalOptions);
|
|
11
20
|
}
|
|
12
|
-
|
|
13
|
-
module.exports = lexicalToTransformReady;
|
|
21
|
+
exports.default = lexicalToTransformReady;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { LexicalTransformOptionsInput, UrlTransformFunction } from './types';
|
|
2
|
+
declare function lexicalTransform(serializedLexical: string, siteUrl: string, transformFunction: UrlTransformFunction, itemPath: string | null, _options?: LexicalTransformOptionsInput): string;
|
|
3
|
+
export default lexicalTransform;
|