@gravity-ui/markdown-editor 15.0.0 → 15.0.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.
Files changed (88) hide show
  1. package/build/cjs/bundle/config/markup.d.ts +1 -1
  2. package/build/cjs/bundle/config/markup.js.map +1 -1
  3. package/build/cjs/bundle/config/wysiwyg.d.ts +1 -1
  4. package/build/cjs/bundle/config/wysiwyg.js.map +1 -1
  5. package/build/cjs/bundle/toolbar/ToolbarButtonWithPopupMenu.d.ts +2 -2
  6. package/build/cjs/bundle/toolbar/ToolbarButtonWithPopupMenu.js.map +1 -1
  7. package/build/cjs/bundle/toolbar/ToolbarSelect.d.ts +2 -3
  8. package/build/cjs/bundle/toolbar/ToolbarSelect.js +3 -2
  9. package/build/cjs/bundle/toolbar/ToolbarSelect.js.map +1 -1
  10. package/build/cjs/bundle/toolbar/markup/MToolbarColors.d.ts +2 -3
  11. package/build/cjs/bundle/toolbar/markup/MToolbarColors.js.map +1 -1
  12. package/build/cjs/bundle/toolbar/markup/MToolbarFilePopup.d.ts +2 -3
  13. package/build/cjs/bundle/toolbar/markup/MToolbarFilePopup.js.map +1 -1
  14. package/build/cjs/bundle/toolbar/markup/MToolbarImagePopup.d.ts +2 -3
  15. package/build/cjs/bundle/toolbar/markup/MToolbarImagePopup.js.map +1 -1
  16. package/build/cjs/bundle/toolbar/types.d.ts +3 -1
  17. package/build/cjs/bundle/toolbar/types.js.map +1 -1
  18. package/build/cjs/bundle/toolbar/utils/toolbarsConfigs.js +1 -0
  19. package/build/cjs/bundle/toolbar/utils/toolbarsConfigs.js.map +1 -1
  20. package/build/cjs/bundle/toolbar/wysiwyg/WToolbarColors.d.ts +2 -3
  21. package/build/cjs/bundle/toolbar/wysiwyg/WToolbarColors.js.map +1 -1
  22. package/build/cjs/bundle/toolbar/wysiwyg/WToolbarTextSelect.d.ts +2 -3
  23. package/build/cjs/bundle/toolbar/wysiwyg/WToolbarTextSelect.js.map +1 -1
  24. package/build/cjs/extensions/yfm/YfmCut/index.css +3 -0
  25. package/build/cjs/plugins/TooltipButton/TooltipButton.d.ts +2 -0
  26. package/build/cjs/plugins/TooltipButton/TooltipButton.js +1 -0
  27. package/build/cjs/plugins/TooltipButton/TooltipButton.js.map +1 -1
  28. package/build/cjs/plugins/TooltipButton/index.d.ts +4 -0
  29. package/build/cjs/plugins/TooltipButton/index.js +1 -0
  30. package/build/cjs/plugins/TooltipButton/index.js.map +1 -1
  31. package/build/cjs/plugins/TooltipSelect/TooltipSelect.d.ts +2 -0
  32. package/build/cjs/plugins/TooltipSelect/TooltipSelect.js +1 -0
  33. package/build/cjs/plugins/TooltipSelect/TooltipSelect.js.map +1 -1
  34. package/build/cjs/plugins/TooltipSelect/index.d.ts +2 -0
  35. package/build/cjs/plugins/TooltipSelect/index.js +1 -0
  36. package/build/cjs/plugins/TooltipSelect/index.js.map +1 -1
  37. package/build/cjs/plugins/index.d.ts +2 -0
  38. package/build/cjs/plugins/index.js +2 -0
  39. package/build/cjs/plugins/index.js.map +1 -1
  40. package/build/cjs/toolbar/PreviewTooltip.js +3 -1
  41. package/build/cjs/toolbar/PreviewTooltip.js.map +1 -1
  42. package/build/cjs/version.js +1 -1
  43. package/build/cjs/version.js.map +1 -1
  44. package/build/esm/bundle/config/markup.d.ts +1 -1
  45. package/build/esm/bundle/config/markup.js.map +1 -1
  46. package/build/esm/bundle/config/wysiwyg.d.ts +1 -1
  47. package/build/esm/bundle/config/wysiwyg.js.map +1 -1
  48. package/build/esm/bundle/toolbar/ToolbarButtonWithPopupMenu.d.ts +2 -2
  49. package/build/esm/bundle/toolbar/ToolbarButtonWithPopupMenu.js.map +1 -1
  50. package/build/esm/bundle/toolbar/ToolbarSelect.d.ts +2 -3
  51. package/build/esm/bundle/toolbar/ToolbarSelect.js +3 -2
  52. package/build/esm/bundle/toolbar/ToolbarSelect.js.map +1 -1
  53. package/build/esm/bundle/toolbar/markup/MToolbarColors.d.ts +2 -3
  54. package/build/esm/bundle/toolbar/markup/MToolbarColors.js.map +1 -1
  55. package/build/esm/bundle/toolbar/markup/MToolbarFilePopup.d.ts +2 -3
  56. package/build/esm/bundle/toolbar/markup/MToolbarFilePopup.js.map +1 -1
  57. package/build/esm/bundle/toolbar/markup/MToolbarImagePopup.d.ts +2 -3
  58. package/build/esm/bundle/toolbar/markup/MToolbarImagePopup.js.map +1 -1
  59. package/build/esm/bundle/toolbar/types.d.ts +3 -1
  60. package/build/esm/bundle/toolbar/types.js.map +1 -1
  61. package/build/esm/bundle/toolbar/utils/toolbarsConfigs.js +1 -0
  62. package/build/esm/bundle/toolbar/utils/toolbarsConfigs.js.map +1 -1
  63. package/build/esm/bundle/toolbar/wysiwyg/WToolbarColors.d.ts +2 -3
  64. package/build/esm/bundle/toolbar/wysiwyg/WToolbarColors.js.map +1 -1
  65. package/build/esm/bundle/toolbar/wysiwyg/WToolbarTextSelect.d.ts +2 -3
  66. package/build/esm/bundle/toolbar/wysiwyg/WToolbarTextSelect.js.map +1 -1
  67. package/build/esm/extensions/yfm/YfmCut/index.css +3 -0
  68. package/build/esm/plugins/TooltipButton/TooltipButton.d.ts +2 -0
  69. package/build/esm/plugins/TooltipButton/TooltipButton.js +1 -0
  70. package/build/esm/plugins/TooltipButton/TooltipButton.js.map +1 -1
  71. package/build/esm/plugins/TooltipButton/index.d.ts +4 -0
  72. package/build/esm/plugins/TooltipButton/index.js +1 -0
  73. package/build/esm/plugins/TooltipButton/index.js.map +1 -1
  74. package/build/esm/plugins/TooltipSelect/TooltipSelect.d.ts +2 -0
  75. package/build/esm/plugins/TooltipSelect/TooltipSelect.js +1 -0
  76. package/build/esm/plugins/TooltipSelect/TooltipSelect.js.map +1 -1
  77. package/build/esm/plugins/TooltipSelect/index.d.ts +2 -0
  78. package/build/esm/plugins/TooltipSelect/index.js +1 -0
  79. package/build/esm/plugins/TooltipSelect/index.js.map +1 -1
  80. package/build/esm/plugins/index.d.ts +2 -0
  81. package/build/esm/plugins/index.js +2 -0
  82. package/build/esm/plugins/index.js.map +1 -1
  83. package/build/esm/toolbar/PreviewTooltip.js +3 -1
  84. package/build/esm/toolbar/PreviewTooltip.js.map +1 -1
  85. package/build/esm/version.js +1 -1
  86. package/build/esm/version.js.map +1 -1
  87. package/build/styles.css +3 -0
  88. package/package.json +2 -2
@@ -1,4 +1,3 @@
1
- import type { CodeEditor } from "../../../markup/editor.js";
2
- import type { ToolbarBaseProps } from "../types.js";
3
- export type MToolbarColorsProps = ToolbarBaseProps<CodeEditor>;
1
+ import type { MToolbarBaseProps } from "../types.js";
2
+ export type MToolbarColorsProps = MToolbarBaseProps;
4
3
  export declare const MToolbarColors: React.FC<MToolbarColorsProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"MToolbarColors.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/markup/MToolbarColors.tsx"],"names":[],"mappings":";;;;AAAA,gEAAkD;AAElD,8DAAsD;AAK/C,MAAM,cAAc,GAAkC,CAAC,EAC1D,SAAS,EACT,MAAM,EACN,KAAK,EACL,OAAO,GACV,EAAE,EAAE;IACD,OAAO,CACH,uBAAC,6BAAa,IACV,MAAM,QACN,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACZ,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/B,CAAC,EACD,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,GAClB,CACL,CAAC;AACN,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB","sourcesContent":["import {colorify} from '../../../markup/commands';\nimport type {CodeEditor} from '../../../markup/editor';\nimport {ToolbarColors} from '../custom/ToolbarColors';\nimport type {ToolbarBaseProps} from '../types';\n\nexport type MToolbarColorsProps = ToolbarBaseProps<CodeEditor>;\n\nexport const MToolbarColors: React.FC<MToolbarColorsProps> = ({\n className,\n editor,\n focus,\n onClick,\n}) => {\n return (\n <ToolbarColors\n enable\n exec={(color) => {\n colorify(color)(editor.cm);\n }}\n className={className}\n focus={focus}\n onClick={onClick}\n />\n );\n};\n"]}
1
+ {"version":3,"file":"MToolbarColors.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/markup/MToolbarColors.tsx"],"names":[],"mappings":";;;;AAAA,gEAAkD;AAClD,8DAAsD;AAK/C,MAAM,cAAc,GAAkC,CAAC,EAC1D,SAAS,EACT,MAAM,EACN,KAAK,EACL,OAAO,GACV,EAAE,EAAE;IACD,OAAO,CACH,uBAAC,6BAAa,IACV,MAAM,QACN,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACZ,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/B,CAAC,EACD,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,GAClB,CACL,CAAC;AACN,CAAC,CAAC;AAjBW,QAAA,cAAc,kBAiBzB","sourcesContent":["import {colorify} from '../../../markup/commands';\nimport {ToolbarColors} from '../custom/ToolbarColors';\nimport type {MToolbarBaseProps} from '../types';\n\nexport type MToolbarColorsProps = MToolbarBaseProps;\n\nexport const MToolbarColors: React.FC<MToolbarColorsProps> = ({\n className,\n editor,\n focus,\n onClick,\n}) => {\n return (\n <ToolbarColors\n enable\n exec={(color) => {\n colorify(color)(editor.cm);\n }}\n className={className}\n focus={focus}\n onClick={onClick}\n />\n );\n};\n"]}
@@ -1,7 +1,6 @@
1
- import type { CodeEditor } from "../../../markup/editor.js";
2
- import type { ToolbarBaseProps } from "../../../toolbar/index.js";
3
1
  import { type ToolbarFilePopupProps } from "../custom/ToolbarFilePopup.js";
