@gravity-ui/markdown-editor 15.27.1 → 15.28.1
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/README.md +6 -4
- package/build/cjs/bundle/Editor.js.map +1 -1
- package/build/cjs/bundle/HorizontalDrag.js +3 -3
- package/build/cjs/bundle/HorizontalDrag.js.map +1 -1
- package/build/cjs/bundle/settings/index.js +1 -1
- package/build/cjs/bundle/settings/index.js.map +1 -1
- package/build/cjs/bundle/toolbar/utils/toolbarsConfigs.js +8 -8
- package/build/cjs/bundle/toolbar/utils/toolbarsConfigs.js.map +1 -1
- package/build/cjs/bundle/types.d.ts +8 -11
- package/build/cjs/bundle/types.js.map +1 -1
- package/build/cjs/bundle/wysiwyg-preset.d.ts +0 -1
- package/build/cjs/bundle/wysiwyg-preset.js +1 -1
- package/build/cjs/bundle/wysiwyg-preset.js.map +1 -1
- package/build/cjs/core/Editor.js.map +1 -1
- package/build/cjs/core/ExtensionBuilder.d.ts +0 -2
- package/build/cjs/core/ExtensionBuilder.js +1 -1
- package/build/cjs/core/ExtensionBuilder.js.map +1 -1
- package/build/cjs/core/markdown/MarkdownParser.d.ts +2 -3
- package/build/cjs/core/markdown/MarkdownParser.js.map +1 -1
- package/build/cjs/core/types/extension.js.map +1 -1
- package/build/cjs/core/types/parser.d.ts +3 -2
- package/build/cjs/core/types/parser.js.map +1 -1
- package/build/cjs/extensions/additional/GPT/gptExtension/view.js +1 -3
- package/build/cjs/extensions/additional/GPT/gptExtension/view.js.map +1 -1
- package/build/cjs/extensions/additional/Mermaid/MermaidSpecs/index.js +0 -1
- package/build/cjs/extensions/additional/Mermaid/MermaidSpecs/index.js.map +1 -1
- package/build/cjs/extensions/additional/YfmHtmlBlock/YfmHtmlBlockNodeView/YfmHtmlBlockView.js +1 -1
- package/build/cjs/extensions/additional/YfmHtmlBlock/YfmHtmlBlockNodeView/YfmHtmlBlockView.js.map +1 -1
- package/build/cjs/extensions/additional/YfmHtmlBlock/YfmHtmlBlockSpecs/index.js.map +1 -1
- package/build/cjs/extensions/additional/YfmHtmlBlock/index.js.map +1 -1
- package/build/cjs/extensions/behavior/Autocomplete/types.js.map +1 -1
- package/build/cjs/extensions/behavior/SelectionContext/index.d.ts +0 -2
- package/build/cjs/extensions/behavior/SelectionContext/index.js.map +1 -1
- package/build/cjs/extensions/behavior/SelectionContext/tooltip.js.map +1 -1
- package/build/cjs/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js +11 -1
- package/build/cjs/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js.map +1 -1
- package/build/cjs/extensions/markdown/CodeBlock/handle-paste.d.ts +20 -0
- package/build/cjs/extensions/markdown/CodeBlock/handle-paste.js +80 -23
- package/build/cjs/extensions/markdown/CodeBlock/handle-paste.js.map +1 -1
- package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/index.d.ts +2 -2
- package/build/cjs/extensions/markdown/Deflist/DeflistSpecs/index.js.map +1 -1
- package/build/cjs/extensions/markdown/Heading/HeadingSpecs/index.d.ts +1 -1
- package/build/cjs/extensions/markdown/Heading/HeadingSpecs/index.js.map +1 -1
- package/build/cjs/extensions/yfm/Checkbox/CheckboxSpecs/index.d.ts +1 -1
- package/build/cjs/extensions/yfm/Checkbox/CheckboxSpecs/index.js.map +1 -1
- package/build/cjs/extensions/yfm/ImgSize/ImgSizeSpecs/index.d.ts +1 -1
- package/build/cjs/extensions/yfm/ImgSize/ImgSizeSpecs/index.js.map +1 -1
- package/build/cjs/extensions/yfm/ImgSize/index.d.ts +0 -1
- package/build/cjs/extensions/yfm/ImgSize/index.js.map +1 -1
- package/build/cjs/extensions/yfm/Video/VideoSpecs/md-video.d.ts +1 -1
- package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/schema.d.ts +2 -2
- package/build/cjs/extensions/yfm/YfmCut/YfmCutSpecs/schema.js.map +1 -1
- package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/index.d.ts +1 -1
- package/build/cjs/extensions/yfm/YfmNote/YfmNoteSpecs/index.js.map +1 -1
- package/build/cjs/extensions/yfm/YfmTable/index.d.ts +0 -2
- package/build/cjs/extensions/yfm/YfmTable/index.js.map +1 -1
- package/build/cjs/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingMenuControl/FloatingMenuControl.js.map +1 -1
- package/build/cjs/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusButton/InsertCursor.d.ts +1 -1
- package/build/cjs/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusButton/InsertCursor.js +3 -4
- package/build/cjs/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusButton/InsertCursor.js.map +1 -1
- package/build/cjs/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusControl/FloatingPlusControl.js.map +1 -1
- package/build/cjs/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPopup/FloatingPopup.js +0 -1
- package/build/cjs/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPopup/FloatingPopup.js.map +1 -1
- package/build/cjs/extensions/yfm/YfmTabs/YfmTabsSpecs/schema.d.ts +1 -1
- package/build/cjs/extensions/yfm/YfmTabs/YfmTabsSpecs/schema.js.map +1 -1
- package/build/cjs/i18n/bundle/en.json +2 -1
- package/build/cjs/i18n/bundle/index.d.ts +3 -2
- package/build/cjs/i18n/bundle/ru.json +2 -1
- package/build/cjs/i18n/common/en.json +2 -1
- package/build/cjs/i18n/common/index.d.ts +2 -1
- package/build/cjs/i18n/common/ru.json +2 -1
- package/build/cjs/logger.d.ts +0 -1
- package/build/cjs/logger.js +0 -1
- package/build/cjs/logger.js.map +1 -1
- package/build/cjs/shortcuts/default.js +0 -2
- package/build/cjs/shortcuts/default.js.map +1 -1
- package/build/cjs/table-utils/commands/removeRow.js +1 -2
- package/build/cjs/table-utils/commands/removeRow.js.map +1 -1
- package/build/cjs/toolbar/types.d.ts +2 -3
- package/build/cjs/toolbar/types.js.map +1 -1
- package/build/cjs/types/spec.d.ts +0 -1
- package/build/cjs/types/spec.js.map +1 -1
- package/build/cjs/utils/ecapeRegexp.d.ts +1 -2
- package/build/cjs/utils/ecapeRegexp.js +1 -2
- package/build/cjs/utils/ecapeRegexp.js.map +1 -1
- package/build/cjs/utils/inputrules.js +2 -2
- package/build/cjs/utils/inputrules.js.map +1 -1
- package/build/cjs/version.js +1 -1
- package/build/cjs/version.js.map +1 -1
- package/build/cjs/view/hooks/useFilesGallery/constants.d.ts +5 -0
- package/build/cjs/view/hooks/useFilesGallery/constants.js +10 -2
- package/build/cjs/view/hooks/useFilesGallery/constants.js.map +1 -1
- package/build/cjs/view/hooks/useFilesGallery/helpers.d.ts +8 -0
- package/build/cjs/view/hooks/useFilesGallery/helpers.js +28 -0
- package/build/cjs/view/hooks/useFilesGallery/helpers.js.map +1 -0
- package/build/cjs/view/hooks/useFilesGallery/useFilesGallery.d.ts +0 -1
- package/build/cjs/view/hooks/useFilesGallery/useFilesGallery.js +19 -22
- package/build/cjs/view/hooks/useFilesGallery/useFilesGallery.js.map +1 -1
- package/build/esm/bundle/Editor.js.map +1 -1
- package/build/esm/bundle/HorizontalDrag.js +3 -3
- package/build/esm/bundle/HorizontalDrag.js.map +1 -1
- package/build/esm/bundle/settings/index.js +1 -1
- package/build/esm/bundle/settings/index.js.map +1 -1
- package/build/esm/bundle/toolbar/utils/toolbarsConfigs.js +8 -8
- package/build/esm/bundle/toolbar/utils/toolbarsConfigs.js.map +1 -1
- package/build/esm/bundle/types.d.ts +8 -11
- package/build/esm/bundle/types.js.map +1 -1
- package/build/esm/bundle/wysiwyg-preset.d.ts +0 -1
- package/build/esm/bundle/wysiwyg-preset.js +1 -1
- package/build/esm/bundle/wysiwyg-preset.js.map +1 -1
- package/build/esm/core/Editor.js.map +1 -1
- package/build/esm/core/ExtensionBuilder.d.ts +0 -2
- package/build/esm/core/ExtensionBuilder.js +1 -1
- package/build/esm/core/ExtensionBuilder.js.map +1 -1
- package/build/esm/core/markdown/MarkdownParser.d.ts +2 -3
- package/build/esm/core/markdown/MarkdownParser.js.map +1 -1
- package/build/esm/core/types/extension.js.map +1 -1
- package/build/esm/core/types/parser.d.ts +3 -2
- package/build/esm/core/types/parser.js.map +1 -1
- package/build/esm/extensions/additional/GPT/gptExtension/view.js +1 -3
- package/build/esm/extensions/additional/GPT/gptExtension/view.js.map +1 -1
- package/build/esm/extensions/additional/Mermaid/MermaidSpecs/index.js +0 -1
- package/build/esm/extensions/additional/Mermaid/MermaidSpecs/index.js.map +1 -1
- package/build/esm/extensions/additional/YfmHtmlBlock/YfmHtmlBlockNodeView/YfmHtmlBlockView.js +1 -1
- package/build/esm/extensions/additional/YfmHtmlBlock/YfmHtmlBlockNodeView/YfmHtmlBlockView.js.map +1 -1
- package/build/esm/extensions/additional/YfmHtmlBlock/YfmHtmlBlockSpecs/index.js.map +1 -1
- package/build/esm/extensions/additional/YfmHtmlBlock/index.js.map +1 -1
- package/build/esm/extensions/behavior/Autocomplete/types.js.map +1 -1
- package/build/esm/extensions/behavior/SelectionContext/index.d.ts +0 -2
- package/build/esm/extensions/behavior/SelectionContext/index.js.map +1 -1
- package/build/esm/extensions/behavior/SelectionContext/tooltip.js.map +1 -1
- package/build/esm/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js +11 -1
- package/build/esm/extensions/markdown/CodeBlock/CodeBlockHighlight/CodeBlockHighlight.js.map +1 -1
- package/build/esm/extensions/markdown/CodeBlock/handle-paste.d.ts +20 -0
- package/build/esm/extensions/markdown/CodeBlock/handle-paste.js +78 -24
- package/build/esm/extensions/markdown/CodeBlock/handle-paste.js.map +1 -1
- package/build/esm/extensions/markdown/Deflist/DeflistSpecs/index.d.ts +2 -2
- package/build/esm/extensions/markdown/Deflist/DeflistSpecs/index.js.map +1 -1
- package/build/esm/extensions/markdown/Heading/HeadingSpecs/index.d.ts +1 -1
- package/build/esm/extensions/markdown/Heading/HeadingSpecs/index.js.map +1 -1
- package/build/esm/extensions/yfm/Checkbox/CheckboxSpecs/index.d.ts +1 -1
- package/build/esm/extensions/yfm/Checkbox/CheckboxSpecs/index.js.map +1 -1
- package/build/esm/extensions/yfm/ImgSize/ImgSizeSpecs/index.d.ts +1 -1
- package/build/esm/extensions/yfm/ImgSize/ImgSizeSpecs/index.js.map +1 -1
- package/build/esm/extensions/yfm/ImgSize/index.d.ts +0 -1
- package/build/esm/extensions/yfm/ImgSize/index.js.map +1 -1
- package/build/esm/extensions/yfm/Video/VideoSpecs/md-video.d.ts +1 -1
- package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/schema.d.ts +2 -2
- package/build/esm/extensions/yfm/YfmCut/YfmCutSpecs/schema.js.map +1 -1
- package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/index.d.ts +1 -1
- package/build/esm/extensions/yfm/YfmNote/YfmNoteSpecs/index.js.map +1 -1
- package/build/esm/extensions/yfm/YfmTable/index.d.ts +0 -2
- package/build/esm/extensions/yfm/YfmTable/index.js.map +1 -1
- package/build/esm/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingMenuControl/FloatingMenuControl.js.map +1 -1
- package/build/esm/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusButton/InsertCursor.d.ts +1 -1
- package/build/esm/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusButton/InsertCursor.js +1 -2
- package/build/esm/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusButton/InsertCursor.js.map +1 -1
- package/build/esm/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPlusControl/FloatingPlusControl.js.map +1 -1
- package/build/esm/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPopup/FloatingPopup.js +0 -1
- package/build/esm/extensions/yfm/YfmTable/plugins/YfmTableControls/components/FloatingPopup/FloatingPopup.js.map +1 -1
- package/build/esm/extensions/yfm/YfmTabs/YfmTabsSpecs/schema.d.ts +1 -1
- package/build/esm/extensions/yfm/YfmTabs/YfmTabsSpecs/schema.js.map +1 -1
- package/build/esm/i18n/bundle/en.json +2 -1
- package/build/esm/i18n/bundle/index.d.ts +3 -2
- package/build/esm/i18n/bundle/ru.json +2 -1
- package/build/esm/i18n/common/en.json +2 -1
- package/build/esm/i18n/common/index.d.ts +2 -1
- package/build/esm/i18n/common/ru.json +2 -1
- package/build/esm/logger.d.ts +0 -1
- package/build/esm/logger.js +0 -1
- package/build/esm/logger.js.map +1 -1
- package/build/esm/shortcuts/default.js +0 -2
- package/build/esm/shortcuts/default.js.map +1 -1
- package/build/esm/table-utils/commands/removeRow.js +1 -2
- package/build/esm/table-utils/commands/removeRow.js.map +1 -1
- package/build/esm/toolbar/types.d.ts +2 -3
- package/build/esm/toolbar/types.js.map +1 -1
- package/build/esm/types/spec.d.ts +0 -1
- package/build/esm/types/spec.js.map +1 -1
- package/build/esm/utils/ecapeRegexp.d.ts +1 -2
- package/build/esm/utils/ecapeRegexp.js +1 -2
- package/build/esm/utils/ecapeRegexp.js.map +1 -1
- package/build/esm/utils/inputrules.js +2 -2
- package/build/esm/utils/inputrules.js.map +1 -1
- package/build/esm/version.js +1 -1
- package/build/esm/version.js.map +1 -1
- package/build/esm/view/hooks/useFilesGallery/constants.d.ts +5 -0
- package/build/esm/view/hooks/useFilesGallery/constants.js +9 -1
- package/build/esm/view/hooks/useFilesGallery/constants.js.map +1 -1
- package/build/esm/view/hooks/useFilesGallery/helpers.d.ts +8 -0
- package/build/esm/view/hooks/useFilesGallery/helpers.js +25 -0
- package/build/esm/view/hooks/useFilesGallery/helpers.js.map +1 -0
- package/build/esm/view/hooks/useFilesGallery/useFilesGallery.d.ts +0 -1
- package/build/esm/view/hooks/useFilesGallery/useFilesGallery.js +19 -21
- package/build/esm/view/hooks/useFilesGallery/useFilesGallery.js.map +1 -1
- package/package.json +73 -49
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { YfmFileAttrs, YfmFileClassname } from "./constants.js";
|
|
2
|
+
export function buildLinkObject(elem) {
|
|
3
|
+
let obj = null;
|
|
4
|
+
if (elem.tagName === 'IMG') {
|
|
5
|
+
obj = {
|
|
6
|
+
type: 'image',
|
|
7
|
+
name: elem.getAttribute('alt'),
|
|
8
|
+
link: elem.getAttribute('src') ?? '',
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
else if (elem.tagName === 'A') {
|
|
12
|
+
obj = {
|
|
13
|
+
type: 'link',
|
|
14
|
+
name: elem.getAttribute('title'),
|
|
15
|
+
link: elem.getAttribute('href') ?? '',
|
|
16
|
+
};
|
|
17
|
+
if (elem.classList.contains(YfmFileClassname)) {
|
|
18
|
+
obj.type = 'file';
|
|
19
|
+
obj.name = elem.getAttribute(YfmFileAttrs.Download);
|
|
20
|
+
obj.mimetype = elem.getAttribute(YfmFileAttrs.Type);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return obj;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"../../../../../src","sources":["view/hooks/useFilesGallery/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,gBAAgB,EAAC,uBAAoB;AAS3D,MAAM,UAAU,eAAe,CAAC,IAAa;IACzC,IAAI,GAAG,GAAsB,IAAI,CAAC;IAElC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;QACzB,GAAG,GAAG;YACF,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAC9B,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE;SACvC,CAAC;IACN,CAAC;SAAM,IAAI,IAAI,CAAC,OAAO,KAAK,GAAG,EAAE,CAAC;QAC9B,GAAG,GAAG;YACF,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAChC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE;SACxC,CAAC;QAEF,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC5C,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC;YAClB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACpD,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC;AACf,CAAC","sourcesContent":["import {YfmFileAttrs, YfmFileClassname} from './constants';\n\ntype LinkObject = {\n name?: string | null;\n mimetype?: string | null;\n type: 'image' | 'link' | 'file';\n link: string;\n};\n\nexport function buildLinkObject(elem: Element): LinkObject | null {\n let obj: LinkObject | null = null;\n\n if (elem.tagName === 'IMG') {\n obj = {\n type: 'image',\n name: elem.getAttribute('alt'),\n link: elem.getAttribute('src') ?? '',\n };\n } else if (elem.tagName === 'A') {\n obj = {\n type: 'link',\n name: elem.getAttribute('title'),\n link: elem.getAttribute('href') ?? '',\n };\n\n if (elem.classList.contains(YfmFileClassname)) {\n obj.type = 'file';\n obj.name = elem.getAttribute(YfmFileAttrs.Download);\n obj.mimetype = elem.getAttribute(YfmFileAttrs.Type);\n }\n }\n\n return obj;\n}\n"]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
1
|
import type { GalleryItemPropsWithUrl, UseFilesGalleryOptions } from "./types.js";
|
|
3
2
|
export declare function useFilesGallery(customFiles?: GalleryItemPropsWithUrl[], { download: getItemDownloladUrl, overrideItemProps, copyUrl: getItemCopyUrl, }?: UseFilesGalleryOptions): {
|
|
4
3
|
openFilesGallery: (event: React.MouseEvent<HTMLDivElement>) => boolean;
|
|
@@ -1,39 +1,37 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { useCallback } from 'react';
|
|
2
2
|
import { getGalleryItemCopyLinkAction, getGalleryItemDownloadAction, getGalleryItemImage, getGalleryItemVideo, useGallery, } from '@gravity-ui/components';
|
|
3
3
|
import { useToaster } from '@gravity-ui/uikit';
|
|
4
4
|
import { i18n } from "../../../i18n/gallery/index.js";
|
|
5
5
|
import { extensionRegex, supportedExtensions, supportedVideoExtensions } from "./constants.js";
|
|
6
|
+
import { buildLinkObject } from "./helpers.js";
|
|
6
7
|
export function useFilesGallery(customFiles, { download: getItemDownloladUrl, overrideItemProps, copyUrl: getItemCopyUrl, } = {}) {
|
|
7
8
|
const { openGallery } = useGallery();
|
|
8
9
|
const toaster = useToaster();
|
|
9
10
|
return {
|
|
10
|
-
openFilesGallery:
|
|
11
|
+
openFilesGallery: useCallback((event) => {
|
|
11
12
|
if (!(event.target instanceof HTMLElement)) {
|
|
12
13
|
return false;
|
|
13
14
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
else if (event.target.tagName === 'A') {
|
|
19
|
-
fileLink = event.target.getAttribute('href') ?? '';
|
|
20
|
-
}
|
|
21
|
-
if (!fileLink) {
|
|
15
|
+
if (event.target.tagName === 'IMG' && event.target.closest('a'))
|
|
16
|
+
return false;
|
|
17
|
+
// Opening the context menu or opening the link in the new tab
|
|
18
|
+
if (event.ctrlKey || event.metaKey) {
|
|
22
19
|
return false;
|
|
23
20
|
}
|
|
21
|
+
const targetFile = buildLinkObject(event.target);
|
|
22
|
+
if (!targetFile || !targetFile.link)
|
|
23
|
+
return false;
|
|
24
24
|
const filesFromContent = [
|
|
25
25
|
...(event.currentTarget?.querySelectorAll('img,a') ?? []),
|
|
26
26
|
].reduce((result, element) => {
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
const name =
|
|
35
|
-
? element.getAttribute('alt')
|
|
36
|
-
: element.getAttribute('title')) || '';
|
|
27
|
+
const linkObj = buildLinkObject(element);
|
|
28
|
+
if (linkObj?.link && !customFiles?.some((item) => item.url === linkObj.link)) {
|
|
29
|
+
const extension = linkObj.mimetype?.match(extensionRegex)?.[0] ||
|
|
30
|
+
linkObj.link.match(extensionRegex)?.[0] ||
|
|
31
|
+
'';
|
|
32
|
+
if (linkObj.type === 'image' || supportedExtensions.includes(extension)) {
|
|
33
|
+
const link = linkObj.link;
|
|
34
|
+
const name = linkObj.name || '';
|
|
37
35
|
const filesGalleryItemType = supportedVideoExtensions.includes(extension) ? 'video' : 'image';
|
|
38
36
|
const galleryItemActions = [];
|
|
39
37
|
const itemCopyUrl = getItemCopyUrl?.(link, filesGalleryItemType, element);
|
|
@@ -70,7 +68,7 @@ export function useFilesGallery(customFiles, { download: getItemDownloladUrl, ov
|
|
|
70
68
|
return result;
|
|
71
69
|
}, []);
|
|
72
70
|
const files = [...(customFiles ?? []), ...filesFromContent];
|
|
73
|
-
const initialItemIndex = files.findIndex((item) => item.url ===
|
|
71
|
+
const initialItemIndex = files.findIndex((item) => item.url === targetFile.link);
|
|
74
72
|
if (initialItemIndex !== -1) {
|
|
75
73
|
event.preventDefault();
|
|
76
74
|
openGallery(files, initialItemIndex);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFilesGallery.js","sourceRoot":"../../../../../src","sources":["view/hooks/useFilesGallery/useFilesGallery.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"useFilesGallery.js","sourceRoot":"../../../../../src","sources":["view/hooks/useFilesGallery/useFilesGallery.tsx"],"names":[],"mappings":"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","sourcesContent":["import {useCallback} from 'react';\n\nimport {\n type GalleryItemAction,\n getGalleryItemCopyLinkAction,\n getGalleryItemDownloadAction,\n getGalleryItemImage,\n getGalleryItemVideo,\n useGallery,\n} from '@gravity-ui/components';\nimport {useToaster} from '@gravity-ui/uikit';\n\nimport {i18n} from 'src/i18n/gallery';\n\nimport {extensionRegex, supportedExtensions, supportedVideoExtensions} from './constants';\nimport {buildLinkObject} from './helpers';\nimport type {FilesGalleryItemType, GalleryItemPropsWithUrl, UseFilesGalleryOptions} from './types';\n\nexport function useFilesGallery(\n customFiles?: GalleryItemPropsWithUrl[],\n {\n download: getItemDownloladUrl,\n overrideItemProps,\n copyUrl: getItemCopyUrl,\n }: UseFilesGalleryOptions = {},\n) {\n const {openGallery} = useGallery();\n\n const toaster = useToaster();\n\n return {\n openFilesGallery: useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (!(event.target instanceof HTMLElement)) {\n return false;\n }\n\n if (event.target.tagName === 'IMG' && event.target.closest('a')) return false;\n\n // Opening the context menu or opening the link in the new tab\n if (event.ctrlKey || event.metaKey) {\n return false;\n }\n\n const targetFile = buildLinkObject(event.target);\n\n if (!targetFile || !targetFile.link) return false;\n\n const filesFromContent = [\n ...(event.currentTarget?.querySelectorAll('img,a') ?? []),\n ].reduce<GalleryItemPropsWithUrl[]>((result, element) => {\n const linkObj = buildLinkObject(element);\n\n if (linkObj?.link && !customFiles?.some((item) => item.url === linkObj.link)) {\n const extension =\n linkObj.mimetype?.match(extensionRegex)?.[0] ||\n linkObj.link.match(extensionRegex)?.[0] ||\n '';\n\n if (linkObj.type === 'image' || supportedExtensions.includes(extension)) {\n const link = linkObj.link;\n const name = linkObj.name || '';\n\n const filesGalleryItemType: FilesGalleryItemType =\n supportedVideoExtensions.includes(extension) ? 'video' : 'image';\n const galleryItemActions: GalleryItemAction[] = [];\n\n const itemCopyUrl = getItemCopyUrl?.(\n link,\n filesGalleryItemType,\n element,\n );\n\n if (itemCopyUrl) {\n const handleLinkCopied = () => {\n toaster.add({\n theme: 'success',\n name: 'g-md-editor-gallery-copy-link',\n title: i18n('link_copied'),\n });\n };\n\n galleryItemActions.push(\n getGalleryItemCopyLinkAction({\n copyUrl: itemCopyUrl,\n onCopy: handleLinkCopied,\n }),\n );\n }\n\n const downloadUrl = getItemDownloladUrl?.(\n link,\n filesGalleryItemType,\n element,\n );\n\n if (downloadUrl) {\n galleryItemActions.push(\n getGalleryItemDownloadAction({downloadUrl}),\n );\n }\n\n const galleryItemProps = {\n ...(filesGalleryItemType === 'video'\n ? getGalleryItemVideo({src: link, name: name})\n : getGalleryItemImage({src: link, name: name})),\n url: link,\n actions: galleryItemActions,\n };\n\n result.push({\n ...galleryItemProps,\n ...overrideItemProps?.(\n link,\n filesGalleryItemType,\n element,\n galleryItemProps,\n ),\n });\n }\n }\n\n return result;\n }, []);\n\n const files = [...(customFiles ?? []), ...filesFromContent];\n\n const initialItemIndex = files.findIndex((item) => item.url === targetFile.link);\n\n if (initialItemIndex !== -1) {\n event.preventDefault();\n openGallery(files, initialItemIndex);\n return true;\n }\n\n return false;\n },\n [\n customFiles,\n getItemCopyUrl,\n getItemDownloladUrl,\n overrideItemProps,\n toaster,\n openGallery,\n ],\n ),\n };\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gravity-ui/markdown-editor",
|
|
3
|
-
"version": "15.
|
|
3
|
+
"version": "15.28.1",
|
|
4
4
|
"description": "Markdown wysiwyg and markup editor",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -14,35 +14,17 @@
|
|
|
14
14
|
"codemirror",
|
|
15
15
|
"prosemirror"
|
|
16
16
|
],
|
|
17
|
-
"
|
|
18
|
-
"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
"
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
"check-circular-deps": "node scripts/check-circular-deps.js 49",
|
|
29
|
-
"test": "jest",
|
|
30
|
-
"test:cov": "jest --coverage",
|
|
31
|
-
"test:watch": "jest --watchAll",
|
|
32
|
-
"test:esbuild": "node tests/esbuild-test/esbuild-tester.js",
|
|
33
|
-
"prepublishOnly": "npm run lint && npm run build",
|
|
34
|
-
"playwright:install": "playwright install chromium webkit --with-deps",
|
|
35
|
-
"playwright": "playwright test --config=tests/playwright/playwright.config.ts",
|
|
36
|
-
"playwright:generate": "node scripts/generate-playwright-test.js",
|
|
37
|
-
"playwright:watch": "npm run playwright -- --ui",
|
|
38
|
-
"playwright:headed": "playwright test --config=tests/playwright/playwright.config.ts --headed",
|
|
39
|
-
"playwright:update": "npm run playwright -- -u",
|
|
40
|
-
"playwright:clear": "rm -rf ./tests/playwright/.cache",
|
|
41
|
-
"playwright:report": "npx playwright show-report playwright-report",
|
|
42
|
-
"playwright:docker": "./scripts/playwright-docker.sh 'npm run playwright'",
|
|
43
|
-
"playwright:docker:update": "./scripts/playwright-docker.sh 'npm run playwright:update'",
|
|
44
|
-
"playwright:docker:clear": "./scripts/playwright-docker.sh clear",
|
|
45
|
-
"playwright:docker:report": "npx playwright show-report playwright-report-docker"
|
|
17
|
+
"devEngines": {
|
|
18
|
+
"runtime": {
|
|
19
|
+
"name": "node",
|
|
20
|
+
"version": "24",
|
|
21
|
+
"onFail": "warn"
|
|
22
|
+
},
|
|
23
|
+
"packageManager": {
|
|
24
|
+
"name": "pnpm",
|
|
25
|
+
"version": "10.17.1",
|
|
26
|
+
"onFail": "warn"
|
|
27
|
+
}
|
|
46
28
|
},
|
|
47
29
|
"exports": {
|
|
48
30
|
".": {
|
|
@@ -185,6 +167,7 @@
|
|
|
185
167
|
"@codemirror/view": "^6.36.2",
|
|
186
168
|
"@diplodoc/color-extension": "0.1.1",
|
|
187
169
|
"@diplodoc/utils": "^2.1.0",
|
|
170
|
+
"@floating-ui/react": "^0.27.16",
|
|
188
171
|
"@gravity-ui/i18n": "^1.7.0",
|
|
189
172
|
"@gravity-ui/icons": "^2.12.0",
|
|
190
173
|
"@lezer/highlight": "^1.2.1",
|
|
@@ -199,6 +182,7 @@
|
|
|
199
182
|
"markdown-it-ins": "^3.0.1",
|
|
200
183
|
"markdown-it-mark": "^3.0.1",
|
|
201
184
|
"markdown-it-sub": "^1.0.0",
|
|
185
|
+
"orderedmap": "^2.1.1",
|
|
202
186
|
"prosemirror-autocomplete": "^0.4.3",
|
|
203
187
|
"prosemirror-codemark": "^0.4.2",
|
|
204
188
|
"prosemirror-commands": "^1.6.2",
|
|
@@ -222,6 +206,11 @@
|
|
|
222
206
|
"uuid": "11.0.5"
|
|
223
207
|
},
|
|
224
208
|
"devDependencies": {
|
|
209
|
+
"@babel/preset-env": "7.28.5",
|
|
210
|
+
"@babel/preset-react": "7.28.5",
|
|
211
|
+
"@babel/preset-typescript": "7.28.5",
|
|
212
|
+
"@commitlint/cli": "20.2.0",
|
|
213
|
+
"@commitlint/config-conventional": "20.2.0",
|
|
225
214
|
"@diplodoc/cut-extension": "^1.1.0",
|
|
226
215
|
"@diplodoc/folding-headings-extension": "^0.1.2",
|
|
227
216
|
"@diplodoc/html-extension": "^2.9.1",
|
|
@@ -232,23 +221,20 @@
|
|
|
232
221
|
"@diplodoc/themes": "^1.0.0",
|
|
233
222
|
"@diplodoc/transform": "^4.65.0",
|
|
234
223
|
"@gravity-ui/components": "4.10.0",
|
|
235
|
-
"@gravity-ui/eslint-config": "
|
|
224
|
+
"@gravity-ui/eslint-config": "4.2.0",
|
|
236
225
|
"@gravity-ui/gulp-utils": "1.0.3",
|
|
237
226
|
"@gravity-ui/prettier-config": "1.1.0",
|
|
238
|
-
"@gravity-ui/stylelint-config": "
|
|
227
|
+
"@gravity-ui/stylelint-config": "5.0.0",
|
|
239
228
|
"@gravity-ui/tsconfig": "1.0.0",
|
|
240
229
|
"@gravity-ui/uikit": "^7.13.1",
|
|
241
230
|
"@playwright/experimental-ct-react": "1.49.0",
|
|
242
231
|
"@playwright/test": "1.49.0",
|
|
243
|
-
"@storybook/addon-docs": "
|
|
244
|
-
"@storybook/addon-
|
|
245
|
-
"@storybook/
|
|
246
|
-
"@storybook/blocks": "8.4.1",
|
|
247
|
-
"@storybook/cli": "^8.4.1",
|
|
232
|
+
"@storybook/addon-docs": "10.1.10",
|
|
233
|
+
"@storybook/addon-webpack5-compiler-babel": "4.0.0",
|
|
234
|
+
"@storybook/cli": "10.1.10",
|
|
248
235
|
"@storybook/preset-scss": "1.0.3",
|
|
249
|
-
"@storybook/react": "
|
|
250
|
-
"@storybook/react-webpack5": "
|
|
251
|
-
"@storybook/theming": "^8.4.1",
|
|
236
|
+
"@storybook/react": "10.1.10",
|
|
237
|
+
"@storybook/react-webpack5": "10.1.10",
|
|
252
238
|
"@types/gulp": "4.0.9",
|
|
253
239
|
"@types/gulp-sass": "5.0.0",
|
|
254
240
|
"@types/jest": "^29.5.14",
|
|
@@ -262,9 +248,11 @@
|
|
|
262
248
|
"@types/sanitize-html": "2.11.0",
|
|
263
249
|
"bem-cn-lite": "4.1.0",
|
|
264
250
|
"dpdm": "3.14.0",
|
|
251
|
+
"esbuild": "0.21.5",
|
|
265
252
|
"esbuild-sass-plugin": "2.15.0",
|
|
266
|
-
"eslint": "
|
|
267
|
-
"eslint-plugin-lodash": "
|
|
253
|
+
"eslint": "9.39.2",
|
|
254
|
+
"eslint-plugin-lodash": "8.0.0",
|
|
255
|
+
"eslint-plugin-react": "7.37.5",
|
|
268
256
|
"gulp": "5.0.0",
|
|
269
257
|
"gulp-cli": "3.0.0",
|
|
270
258
|
"gulp-concat": "2.6.1",
|
|
@@ -279,19 +267,24 @@
|
|
|
279
267
|
"jsdom": "25.0.1",
|
|
280
268
|
"lowlight": "3.0.0",
|
|
281
269
|
"markdown-it-testgen": "^0.1.6",
|
|
282
|
-
"mermaid": "11.
|
|
270
|
+
"mermaid": "11.10.0",
|
|
283
271
|
"npm-run-all": "^4.1.5",
|
|
284
|
-
"
|
|
285
|
-
"
|
|
272
|
+
"path-browserify": "1.0.1",
|
|
273
|
+
"postcss": "8.5.6",
|
|
274
|
+
"prettier": "3.7.4",
|
|
275
|
+
"process": "0.11.10",
|
|
286
276
|
"prosemirror-dev-toolkit": "1.1.8",
|
|
287
277
|
"react": "18.2.0",
|
|
288
278
|
"react-dom": "18.2.0",
|
|
289
279
|
"rimraf": "3.0.2",
|
|
290
280
|
"sass": "^1.84.0",
|
|
291
281
|
"sass-loader": "^13.3.2",
|
|
292
|
-
"
|
|
282
|
+
"storybook": "10.1.10",
|
|
283
|
+
"stylelint": "16.26.1",
|
|
293
284
|
"ts-jest": "^29.2.5",
|
|
294
|
-
"typescript": "^5.
|
|
285
|
+
"typescript": "^5.9.3",
|
|
286
|
+
"url": "0.11.4",
|
|
287
|
+
"webpack": "^5.97.1"
|
|
295
288
|
},
|
|
296
289
|
"peerDependenciesMeta": {
|
|
297
290
|
"@diplodoc/folding-headings-extension": {
|
|
@@ -353,5 +346,36 @@
|
|
|
353
346
|
"src/shortcuts/default.ts",
|
|
354
347
|
"build/**/shortcuts/index.js",
|
|
355
348
|
"build/**/shortcuts/default.js"
|
|
356
|
-
]
|
|
357
|
-
|
|
349
|
+
],
|
|
350
|
+
"scripts": {
|
|
351
|
+
"deps:global": "npm install -g pnpm@10.17.1",
|
|
352
|
+
"deps:ci": "pnpm i --frozen-lockfile",
|
|
353
|
+
"start": "pnpm run sb:start",
|
|
354
|
+
"clean": "gulp clean",
|
|
355
|
+
"build": "gulp",
|
|
356
|
+
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
357
|
+
"sb:start": "storybook dev -p 8888 -c .storybook",
|
|
358
|
+
"sb:build": "storybook build -c .storybook -o storybook-static",
|
|
359
|
+
"lint": "run-p -cs lint:*",
|
|
360
|
+
"lint:js": "eslint \"{src,demo}/**/*.{js,jsx,ts,tsx}\"",
|
|
361
|
+
"lint:styles": "stylelint \"{src,demo}/**/*.{css,scss}\"",
|
|
362
|
+
"lint:prettier": "prettier --check \"{src,demo}/**/*.{js,jsx,ts,tsx,css,scss}\"",
|
|
363
|
+
"check-circular-deps": "node scripts/check-circular-deps.js 49",
|
|
364
|
+
"test": "jest",
|
|
365
|
+
"test:cov": "jest --coverage",
|
|
366
|
+
"test:watch": "jest --watchAll",
|
|
367
|
+
"test:esbuild": "node tests/esbuild-test/esbuild-tester.js",
|
|
368
|
+
"playwright:install": "playwright install chromium webkit --with-deps",
|
|
369
|
+
"playwright": "playwright test --config=tests/playwright/playwright.config.ts",
|
|
370
|
+
"playwright:generate": "node scripts/generate-playwright-test.js",
|
|
371
|
+
"playwright:watch": "pnpm run playwright --ui",
|
|
372
|
+
"playwright:headed": "playwright test --config=tests/playwright/playwright.config.ts --headed",
|
|
373
|
+
"playwright:update": "pnpm run playwright -u",
|
|
374
|
+
"playwright:clear": "rm -rf ./tests/playwright/.cache",
|
|
375
|
+
"playwright:report": "playwright show-report playwright-report",
|
|
376
|
+
"playwright:docker": "./scripts/playwright-docker.sh test",
|
|
377
|
+
"playwright:docker:update": "./scripts/playwright-docker.sh update",
|
|
378
|
+
"playwright:docker:clear": "./scripts/playwright-docker.sh clear",
|
|
379
|
+
"playwright:docker:report": "playwright show-report playwright-report-docker"
|
|
380
|
+
}
|
|
381
|
+
}
|