Skip to content

Commit 61360f0

Browse files
authored
fix(YfmHtmlBlock): deprecate local sanitize utils (#1050)
1 parent 8fe6fa7 commit 61360f0

4 files changed

Lines changed: 29 additions & 20 deletions

File tree

demo/src/components/Playground.tsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import {type CSSProperties, memo, useCallback, useEffect, useMemo, useState} from 'react';
22

33
import type {EmbeddingMode} from '@diplodoc/html-extension';
4-
import {defaultOptions} from '@diplodoc/transform/lib/sanitize';
4+
import {htmlBlockDefaultSanitizer} from '@diplodoc/html-extension';
55
import {
66
type DirectiveSyntaxValue,
77
type FileUploadHandler,
@@ -28,7 +28,6 @@ import {FoldingHeading} from '@gravity-ui/markdown-editor/extensions/additional/
2828
import {Math} from '@gravity-ui/markdown-editor/extensions/additional/Math/index.js';
2929
import {Mermaid} from '@gravity-ui/markdown-editor/extensions/additional/Mermaid/index.js';
3030
import {YfmHtmlBlock} from '@gravity-ui/markdown-editor/extensions/additional/YfmHtmlBlock/index.js';
31-
import {getSanitizeYfmHtmlBlock} from '@gravity-ui/markdown-editor/extensions/additional/YfmHtmlBlock/utils.js';
3231
import {Button, DropdownMenu} from '@gravity-ui/uikit';
3332

3433
import {getPlugins} from '../defaults/md-plugins';
@@ -211,7 +210,7 @@ export const Playground = memo<PlaygroundProps>((props) => {
211210
.use(FoldingHeading)
212211
.use(YfmHtmlBlock, {
213212
useConfig: useYfmHtmlBlockStyles,
214-
sanitize: getSanitizeYfmHtmlBlock({options: defaultOptions}),
213+
sanitize: htmlBlockDefaultSanitizer,
215214
autoSave: {
216215
enabled:
217216
storyAdditionalControls?.yfmHtmlBlockAutoSaveEnabled ?? true,

packages/editor/src/extensions/additional/YfmHtmlBlock/utils.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1+
// MAJOR: delete this file, use `htmlBlockDefaultSanitizer` from `@diplodoc/html-extension`
12
import type {SanitizeOptions} from '@diplodoc/transform/lib/sanitize.js';
23

34
import {getSanitize} from 'src/utils/getSanitize';
45

5-
// MAJOR: use `import {sanitize} from '@diplodoc/transform/lib/sanitize.js'`
66
const diplodocSanitize = getSanitize('YfmHtmlBlock');
77

88
// yfmHtmlBlock additional css properties white list
@@ -88,6 +88,9 @@ const yfmHtmlBlockAllowedAttributes = {
8888
style: [],
8989
};
9090

91+
/**
92+
* @deprecated Use `htmlBlockDefaultSanitizer` from `@diplodoc/html-extension` instead.
93+
*/
9194
export const getYfmHtmlBlockOptions = (defaultOptions: SanitizeOptions): SanitizeOptions => {
9295
type AllowedAttributesType = Record<
9396
string,
@@ -112,10 +115,16 @@ export const getYfmHtmlBlockOptions = (defaultOptions: SanitizeOptions): Sanitiz
112115
};
113116
};
114117

118+
/**
119+
* @deprecated Use `htmlBlockDefaultSanitizer` from `@diplodoc/html-extension` instead.
120+
*/
115121
export interface GetSanitizeYfmHtmlBlockArgs {
116122
options: SanitizeOptions;
117123
sanitize?: (html: string, options?: SanitizeOptions) => string;
118124
}
125+
/**
126+
* @deprecated Use `htmlBlockDefaultSanitizer` from `@diplodoc/html-extension` instead.
127+
*/
119128
export const getSanitizeYfmHtmlBlock =
120129
({options, sanitize = diplodocSanitize}: GetSanitizeYfmHtmlBlockArgs) =>
121130
(content: string) =>

pnpm-lock.yaml

Lines changed: 16 additions & 15 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pnpm-workspace.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ catalogs:
1919
'@diplodoc/cut-extension': ^1.1.0
2020
'@diplodoc/file-extension': ^0.2.1
2121
'@diplodoc/folding-headings-extension': ^0.1.2
22-
'@diplodoc/html-extension': ^2.9.1
22+
'@diplodoc/html-extension': ^2.9.3
2323
'@diplodoc/latex-extension': ^1.4.1
2424
'@diplodoc/mermaid-extension': ^2.0.0
2525
'@diplodoc/quote-link-extension': 0.1.3

0 commit comments

Comments
 (0)