4
- export type MToolbarFilePopupProps = ToolbarBaseProps<CodeEditor> & Pick<ToolbarFilePopupProps, 'anchorElement'> & {
2
+ import type { MToolbarBaseProps } from "../types.js";
3
+ export type MToolbarFilePopupProps = MToolbarBaseProps & Pick<ToolbarFilePopupProps, 'anchorElement'> & {
5
4
  hide: () => void;
6
5
  };
7
6
  export declare const MToolbarFilePopup: React.FC<MToolbarFilePopupProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"MToolbarFilePopup.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/markup/MToolbarFilePopup.tsx"],"names":[],"mappings":";;;;AAAA,gEAAoE;AAGpE,oEAAwF;AAExF,0CAAkD;AAO3C,MAAM,iBAAiB,GAAqC,CAAC,EAChE,KAAK,EACL,OAAO,EACP,IAAI,EACJ,aAAa,EACb,MAAM,EACN,SAAS,GACZ,EAAE,EAAE;IACD,MAAM,EAAC,aAAa,EAAC,GAAG,IAAA,iCAAuB,GAAE,CAAC;IAElD,OAAO,CACH,uBAAC,mCAAgB,IACb,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAA,sBAAW,EAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAC9D,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;YACrB,IAAA,sBAAW,EACP,GAAG,CAAC,OAAO,CAAC,GAAG,CAAW,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;gBAC9B,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;aACjC,CAAC,CAAC,CACN,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC,GACH,CACL,CAAC;AACN,CAAC,CAAC;AA9BW,QAAA,iBAAiB,qBA8B5B","sourcesContent":["import {type FileItem, insertFiles} from '../../../markup/commands';\nimport type {CodeEditor} from '../../../markup/editor';\nimport type {ToolbarBaseProps} from '../../../toolbar';\nimport {ToolbarFilePopup, type ToolbarFilePopupProps} from '../custom/ToolbarFilePopup';\n\nimport {useMarkupToolbarContext} from './context';\n\nexport type MToolbarFilePopupProps = ToolbarBaseProps<CodeEditor> &\n Pick<ToolbarFilePopupProps, 'anchorElement'> & {\n hide: () => void;\n };\n\nexport const MToolbarFilePopup: React.FC<MToolbarFilePopupProps> = ({\n focus,\n onClick,\n hide,\n anchorElement,\n editor,\n className,\n}) => {\n const {uploadHandler} = useMarkupToolbarContext();\n\n return (\n <ToolbarFilePopup\n hide={hide}\n focus={focus}\n onClick={onClick}\n anchorElement={anchorElement}\n className={className}\n onSubmit={(fileParams) => insertFiles([fileParams])(editor.cm)}\n uploadHandler={uploadHandler}\n onSuccessUpload={(res) => {\n insertFiles(\n res.success.map<FileItem>(({result, file}) => ({\n src: result.url,\n name: result.name ?? file.name,\n type: result.type ?? file.type,\n })),\n )(editor.cm);\n }}\n />\n );\n};\n"]}
1
+ {"version":3,"file":"MToolbarFilePopup.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/markup/MToolbarFilePopup.tsx"],"names":[],"mappings":";;;;AAAA,gEAAoE;AACpE,oEAAwF;AAGxF,0CAAkD;AAO3C,MAAM,iBAAiB,GAAqC,CAAC,EAChE,KAAK,EACL,OAAO,EACP,IAAI,EACJ,aAAa,EACb,MAAM,EACN,SAAS,GACZ,EAAE,EAAE;IACD,MAAM,EAAC,aAAa,EAAC,GAAG,IAAA,iCAAuB,GAAE,CAAC;IAElD,OAAO,CACH,uBAAC,mCAAgB,IACb,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,IAAA,sBAAW,EAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAC9D,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,CAAC,GAAG,EAAE,EAAE;YACrB,IAAA,sBAAW,EACP,GAAG,CAAC,OAAO,CAAC,GAAG,CAAW,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;gBAC9B,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI;aACjC,CAAC,CAAC,CACN,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC,GACH,CACL,CAAC;AACN,CAAC,CAAC;AA9BW,QAAA,iBAAiB,qBA8B5B","sourcesContent":["import {type FileItem, insertFiles} from '../../../markup/commands';\nimport {ToolbarFilePopup, type ToolbarFilePopupProps} from '../custom/ToolbarFilePopup';\nimport type {MToolbarBaseProps} from '../types';\n\nimport {useMarkupToolbarContext} from './context';\n\nexport type MToolbarFilePopupProps = MToolbarBaseProps &\n Pick<ToolbarFilePopupProps, 'anchorElement'> & {\n hide: () => void;\n };\n\nexport const MToolbarFilePopup: React.FC<MToolbarFilePopupProps> = ({\n focus,\n onClick,\n hide,\n anchorElement,\n editor,\n className,\n}) => {\n const {uploadHandler} = useMarkupToolbarContext();\n\n return (\n <ToolbarFilePopup\n hide={hide}\n focus={focus}\n onClick={onClick}\n anchorElement={anchorElement}\n className={className}\n onSubmit={(fileParams) => insertFiles([fileParams])(editor.cm)}\n uploadHandler={uploadHandler}\n onSuccessUpload={(res) => {\n insertFiles(\n res.success.map<FileItem>(({result, file}) => ({\n src: result.url,\n name: result.name ?? file.name,\n type: result.type ?? file.type,\n })),\n )(editor.cm);\n }}\n />\n );\n};\n"]}
@@ -1,7 +1,6 @@
1
- import type { CodeEditor } from "../../../markup/editor.js";
2
- import type { ToolbarBaseProps } from "../../../toolbar/index.js";
3
1
  import { type ToolbarImagePopuProps } from "../custom/ToolbarImagePopup.js";
4
- export type MToolbarImagePopupProps = ToolbarBaseProps<CodeEditor> & Pick<ToolbarImagePopuProps, 'anchorElement'> & {
2
+ import type { MToolbarBaseProps } from "../types.js";
3
+ export type MToolbarImagePopupProps = MToolbarBaseProps & Pick<ToolbarImagePopuProps, 'anchorElement'> & {
5
4
  hide: () => void;
6
5
  };
7
6
  export declare const MToolbarImagePopup: React.FC<MToolbarImagePopupProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"MToolbarImagePopup.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/markup/MToolbarImagePopup.tsx"],"names":[],"mappings":";;;;;AAAA,kEAAiC;AAEjC,qDAAiG;AAIjG,sEAA0F;AAE1F,0CAAkD;AAElD,MAAM,IAAI,GAAG,CAAC,GAAY,EAAE,EAAE;IAC1B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC;AAOK,MAAM,kBAAkB,GAAsC,CAAC,EAClE,KAAK,EACL,OAAO,EACP,IAAI,EACJ,aAAa,EACb,MAAM,EACN,SAAS,GACZ,EAAE,EAAE;IACD,MAAM,EAAC,aAAa,EAAE,oCAAoC,EAAC,GAAG,IAAA,iCAAuB,GAAE,CAAC;IAExF,OAAO,CACH,uBAAC,qCAAiB,IACd,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAC,EAAE,EAAE;YAC1C,IAAA,qBAAY,EAAC;gBACT;oBACI,GAAG;oBACH,GAAG;oBACH,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC3C,MAAM,EAAE,IAAA,mBAAQ,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;iBACjD;aACJ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,EACD,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC3B,MAAM,MAAM,GAAG,MAAM,YAAY,CAC7B,GAAG,CAAC,OAAO,EACX,OAAO,CAAC,oCAAoC,CAAC,CAChD,CAAC;YACF,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC,GACH,CACL,CAAC;AACN,CAAC,CAAC;AAtCW,QAAA,kBAAkB,sBAsC7B;AAEF,KAAK,UAAU,YAAY,CACvB,KAAmC,EACnC,cAAuB;IAEvB,MAAM,QAAQ,GAAgB,EAAE,CAAC;IAEjC,MAAM,OAAO,CAAC,GAAG,CACb,KAAK,CAAC,GAAG,CAAgB,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,EAAE,EAAE;QACxC,MAAM,OAAO,GAAc,EAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAC,CAAC;QAC5E,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEvB,IAAI,cAAc,EAAE,CAAC;YACjB,OAAO,IAAA,2BAAkB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE;gBAC9C,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAc,CAAC,CAAC,CAAC;YAC9D,CAAC,EAAE,IAAI,CAAC,CAAC;QACb,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAC,CACL,CAAC;IAEF,OAAO,QAAQ,CAAC;AACpB,CAAC","sourcesContent":["import isNumber from 'is-number';\n\nimport {IMG_MAX_HEIGHT, type ImageItem, getImageDimensions, insertImages} from '../../../markup';\nimport type {CodeEditor} from '../../../markup/editor';\nimport type {ToolbarBaseProps} from '../../../toolbar';\nimport type {UploadSuccessItem} from '../../../utils';\nimport {type ToolbarImagePopuProps, ToolbarImagePopup} from '../custom/ToolbarImagePopup';\n\nimport {useMarkupToolbarContext} from './context';\n\nconst noop = (err: unknown) => {\n console.error(err);\n};\n\nexport type MToolbarImagePopupProps = ToolbarBaseProps<CodeEditor> &\n Pick<ToolbarImagePopuProps, 'anchorElement'> & {\n hide: () => void;\n };\n\nexport const MToolbarImagePopup: React.FC<MToolbarImagePopupProps> = ({\n focus,\n onClick,\n hide,\n anchorElement,\n editor,\n className,\n}) => {\n const {uploadHandler, needToSetDimensionsForUploadedImages} = useMarkupToolbarContext();\n\n return (\n <ToolbarImagePopup\n hide={hide}\n anchorElement={anchorElement}\n focus={focus}\n onClick={onClick}\n className={className}\n onSubmit={({url, name, alt, width, height}) => {\n insertImages([\n {\n url,\n alt,\n title: name,\n width: isNumber(width) ? String(width) : '',\n height: isNumber(height) ? String(height) : '',\n },\n ])(editor.cm);\n }}\n uploadImages={uploadHandler}\n onSuccessUpload={async (res) => {\n const images = await toImageItems(\n res.success,\n Boolean(needToSetDimensionsForUploadedImages),\n );\n insertImages(images)(editor.cm);\n }}\n />\n );\n};\n\nasync function toImageItems(\n items: readonly UploadSuccessItem[],\n withDimensions: boolean,\n): Promise<ImageItem[]> {\n const imgItems: ImageItem[] = [];\n\n await Promise.all(\n items.map<Promise<void>>(({result, file}) => {\n const imgItem: ImageItem = {url: result.url, alt: result.name ?? file.name};\n imgItems.push(imgItem);\n\n if (withDimensions) {\n return getImageDimensions(file).then(({height}) => {\n imgItem.height = String(Math.min(height, IMG_MAX_HEIGHT));\n }, noop);\n }\n return Promise.resolve();\n }),\n );\n\n return imgItems;\n}\n"]}
