@diplodoc/transform 4.77.9 → 4.77.11
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/dist/css/_yfm-only.css.map +1 -1
- package/dist/css/_yfm-only.min.css.map +1 -1
- package/dist/css/base.css.map +1 -1
- package/dist/css/base.min.css.map +1 -1
- package/dist/css/print.css.map +1 -1
- package/dist/css/yfm.css.map +1 -1
- package/dist/css/yfm.min.css.map +1 -1
- package/lib/plugins/images/index.js +37 -8
- package/lib/plugins/images/index.js.map +1 -1
- package/lib/plugins/imsize/plugin.js +29 -2
- package/lib/plugins/imsize/plugin.js.map +1 -1
- package/package.json +3 -3
- package/src/transform/plugins/images/index.ts +75 -8
- package/src/transform/plugins/imsize/plugin.ts +39 -2
|
@@ -204,7 +204,13 @@ const imageWithSize = (md, opts) => {
|
|
|
204
204
|
token.attrs.push([key, value]);
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
|
-
|
|
207
|
+
// Consume the block only when it belongs to imsize entirely.
|
|
208
|
+
// Otherwise leave its source text in the token stream: it still
|
|
209
|
+
// has to be seen by markdown-it-attrs and by the @diplodoc/translation
|
|
210
|
+
// skeleton, which extracts the translatable title from it.
|
|
211
|
+
if (!result.foreign) {
|
|
212
|
+
pos = bracePos + 1;
|
|
213
|
+
}
|
|
208
214
|
}
|
|
209
215
|
}
|
|
210
216
|
if (title) {
|
|
@@ -246,12 +252,22 @@ const imageWithSize = (md, opts) => {
|
|
|
246
252
|
};
|
|
247
253
|
};
|
|
248
254
|
exports.imageWithSize = imageWithSize;
|
|
255
|
+
function isOwnAttr(key) {
|
|
256
|
+
return (key === 'width' ||
|
|
257
|
+
key === 'height' ||
|
|
258
|
+
key === 'inline' ||
|
|
259
|
+
key === 'gallery' ||
|
|
260
|
+
key === 'gallery-src' ||
|
|
261
|
+
key.startsWith('data-'));
|
|
262
|
+
}
|
|
249
263
|
function resolveDataAttr(key, value) {
|
|
250
264
|
const isGalleryValid = value === 'true' || value === 'false';
|
|
251
265
|
if (key === 'gallery')
|
|
252
266
|
return isGalleryValid ? ['data-gallery', value] : null;
|
|
253
267
|
if (key === 'data-gallery')
|
|
254
268
|
return isGalleryValid ? [key, value] : null;
|
|
269
|
+
if (key === 'gallery-src')
|
|
270
|
+
return value === '' ? null : ['data-gallery-src', value];
|
|
255
271
|
if (key.startsWith('data-'))
|
|
256
272
|
return [key, value];
|
|
257
273
|
return null;
|
|
@@ -259,14 +275,22 @@ function resolveDataAttr(key, value) {
|
|
|
259
275
|
function parseInlineAttributes(attrsStr) {
|
|
260
276
|
// Parse key=value pairs
|
|
261
277
|
const attrRegex = /([\w-]+)=(?:'([^']*)'|"([^"]*)"|(\S+))/g;
|
|
262
|
-
const result = { width: '', height: '', inline: '', dataAttrs: {} };
|
|
278
|
+
const result = { width: '', height: '', inline: '', dataAttrs: {}, foreign: false };
|
|
279
|
+
const dense = (str) => str.replace(/\s+/g, '').length;
|
|
263
280
|
let match;
|
|
281
|
+
let own = 0;
|
|
282
|
+
let ownChars = 0;
|
|
264
283
|
while ((match = attrRegex.exec(attrsStr)) !== null) {
|
|
265
284
|
const key = match[1];
|
|
266
285
|
let value = match[2] || match[3] || match[4];
|
|
267
286
|
if (value === null || value === void 0 ? void 0 : value.endsWith('}')) {
|
|
268
287
|
value = value.slice(0, -1);
|
|
269
288
|
}
|
|
289
|
+
if (!isOwnAttr(key)) {
|
|
290
|
+
continue;
|
|
291
|
+
}
|
|
292
|
+
own++;
|
|
293
|
+
ownChars += dense(match[0]);
|
|
270
294
|
if (key === 'width' || key === 'height' || key === 'inline') {
|
|
271
295
|
result[key] = value;
|
|
272
296
|
continue;
|
|
@@ -277,6 +301,9 @@ function parseInlineAttributes(attrsStr) {
|
|
|
277
301
|
result.dataAttrs[resolved[0]] = resolved[1];
|
|
278
302
|
}
|
|
279
303
|
}
|
|
304
|
+
// The block is fully ours only if it carries our attributes and nothing
|
|
305
|
+
// foreign is left over — otherwise someone downstream has to parse it.
|
|
306
|
+
result.foreign = own === 0 || ownChars !== dense(attrsStr);
|
|
280
307
|
return result;
|
|
281
308
|
}
|
|
282
309
|
//# sourceMappingURL=plugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/transform/plugins/imsize/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/transform/plugins/imsize/plugin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@diplodoc/transform",
|
|
3
|
-
"version": "4.77.
|
|
3
|
+
"version": "4.77.11",
|
|
4
4
|
"description": "A simple transformer of text in YFM (Yandex Flavored Markdown) to HTML",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"markdown",
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
"ts-dedent": "^2.2.0"
|
|
79
79
|
},
|
|
80
80
|
"devDependencies": {
|
|
81
|
-
"@diplodoc/infra": "2.2.
|
|
81
|
+
"@diplodoc/infra": "2.2.3",
|
|
82
82
|
"@types/css": "0.0.34",
|
|
83
83
|
"@types/github-slugger": "^1.3.0",
|
|
84
84
|
"@types/js-yaml": "^4.0.5",
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
"postcss-preset-env": "^9.1.1",
|
|
102
102
|
"sass": "^1.79.0",
|
|
103
103
|
"terminal-link": "^2.1.1",
|
|
104
|
-
"typescript": "
|
|
104
|
+
"typescript": "6.0.3",
|
|
105
105
|
"vitest": "^2.1.8"
|
|
106
106
|
},
|
|
107
107
|
"peerDependencies": {
|
|
@@ -115,19 +115,76 @@ function isGalleryValid(value: string): boolean {
|
|
|
115
115
|
return value === 'true' || value === 'false';
|
|
116
116
|
}
|
|
117
117
|
|
|
118
|
-
function
|
|
118
|
+
function resolveGallerySrcAttr(
|
|
119
|
+
key: string,
|
|
120
|
+
value: string,
|
|
121
|
+
state: StateCore,
|
|
122
|
+
from: string,
|
|
123
|
+
calcPath: (root: string, path: string) => string,
|
|
124
|
+
replaceImage: typeof replaceImageSrc,
|
|
125
|
+
opts: ImageOpts,
|
|
126
|
+
): [string, string] | null {
|
|
127
|
+
if (key !== 'gallery-src' && key !== 'data-gallery-src') {
|
|
128
|
+
return null;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
if (!value) {
|
|
132
|
+
return null;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
const galleryFile = calcPath(from, value);
|
|
136
|
+
const processedSrc = replaceImage(state, from, galleryFile, value, opts);
|
|
137
|
+
|
|
138
|
+
return ['data-gallery-src', processedSrc];
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
function collectDataAttrs(
|
|
142
|
+
image: Token,
|
|
143
|
+
state: StateCore,
|
|
144
|
+
from: string,
|
|
145
|
+
calcPath: (root: string, path: string) => string,
|
|
146
|
+
replaceImage: typeof replaceImageSrc,
|
|
147
|
+
opts: ImageOpts,
|
|
148
|
+
): Record<string, string> {
|
|
119
149
|
const result: Record<string, string> = {};
|
|
120
150
|
if (!image.attrs) return result;
|
|
121
151
|
|
|
122
152
|
for (const [key, value] of image.attrs) {
|
|
123
153
|
if (key === 'gallery' && isGalleryValid(value)) {
|
|
124
154
|
result['data-gallery'] = value;
|
|
125
|
-
|
|
155
|
+
continue;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
const gallerySrc = resolveGallerySrcAttr(
|
|
159
|
+
key,
|
|
160
|
+
value,
|
|
161
|
+
state,
|
|
162
|
+
from,
|
|
163
|
+
calcPath,
|
|
164
|
+
replaceImage,
|
|
165
|
+
opts,
|
|
166
|
+
);
|
|
167
|
+
|
|
168
|
+
if (gallerySrc) {
|
|
169
|
+
result[gallerySrc[0]] = gallerySrc[1];
|
|
170
|
+
continue;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
if (
|
|
174
|
+
key.startsWith('data-') &&
|
|
175
|
+
key !== 'data-gallery-src' &&
|
|
176
|
+
(key !== 'data-gallery' || isGalleryValid(value))
|
|
177
|
+
) {
|
|
126
178
|
result[key] = value;
|
|
127
179
|
}
|
|
128
180
|
}
|
|
181
|
+
|
|
129
182
|
image.attrs = image.attrs.filter(
|
|
130
|
-
([key, value]) =>
|
|
183
|
+
([key, value]) =>
|
|
184
|
+
key !== 'gallery' &&
|
|
185
|
+
key !== 'gallery-src' &&
|
|
186
|
+
(key !== 'data-gallery' || isGalleryValid(value)) &&
|
|
187
|
+
(key !== 'data-gallery-src' || value !== ''),
|
|
131
188
|
);
|
|
132
189
|
return result;
|
|
133
190
|
}
|
|
@@ -162,7 +219,8 @@ const index: MarkdownItPluginCb<Opts> = (md, opts) => {
|
|
|
162
219
|
const imgSrc = getSrcTokenAttr(image);
|
|
163
220
|
if (isExternalHref(imgSrc)) return;
|
|
164
221
|
|
|
165
|
-
const
|
|
222
|
+
const from = state.env.path || opts.path;
|
|
223
|
+
const dataAttrs = collectDataAttrs(image, state, from, calcPath, replaceImage, opts);
|
|
166
224
|
const forceInlineSvg = image.attrGet('inline') === 'true';
|
|
167
225
|
const imageOpts = {
|
|
168
226
|
width: image.attrGet('width'),
|
|
@@ -171,7 +229,6 @@ const index: MarkdownItPluginCb<Opts> = (md, opts) => {
|
|
|
171
229
|
dataAttrs,
|
|
172
230
|
};
|
|
173
231
|
|
|
174
|
-
const from = state.env.path || opts.path;
|
|
175
232
|
const file = calcPath(from, imgSrc);
|
|
176
233
|
|
|
177
234
|
if (shouldBeInlined(image, opts.svgInline)) {
|
|
@@ -225,6 +282,18 @@ const index: MarkdownItPluginCb<Opts> = (md, opts) => {
|
|
|
225
282
|
};
|
|
226
283
|
};
|
|
227
284
|
|
|
285
|
+
function applyDataAttrs(svgRoot: string, dataAttrs: Record<string, string>): string {
|
|
286
|
+
let result = svgRoot;
|
|
287
|
+
|
|
288
|
+
for (const [key, value] of Object.entries(dataAttrs)) {
|
|
289
|
+
if (!result.includes(`${key}=`)) {
|
|
290
|
+
result = `${result} ${key}="${sanitizeHTMLAttr(value)}"`;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
return result;
|
|
295
|
+
}
|
|
296
|
+
|
|
228
297
|
function replaceSvgContent(
|
|
229
298
|
content: string | null,
|
|
230
299
|
options: ImageOptions,
|
|
@@ -263,9 +332,7 @@ function replaceSvgContent(
|
|
|
263
332
|
}
|
|
264
333
|
|
|
265
334
|
if (options.dataAttrs) {
|
|
266
|
-
|
|
267
|
-
svgRoot = `${svgRoot} ${key}="${sanitizeHTMLAttr(value)}"`;
|
|
268
|
-
}
|
|
335
|
+
svgRoot = applyDataAttrs(svgRoot, options.dataAttrs);
|
|
269
336
|
content = content.replace(/<svg([^>]*)>/, `<svg${svgRoot}>`);
|
|
270
337
|
}
|
|
271
338
|
|
|
@@ -235,7 +235,13 @@ export const imageWithSize = (md: MarkdownIt, opts?: ImsizeOptions): ParserInlin
|
|
|
235
235
|
}
|
|
236
236
|
}
|
|
237
237
|
|
|
238
|
-
|
|
238
|
+
// Consume the block only when it belongs to imsize entirely.
|
|
239
|
+
// Otherwise leave its source text in the token stream: it still
|
|
240
|
+
// has to be seen by markdown-it-attrs and by the @diplodoc/translation
|
|
241
|
+
// skeleton, which extracts the translatable title from it.
|
|
242
|
+
if (!result.foreign) {
|
|
243
|
+
pos = bracePos + 1;
|
|
244
|
+
}
|
|
239
245
|
}
|
|
240
246
|
}
|
|
241
247
|
|
|
@@ -290,12 +296,28 @@ type ParsedAttrs = {
|
|
|
290
296
|
height: string;
|
|
291
297
|
inline: string;
|
|
292
298
|
dataAttrs?: Record<string, string>;
|
|
299
|
+
// true when the {...} block holds anything imsize does not own:
|
|
300
|
+
// a foreign key (title=...) or free-form content like markdown-it-attrs' {.class}.
|
|
301
|
+
foreign: boolean;
|
|
293
302
|
};
|
|
294
303
|
|
|
304
|
+
function isOwnAttr(key: string): boolean {
|
|
305
|
+
return (
|
|
306
|
+
key === 'width' ||
|
|
307
|
+
key === 'height' ||
|
|
308
|
+
key === 'inline' ||
|
|
309
|
+
key === 'gallery' ||
|
|
310
|
+
key === 'gallery-src' ||
|
|
311
|
+
key.startsWith('data-')
|
|
312
|
+
);
|
|
313
|
+
}
|
|
314
|
+
|
|
295
315
|
function resolveDataAttr(key: string, value: string): [string, string] | null {
|
|
296
316
|
const isGalleryValid = value === 'true' || value === 'false';
|
|
317
|
+
|
|
297
318
|
if (key === 'gallery') return isGalleryValid ? ['data-gallery', value] : null;
|
|
298
319
|
if (key === 'data-gallery') return isGalleryValid ? [key, value] : null;
|
|
320
|
+
if (key === 'gallery-src') return value === '' ? null : ['data-gallery-src', value];
|
|
299
321
|
if (key.startsWith('data-')) return [key, value];
|
|
300
322
|
return null;
|
|
301
323
|
}
|
|
@@ -303,8 +325,11 @@ function resolveDataAttr(key: string, value: string): [string, string] | null {
|
|
|
303
325
|
function parseInlineAttributes(attrsStr: string): ParsedAttrs {
|
|
304
326
|
// Parse key=value pairs
|
|
305
327
|
const attrRegex = /([\w-]+)=(?:'([^']*)'|"([^"]*)"|(\S+))/g;
|
|
306
|
-
const result: ParsedAttrs = {width: '', height: '', inline: '', dataAttrs: {}};
|
|
328
|
+
const result: ParsedAttrs = {width: '', height: '', inline: '', dataAttrs: {}, foreign: false};
|
|
329
|
+
const dense = (str: string) => str.replace(/\s+/g, '').length;
|
|
307
330
|
let match;
|
|
331
|
+
let own = 0;
|
|
332
|
+
let ownChars = 0;
|
|
308
333
|
|
|
309
334
|
while ((match = attrRegex.exec(attrsStr)) !== null) {
|
|
310
335
|
const key = match[1];
|
|
@@ -314,6 +339,13 @@ function parseInlineAttributes(attrsStr: string): ParsedAttrs {
|
|
|
314
339
|
value = value.slice(0, -1);
|
|
315
340
|
}
|
|
316
341
|
|
|
342
|
+
if (!isOwnAttr(key)) {
|
|
343
|
+
continue;
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
own++;
|
|
347
|
+
ownChars += dense(match[0]);
|
|
348
|
+
|
|
317
349
|
if (key === 'width' || key === 'height' || key === 'inline') {
|
|
318
350
|
result[key] = value;
|
|
319
351
|
continue;
|
|
@@ -325,5 +357,10 @@ function parseInlineAttributes(attrsStr: string): ParsedAttrs {
|
|
|
325
357
|
result.dataAttrs[resolved[0]] = resolved[1];
|
|
326
358
|
}
|
|
327
359
|
}
|
|
360
|
+
|
|
361
|
+
// The block is fully ours only if it carries our attributes and nothing
|
|
362
|
+
// foreign is left over — otherwise someone downstream has to parse it.
|
|
363
|
+
result.foreign = own === 0 || ownChars !== dense(attrsStr);
|
|
364
|
+
|
|
328
365
|
return result;
|
|
329
366
|
}
|