1
+ {"version":3,"file":"MToolbarImagePopup.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/markup/MToolbarImagePopup.tsx"],"names":[],"mappings":";;;;;AAAA,kEAAiC;AAEjC,qDAAiG;AAEjG,sEAA0F;AAG1F,0CAAkD;AAElD,MAAM,IAAI,GAAG,CAAC,GAAY,EAAE,EAAE;IAC1B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC;AAOK,MAAM,kBAAkB,GAAsC,CAAC,EAClE,KAAK,EACL,OAAO,EACP,IAAI,EACJ,aAAa,EACb,MAAM,EACN,SAAS,GACZ,EAAE,EAAE;IACD,MAAM,EAAC,aAAa,EAAE,oCAAoC,EAAC,GAAG,IAAA,iCAAuB,GAAE,CAAC;IAExF,OAAO,CACH,uBAAC,qCAAiB,IACd,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,CAAC,EAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAC,EAAE,EAAE;YAC1C,IAAA,qBAAY,EAAC;gBACT;oBACI,GAAG;oBACH,GAAG;oBACH,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;oBAC3C,MAAM,EAAE,IAAA,mBAAQ,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;iBACjD;aACJ,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,EACD,YAAY,EAAE,aAAa,EAC3B,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC3B,MAAM,MAAM,GAAG,MAAM,YAAY,CAC7B,GAAG,CAAC,OAAO,EACX,OAAO,CAAC,oCAAoC,CAAC,CAChD,CAAC;YACF,IAAA,qBAAY,EAAC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC,GACH,CACL,CAAC;AACN,CAAC,CAAC;AAtCW,QAAA,kBAAkB,sBAsC7B;AAEF,KAAK,UAAU,YAAY,CACvB,KAAmC,EACnC,cAAuB;IAEvB,MAAM,QAAQ,GAAgB,EAAE,CAAC;IAEjC,MAAM,OAAO,CAAC,GAAG,CACb,KAAK,CAAC,GAAG,CAAgB,CAAC,EAAC,MAAM,EAAE,IAAI,EAAC,EAAE,EAAE;QACxC,MAAM,OAAO,GAAc,EAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAC,CAAC;QAC5E,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEvB,IAAI,cAAc,EAAE,CAAC;YACjB,OAAO,IAAA,2BAAkB,EAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE;gBAC9C,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAc,CAAC,CAAC,CAAC;YAC9D,CAAC,EAAE,IAAI,CAAC,CAAC;QACb,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC,CAAC,CACL,CAAC;IAEF,OAAO,QAAQ,CAAC;AACpB,CAAC","sourcesContent":["import isNumber from 'is-number';\n\nimport {IMG_MAX_HEIGHT, type ImageItem, getImageDimensions, insertImages} from '../../../markup';\nimport type {UploadSuccessItem} from '../../../utils';\nimport {type ToolbarImagePopuProps, ToolbarImagePopup} from '../custom/ToolbarImagePopup';\nimport type {MToolbarBaseProps} from '../types';\n\nimport {useMarkupToolbarContext} from './context';\n\nconst noop = (err: unknown) => {\n console.error(err);\n};\n\nexport type MToolbarImagePopupProps = MToolbarBaseProps &\n Pick<ToolbarImagePopuProps, 'anchorElement'> & {\n hide: () => void;\n };\n\nexport const MToolbarImagePopup: React.FC<MToolbarImagePopupProps> = ({\n focus,\n onClick,\n hide,\n anchorElement,\n editor,\n className,\n}) => {\n const {uploadHandler, needToSetDimensionsForUploadedImages} = useMarkupToolbarContext();\n\n return (\n <ToolbarImagePopup\n hide={hide}\n anchorElement={anchorElement}\n focus={focus}\n onClick={onClick}\n className={className}\n onSubmit={({url, name, alt, width, height}) => {\n insertImages([\n {\n url,\n alt,\n title: name,\n width: isNumber(width) ? String(width) : '',\n height: isNumber(height) ? String(height) : '',\n },\n ])(editor.cm);\n }}\n uploadImages={uploadHandler}\n onSuccessUpload={async (res) => {\n const images = await toImageItems(\n res.success,\n Boolean(needToSetDimensionsForUploadedImages),\n );\n insertImages(images)(editor.cm);\n }}\n />\n );\n};\n\nasync function toImageItems(\n items: readonly UploadSuccessItem[],\n withDimensions: boolean,\n): Promise<ImageItem[]> {\n const imgItems: ImageItem[] = [];\n\n await Promise.all(\n items.map<Promise<void>>(({result, file}) => {\n const imgItem: ImageItem = {url: result.url, alt: result.name ?? file.name};\n imgItems.push(imgItem);\n\n if (withDimensions) {\n return getImageDimensions(file).then(({height}) => {\n imgItem.height = String(Math.min(height, IMG_MAX_HEIGHT));\n }, noop);\n }\n return Promise.resolve();\n }),\n );\n\n return imgItems;\n}\n"]}
@@ -1,8 +1,9 @@
1
1
  import type { ActionStorage } from "../../core/index.js";
2
2
  import type { CodeEditor } from "../../markup/index.js";
3
3
  import type { ToolbarListButtonData } from "../../toolbar/index.js";
4
- import type { ToolbarButtonPopupData, ToolbarData, ToolbarGroupData, ToolbarGroupItemData, ToolbarItemData, ToolbarListButtonItemData, ToolbarListItemData, ToolbarReactComponentData, ToolbarSingleItemData } from "../../toolbar/types.js";
4
+ import type { ToolbarBaseProps, ToolbarButtonPopupData, ToolbarData, ToolbarGroupData, ToolbarGroupItemData, ToolbarItemData, ToolbarListButtonItemData, ToolbarListItemData, ToolbarReactComponentData, ToolbarSingleItemData } from "../../toolbar/types.js";
5
5
  export * from "../../toolbar/types.js";
6
+ export type WToolbarBaseProps = ToolbarBaseProps<ActionStorage>;
6
7
  export type WToolbarData = ToolbarData<ActionStorage>;
7
8
  export type WToolbarItemData = ToolbarItemData<ActionStorage>;
8
9
  export type WToolbarSingleItemData = ToolbarSingleItemData<ActionStorage>;
@@ -11,6 +12,7 @@ export type WToolbarGroupItemData = ToolbarGroupItemData<ActionStorage>;
11
12
  export type WToolbarListButtonData = ToolbarListButtonData<ActionStorage>;
12
13
  export type WToolbarListItemData = ToolbarListItemData<ActionStorage>;
13
14
  export type WToolbarListButtonItemData = ToolbarListButtonItemData<ActionStorage>;
15
+ export type MToolbarBaseProps = ToolbarBaseProps<CodeEditor>;
14
16
  export type MToolbarData = ToolbarData<CodeEditor>;
15
17
  export type MToolbarItemData = ToolbarItemData<CodeEditor>;
16
18
  export type MToolbarSingleItemData = ToolbarSingleItemData<CodeEditor>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"../../../../src","sources":["bundle/toolbar/types.ts"],"names":[],"mappings":";;;AAeA,iEAAoC","sourcesContent":["import type {ActionStorage} from '../../core';\nimport type {CodeEditor} from '../../markup';\nimport type {ToolbarListButtonData} from '../../toolbar';\nimport type {\n ToolbarButtonPopupData,\n ToolbarData,\n ToolbarGroupData,\n ToolbarGroupItemData,\n ToolbarItemData,\n ToolbarListButtonItemData,\n ToolbarListItemData,\n ToolbarReactComponentData,\n ToolbarSingleItemData,\n} from '../../toolbar/types';\n\nexport * from '../../toolbar/types';\n\nexport type WToolbarData = ToolbarData<ActionStorage>;\nexport type WToolbarItemData = ToolbarItemData<ActionStorage>;\nexport type WToolbarSingleItemData = ToolbarSingleItemData<ActionStorage>;\nexport type WToolbarGroupData = ToolbarGroupData<ActionStorage>;\nexport type WToolbarGroupItemData = ToolbarGroupItemData<ActionStorage>;\nexport type WToolbarListButtonData = ToolbarListButtonData<ActionStorage>;\nexport type WToolbarListItemData = ToolbarListItemData<ActionStorage>;\nexport type WToolbarListButtonItemData = ToolbarListButtonItemData<ActionStorage>;\n\nexport type MToolbarData = ToolbarData<CodeEditor>;\nexport type MToolbarItemData = ToolbarItemData<CodeEditor>;\nexport type MToolbarSingleItemData = ToolbarSingleItemData<CodeEditor>;\nexport type MToolbarGroupData = ToolbarGroupData<CodeEditor>;\nexport type MToolbarReactComponentData = ToolbarReactComponentData<CodeEditor>;\nexport type MToolbarListButtonData = ToolbarListButtonData<CodeEditor>;\nexport type MToolbarListItemData = ToolbarListItemData<CodeEditor>;\nexport type MToolbarButtonPopupData = ToolbarButtonPopupData<CodeEditor>;\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"../../../../src","sources":["bundle/toolbar/types.ts"],"names":[],"mappings":";;;AAgBA,iEAAoC","sourcesContent":["import type {ActionStorage} from '../../core';\nimport type {CodeEditor} from '../../markup';\nimport type {ToolbarListButtonData} from '../../toolbar';\nimport type {\n ToolbarBaseProps,\n ToolbarButtonPopupData,\n ToolbarData,\n ToolbarGroupData,\n ToolbarGroupItemData,\n ToolbarItemData,\n ToolbarListButtonItemData,\n ToolbarListItemData,\n ToolbarReactComponentData,\n ToolbarSingleItemData,\n} from '../../toolbar/types';\n\nexport * from '../../toolbar/types';\n\nexport type WToolbarBaseProps = ToolbarBaseProps<ActionStorage>;\nexport type WToolbarData = ToolbarData<ActionStorage>;\nexport type WToolbarItemData = ToolbarItemData<ActionStorage>;\nexport type WToolbarSingleItemData = ToolbarSingleItemData<ActionStorage>;\nexport type WToolbarGroupData = ToolbarGroupData<ActionStorage>;\nexport type WToolbarGroupItemData = ToolbarGroupItemData<ActionStorage>;\nexport type WToolbarListButtonData = ToolbarListButtonData<ActionStorage>;\nexport type WToolbarListItemData = ToolbarListItemData<ActionStorage>;\nexport type WToolbarListButtonItemData = ToolbarListButtonItemData<ActionStorage>;\n\nexport type MToolbarBaseProps = ToolbarBaseProps<CodeEditor>;\nexport type MToolbarData = ToolbarData<CodeEditor>;\nexport type MToolbarItemData = ToolbarItemData<CodeEditor>;\nexport type MToolbarSingleItemData = ToolbarSingleItemData<CodeEditor>;\nexport type MToolbarGroupData = ToolbarGroupData<CodeEditor>;\nexport type MToolbarReactComponentData = ToolbarReactComponentData<CodeEditor>;\nexport type MToolbarListButtonData = ToolbarListButtonData<CodeEditor>;\nexport type MToolbarListItemData = ToolbarListItemData<CodeEditor>;\nexport type MToolbarButtonPopupData = ToolbarButtonPopupData<CodeEditor>;\n"]}
@@ -26,6 +26,7 @@ const transformItem = (type, item, id = 'unknown') => {
26
26
  hint: item.view.hint,
27
27
  icon: item.view.icon,
28
28
  hotkey: item.view.hotkey,
29
+ doNotActivateList: item.view.doNotActivateList,
29
30
  ...(isSingleButton && { preview: item.view.preview }),
30
31
  ...(isListButton && { withArrow: item.view.withArrow }),
31
32
  ...(type === 'wysiwyg' && item.wysiwyg && { ...item.wysiwyg }),
@@ -1 +1 @@
1
- {"version":3,"file":"toolbarsConfigs.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/utils/toolbarsConfigs.ts"],"names":[],"mappings":"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","sourcesContent":["import {ToolbarName} from '../../../modules/toolbars/constants';\nimport {commonmark, defaultPreset, full, yfm, zero} from '../../../modules/toolbars/presets';\nimport type {\n ToolbarItem,\n ToolbarItemMarkup,\n ToolbarItemWysiwyg,\n ToolbarsPreset,\n} from '../../../modules/toolbars/types';\nimport type {MarkdownEditorViewProps} from '../../MarkdownEditorView';\nimport type {MarkdownEditorPreset} from '../../types';\nimport {ToolbarDataType} from '../types';\nimport type {MToolbarData, ToolbarIconData, WToolbarData} from '../types';\n\nimport {flattenPreset} from './flattenPreset';\n\nconst defaultPresets: Record<MarkdownEditorPreset, ToolbarsPreset> = {\n zero,\n commonmark,\n default: defaultPreset,\n yfm,\n full,\n};\n\ninterface TransformedItem {\n type: ToolbarDataType;\n id: string;\n title?: string | (() => string);\n hint?: string | (() => string);\n icon?: ToolbarIconData;\n hotkey?: string;\n withArrow?: boolean;\n preview?: React.ReactNode;\n wysiwyg?: ToolbarItemWysiwyg<ToolbarDataType>;\n markup?: ToolbarItemMarkup<ToolbarDataType>;\n}\n\nconst transformItem = (\n type: 'wysiwyg' | 'markup',\n item?: ToolbarItem<ToolbarDataType.SingleButton | ToolbarDataType.ListButton>,\n id = 'unknown',\n): TransformedItem => {\n if (!item) {\n console.warn(\n `Toolbar item \"${id}\" not found, it might not have been added to the items dictionary.`,\n );\n return {} as TransformedItem;\n }\n\n const isListButton = item.view.type === ToolbarDataType.ListButton;\n const isSingleButton = item.view.type === ToolbarDataType.SingleButton;\n\n return {\n type: item.view.type ?? ToolbarDataType.SingleButton,\n id,\n title: item.view.title,\n hint: item.view.hint,\n icon: item.view.icon,\n hotkey: item.view.hotkey,\n ...(isSingleButton && {preview: (item.view as any).preview}),\n ...(isListButton && {withArrow: (item.view as any).withArrow}),\n ...(type === 'wysiwyg' && item.wysiwyg && {...item.wysiwyg}),\n ...(type === 'markup' && item.markup && {...item.markup}),\n };\n};\n\nexport const createToolbarConfig = <T extends WToolbarData | MToolbarData>(\n editorType: 'wysiwyg' | 'markup',\n toolbarPreset: ToolbarsPreset | MarkdownEditorPreset,\n toolbarName: string,\n): T => {\n const preset =\n typeof toolbarPreset === 'string'\n ? defaultPresets[toolbarPreset] || defaultPresets.default\n : toolbarPreset;\n const orders = preset.orders[toolbarName] ?? [[]];\n const {items} = preset;\n\n const toolbarData = orders.map((group) =>\n group.map((action) => {\n return typeof action === 'string'\n ? transformItem(editorType, items[action], action)\n : {\n ...transformItem(editorType, items[action.id], action.id),\n data: action.items.map((id) => transformItem(editorType, items[id], id)),\n };\n }),\n );\n\n return toolbarData as T;\n};\n\ninterface GetToolbarsConfigsArgs {\n toolbarsPreset?: ToolbarsPreset;\n props: Pick<\n MarkdownEditorViewProps,\n | 'markupToolbarConfig'\n | 'wysiwygToolbarConfig'\n | 'wysiwygHiddenActionsConfig'\n | 'markupHiddenActionsConfig'\n >;\n preset: MarkdownEditorPreset;\n}\nexport const getToolbarsConfigs = ({toolbarsPreset, props, preset}: GetToolbarsConfigsArgs) => {\n const wysiwygToolbarConfig = toolbarsPreset\n ? createToolbarConfig<WToolbarData>('wysiwyg', toolbarsPreset, ToolbarName.wysiwygMain)\n : props.wysiwygToolbarConfig ??\n createToolbarConfig<WToolbarData>('wysiwyg', preset, ToolbarName.wysiwygMain);\n\n const markupToolbarConfig = toolbarsPreset\n ? createToolbarConfig<MToolbarData>('markup', toolbarsPreset, ToolbarName.markupMain)\n : props.markupToolbarConfig ??\n createToolbarConfig<MToolbarData>('markup', preset, ToolbarName.markupMain);\n\n const wysiwygHiddenActionsConfig = toolbarsPreset\n ? flattenPreset(\n createToolbarConfig<WToolbarData>(\n 'wysiwyg',\n toolbarsPreset,\n ToolbarName.wysiwygHidden,\n ),\n )\n : props.wysiwygHiddenActionsConfig ??\n flattenPreset(\n createToolbarConfig<WToolbarData>('wysiwyg', preset, ToolbarName.wysiwygHidden),\n );\n\n const markupHiddenActionsConfig = toolbarsPreset\n ? flattenPreset(\n createToolbarConfig<MToolbarData>('markup', toolbarsPreset, ToolbarName.markupHidden),\n )\n : props.markupHiddenActionsConfig ??\n flattenPreset(\n createToolbarConfig<MToolbarData>('markup', preset, ToolbarName.markupHidden),\n );\n\n return {\n wysiwygToolbarConfig,\n markupToolbarConfig,\n wysiwygHiddenActionsConfig,\n markupHiddenActionsConfig,\n };\n};\n"]}
1
+ {"version":3,"file":"toolbarsConfigs.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/utils/toolbarsConfigs.ts"],"names":[],"mappings":"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","sourcesContent":["import {ToolbarName} from '../../../modules/toolbars/constants';\nimport {commonmark, defaultPreset, full, yfm, zero} from '../../../modules/toolbars/presets';\nimport type {\n ToolbarItem,\n ToolbarItemMarkup,\n ToolbarItemWysiwyg,\n ToolbarsPreset,\n} from '../../../modules/toolbars/types';\nimport type {MarkdownEditorViewProps} from '../../MarkdownEditorView';\nimport type {MarkdownEditorPreset} from '../../types';\nimport {ToolbarDataType} from '../types';\nimport type {MToolbarData, ToolbarIconData, WToolbarData} from '../types';\n\nimport {flattenPreset} from './flattenPreset';\n\nconst defaultPresets: Record<MarkdownEditorPreset, ToolbarsPreset> = {\n zero,\n commonmark,\n default: defaultPreset,\n yfm,\n full,\n};\n\ninterface TransformedItem {\n type: ToolbarDataType;\n id: string;\n title?: string | (() => string);\n hint?: string | (() => string);\n icon?: ToolbarIconData;\n hotkey?: string;\n withArrow?: boolean;\n doNotActivateList?: boolean;\n preview?: React.ReactNode;\n wysiwyg?: ToolbarItemWysiwyg<ToolbarDataType>;\n markup?: ToolbarItemMarkup<ToolbarDataType>;\n}\n\nconst transformItem = (\n type: 'wysiwyg' | 'markup',\n item?: ToolbarItem<ToolbarDataType.SingleButton | ToolbarDataType.ListButton>,\n id = 'unknown',\n): TransformedItem => {\n if (!item) {\n console.warn(\n `Toolbar item \"${id}\" not found, it might not have been added to the items dictionary.`,\n );\n return {} as TransformedItem;\n }\n\n const isListButton = item.view.type === ToolbarDataType.ListButton;\n const isSingleButton = item.view.type === ToolbarDataType.SingleButton;\n\n return {\n type: item.view.type ?? ToolbarDataType.SingleButton,\n id,\n title: item.view.title,\n hint: item.view.hint,\n icon: item.view.icon,\n hotkey: item.view.hotkey,\n doNotActivateList: item.view.doNotActivateList,\n ...(isSingleButton && {preview: (item.view as any).preview}),\n ...(isListButton && {withArrow: (item.view as any).withArrow}),\n ...(type === 'wysiwyg' && item.wysiwyg && {...item.wysiwyg}),\n ...(type === 'markup' && item.markup && {...item.markup}),\n };\n};\n\nexport const createToolbarConfig = <T extends WToolbarData | MToolbarData>(\n editorType: 'wysiwyg' | 'markup',\n toolbarPreset: ToolbarsPreset | MarkdownEditorPreset,\n toolbarName: string,\n): T => {\n const preset =\n typeof toolbarPreset === 'string'\n ? defaultPresets[toolbarPreset] || defaultPresets.default\n : toolbarPreset;\n const orders = preset.orders[toolbarName] ?? [[]];\n const {items} = preset;\n\n const toolbarData = orders.map((group) =>\n group.map((action) => {\n return typeof action === 'string'\n ? transformItem(editorType, items[action], action)\n : {\n ...transformItem(editorType, items[action.id], action.id),\n data: action.items.map((id) => transformItem(editorType, items[id], id)),\n };\n }),\n );\n\n return toolbarData as T;\n};\n\ninterface GetToolbarsConfigsArgs {\n toolbarsPreset?: ToolbarsPreset;\n props: Pick<\n MarkdownEditorViewProps,\n | 'markupToolbarConfig'\n | 'wysiwygToolbarConfig'\n | 'wysiwygHiddenActionsConfig'\n | 'markupHiddenActionsConfig'\n >;\n preset: MarkdownEditorPreset;\n}\nexport const getToolbarsConfigs = ({toolbarsPreset, props, preset}: GetToolbarsConfigsArgs) => {\n const wysiwygToolbarConfig = toolbarsPreset\n ? createToolbarConfig<WToolbarData>('wysiwyg', toolbarsPreset, ToolbarName.wysiwygMain)\n : props.wysiwygToolbarConfig ??\n createToolbarConfig<WToolbarData>('wysiwyg', preset, ToolbarName.wysiwygMain);\n\n const markupToolbarConfig = toolbarsPreset\n ? createToolbarConfig<MToolbarData>('markup', toolbarsPreset, ToolbarName.markupMain)\n : props.markupToolbarConfig ??\n createToolbarConfig<MToolbarData>('markup', preset, ToolbarName.markupMain);\n\n const wysiwygHiddenActionsConfig = toolbarsPreset\n ? flattenPreset(\n createToolbarConfig<WToolbarData>(\n 'wysiwyg',\n toolbarsPreset,\n ToolbarName.wysiwygHidden,\n ),\n )\n : props.wysiwygHiddenActionsConfig ??\n flattenPreset(\n createToolbarConfig<WToolbarData>('wysiwyg', preset, ToolbarName.wysiwygHidden),\n );\n\n const markupHiddenActionsConfig = toolbarsPreset\n ? flattenPreset(\n createToolbarConfig<MToolbarData>('markup', toolbarsPreset, ToolbarName.markupHidden),\n )\n : props.markupHiddenActionsConfig ??\n flattenPreset(\n createToolbarConfig<MToolbarData>('markup', preset, ToolbarName.markupHidden),\n );\n\n return {\n wysiwygToolbarConfig,\n markupToolbarConfig,\n wysiwygHiddenActionsConfig,\n markupHiddenActionsConfig,\n };\n};\n"]}
@@ -1,5 +1,4 @@
1
- import type { ActionStorage } from "../../../core/index.js";
2
1
  import { type ToolbarColorsProps } from "../custom/ToolbarColors.js";
3
- import type { ToolbarBaseProps } from "../types.js";
4
- export type WToolbarColorsProps = ToolbarBaseProps<ActionStorage> & Pick<ToolbarColorsProps, 'disablePortal'>;
2
+ import type { WToolbarBaseProps } from "../types.js";
3
+ export type WToolbarColorsProps = WToolbarBaseProps & Pick<ToolbarColorsProps, 'disablePortal'>;
5
4
  export declare const WToolbarColors: React.FC<WToolbarColorsProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"WToolbarColors.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/wysiwyg/WToolbarColors.tsx"],"names":[],"mappings":";;;;AACA,8DAA+E;AAMxE,MAAM,cAAc,GAAkC,CAAC,EAC1D,aAAa,EACb,SAAS,EACT,MAAM,EACN,KAAK,EACL,OAAO,GACV,EAAE,EAAE;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAEnC,OAAO,CACH,uBAAC,6BAAa,IACV,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,EACzB,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,EACzB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,CAAC,GAAG,CAAC,EAAC,KAAK,EAAE,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;QAC7D,CAAC,EACD,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,SACb,CACL,CAAC;AACN,CAAC,CAAC;AAzBW,QAAA,cAAc,kBAyBzB","sourcesContent":["import type {ActionStorage} from '../../../core';\nimport {ToolbarColors, type ToolbarColorsProps} from '../custom/ToolbarColors';\nimport type {ToolbarBaseProps} from '../types';\n\nexport type WToolbarColorsProps = ToolbarBaseProps<ActionStorage> &\n Pick<ToolbarColorsProps, 'disablePortal'>;\n\nexport const WToolbarColors: React.FC<WToolbarColorsProps> = ({\n disablePortal,\n className,\n editor,\n focus,\n onClick,\n}) => {\n const action = editor.actions.colorify;\n const currentColor = action.meta();\n\n return (\n <ToolbarColors\n active={action.isActive()}\n enable={action.isEnable()}\n currentColor={currentColor}\n exec={(color) => {\n action.run({color: color === currentColor ? '' : color});\n }}\n disablePortal={disablePortal}\n className={className}\n focus={focus}\n onClick={onClick}\n withDefault\n />\n );\n};\n"]}
1
+ {"version":3,"file":"WToolbarColors.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/wysiwyg/WToolbarColors.tsx"],"names":[],"mappings":";;;;AAAA,8DAA+E;AAKxE,MAAM,cAAc,GAAkC,CAAC,EAC1D,aAAa,EACb,SAAS,EACT,MAAM,EACN,KAAK,EACL,OAAO,GACV,EAAE,EAAE;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAEnC,OAAO,CACH,uBAAC,6BAAa,IACV,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,EACzB,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,EACzB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,CAAC,GAAG,CAAC,EAAC,KAAK,EAAE,KAAK,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;QAC7D,CAAC,EACD,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,WAAW,SACb,CACL,CAAC;AACN,CAAC,CAAC;AAzBW,QAAA,cAAc,kBAyBzB","sourcesContent":["import {ToolbarColors, type ToolbarColorsProps} from '../custom/ToolbarColors';\nimport type {WToolbarBaseProps} from '../types';\n\nexport type WToolbarColorsProps = WToolbarBaseProps & Pick<ToolbarColorsProps, 'disablePortal'>;\n\nexport const WToolbarColors: React.FC<WToolbarColorsProps> = ({\n disablePortal,\n className,\n editor,\n focus,\n onClick,\n}) => {\n const action = editor.actions.colorify;\n const currentColor = action.meta();\n\n return (\n <ToolbarColors\n active={action.isActive()}\n enable={action.isEnable()}\n currentColor={currentColor}\n exec={(color) => {\n action.run({color: color === currentColor ? '' : color});\n }}\n disablePortal={disablePortal}\n className={className}\n focus={focus}\n onClick={onClick}\n withDefault\n />\n );\n};\n"]}
@@ -1,5 +1,4 @@
1
- import type { ActionStorage } from "../../../core/index.js";
2
- import type { ToolbarBaseProps } from "../../../toolbar/types.js";
3
1
  import { type ToolbarSelectProps } from "../ToolbarSelect.js";
4
- export type WToolbarTextSelectProps = ToolbarBaseProps<ActionStorage> & Pick<ToolbarSelectProps, 'disablePortal'>;
2
+ import type { WToolbarBaseProps } from "../types.js";
3
+ export type WToolbarTextSelectProps = WToolbarBaseProps & Pick<ToolbarSelectProps, 'disablePortal'>;
5
4
  export declare const WToolbarTextSelect: React.FC<WToolbarTextSelectProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"WToolbarTextSelect.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/wysiwyg/WToolbarTextSelect.tsx"],"names":[],"mappings":";;;;AAEA,uEAAiE;AACjE,uDAAwE;AAKjE,MAAM,kBAAkB,GAAsC,CAAC,EAClE,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,aAAa,GAChB,EAAE,EAAE;IACD,OAAO,CACH,uBAAC,6BAAa,IACV,KAAK,EAAE,qCAAkB,CAAC,IAAI,EAC9B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,GAC9B,CACL,CAAC;AACN,CAAC,CAAC;AAjBW,QAAA,kBAAkB,sBAiB7B","sourcesContent":["import type {ActionStorage} from '../../../core';\nimport type {ToolbarBaseProps} from '../../../toolbar/types';\nimport {wHeadingListConfig} from '../../config/w-heading-config';\nimport {ToolbarSelect, type ToolbarSelectProps} from '../ToolbarSelect';\n\nexport type WToolbarTextSelectProps = ToolbarBaseProps<ActionStorage> &\n Pick<ToolbarSelectProps, 'disablePortal'>;\n\nexport const WToolbarTextSelect: React.FC<WToolbarTextSelectProps> = ({\n focus,\n onClick,\n editor,\n className,\n disablePortal,\n}) => {\n return (\n <ToolbarSelect\n items={wHeadingListConfig.data}\n focus={focus}\n editor={editor}\n onClick={onClick}\n className={className}\n disablePortal={disablePortal}\n />\n );\n};\n"]}
1
+ {"version":3,"file":"WToolbarTextSelect.js","sourceRoot":"../../../../../src","sources":["bundle/toolbar/wysiwyg/WToolbarTextSelect.tsx"],"names":[],"mappings":";;;;AAAA,uEAAiE;AACjE,uDAAwE;AAKjE,MAAM,kBAAkB,GAAsC,CAAC,EAClE,KAAK,EACL,OAAO,EACP,MAAM,EACN,SAAS,EACT,aAAa,GAChB,EAAE,EAAE;IACD,OAAO,CACH,uBAAC,6BAAa,IACV,KAAK,EAAE,qCAAkB,CAAC,IAAI,EAC9B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,GAC9B,CACL,CAAC;AACN,CAAC,CAAC;AAjBW,QAAA,kBAAkB,sBAiB7B","sourcesContent":["import {wHeadingListConfig} from '../../config/w-heading-config';\nimport {ToolbarSelect, type ToolbarSelectProps} from '../ToolbarSelect';\nimport type {WToolbarBaseProps} from '../types';\n\nexport type WToolbarTextSelectProps = WToolbarBaseProps & Pick<ToolbarSelectProps, 'disablePortal'>;\n\nexport const WToolbarTextSelect: React.FC<WToolbarTextSelectProps> = ({\n focus,\n onClick,\n editor,\n className,\n disablePortal,\n}) => {\n return (\n <ToolbarSelect\n items={wHeadingListConfig.data}\n focus={focus}\n editor={editor}\n onClick={onClick}\n className={className}\n disablePortal={disablePortal}\n />\n );\n};\n"]}
@@ -10,4 +10,7 @@
10
10
  }
11
11
  .ProseMirror.yfm .yfm-cut .yfm-cut-title:focus {
12
12
  outline: 0;
13
+ }
14
+ .ProseMirror.yfm .yfm-cut.open .yfm-cut-title:before {
15
+ transform: translateY(-50%);
13
16
  }
@@ -1,7 +1,9 @@
1
1
  import { type PopupProps } from '@gravity-ui/uikit';
2
+ /** @deprecated */
2
3
  type TooltipButtonProps = Pick<PopupProps, 'onOutsideClick'> & {
3
4
  domElem: HTMLElement | null;
4
5
  children?: React.ReactNode;
5
6
  };
7
+ /** @deprecated */
6
8
  export declare const TooltipButton: React.FC<TooltipButtonProps>;
7
9
  export {};
@@ -6,6 +6,7 @@ const react_1 = require("react");
6
6
  const icons_1 = require("@gravity-ui/icons");
7
7
  const uikit_1 = require("@gravity-ui/uikit");
8
8
  const react_utils_1 = require("../../react-utils/index.js");
9
+ /** @deprecated */
9
10
  const TooltipButton = ({ domElem, children, onOutsideClick, }) => {
10
11
  const [width, setWidth] = (0, react_1.useState)(0);
11
12
  const [open, , hide, toggleOpen] = (0, react_utils_1.useBooleanState)(false);
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipButton.js","sourceRoot":"../../../../src","sources":["plugins/TooltipButton/TooltipButton.tsx"],"names":[],"mappings":";;;;AAAA,iCAAgD;AAEhD,6CAA2C;AAC3C,6CAA4F;AAE5F,4DAAmE;AAO5D,MAAM,aAAa,GAAiC,CAAC,EACxD,OAAO,EACP,QAAQ,EACR,cAAc,GACjB,EAAE,EAAE;IACD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,EAAE,AAAD,EAAG,IAAI,EAAE,UAAU,CAAC,GAAG,IAAA,6BAAe,EAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAmB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,6BAAe,GAAE,CAAC;IAE9C,IAAA,uBAAe,EAAC,GAAG,EAAE;QACjB,IAAI,MAAM,EAAE,WAAW,EAAE,CAAC;YACtB,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;IACL,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IAE1B,OAAO,CACH,wBAAC,aAAK,IACF,IAAI,QACJ,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,KAAK,EACf,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,EAAC,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAC,EAC9C,cAAc,EAAE,cAAc,aAE9B,uBAAC,cAAM,IAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAC,GAAG,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,YAClF,uBAAC,YAAI,IAAC,IAAI,EAAE,gBAAQ,GAAI,GACnB,EACT,uBAAC,aAAK,IAAC,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,YACxE,QAAQ,GACL,IACJ,CACX,CAAC;AACN,CAAC,CAAC;AAlCW,QAAA,aAAa,iBAkCxB","sourcesContent":["import {useLayoutEffect, useState} from 'react';\n\nimport {Ellipsis} from '@gravity-ui/icons';\nimport {Button, Icon, Popup, type PopupPlacement, type PopupProps} from '@gravity-ui/uikit';\n\nimport {useBooleanState, useElementState} from '../../react-utils';\n\ntype TooltipButtonProps = Pick<PopupProps, 'onOutsideClick'> & {\n domElem: HTMLElement | null;\n children?: React.ReactNode;\n};\n\nexport const TooltipButton: React.FC<TooltipButtonProps> = ({\n domElem,\n children,\n onOutsideClick,\n}) => {\n const [width, setWidth] = useState(0);\n const [open, , hide, toggleOpen] = useBooleanState(false);\n const placement: PopupPlacement = ['bottom-end', 'bottom-start'];\n const [anchor, setAnchor] = useElementState();\n\n useLayoutEffect(() => {\n if (anchor?.clientWidth) {\n setWidth(anchor.clientWidth);\n }\n }, [anchor?.clientWidth]);\n\n return (\n <Popup\n open\n keepMounted={false}\n hasArrow={false}\n anchorElement={domElem}\n placement={'right-start'}\n offset={{crossAxis: 3, mainAxis: -(width + 3)}}\n onOutsideClick={onOutsideClick}\n >\n <Button onClick={toggleOpen} ref={setAnchor} size=\"s\" view={open ? 'normal' : 'raised'}>\n <Icon data={Ellipsis} />\n </Button>\n <Popup open={open} anchorElement={anchor} onClose={hide} placement={placement}>\n {children}\n </Popup>\n </Popup>\n );\n};\n"]}
1
+ {"version":3,"file":"TooltipButton.js","sourceRoot":"../../../../src","sources":["plugins/TooltipButton/TooltipButton.tsx"],"names":[],"mappings":";;;;AAAA,iCAAgD;AAEhD,6CAA2C;AAC3C,6CAA4F;AAE5F,4DAAmE;AAQnE,kBAAkB;AACX,MAAM,aAAa,GAAiC,CAAC,EACxD,OAAO,EACP,QAAQ,EACR,cAAc,GACjB,EAAE,EAAE;IACD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,EAAE,AAAD,EAAG,IAAI,EAAE,UAAU,CAAC,GAAG,IAAA,6BAAe,EAAC,KAAK,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAmB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IACjE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAA,6BAAe,GAAE,CAAC;IAE9C,IAAA,uBAAe,EAAC,GAAG,EAAE;QACjB,IAAI,MAAM,EAAE,WAAW,EAAE,CAAC;YACtB,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;IACL,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IAE1B,OAAO,CACH,wBAAC,aAAK,IACF,IAAI,QACJ,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,KAAK,EACf,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,EAAC,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,EAAC,EAC9C,cAAc,EAAE,cAAc,aAE9B,uBAAC,cAAM,IAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAC,GAAG,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,YAClF,uBAAC,YAAI,IAAC,IAAI,EAAE,gBAAQ,GAAI,GACnB,EACT,uBAAC,aAAK,IAAC,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,YACxE,QAAQ,GACL,IACJ,CACX,CAAC;AACN,CAAC,CAAC;AAlCW,QAAA,aAAa,iBAkCxB","sourcesContent":["import {useLayoutEffect, useState} from 'react';\n\nimport {Ellipsis} from '@gravity-ui/icons';\nimport {Button, Icon, Popup, type PopupPlacement, type PopupProps} from '@gravity-ui/uikit';\n\nimport {useBooleanState, useElementState} from '../../react-utils';\n\n/** @deprecated */\ntype TooltipButtonProps = Pick<PopupProps, 'onOutsideClick'> & {\n domElem: HTMLElement | null;\n children?: React.ReactNode;\n};\n\n/** @deprecated */\nexport const TooltipButton: React.FC<TooltipButtonProps> = ({\n domElem,\n children,\n onOutsideClick,\n}) => {\n const [width, setWidth] = useState(0);\n const [open, , hide, toggleOpen] = useBooleanState(false);\n const placement: PopupPlacement = ['bottom-end', 'bottom-start'];\n const [anchor, setAnchor] = useElementState();\n\n useLayoutEffect(() => {\n if (anchor?.clientWidth) {\n setWidth(anchor.clientWidth);\n }\n }, [anchor?.clientWidth]);\n\n return (\n <Popup\n open\n keepMounted={false}\n hasArrow={false}\n anchorElement={domElem}\n placement={'right-start'}\n offset={{crossAxis: 3, mainAxis: -(width + 3)}}\n onOutsideClick={onOutsideClick}\n >\n <Button onClick={toggleOpen} ref={setAnchor} size=\"s\" view={open ? 'normal' : 'raised'}>\n <Icon data={Ellipsis} />\n </Button>\n <Popup open={open} anchorElement={anchor} onClose={hide} placement={placement}>\n {children}\n </Popup>\n </Popup>\n );\n};\n"]}
@@ -1,13 +1,17 @@
1
1
  import type { NodeType } from 'prosemirror-model';
2
2
  import type { EditorView } from 'prosemirror-view';
3
3
  import { type BaseTooltipNode, type BaseTooltipPluginOptions, BaseTooltipPluginView, type TooltipOnChangeCallback } from "../BaseTooltip/index.js";
4
+ /** @deprecated */
4
5
  type ButtonContent = (view: EditorView, node: BaseTooltipNode, toggleEdit: () => void) => React.ReactElement;
6
+ /** @deprecated */
5
7
  type FormContent = (view: EditorView, node: BaseTooltipNode, onChange?: TooltipOnChangeCallback) => React.ReactElement;
8
+ /** @deprecated */
6
9
  interface TooltipMenuOptions extends BaseTooltipPluginOptions {
7
10
  disableHideOnBlur?: boolean;
8
11
  buttonContent: ButtonContent;
9
12
  formContent: FormContent;
10
13
  }
14
+ /** @deprecated */
11
15
  export declare class TooltipButtonPluginView extends BaseTooltipPluginView {
12
16
  private enableHideOnBlur?;
13
17
  private forceEdit;
@@ -4,6 +4,7 @@ exports.TooltipButtonPluginView = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const BaseTooltip_1 = require("../BaseTooltip/index.js");
6
6
  const TooltipButton_1 = require("./TooltipButton.js");
7
+ /** @deprecated */
7
8
  class TooltipButtonPluginView extends BaseTooltip_1.BaseTooltipPluginView {
8
9
  enableHideOnBlur;
9
10
  forceEdit = false;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["plugins/TooltipButton/index.tsx"],"names":[],"mappings":";;;;AAGA,yDAKwB;AAExB,sDAA8C;AAoB9C,MAAa,uBAAwB,SAAQ,mCAAqB;IACtD,gBAAgB,CAAW;IAC3B,SAAS,GAAG,KAAK,CAAC;IAClB,aAAa,CAAgB;IAC7B,WAAW,CAAc;IAEjC,YAAY,IAAgB,EAAE,OAA2B;QACrD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,KAAK,IAAI,CAAC;QAC3D,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAED,UAAU,GAAG,GAAG,EAAE;QACd,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO;QACH,KAAK,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClF,CAAC;IAES,aAAa,CAAC,WAA4B;QAChD,OAAO,CACH,2DACK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAClC,0CAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,GAAO,CAC5E,CAAC,CAAC,CAAC,CACA,uBAAC,6BAAa,IAAC,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,YACvE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,GAChD,CACnB,GACF,CACN,CAAC;IACN,CAAC;IAES,cAAc,CAAC,IAAc;QACnC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACzE,CAAC;IAES,iBAAiB;QACvB,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACxE,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC9B,CAAC;IAEO,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;CACL;AAxDD,0DAwDC","sourcesContent":["import type {NodeType} from 'prosemirror-model';\nimport type {EditorView} from 'prosemirror-view';\n\nimport {\n type BaseTooltipNode,\n type BaseTooltipPluginOptions,\n BaseTooltipPluginView,\n type TooltipOnChangeCallback,\n} from '../BaseTooltip';\n\nimport {TooltipButton} from './TooltipButton';\n\ntype ButtonContent = (\n view: EditorView,\n node: BaseTooltipNode,\n toggleEdit: () => void,\n) => React.ReactElement;\n\ntype FormContent = (\n view: EditorView,\n node: BaseTooltipNode,\n onChange?: TooltipOnChangeCallback,\n) => React.ReactElement;\n\ninterface TooltipMenuOptions extends BaseTooltipPluginOptions {\n disableHideOnBlur?: boolean;\n buttonContent: ButtonContent;\n formContent: FormContent;\n}\n\nexport class TooltipButtonPluginView extends BaseTooltipPluginView {\n private enableHideOnBlur?: boolean;\n private forceEdit = false;\n private buttonContent: ButtonContent;\n private formContent: FormContent;\n\n constructor(view: EditorView, options: TooltipMenuOptions) {\n super(view, options);\n\n this.enableHideOnBlur = options.disableHideOnBlur !== true;\n this.buttonContent = options.buttonContent;\n this.formContent = options.formContent;\n if (this.enableHideOnBlur) {\n (this.view.dom as HTMLElement).addEventListener('focus', this.onViewFocus);\n }\n }\n\n toggleEdit = () => {\n this.forceEdit = !this.forceEdit;\n this.render();\n };\n\n destroy(): void {\n super.destroy();\n (this.view.dom as HTMLElement).removeEventListener('focus', this.onViewFocus);\n }\n\n protected renderContent(currentNode: BaseTooltipNode): React.ReactNode {\n return (\n <>\n {this.forceEdit && this.formContent ? (\n <div>{this.formContent(this.view, currentNode, this.changeAttrsCb)}</div>\n ) : (\n <TooltipButton domElem={currentNode.dom} onOutsideClick={this.onOutsideClick}>\n {this.buttonContent(this.view, currentNode, this.toggleEdit)}\n </TooltipButton>\n )}\n </>\n );\n }\n\n protected setCurrentNode(node: NodeType) {\n super.setCurrentNode(node);\n this.currentNode?.dom?.addEventListener('dblclick', this.toggleEdit);\n }\n\n protected updateTooltipView() {\n this.currentNode?.dom?.removeEventListener('dblclick', this.toggleEdit);\n super.updateTooltipView();\n }\n\n private onViewFocus = () => {\n this.forceEdit = false;\n this.manualHidden = false;\n this.render();\n };\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["plugins/TooltipButton/index.tsx"],"names":[],"mappings":";;;;AAGA,yDAKwB;AAExB,sDAA8C;AAuB9C,kBAAkB;AAClB,MAAa,uBAAwB,SAAQ,mCAAqB;IACtD,gBAAgB,CAAW;IAC3B,SAAS,GAAG,KAAK,CAAC;IAClB,aAAa,CAAgB;IAC7B,WAAW,CAAc;IAEjC,YAAY,IAAgB,EAAE,OAA2B;QACrD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,KAAK,IAAI,CAAC;QAC3D,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAED,UAAU,GAAG,GAAG,EAAE;QACd,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO;QACH,KAAK,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClF,CAAC;IAES,aAAa,CAAC,WAA4B;QAChD,OAAO,CACH,2DACK,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAClC,0CAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,GAAO,CAC5E,CAAC,CAAC,CAAC,CACA,uBAAC,6BAAa,IAAC,OAAO,EAAE,WAAW,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,YACvE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,GAChD,CACnB,GACF,CACN,CAAC;IACN,CAAC;IAES,cAAc,CAAC,IAAc;QACnC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3B,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACzE,CAAC;IAES,iBAAiB;QACvB,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACxE,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC9B,CAAC;IAEO,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;CACL;AAxDD,0DAwDC","sourcesContent":["import type {NodeType} from 'prosemirror-model';\nimport type {EditorView} from 'prosemirror-view';\n\nimport {\n type BaseTooltipNode,\n type BaseTooltipPluginOptions,\n BaseTooltipPluginView,\n type TooltipOnChangeCallback,\n} from '../BaseTooltip';\n\nimport {TooltipButton} from './TooltipButton';\n\n/** @deprecated */\ntype ButtonContent = (\n view: EditorView,\n node: BaseTooltipNode,\n toggleEdit: () => void,\n) => React.ReactElement;\n\n/** @deprecated */\ntype FormContent = (\n view: EditorView,\n node: BaseTooltipNode,\n onChange?: TooltipOnChangeCallback,\n) => React.ReactElement;\n\n/** @deprecated */\ninterface TooltipMenuOptions extends BaseTooltipPluginOptions {\n disableHideOnBlur?: boolean;\n buttonContent: ButtonContent;\n formContent: FormContent;\n}\n\n/** @deprecated */\nexport class TooltipButtonPluginView extends BaseTooltipPluginView {\n private enableHideOnBlur?: boolean;\n private forceEdit = false;\n private buttonContent: ButtonContent;\n private formContent: FormContent;\n\n constructor(view: EditorView, options: TooltipMenuOptions) {\n super(view, options);\n\n this.enableHideOnBlur = options.disableHideOnBlur !== true;\n this.buttonContent = options.buttonContent;\n this.formContent = options.formContent;\n if (this.enableHideOnBlur) {\n (this.view.dom as HTMLElement).addEventListener('focus', this.onViewFocus);\n }\n }\n\n toggleEdit = () => {\n this.forceEdit = !this.forceEdit;\n this.render();\n };\n\n destroy(): void {\n super.destroy();\n (this.view.dom as HTMLElement).removeEventListener('focus', this.onViewFocus);\n }\n\n protected renderContent(currentNode: BaseTooltipNode): React.ReactNode {\n return (\n <>\n {this.forceEdit && this.formContent ? (\n <div>{this.formContent(this.view, currentNode, this.changeAttrsCb)}</div>\n ) : (\n <TooltipButton domElem={currentNode.dom} onOutsideClick={this.onOutsideClick}>\n {this.buttonContent(this.view, currentNode, this.toggleEdit)}\n </TooltipButton>\n )}\n </>\n );\n }\n\n protected setCurrentNode(node: NodeType) {\n super.setCurrentNode(node);\n this.currentNode?.dom?.addEventListener('dblclick', this.toggleEdit);\n }\n\n protected updateTooltipView() {\n this.currentNode?.dom?.removeEventListener('dblclick', this.toggleEdit);\n super.updateTooltipView();\n }\n\n private onViewFocus = () => {\n this.forceEdit = false;\n this.manualHidden = false;\n this.render();\n };\n}\n"]}
@@ -1,4 +1,5 @@
1
1
  import { type PopupProps, type SelectOption, type SelectOptionGroup } from '@gravity-ui/uikit';
2
+ /** @deprecated */
2
3
  type TooltipButtonProps = Pick<PopupProps, 'onOutsideClick'> & {
3
4
  domRef: HTMLElement | null;
4
5
  buttonTitle?: string;
@@ -6,5 +7,6 @@ type TooltipButtonProps = Pick<PopupProps, 'onOutsideClick'> & {
6
7
  onUpdate: (s: string) => void;
7
8
  withSearch?: boolean;
8
9
  };
10
+ /** @deprecated */
9
11
  export declare const TooltipButton: React.FC<TooltipButtonProps>;
10
12
  export {};
@@ -5,6 +5,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
6
  const uikit_1 = require("@gravity-ui/uikit");
7
7
  const react_utils_1 = require("../../react-utils/index.js");
8
+ /** @deprecated */
8
9
  const TooltipButton = ({ domRef, buttonTitle = 'Settings', items, onUpdate, withSearch, onOutsideClick, }) => {
9
10
  const [width, setWidth] = (0, react_1.useState)(0);
10
11
  const [open, , , toggleOpen] = (0, react_utils_1.useBooleanState)(false);
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipSelect.js","sourceRoot":"../../../../src","sources":["plugins/TooltipSelect/TooltipSelect.tsx"],"names":[],"mappings":";;;;AAAA,iCAAwD;AAExD,6CAQ2B;AAE3B,4DAAkD;AAU3C,MAAM,aAAa,GAAiC,CAAC,EACxD,MAAM,EACN,WAAW,GAAG,UAAU,EACxB,KAAK,EACL,QAAQ,EACR,UAAU,EACV,cAAc,GACjB,EAAE,EAAE;IACD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,EAAE,AAAD,EAAG,AAAD,EAAG,UAAU,CAAC,GAAG,IAAA,6BAAe,EAAC,KAAK,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,IAAA,cAAM,EAAoB,IAAI,CAAC,CAAC;IAE5C,IAAA,uBAAe,EAAC,GAAG,EAAE;QACjB,IAAI,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;YAC3B,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACvC,CAAC;IACL,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IAE5C,OAAO,CACH,uBAAC,aAAK,IACF,IAAI,QACJ,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,KAAK,EACf,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,EAAC,EAChD,cAAc,EAAE,cAAc,YAE9B,uBAAC,cAAM,IACH,YAAY,EAAE,UAAU,EACxB,aAAa,EAAE,GAAG,EAAE,CAAC,CACjB,wBAAC,cAAM,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,aACzB,WAAW,EACZ,uBAAC,mBAAW,IAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,GAAI,IAC9C,CACZ,EACD,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC/B,UAAU,EAAE,UAAU,GACxB,GACE,CACX,CAAC;AACN,CAAC,CAAC;AA1CW,QAAA,aAAa,iBA0CxB","sourcesContent":["import {useLayoutEffect, useRef, useState} from 'react';\n\nimport {\n ArrowToggle,\n Button,\n Popup,\n type PopupProps,\n Select,\n type SelectOption,\n type SelectOptionGroup,\n} from '@gravity-ui/uikit';\n\nimport {useBooleanState} from '../../react-utils';\n\ntype TooltipButtonProps = Pick<PopupProps, 'onOutsideClick'> & {\n domRef: HTMLElement | null;\n buttonTitle?: string;\n items?: SelectOption[] | SelectOptionGroup[];\n onUpdate: (s: string) => void;\n withSearch?: boolean;\n};\n\nexport const TooltipButton: React.FC<TooltipButtonProps> = ({\n domRef,\n buttonTitle = 'Settings',\n items,\n onUpdate,\n withSearch,\n onOutsideClick,\n}) => {\n const [width, setWidth] = useState(0);\n const [open, , , toggleOpen] = useBooleanState(false);\n const ref = useRef<HTMLButtonElement>(null);\n\n useLayoutEffect(() => {\n if (ref.current?.clientWidth) {\n setWidth(ref.current?.clientWidth);\n }\n }, [ref.current?.clientWidth, buttonTitle]);\n\n return (\n <Popup\n open\n keepMounted={false}\n hasArrow={false}\n anchorElement={domRef}\n placement={'right-start'}\n offset={{crossAxis: 10, mainAxis: -(width + 10)}}\n onOutsideClick={onOutsideClick}\n >\n <Select\n onOpenChange={toggleOpen}\n renderControl={() => (\n <Button ref={ref} view={'flat'}>\n {buttonTitle}\n <ArrowToggle direction={open ? 'top' : 'bottom'} />\n </Button>\n )}\n options={items}\n onUpdate={(v) => onUpdate(v[0])}\n filterable={withSearch}\n />\n </Popup>\n );\n};\n"]}
1
+ {"version":3,"file":"TooltipSelect.js","sourceRoot":"../../../../src","sources":["plugins/TooltipSelect/TooltipSelect.tsx"],"names":[],"mappings":";;;;AAAA,iCAAwD;AAExD,6CAQ2B;AAE3B,4DAAkD;AAWlD,kBAAkB;AACX,MAAM,aAAa,GAAiC,CAAC,EACxD,MAAM,EACN,WAAW,GAAG,UAAU,EACxB,KAAK,EACL,QAAQ,EACR,UAAU,EACV,cAAc,GACjB,EAAE,EAAE;IACD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,IAAI,EAAE,AAAD,EAAG,AAAD,EAAG,UAAU,CAAC,GAAG,IAAA,6BAAe,EAAC,KAAK,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,IAAA,cAAM,EAAoB,IAAI,CAAC,CAAC;IAE5C,IAAA,uBAAe,EAAC,GAAG,EAAE;QACjB,IAAI,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;YAC3B,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACvC,CAAC;IACL,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;IAE5C,OAAO,CACH,uBAAC,aAAK,IACF,IAAI,QACJ,WAAW,EAAE,KAAK,EAClB,QAAQ,EAAE,KAAK,EACf,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,aAAa,EACxB,MAAM,EAAE,EAAC,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,EAAC,EAChD,cAAc,EAAE,cAAc,YAE9B,uBAAC,cAAM,IACH,YAAY,EAAE,UAAU,EACxB,aAAa,EAAE,GAAG,EAAE,CAAC,CACjB,wBAAC,cAAM,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,aACzB,WAAW,EACZ,uBAAC,mBAAW,IAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,GAAI,IAC9C,CACZ,EACD,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC/B,UAAU,EAAE,UAAU,GACxB,GACE,CACX,CAAC;AACN,CAAC,CAAC;AA1CW,QAAA,aAAa,iBA0CxB","sourcesContent":["import {useLayoutEffect, useRef, useState} from 'react';\n\nimport {\n ArrowToggle,\n Button,\n Popup,\n type PopupProps,\n Select,\n type SelectOption,\n type SelectOptionGroup,\n} from '@gravity-ui/uikit';\n\nimport {useBooleanState} from '../../react-utils';\n\n/** @deprecated */\ntype TooltipButtonProps = Pick<PopupProps, 'onOutsideClick'> & {\n domRef: HTMLElement | null;\n buttonTitle?: string;\n items?: SelectOption[] | SelectOptionGroup[];\n onUpdate: (s: string) => void;\n withSearch?: boolean;\n};\n\n/** @deprecated */\nexport const TooltipButton: React.FC<TooltipButtonProps> = ({\n domRef,\n buttonTitle = 'Settings',\n items,\n onUpdate,\n withSearch,\n onOutsideClick,\n}) => {\n const [width, setWidth] = useState(0);\n const [open, , , toggleOpen] = useBooleanState(false);\n const ref = useRef<HTMLButtonElement>(null);\n\n useLayoutEffect(() => {\n if (ref.current?.clientWidth) {\n setWidth(ref.current?.clientWidth);\n }\n }, [ref.current?.clientWidth, buttonTitle]);\n\n return (\n <Popup\n open\n keepMounted={false}\n hasArrow={false}\n anchorElement={domRef}\n placement={'right-start'}\n offset={{crossAxis: 10, mainAxis: -(width + 10)}}\n onOutsideClick={onOutsideClick}\n >\n <Select\n onOpenChange={toggleOpen}\n renderControl={() => (\n <Button ref={ref} view={'flat'}>\n {buttonTitle}\n <ArrowToggle direction={open ? 'top' : 'bottom'} />\n </Button>\n )}\n options={items}\n onUpdate={(v) => onUpdate(v[0])}\n filterable={withSearch}\n />\n </Popup>\n );\n};\n"]}
@@ -2,6 +2,7 @@ import type { SelectOption, SelectOptionGroup } from '@gravity-ui/uikit';
2
2
  import type { Node } from 'prosemirror-model';
3
3
  import type { EditorView } from 'prosemirror-view';
4
4
  import { type BaseTooltipNode, type BaseTooltipPluginOptions, BaseTooltipPluginView } from "../BaseTooltip/index.js";
5
+ /** @deprecated */
5
6
  interface TooltipSelectOptions extends BaseTooltipPluginOptions {
6
7
  buttonText?: (node: Node) => string;
7
8
  items?: SelectOption[] | SelectOptionGroup[];
@@ -9,6 +10,7 @@ interface TooltipSelectOptions extends BaseTooltipPluginOptions {
9
10
  withSearch?: boolean;
10
11
  disableHideOnBlur?: boolean;
11
12
  }
13
+ /** @deprecated */
12
14
  export declare class TooltipSelectPluginView extends BaseTooltipPluginView {
13
15
  private buttonText?;
14
16
  private items?;
@@ -4,6 +4,7 @@ exports.TooltipSelectPluginView = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const BaseTooltip_1 = require("../BaseTooltip/index.js");
6
6
  const TooltipSelect_1 = require("./TooltipSelect.js");
7
+ /** @deprecated */
7
8
  class TooltipSelectPluginView extends BaseTooltip_1.BaseTooltipPluginView {
8
9
  buttonText;
9
10
  items;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["plugins/TooltipSelect/index.tsx"],"names":[],"mappings":";;;;AAIA,yDAIwB;AAExB,sDAA8C;AAU9C,MAAa,uBAAwB,SAAQ,mCAAqB;IACtD,UAAU,CAA0B;IACpC,KAAK,CAAwC;IAC7C,UAAU,CAAoD;IAC9D,UAAU,CAAU;IACpB,gBAAgB,CAAW;IAEnC,YAAY,IAAgB,EAAE,OAA6B;QACvD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,KAAK,IAAI,CAAC;QAE3D,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAED,OAAO;QACH,KAAK,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClF,CAAC;IAES,aAAa,CAAC,WAA4B;QAChD,OAAO,CACH,uBAAC,6BAAa,IACV,MAAM,EAAE,WAAW,CAAC,GAAG,EACvB,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAChD,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,EACzE,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,cAAc,EAAE,IAAI,CAAC,cAAc,GACrC,CACL,CAAC;IACN,CAAC;IAES,cAAc,GAAG,GAAG,EAAE;QAC5B,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC;IACL,CAAC,CAAC;IAEM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;CACL;AAlDD,0DAkDC","sourcesContent":["import type {SelectOption, SelectOptionGroup} from '@gravity-ui/uikit';\nimport type {Node} from 'prosemirror-model';\nimport type {EditorView} from 'prosemirror-view';\n\nimport {\n type BaseTooltipNode,\n type BaseTooltipPluginOptions,\n BaseTooltipPluginView,\n} from '../BaseTooltip';\n\nimport {TooltipButton} from './TooltipSelect';\n\ninterface TooltipSelectOptions extends BaseTooltipPluginOptions {\n buttonText?: (node: Node) => string;\n items?: SelectOption[] | SelectOptionGroup[];\n buildAttrs: (selectedValue: string) => Record<string, string>;\n withSearch?: boolean;\n disableHideOnBlur?: boolean;\n}\n\nexport class TooltipSelectPluginView extends BaseTooltipPluginView {\n private buttonText?: (node: Node) => string;\n private items?: SelectOption[] | SelectOptionGroup[];\n private buildAttrs: (selectedValue: string) => Record<string, string>;\n private withSearch: boolean;\n private enableHideOnBlur?: boolean;\n\n constructor(view: EditorView, options: TooltipSelectOptions) {\n super(view, options);\n\n this.buttonText = options.buttonText;\n this.items = options.items;\n this.buildAttrs = options.buildAttrs;\n this.withSearch = options.withSearch ?? true;\n this.enableHideOnBlur = options.disableHideOnBlur !== true;\n\n if (this.enableHideOnBlur) {\n (this.view.dom as HTMLElement).addEventListener('focus', this.onViewFocus);\n }\n }\n\n destroy(): void {\n super.destroy();\n (this.view.dom as HTMLElement).removeEventListener('focus', this.onViewFocus);\n }\n\n protected renderContent(currentNode: BaseTooltipNode): React.ReactNode {\n return (\n <TooltipButton\n domRef={currentNode.dom}\n buttonTitle={this.buttonText?.(currentNode.node)}\n items={this.items}\n onUpdate={(v) => this.changeAttrsCb(this.buildAttrs(v), {setFocus: true})}\n withSearch={this.withSearch}\n onOutsideClick={this.onOutsideClick}\n />\n );\n }\n\n protected onOutsideClick = () => {\n if (this.enableHideOnBlur && !this.view.hasFocus()) {\n this.manualHidden = true;\n this.render();\n }\n };\n\n private onViewFocus = () => {\n this.manualHidden = false;\n this.render();\n };\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../../src","sources":["plugins/TooltipSelect/index.tsx"],"names":[],"mappings":";;;;AAIA,yDAIwB;AAExB,sDAA8C;AAW9C,kBAAkB;AAClB,MAAa,uBAAwB,SAAQ,mCAAqB;IACtD,UAAU,CAA0B;IACpC,KAAK,CAAwC;IAC7C,UAAU,CAAoD;IAC9D,UAAU,CAAU;IACpB,gBAAgB,CAAW;IAEnC,YAAY,IAAgB,EAAE,OAA6B;QACvD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC;QAC7C,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,KAAK,IAAI,CAAC;QAE3D,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAED,OAAO;QACH,KAAK,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,GAAmB,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IAClF,CAAC;IAES,aAAa,CAAC,WAA4B;QAChD,OAAO,CACH,uBAAC,6BAAa,IACV,MAAM,EAAE,WAAW,CAAC,GAAG,EACvB,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAChD,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,EACzE,UAAU,EAAE,IAAI,CAAC,UAAU,EAC3B,cAAc,EAAE,IAAI,CAAC,cAAc,GACrC,CACL,CAAC;IACN,CAAC;IAES,cAAc,GAAG,GAAG,EAAE;QAC5B,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACjD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC;IACL,CAAC,CAAC;IAEM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;CACL;AAlDD,0DAkDC","sourcesContent":["import type {SelectOption, SelectOptionGroup} from '@gravity-ui/uikit';\nimport type {Node} from 'prosemirror-model';\nimport type {EditorView} from 'prosemirror-view';\n\nimport {\n type BaseTooltipNode,\n type BaseTooltipPluginOptions,\n BaseTooltipPluginView,\n} from '../BaseTooltip';\n\nimport {TooltipButton} from './TooltipSelect';\n\n/** @deprecated */\ninterface TooltipSelectOptions extends BaseTooltipPluginOptions {\n buttonText?: (node: Node) => string;\n items?: SelectOption[] | SelectOptionGroup[];\n buildAttrs: (selectedValue: string) => Record<string, string>;\n withSearch?: boolean;\n disableHideOnBlur?: boolean;\n}\n\n/** @deprecated */\nexport class TooltipSelectPluginView extends BaseTooltipPluginView {\n private buttonText?: (node: Node) => string;\n private items?: SelectOption[] | SelectOptionGroup[];\n private buildAttrs: (selectedValue: string) => Record<string, string>;\n private withSearch: boolean;\n private enableHideOnBlur?: boolean;\n\n constructor(view: EditorView, options: TooltipSelectOptions) {\n super(view, options);\n\n this.buttonText = options.buttonText;\n this.items = options.items;\n this.buildAttrs = options.buildAttrs;\n this.withSearch = options.withSearch ?? true;\n this.enableHideOnBlur = options.disableHideOnBlur !== true;\n\n if (this.enableHideOnBlur) {\n (this.view.dom as HTMLElement).addEventListener('focus', this.onViewFocus);\n }\n }\n\n destroy(): void {\n super.destroy();\n (this.view.dom as HTMLElement).removeEventListener('focus', this.onViewFocus);\n }\n\n protected renderContent(currentNode: BaseTooltipNode): React.ReactNode {\n return (\n <TooltipButton\n domRef={currentNode.dom}\n buttonTitle={this.buttonText?.(currentNode.node)}\n items={this.items}\n onUpdate={(v) => this.changeAttrsCb(this.buildAttrs(v), {setFocus: true})}\n withSearch={this.withSearch}\n onOutsideClick={this.onOutsideClick}\n />\n );\n }\n\n protected onOutsideClick = () => {\n if (this.enableHideOnBlur && !this.view.hasFocus()) {\n this.manualHidden = true;\n this.render();\n }\n };\n\n private onViewFocus = () => {\n this.manualHidden = false;\n this.render();\n };\n}\n"]}
@@ -1,3 +1,5 @@
1
1
  export * as BaseTooltipPlugin from "./BaseTooltip/index.js";
2
+ /** @deprecated */
2
3
  export * as TooltipButtonPlugin from "./TooltipButton/index.js";
4
+ /** @deprecated */
3
5
  export * as TooltipSelectPlugin from "./TooltipSelect/index.js";
@@ -3,6 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TooltipSelectPlugin = exports.TooltipButtonPlugin = exports.BaseTooltipPlugin = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  exports.BaseTooltipPlugin = tslib_1.__importStar(require("./BaseTooltip/index.js"));
6
+ /** @deprecated */
6
7
  exports.TooltipButtonPlugin = tslib_1.__importStar(require("./TooltipButton/index.js"));
8
+ /** @deprecated */
7
9
  exports.TooltipSelectPlugin = tslib_1.__importStar(require("./TooltipSelect/index.js"));
8
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["plugins/index.ts"],"names":[],"mappings":";;;;AAAA,oFAAmD;AACnD,wFAAuD;AACvD,wFAAuD","sourcesContent":["export * as BaseTooltipPlugin from './BaseTooltip';\nexport * as TooltipButtonPlugin from './TooltipButton';\nexport * as TooltipSelectPlugin from './TooltipSelect';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../../../src","sources":["plugins/index.ts"],"names":[],"mappings":";;;;AAAA,oFAAmD;AACnD,kBAAkB;AAClB,wFAAuD;AACvD,kBAAkB;AAClB,wFAAuD","sourcesContent":["export * as BaseTooltipPlugin from './BaseTooltip';\n/** @deprecated */\nexport * as TooltipButtonPlugin from './TooltipButton';\n/** @deprecated */\nexport * as TooltipSelectPlugin from './TooltipSelect';\n"]}
@@ -8,7 +8,9 @@ const const_1 = require("./const.js");
8
8
  require("./PreviewTooltip.css");
9
9
  const b = (0, classname_1.cn)('preview-tooltip');
10
10
  const PreviewTooltip = ({ preview, children }) => {
11
- return ((0, jsx_runtime_1.jsx)(uikit_1.Tooltip, { placement: "right", className: b(), disabled: !preview, openDelay: const_1.ToolbarTooltipDelay.Open, closeDelay: const_1.ToolbarTooltipDelay.Close, content: (0, jsx_runtime_1.jsx)("div", { className: b('content'), children: preview }), children: children }));
11
+ if (!preview)
12
+ return children;
13
+ return ((0, jsx_runtime_1.jsx)(uikit_1.Tooltip, { placement: ['right', 'left'], className: b(), disabled: !preview, openDelay: const_1.ToolbarTooltipDelay.Open, closeDelay: const_1.ToolbarTooltipDelay.Close, content: (0, jsx_runtime_1.jsx)("div", { className: b('content'), children: preview }), children: children }));
12
14
  };
13
15
  exports.PreviewTooltip = PreviewTooltip;
14
16
  //# sourceMappingURL=PreviewTooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PreviewTooltip.js","sourceRoot":"../../../src","sources":["toolbar/PreviewTooltip.tsx"],"names":[],"mappings":";;;;AAAA,6CAA0C;AAE1C,+CAAgC;AAEhC,sCAA4C;AAE5C,gCAA+B;AAE/B,MAAM,CAAC,GAAG,IAAA,cAAE,EAAC,iBAAiB,CAAC,CAAC;AAOzB,MAAM,cAAc,GAAkC,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAC,EAAE,EAAE;IACjF,OAAO,CACH,uBAAC,eAAO,IACJ,SAAS,EAAC,OAAO,EACjB,SAAS,EAAE,CAAC,EAAE,EACd,QAAQ,EAAE,CAAC,OAAO,EAClB,SAAS,EAAE,2BAAmB,CAAC,IAAI,EACnC,UAAU,EAAE,2BAAmB,CAAC,KAAK,EACrC,OAAO,EAAE,gCAAK,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,YAAG,OAAO,GAAO,YAErD,QAAQ,GACH,CACb,CAAC;AACN,CAAC,CAAC;AAbW,QAAA,cAAc,kBAazB","sourcesContent":["import {Tooltip} from '@gravity-ui/uikit';\n\nimport {cn} from '../classname';\n\nimport {ToolbarTooltipDelay} from './const';\n\nimport './PreviewTooltip.scss';\n\nconst b = cn('preview-tooltip');\n\ntype PreviewTooltipProps = {\n preview?: React.ReactNode;\n children: React.ReactElement;\n};\n\nexport const PreviewTooltip: React.FC<PreviewTooltipProps> = ({preview, children}) => {\n return (\n <Tooltip\n placement=\"right\"\n className={b()}\n disabled={!preview}\n openDelay={ToolbarTooltipDelay.Open}\n closeDelay={ToolbarTooltipDelay.Close}\n content={<div className={b('content')}>{preview}</div>}\n >\n {children}\n </Tooltip>\n );\n};\n"]}
1
+ {"version":3,"file":"PreviewTooltip.js","sourceRoot":"../../../src","sources":["toolbar/PreviewTooltip.tsx"],"names":[],"mappings":";;;;AAAA,6CAA0C;AAE1C,+CAAgC;AAEhC,sCAA4C;AAE5C,gCAA+B;AAE/B,MAAM,CAAC,GAAG,IAAA,cAAE,EAAC,iBAAiB,CAAC,CAAC;AAOzB,MAAM,cAAc,GAAkC,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAC,EAAE,EAAE;IACjF,IAAI,CAAC,OAAO;QAAE,OAAO,QAAQ,CAAC;IAE9B,OAAO,CACH,uBAAC,eAAO,IACJ,SAAS,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAC5B,SAAS,EAAE,CAAC,EAAE,EACd,QAAQ,EAAE,CAAC,OAAO,EAClB,SAAS,EAAE,2BAAmB,CAAC,IAAI,EACnC,UAAU,EAAE,2BAAmB,CAAC,KAAK,EACrC,OAAO,EAAE,gCAAK,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,YAAG,OAAO,GAAO,YAErD,QAAQ,GACH,CACb,CAAC;AACN,CAAC,CAAC;AAfW,QAAA,cAAc,kBAezB","sourcesContent":["import {Tooltip} from '@gravity-ui/uikit';\n\nimport {cn} from '../classname';\n\nimport {ToolbarTooltipDelay} from './const';\n\nimport './PreviewTooltip.scss';\n\nconst b = cn('preview-tooltip');\n\ntype PreviewTooltipProps = {\n preview?: React.ReactNode;\n children: React.ReactElement;\n};\n\nexport const PreviewTooltip: React.FC<PreviewTooltipProps> = ({preview, children}) => {\n if (!preview) return children;\n\n return (\n <Tooltip\n placement={['right', 'left']}\n className={b()}\n disabled={!preview}\n openDelay={ToolbarTooltipDelay.Open}\n closeDelay={ToolbarTooltipDelay.Close}\n content={<div className={b('content')}>{preview}</div>}\n >\n {children}\n </Tooltip>\n );\n};\n"]}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
4
  /** During build process, the current version will be injected here */
5
- exports.VERSION = typeof '15.0.0' !== 'undefined' ? '15.0.0' : 'unknown';
5
+ exports.VERSION = typeof '15.0.1' !== 'undefined' ? '15.0.1' : 'unknown';
6
6
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"../../src","sources":["version.ts"],"names":[],"mappings":";;;AAAA,sEAAsE;AACzD,QAAA,OAAO,GAAG,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC","sourcesContent":["/** During build process, the current version will be injected here */\nexport const VERSION = typeof '15.0.0' !== 'undefined' ? '15.0.0' : 'unknown';\n"]}
1
+ {"version":3,"file":"version.js","sourceRoot":"../../src","sources":["version.ts"],"names":[],"mappings":";;;AAAA,sEAAsE;AACzD,QAAA,OAAO,GAAG,OAAO,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC","sourcesContent":["/** During build process, the current version will be injected here */\nexport const VERSION = typeof '15.0.1' !== 'undefined' ? '15.0.1' : 'unknown';\n"]}
@@ -4,7 +4,7 @@
4
4
  import type { CodeEditor } from "../../markup/editor.js";
5
5
  import type { MToolbarButtonPopupData, MToolbarData, MToolbarGroupData, MToolbarItemData, MToolbarListButtonData, MToolbarListItemData, MToolbarSingleItemData, ToolbarListButtonItemData } from "../toolbar/types.js";
6
6
  import type { MarkdownEditorPreset } from "../types.js";
7
- export type { MToolbarData, MToolbarItemData, MToolbarSingleItemData, MToolbarGroupData, MToolbarReactComponentData, MToolbarListButtonData, MToolbarListItemData, MToolbarButtonPopupData, } from "../toolbar/types.js";
7
+ export type { MToolbarBaseProps, MToolbarData, MToolbarItemData, MToolbarSingleItemData, MToolbarGroupData, MToolbarReactComponentData, MToolbarListButtonData, MToolbarListItemData, MToolbarButtonPopupData, } from "../toolbar/types.js";
8
8
  export declare const mUndoItemData: MToolbarSingleItemData;
9
9
  export declare const mRedoItemData: MToolbarSingleItemData;
10
10
  export declare const mBoldItemData: MToolbarSingleItemData;