@uxf/wysiwyg 2.0.0-beta.5 → 2.0.0-beta.7
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 +16 -7
- package/create-all-uxf-plugins.js +4 -3
- package/package.json +1 -1
- package/plugins/embedded/insert-embedded.d.ts +3 -0
- package/plugins/embedded/insert-embedded.js +9 -0
- package/plugins/embedded/utils.d.ts +1 -0
- package/plugins/embedded/utils.js +8 -0
- package/plugins/embedded/video/create-video-plugin.d.ts +3 -0
- package/plugins/embedded/video/create-video-plugin.js +20 -0
- package/plugins/image/transforms/is-image-active.d.ts +2 -0
- package/plugins/image/transforms/is-image-active.js +8 -0
- package/plugins/image/types.d.ts +2 -1
- package/plugins/link/create-link-plugin.d.ts +3 -3
- package/plugins/link/create-link-plugin.js +2 -3
- package/plugins/link/transforms/is-link-selected.js +10 -8
- package/types.d.ts +6 -1
- package/ui/block-quote-element.js +3 -2
- package/ui/create-uxf-ui.d.ts +1 -0
- package/ui/create-uxf-ui.js +4 -1
- package/ui/floating-link.d.ts +2 -2
- package/ui/floating-link.js +14 -14
- package/ui/heading-elements.js +7 -7
- package/ui/image/image-element.js +17 -11
- package/ui/image/insert-image-modal-content.d.ts +8 -0
- package/ui/image/insert-image-modal-content.js +50 -0
- package/ui/link-element.js +3 -2
- package/ui/list-ordered-element.js +2 -2
- package/ui/list-unordered-element.js +2 -2
- package/ui/toolbar/buttons/element-toolbar-button.d.ts +1 -2
- package/ui/toolbar/buttons/element-toolbar-button.js +4 -7
- package/ui/toolbar/buttons/embed-video-toolbar-button.d.ts +8 -0
- package/ui/toolbar/buttons/embed-video-toolbar-button.js +23 -0
- package/ui/toolbar/buttons/icons.d.ts +1 -0
- package/ui/toolbar/buttons/icons.js +19 -17
- package/ui/toolbar/buttons/image-toolbar-button.d.ts +1 -2
- package/ui/toolbar/buttons/image-toolbar-button.js +13 -12
- package/ui/toolbar/buttons/link-toolbar-button.d.ts +1 -2
- package/ui/toolbar/buttons/link-toolbar-button.js +3 -6
- package/ui/toolbar/buttons/list-toolbar-button.d.ts +1 -2
- package/ui/toolbar/buttons/list-toolbar-button.js +3 -6
- package/ui/toolbar/buttons/mark-toolbar-button.d.ts +1 -2
- package/ui/toolbar/buttons/mark-toolbar-button.js +3 -6
- package/ui/toolbar/buttons/toolbar-button.d.ts +8 -0
- package/ui/toolbar/buttons/toolbar-button.js +9 -0
- package/ui/toolbar/toolbar.js +2 -2
- package/ui/video/insert-video-modal-content.d.ts +7 -0
- package/ui/video/insert-video-modal-content.js +34 -0
- package/ui/video/video-element.d.ts +2 -0
- package/ui/video/video-element.js +11 -0
- package/utils.d.ts +1 -0
- package/utils.js +4 -2
- package/wysiwyg-editor.js +4 -2
- package/ui/image/image-upload-dialog.d.ts +0 -10
- package/ui/image/image-upload-dialog.js +0 -63
package/README.md
CHANGED
|
@@ -1,8 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
[](https://www.npmjs.com/package/@uxf/wysiwyg)
|
|
2
|
+
[](https://www.npmjs.com/package/@uxf/wysiwyg)
|
|
3
|
+
[](https://www.npmjs.com/package/@uxf/wysiwyg)
|
|
4
|
+
[](https://www.npmjs.com/package/@uxf/wysiwyg)
|
|
5
|
+
|
|
6
|
+
# UXF Wysiwyg editor
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
## @uxf/ui configuration
|
|
9
|
+
- wrap your app with `UiContextProvider`
|
|
10
|
+
- add `<Modal ref={getModalRef()} />` to make modals work
|
|
11
|
+
|
|
12
|
+
```tsx
|
|
13
|
+
<UiContextProvider value={getProviderConfig()}>
|
|
14
|
+
<App />
|
|
15
|
+
<Modal ref={getModalRef()} />
|
|
16
|
+
</UiContextProvider>
|
|
17
|
+
```
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createAllUxfPlugins = void 0;
|
|
4
4
|
const create_block_quote_plugin_1 = require("./plugins/block-quote/create-block-quote-plugin");
|
|
5
5
|
const create_uxf_plugins_1 = require("./plugins/create-uxf-plugins");
|
|
6
|
+
const create_video_plugin_1 = require("./plugins/embedded/video/create-video-plugin");
|
|
6
7
|
const create_headings_plugin_1 = require("./plugins/heading/create-headings-plugin");
|
|
7
8
|
const create_image_plugin_1 = require("./plugins/image/create-image-plugin");
|
|
8
9
|
const create_link_plugin_1 = require("./plugins/link/create-link-plugin");
|
|
@@ -12,7 +13,6 @@ const create_code_plugin_1 = require("./plugins/mark-code/create-code-plugin");
|
|
|
12
13
|
const create_italic_plugin_1 = require("./plugins/mark-italic/create-italic-plugin");
|
|
13
14
|
const create_underline_plugin_1 = require("./plugins/mark-underline/create-underline-plugin");
|
|
14
15
|
const create_uxf_ui_1 = require("./ui/create-uxf-ui");
|
|
15
|
-
const floating_link_1 = require("./ui/floating-link");
|
|
16
16
|
const createAllUxfPlugins = (fileUpload, getImageUrl) => (0, create_uxf_plugins_1.createUxfPlugins)([
|
|
17
17
|
(0, create_headings_plugin_1.createHeadingsPlugin)(),
|
|
18
18
|
(0, create_block_quote_plugin_1.createBlockquotePlugin)(),
|
|
@@ -21,13 +21,14 @@ const createAllUxfPlugins = (fileUpload, getImageUrl) => (0, create_uxf_plugins_
|
|
|
21
21
|
(0, create_underline_plugin_1.createUnderlinePlugin)(),
|
|
22
22
|
(0, create_code_plugin_1.createCodePlugin)(),
|
|
23
23
|
(0, create_list_plugin_1.createListPlugin)(),
|
|
24
|
-
(0, create_link_plugin_1.createLinkPlugin)(
|
|
24
|
+
(0, create_link_plugin_1.createLinkPlugin)(),
|
|
25
25
|
(0, create_image_plugin_1.createImagePlugin)({
|
|
26
26
|
options: {
|
|
27
27
|
uploadImage: fileUpload,
|
|
28
28
|
getImageUrl,
|
|
29
29
|
},
|
|
30
30
|
}),
|
|
31
|
+
(0, create_video_plugin_1.createVideoPlugin)(),
|
|
31
32
|
], { components: (0, create_uxf_ui_1.createUxfUi)() });
|
|
32
33
|
exports.createAllUxfPlugins = createAllUxfPlugins;
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWFsbC11eGYtcGx1Z2lucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGUtYWxsLXV4Zi1wbHVnaW5zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtGQUF5RjtBQUN6RixxRUFBZ0U7QUFDaEUsc0ZBQWlGO0FBQ2pGLHFGQUFnRjtBQUNoRiw2RUFBd0U7QUFFeEUsMEVBQXFFO0FBQ3JFLDBFQUFxRTtBQUNyRSwrRUFBMEU7QUFDMUUsK0VBQTBFO0FBQzFFLHFGQUFnRjtBQUNoRiw4RkFBeUY7QUFDekYsc0RBQWlEO0FBRTFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxVQUE4QixFQUFFLFdBQStCLEVBQUUsRUFBRSxDQUNuRyxJQUFBLHFDQUFnQixFQUNaO0lBQ0ksSUFBQSw2Q0FBb0IsR0FBRTtJQUN0QixJQUFBLGtEQUFzQixHQUFFO0lBQ3hCLElBQUEscUNBQWdCLEdBQUU7SUFDbEIsSUFBQSx5Q0FBa0IsR0FBRTtJQUNwQixJQUFBLCtDQUFxQixHQUFFO0lBQ3ZCLElBQUEscUNBQWdCLEdBQUU7SUFDbEIsSUFBQSxxQ0FBZ0IsR0FBRTtJQUNsQixJQUFBLHFDQUFnQixHQUFFO0lBQ2xCLElBQUEsdUNBQWlCLEVBQUM7UUFDZCxPQUFPLEVBQUU7WUFDTCxXQUFXLEVBQUUsVUFBVTtZQUN2QixXQUFXO1NBQ2Q7S0FDSixDQUFDO0lBQ0YsSUFBQSx1Q0FBaUIsR0FBRTtDQUN0QixFQUNELEVBQUUsVUFBVSxFQUFFLElBQUEsMkJBQVcsR0FBRSxFQUFFLENBQ2hDLENBQUM7QUFwQk8sUUFBQSxtQkFBbUIsdUJBb0IxQiJ9
|
package/package.json
CHANGED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.insertEmbedded = void 0;
|
|
4
|
+
const plate_media_1 = require("@udecode/plate-media");
|
|
5
|
+
const insertEmbedded = (editor, pluginKey, url) => {
|
|
6
|
+
return (0, plate_media_1.insertMediaEmbed)(editor, { key: pluginKey, url });
|
|
7
|
+
};
|
|
8
|
+
exports.insertEmbedded = insertEmbedded;
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWVtYmVkZGVkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BsdWdpbnMvZW1iZWRkZWQvaW5zZXJ0LWVtYmVkZGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNEQUF3RDtBQUlqRCxNQUFNLGNBQWMsR0FBRyxDQUFDLE1BQWlCLEVBQUUsU0FBcUMsRUFBRSxHQUFXLEVBQUUsRUFBRTtJQUNwRyxPQUFPLElBQUEsOEJBQWdCLEVBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0FBQzdELENBQUMsQ0FBQztBQUZXLFFBQUEsY0FBYyxrQkFFekIifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { parseTwitterUrl, parseVideoUrl, parseIframeUrl } from "@udecode/plate-media";
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseIframeUrl = exports.parseVideoUrl = exports.parseTwitterUrl = void 0;
|
|
4
|
+
var plate_media_1 = require("@udecode/plate-media");
|
|
5
|
+
Object.defineProperty(exports, "parseTwitterUrl", { enumerable: true, get: function () { return plate_media_1.parseTwitterUrl; } });
|
|
6
|
+
Object.defineProperty(exports, "parseVideoUrl", { enumerable: true, get: function () { return plate_media_1.parseVideoUrl; } });
|
|
7
|
+
Object.defineProperty(exports, "parseIframeUrl", { enumerable: true, get: function () { return plate_media_1.parseIframeUrl; } });
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGx1Z2lucy9lbWJlZGRlZC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvREFBc0Y7QUFBN0UsOEdBQUEsZUFBZSxPQUFBO0FBQUUsNEdBQUEsYUFBYSxPQUFBO0FBQUUsNkdBQUEsY0FBYyxPQUFBIn0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { MediaPlugin } from "@udecode/plate-media";
|
|
2
|
+
export declare const ELEMENT_VIDEO_EMBED = "video";
|
|
3
|
+
export declare const createVideoPlugin: <OP = MediaPlugin, OV extends import("@udecode/plate-core").Value = import("@udecode/plate-core").Value, OE extends import("@udecode/plate-core").PlateEditor<OV> = import("@udecode/plate-core").PlateEditor<OV>>(override?: Partial<import("@udecode/plate-core").PlatePlugin<import("@udecode/plate-core").NoInfer<OP>, OV, OE>> | undefined, overrideByKey?: import("@udecode/plate-core").OverrideByKey<OV, OE> | undefined) => import("@udecode/plate-core").PlatePlugin<import("@udecode/plate-core").NoInfer<OP>, OV, OE>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createVideoPlugin = exports.ELEMENT_VIDEO_EMBED = void 0;
|
|
4
|
+
const plate_core_1 = require("@udecode/plate-core");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
6
|
+
exports.ELEMENT_VIDEO_EMBED = "video";
|
|
7
|
+
exports.createVideoPlugin = (0, plate_core_1.createPluginFactory)({
|
|
8
|
+
key: exports.ELEMENT_VIDEO_EMBED,
|
|
9
|
+
isElement: true,
|
|
10
|
+
isVoid: true,
|
|
11
|
+
options: {
|
|
12
|
+
transformUrl: utils_1.parseIframeUrl,
|
|
13
|
+
rules: [
|
|
14
|
+
{
|
|
15
|
+
parser: utils_1.parseVideoUrl,
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXZpZGVvLXBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL2VtYmVkZGVkL3ZpZGVvL2NyZWF0ZS12aWRlby1wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsb0RBQTBEO0FBRTFELG9DQUF5RDtBQUU1QyxRQUFBLG1CQUFtQixHQUFHLE9BQU8sQ0FBQztBQUU5QixRQUFBLGlCQUFpQixHQUFHLElBQUEsZ0NBQW1CLEVBQWM7SUFDOUQsR0FBRyxFQUFFLDJCQUFtQjtJQUN4QixTQUFTLEVBQUUsSUFBSTtJQUNmLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFO1FBQ0wsWUFBWSxFQUFFLHNCQUFjO1FBQzVCLEtBQUssRUFBRTtZQUNIO2dCQUNJLE1BQU0sRUFBRSxxQkFBYTthQUN4QjtTQUNKO0tBQ0o7Q0FDSixDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isImageActive = void 0;
|
|
4
|
+
const plate_core_1 = require("@udecode/plate-core");
|
|
5
|
+
const get_active_image_1 = require("./get-active-image");
|
|
6
|
+
const isImageActive = (editor) => !!((0, get_active_image_1.getActiveImage)(editor) && (0, plate_core_1.isRangeInSameBlock)(editor));
|
|
7
|
+
exports.isImageActive = isImageActive;
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtaW1hZ2UtYWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BsdWdpbnMvaW1hZ2UvdHJhbnNmb3Jtcy9pcy1pbWFnZS1hY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsb0RBQXlEO0FBRXpELHlEQUFvRDtBQUU3QyxNQUFNLGFBQWEsR0FBRyxDQUFDLE1BQWlCLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUEsaUNBQWMsRUFBQyxNQUFNLENBQUMsSUFBSSxJQUFBLCtCQUFrQixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFBaEcsUUFBQSxhQUFhLGlCQUFtRiJ9
|
package/plugins/image/types.d.ts
CHANGED
|
@@ -10,9 +10,10 @@ export interface UxfImagePluginOptions extends MediaPlugin {
|
|
|
10
10
|
disableUploadOnPasteImage?: boolean;
|
|
11
11
|
}
|
|
12
12
|
export interface FileResponse {
|
|
13
|
+
id: number;
|
|
13
14
|
uuid: string;
|
|
14
15
|
namespace?: string | null;
|
|
15
16
|
extension: string;
|
|
16
|
-
name
|
|
17
|
+
name: string;
|
|
17
18
|
type?: string;
|
|
18
19
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { WysiwygContent } from "../../types";
|
|
3
|
-
export declare const createLinkPlugin: (
|
|
1
|
+
import { LinkPlugin } from "@udecode/plate-link";
|
|
2
|
+
import { UxfEditor, WysiwygContent } from "../../types";
|
|
3
|
+
export declare const createLinkPlugin: () => import("@udecode/plate-core").PlatePlugin<LinkPlugin, WysiwygContent, UxfEditor>;
|
|
@@ -3,9 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.createLinkPlugin = void 0;
|
|
4
4
|
const plate_link_1 = require("@udecode/plate-link");
|
|
5
5
|
const constants_1 = require("./constants");
|
|
6
|
-
const createLinkPlugin = (
|
|
7
|
-
renderAfterEditable: floatingLink,
|
|
6
|
+
const createLinkPlugin = () => (0, plate_link_1.createLinkPlugin)({
|
|
8
7
|
type: constants_1.LINK_PLUGIN_TYPE,
|
|
9
8
|
});
|
|
10
9
|
exports.createLinkPlugin = createLinkPlugin;
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWxpbmstcGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BsdWdpbnMvbGluay9jcmVhdGUtbGluay1wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsb0RBQTRGO0FBRTVGLDJDQUErQztBQUV4QyxNQUFNLGdCQUFnQixHQUFHLEdBQUcsRUFBRSxDQUNqQyxJQUFBLDZCQUFxQixFQUF3QztJQUN6RCxJQUFJLEVBQUUsNEJBQWdCO0NBQ3pCLENBQUMsQ0FBQztBQUhNLFFBQUEsZ0JBQWdCLG9CQUd0QiJ9
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isLinkSelected = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const utils_1 = require("../../../utils");
|
|
5
|
+
const constants_1 = require("../constants");
|
|
6
6
|
const isLinkSelected = (editor) => {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
if (!editor.selection) {
|
|
8
|
+
return false;
|
|
9
|
+
}
|
|
10
|
+
return ((0, utils_1.isRangeInSingleText)(editor) &&
|
|
11
|
+
(0, utils_1.someNode)(editor, {
|
|
12
|
+
match: { type: (0, utils_1.getPluginType)(editor, constants_1.LINK_PLUGIN_TYPE) },
|
|
13
|
+
}));
|
|
12
14
|
};
|
|
13
15
|
exports.isLinkSelected = isLinkSelected;
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXMtbGluay1zZWxlY3RlZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL2xpbmsvdHJhbnNmb3Jtcy9pcy1saW5rLXNlbGVjdGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDBDQUE4RTtBQUM5RSw0Q0FBZ0Q7QUFFekMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxNQUFpQixFQUFFLEVBQUU7SUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUU7UUFDbkIsT0FBTyxLQUFLLENBQUM7S0FDaEI7SUFFRCxPQUFPLENBQ0gsSUFBQSwyQkFBbUIsRUFBQyxNQUFNLENBQUM7UUFDM0IsSUFBQSxnQkFBUSxFQUFDLE1BQU0sRUFBRTtZQUNiLEtBQUssRUFBRSxFQUFFLElBQUksRUFBRSxJQUFBLHFCQUFhLEVBQUMsTUFBTSxFQUFFLDRCQUFnQixDQUFDLEVBQUU7U0FDM0QsQ0FBQyxDQUNMLENBQUM7QUFDTixDQUFDLENBQUM7QUFYVyxRQUFBLGNBQWMsa0JBV3pCIn0=
|
package/types.d.ts
CHANGED
|
@@ -69,8 +69,13 @@ export interface UxfOrderedListElement extends UxfBlockElement {
|
|
|
69
69
|
type: typeof LIST_ORDERED_TYPE;
|
|
70
70
|
children: LiElement[];
|
|
71
71
|
}
|
|
72
|
+
export interface UxfVideoElement extends UxfBlockElement {
|
|
73
|
+
type: "video";
|
|
74
|
+
url: string;
|
|
75
|
+
children: [EmptyText];
|
|
76
|
+
}
|
|
72
77
|
export type EmptyText = {
|
|
73
78
|
text: "";
|
|
74
79
|
};
|
|
75
|
-
export type WysiwygRootBlock = UxfParagraphElement | UxfBlockQuoteElement | UxfImageElement | UxfHeadingElement | UxfLinkElement | UxfUnorderedListElement | UxfOrderedListElement;
|
|
80
|
+
export type WysiwygRootBlock = UxfParagraphElement | UxfBlockQuoteElement | UxfImageElement | UxfHeadingElement | UxfLinkElement | UxfUnorderedListElement | UxfOrderedListElement | UxfVideoElement;
|
|
76
81
|
export type WysiwygContent = WysiwygRootBlock[];
|
|
@@ -3,7 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.BlockQuoteElement = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const BlockQuoteElement = (props) => {
|
|
6
|
-
return ((0, jsx_runtime_1.jsx)("blockquote", { ...props.attributes, className: props.className
|
|
6
|
+
return ((0, jsx_runtime_1.jsx)("blockquote", { ...props.attributes, className: props.className +
|
|
7
|
+
" p-4 my-4 border-l-4 border-gray-300 bg-gray-50 dark:border-gray-500 dark:bg-gray-800", children: props.children }));
|
|
7
8
|
};
|
|
8
9
|
exports.BlockQuoteElement = BlockQuoteElement;
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stcXVvdGUtZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91aS9ibG9jay1xdW90ZS1lbGVtZW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBRU8sTUFBTSxpQkFBaUIsR0FBdUIsQ0FBQyxLQUFLLEVBQUUsRUFBRTtJQUMzRCxPQUFPLENBQ0gsMENBQ1EsS0FBSyxDQUFDLFVBQVUsRUFDcEIsU0FBUyxFQUNMLEtBQUssQ0FBQyxTQUFTO1lBQ2YsdUZBQXVGLFlBRzFGLEtBQUssQ0FBQyxRQUFRLEdBQ04sQ0FDaEIsQ0FBQztBQUNOLENBQUMsQ0FBQztBQVpXLFFBQUEsaUJBQWlCLHFCQVk1QiJ9
|
package/ui/create-uxf-ui.d.ts
CHANGED
|
@@ -16,4 +16,5 @@ export declare const createUxfUi: () => {
|
|
|
16
16
|
ol: import("..").ElementUiComponent<import("..").UxfBlockElement>;
|
|
17
17
|
a: import("..").ElementUiComponent<import("@udecode/plate-link").TLinkElement>;
|
|
18
18
|
img: import("..").ElementUiComponent<import("..").UxfImageElement>;
|
|
19
|
+
video: import("..").ElementUiComponent<import("..").UxfVideoElement>;
|
|
19
20
|
};
|
package/ui/create-uxf-ui.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.createUxfUi = void 0;
|
|
4
4
|
const types_1 = require("../plugins/block-quote/types");
|
|
5
|
+
const create_video_plugin_1 = require("../plugins/embedded/video/create-video-plugin");
|
|
5
6
|
const constants_1 = require("../plugins/heading/constants");
|
|
6
7
|
const types_2 = require("../plugins/image/types");
|
|
7
8
|
const constants_2 = require("../plugins/link/constants");
|
|
@@ -23,6 +24,7 @@ const list_ordered_element_1 = require("./list-ordered-element");
|
|
|
23
24
|
const list_unordered_element_1 = require("./list-unordered-element");
|
|
24
25
|
const paragraph_element_1 = require("./paragraph-element");
|
|
25
26
|
const underline_mark_1 = require("./underline-mark");
|
|
27
|
+
const video_element_1 = require("./video/video-element");
|
|
26
28
|
const createUxfUi = () => ({
|
|
27
29
|
[types_7.PARAGRAPH_PLUGIN_KEY]: paragraph_element_1.ParagraphElement,
|
|
28
30
|
[types_1.BLOCK_QUOTE_PLUGIN_KEY]: block_quote_element_1.BlockQuoteElement,
|
|
@@ -41,6 +43,7 @@ const createUxfUi = () => ({
|
|
|
41
43
|
[constants_3.ELEMENT_OL]: list_ordered_element_1.ListOrderedElement,
|
|
42
44
|
[constants_2.ELEMENT_LINK]: link_element_1.LinkElement,
|
|
43
45
|
[types_2.IMAGE_PLUGIN_KEY]: image_element_1.ImageElement,
|
|
46
|
+
[create_video_plugin_1.ELEMENT_VIDEO_EMBED]: video_element_1.VideoElement,
|
|
44
47
|
});
|
|
45
48
|
exports.createUxfUi = createUxfUi;
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXV4Zi11aS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91aS9jcmVhdGUtdXhmLXVpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHdEQUFzRTtBQUN0RSx1RkFBb0Y7QUFDcEYsNERBQXNIO0FBQ3RILGtEQUEwRDtBQUMxRCx5REFBeUQ7QUFDekQseURBQStFO0FBQy9FLHNEQUE2RDtBQUM3RCxzREFBNkQ7QUFDN0Qsd0RBQWlFO0FBQ2pFLDJEQUF3RTtBQUN4RSxzREFBa0U7QUFDbEUsK0RBQTBEO0FBQzFELDJDQUF1QztBQUN2QywyQ0FBdUM7QUFDdkMseURBQXNHO0FBQ3RHLHlEQUFxRDtBQUNyRCwrQ0FBMkM7QUFDM0MsaURBQTZDO0FBQzdDLDJEQUFzRDtBQUN0RCxpRUFBNEQ7QUFDNUQscUVBQWdFO0FBQ2hFLDJEQUF1RDtBQUN2RCxxREFBaUQ7QUFDakQseURBQXFEO0FBRTlDLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDOUIsQ0FBQyw0QkFBb0IsQ0FBQyxFQUFFLG9DQUFnQjtJQUN4QyxDQUFDLDhCQUFzQixDQUFDLEVBQUUsdUNBQWlCO0lBQzNDLENBQUMsc0JBQVUsQ0FBQyxFQUFFLDRCQUFTO0lBQ3ZCLENBQUMsc0JBQVUsQ0FBQyxFQUFFLDRCQUFTO0lBQ3ZCLENBQUMsc0JBQVUsQ0FBQyxFQUFFLDRCQUFTO0lBQ3ZCLENBQUMsc0JBQVUsQ0FBQyxFQUFFLDRCQUFTO0lBQ3ZCLENBQUMsc0JBQVUsQ0FBQyxFQUFFLDRCQUFTO0lBQ3ZCLENBQUMsc0JBQVUsQ0FBQyxFQUFFLDRCQUFTO0lBQ3ZCLENBQUMsdUJBQWUsQ0FBQyxFQUFFLG9CQUFRO0lBQzNCLENBQUMseUJBQWlCLENBQUMsRUFBRSx3QkFBVTtJQUMvQixDQUFDLDZCQUFxQixDQUFDLEVBQUUsOEJBQWE7SUFDdEMsQ0FBQyx1QkFBZSxDQUFDLEVBQUUsb0JBQVE7SUFDM0IsQ0FBQyxzQkFBVSxDQUFDLEVBQUUsbUNBQWU7SUFDN0IsQ0FBQyxzQkFBVSxDQUFDLEVBQUUsNkNBQW9CO0lBQ2xDLENBQUMsc0JBQVUsQ0FBQyxFQUFFLHlDQUFrQjtJQUNoQyxDQUFDLHdCQUFZLENBQUMsRUFBRSwwQkFBVztJQUMzQixDQUFDLHdCQUFnQixDQUFDLEVBQUUsNEJBQVk7SUFDaEMsQ0FBQyx5Q0FBbUIsQ0FBQyxFQUFFLDRCQUFZO0NBQ3RDLENBQUMsQ0FBQztBQW5CVSxRQUFBLFdBQVcsZUFtQnJCIn0=
|
package/ui/floating-link.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const FloatingLink:
|
|
1
|
+
import { FC } from "react";
|
|
2
|
+
export declare const FloatingLink: FC;
|
package/ui/floating-link.js
CHANGED
|
@@ -3,34 +3,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FloatingLink = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const plate_link_1 = require("@udecode/plate-link");
|
|
6
|
+
const button_1 = require("@uxf/ui/button");
|
|
7
|
+
const checkbox_1 = require("@uxf/ui/checkbox");
|
|
8
|
+
const text_input_1 = require("@uxf/ui/text-input");
|
|
6
9
|
const react_1 = require("react");
|
|
7
10
|
const hooks_1 = require("../plugins/link/hooks");
|
|
8
|
-
const FloatingLink = (
|
|
11
|
+
const FloatingLink = () => {
|
|
9
12
|
const linkActions = (0, hooks_1.useLinkActions)();
|
|
10
13
|
const floatingLinkSelectors = (0, plate_link_1.useFloatingLinkSelectors)();
|
|
11
14
|
const isOpen = floatingLinkSelectors.isOpen(linkActions.editor.id);
|
|
12
15
|
const mode = floatingLinkSelectors.mode();
|
|
13
|
-
const onChangeUrl = (0, react_1.useCallback)((
|
|
14
|
-
linkActions.setUrl(
|
|
16
|
+
const onChangeUrl = (0, react_1.useCallback)((value) => {
|
|
17
|
+
linkActions.setUrl(value);
|
|
15
18
|
}, [linkActions]);
|
|
16
|
-
const onChangeText = (0, react_1.useCallback)((
|
|
17
|
-
linkActions.setText(
|
|
19
|
+
const onChangeText = (0, react_1.useCallback)((value) => {
|
|
20
|
+
linkActions.setText(value);
|
|
18
21
|
}, [linkActions]);
|
|
19
|
-
const onChangeTarget = (0, react_1.useCallback)((
|
|
20
|
-
linkActions.setTarget(
|
|
22
|
+
const onChangeTarget = (0, react_1.useCallback)((checked) => {
|
|
23
|
+
linkActions.setTarget(checked ? "_blank" : "_self");
|
|
21
24
|
}, [linkActions]);
|
|
22
|
-
|
|
23
|
-
return null;
|
|
24
|
-
}
|
|
25
|
-
const inputs = ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("input", { placeholder: "Paste URL", defaultValue: linkActions.getUrl, onChange: onChangeUrl }) }), (0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("input", { placeholder: "Text to display", defaultValue: linkActions.getText, onChange: onChangeText }) }), (0, jsx_runtime_1.jsxs)("div", { children: ["New tab:", " ", (0, jsx_runtime_1.jsx)("input", { type: "checkbox", placeholder: "Target", defaultChecked: linkActions.getTarget === "_blank", onChange: onChangeTarget })] })] }));
|
|
25
|
+
const inputs = ((0, jsx_runtime_1.jsxs)("div", { className: "bg-white shadow sm:rounded-lg z-50 p-4 w-80 relative", children: [(0, jsx_runtime_1.jsx)(text_input_1.TextInput, { label: "URL adresa", placeholder: "Vlo\u017Ete URL adresu", onChange: onChangeUrl, value: linkActions.getUrl }), (0, jsx_runtime_1.jsx)(text_input_1.TextInput, { label: "Text odkazu", placeholder: "Vlo\u017Ete text odkazu", onChange: onChangeText, value: linkActions.getText }), (0, jsx_runtime_1.jsx)(checkbox_1.Checkbox, { label: "Otev\u0159\u00EDt v nov\u00E9 z\u00E1lo\u017Ece", onChange: onChangeTarget, value: linkActions.getTarget === "_blank" })] }));
|
|
26
26
|
if (linkActions.isLinkActive) {
|
|
27
|
-
return !linkActions.isEditing ? ((0, jsx_runtime_1.jsx)("
|
|
27
|
+
return !linkActions.isEditing ? ((0, jsx_runtime_1.jsx)("span", { className: "bg-white shadow sm:rounded-lg", children: (0, jsx_runtime_1.jsx)(button_1.Button, { onClick: () => {
|
|
28
28
|
var _a;
|
|
29
29
|
const linkValue = linkActions.getActiveLinkValue();
|
|
30
30
|
if (linkValue) {
|
|
31
31
|
linkActions.setAllValues(linkValue.url, (_a = linkValue.children[0]) === null || _a === void 0 ? void 0 : _a.text, linkValue.target);
|
|
32
32
|
}
|
|
33
|
-
}, children: "
|
|
33
|
+
}, children: "Upravit odkaz" }) })) : (inputs);
|
|
34
34
|
}
|
|
35
35
|
if (isOpen && mode === "insert") {
|
|
36
36
|
return inputs;
|
|
@@ -38,4 +38,4 @@ const FloatingLink = (props) => {
|
|
|
38
38
|
return null;
|
|
39
39
|
};
|
|
40
40
|
exports.FloatingLink = FloatingLink;
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvYXRpbmctbGluay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91aS9mbG9hdGluZy1saW5rLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsb0RBQStEO0FBQy9ELDJDQUF3QztBQUN4QywrQ0FBNEM7QUFDNUMsbURBQStDO0FBQy9DLGlDQUF3QztBQUN4QyxpREFBdUQ7QUFFaEQsTUFBTSxZQUFZLEdBQU8sR0FBRyxFQUFFO0lBQ2pDLE1BQU0sV0FBVyxHQUFHLElBQUEsc0JBQWMsR0FBRSxDQUFDO0lBQ3JDLE1BQU0scUJBQXFCLEdBQUcsSUFBQSxxQ0FBd0IsR0FBRSxDQUFDO0lBQ3pELE1BQU0sTUFBTSxHQUFHLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLE1BQU0sSUFBSSxHQUFHLHFCQUFxQixDQUFDLElBQUksRUFBRSxDQUFDO0lBRTFDLE1BQU0sV0FBVyxHQUFHLElBQUEsbUJBQVcsRUFDM0IsQ0FBQyxLQUFhLEVBQUUsRUFBRTtRQUNkLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQyxFQUNELENBQUMsV0FBVyxDQUFDLENBQ2hCLENBQUM7SUFFRixNQUFNLFlBQVksR0FBRyxJQUFBLG1CQUFXLEVBQzVCLENBQUMsS0FBYSxFQUFFLEVBQUU7UUFDZCxXQUFXLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUMsRUFDRCxDQUFDLFdBQVcsQ0FBQyxDQUNoQixDQUFDO0lBRUYsTUFBTSxjQUFjLEdBQUcsSUFBQSxtQkFBVyxFQUM5QixDQUFDLE9BQWdCLEVBQUUsRUFBRTtRQUNqQixXQUFXLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4RCxDQUFDLEVBQ0QsQ0FBQyxXQUFXLENBQUMsQ0FDaEIsQ0FBQztJQUVGLE1BQU0sTUFBTSxHQUFHLENBQ1gsaUNBQUssU0FBUyxFQUFDLHNEQUFzRCxhQUNqRSx1QkFBQyxzQkFBUyxJQUNOLEtBQUssRUFBQyxZQUFZLEVBQ2xCLFdBQVcsRUFBQyx3QkFBbUIsRUFDL0IsUUFBUSxFQUFFLFdBQVcsRUFDckIsS0FBSyxFQUFFLFdBQVcsQ0FBQyxNQUFNLEdBQzNCLEVBQ0YsdUJBQUMsc0JBQVMsSUFDTixLQUFLLEVBQUMsYUFBYSxFQUNuQixXQUFXLEVBQUMseUJBQW9CLEVBQ2hDLFFBQVEsRUFBRSxZQUFZLEVBQ3RCLEtBQUssRUFBRSxXQUFXLENBQUMsT0FBTyxHQUM1QixFQUNGLHVCQUFDLG1CQUFRLElBQ0wsS0FBSyxFQUFDLGlEQUF3QixFQUM5QixRQUFRLEVBQUUsY0FBYyxFQUN4QixLQUFLLEVBQUUsV0FBVyxDQUFDLFNBQVMsS0FBSyxRQUFRLEdBQzNDLElBQ0EsQ0FDVCxDQUFDO0lBRUYsSUFBSSxXQUFXLENBQUMsWUFBWSxFQUFFO1FBQzFCLE9BQU8sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUM1QixpQ0FBTSxTQUFTLEVBQUMsK0JBQStCLFlBQzNDLHVCQUFDLGVBQU0sSUFDSCxPQUFPLEVBQUUsR0FBRyxFQUFFOztvQkFDVixNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztvQkFDbkQsSUFBSSxTQUFTLEVBQUU7d0JBQ1gsV0FBVyxDQUFDLFlBQVksQ0FDcEIsU0FBUyxDQUFDLEdBQUcsRUFDYixNQUFBLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLDBDQUFFLElBQWMsRUFDckMsU0FBUyxDQUFDLE1BQU0sQ0FDbkIsQ0FBQztxQkFDTDtnQkFDTCxDQUFDLDhCQUdJLEdBQ04sQ0FDVixDQUFDLENBQUMsQ0FBQyxDQUNBLE1BQU0sQ0FDVCxDQUFDO0tBQ0w7SUFFRCxJQUFJLE1BQU0sSUFBSSxJQUFJLEtBQUssUUFBUSxFQUFFO1FBQzdCLE9BQU8sTUFBTSxDQUFDO0tBQ2pCO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQyxDQUFDO0FBN0VXLFFBQUEsWUFBWSxnQkE2RXZCIn0=
|
package/ui/heading-elements.js
CHANGED
|
@@ -3,27 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.H6Element = exports.H5Element = exports.H4Element = exports.H3Element = exports.H2Element = exports.H1Element = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const H1Element = (props) => {
|
|
6
|
-
return ((0, jsx_runtime_1.jsx)("h1", { ...props.attributes, className: props.className + " element-h1", children: props.children }));
|
|
6
|
+
return ((0, jsx_runtime_1.jsx)("h1", { ...props.attributes, className: props.className + " element-h1 uxf-typo-h1", children: props.children }));
|
|
7
7
|
};
|
|
8
8
|
exports.H1Element = H1Element;
|
|
9
9
|
const H2Element = (props) => {
|
|
10
|
-
return ((0, jsx_runtime_1.jsx)("h2", { ...props.attributes, className: props.className + " element-h2", children: props.children }));
|
|
10
|
+
return ((0, jsx_runtime_1.jsx)("h2", { ...props.attributes, className: props.className + " element-h2 uxf-typo-h2", children: props.children }));
|
|
11
11
|
};
|
|
12
12
|
exports.H2Element = H2Element;
|
|
13
13
|
const H3Element = (props) => {
|
|
14
|
-
return ((0, jsx_runtime_1.jsx)("h3", { ...props.attributes, className: props.className + " element-h3", children: props.children }));
|
|
14
|
+
return ((0, jsx_runtime_1.jsx)("h3", { ...props.attributes, className: props.className + " element-h3 uxf-typo-h3", children: props.children }));
|
|
15
15
|
};
|
|
16
16
|
exports.H3Element = H3Element;
|
|
17
17
|
const H4Element = (props) => {
|
|
18
|
-
return ((0, jsx_runtime_1.jsx)("h4", { ...props.attributes, className: props.className + " element-h4", children: props.children }));
|
|
18
|
+
return ((0, jsx_runtime_1.jsx)("h4", { ...props.attributes, className: props.className + " element-h4 uxf-typo-h4", children: props.children }));
|
|
19
19
|
};
|
|
20
20
|
exports.H4Element = H4Element;
|
|
21
21
|
const H5Element = (props) => {
|
|
22
|
-
return ((0, jsx_runtime_1.jsx)("h5", { ...props.attributes, className: props.className + " element-h5", children: props.children }));
|
|
22
|
+
return ((0, jsx_runtime_1.jsx)("h5", { ...props.attributes, className: props.className + " element-h5 uxf-typo-h5", children: props.children }));
|
|
23
23
|
};
|
|
24
24
|
exports.H5Element = H5Element;
|
|
25
25
|
const H6Element = (props) => {
|
|
26
|
-
return ((0, jsx_runtime_1.jsx)("h6", { ...props.attributes, className: props.className + " element-h6", children: props.children }));
|
|
26
|
+
return ((0, jsx_runtime_1.jsx)("h6", { ...props.attributes, className: props.className + " element-h6 uxf-typo-h6", children: props.children }));
|
|
27
27
|
};
|
|
28
28
|
exports.H6Element = H6Element;
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGluZy1lbGVtZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91aS9oZWFkaW5nLWVsZW1lbnRzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBRU8sTUFBTSxTQUFTLEdBQXVCLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDbkQsT0FBTyxDQUNILGtDQUFRLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcseUJBQXlCLFlBQzNFLEtBQUssQ0FBQyxRQUFRLEdBQ2QsQ0FDUixDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBTlcsUUFBQSxTQUFTLGFBTXBCO0FBRUssTUFBTSxTQUFTLEdBQXVCLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDbkQsT0FBTyxDQUNILGtDQUFRLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcseUJBQXlCLFlBQzNFLEtBQUssQ0FBQyxRQUFRLEdBQ2QsQ0FDUixDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBTlcsUUFBQSxTQUFTLGFBTXBCO0FBRUssTUFBTSxTQUFTLEdBQXVCLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDbkQsT0FBTyxDQUNILGtDQUFRLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcseUJBQXlCLFlBQzNFLEtBQUssQ0FBQyxRQUFRLEdBQ2QsQ0FDUixDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBTlcsUUFBQSxTQUFTLGFBTXBCO0FBRUssTUFBTSxTQUFTLEdBQXVCLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDbkQsT0FBTyxDQUNILGtDQUFRLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcseUJBQXlCLFlBQzNFLEtBQUssQ0FBQyxRQUFRLEdBQ2QsQ0FDUixDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBTlcsUUFBQSxTQUFTLGFBTXBCO0FBRUssTUFBTSxTQUFTLEdBQXVCLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDbkQsT0FBTyxDQUNILGtDQUFRLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcseUJBQXlCLFlBQzNFLEtBQUssQ0FBQyxRQUFRLEdBQ2QsQ0FDUixDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBTlcsUUFBQSxTQUFTLGFBTXBCO0FBRUssTUFBTSxTQUFTLEdBQXVCLENBQUMsS0FBSyxFQUFFLEVBQUU7SUFDbkQsT0FBTyxDQUNILGtDQUFRLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcseUJBQXlCLFlBQzNFLEtBQUssQ0FBQyxRQUFRLEdBQ2QsQ0FDUixDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBTlcsUUFBQSxTQUFTLGFBTXBCIn0=
|
|
@@ -2,25 +2,31 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ImageElement = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const button_1 = require("@uxf/ui/button");
|
|
6
|
+
const modal_service_1 = require("@uxf/ui/modal/modal-service");
|
|
5
7
|
const react_1 = require("react");
|
|
6
|
-
const hooks_1 = require("../../hooks");
|
|
7
8
|
const get_active_image_1 = require("../../plugins/image/transforms/get-active-image");
|
|
9
|
+
const is_image_active_1 = require("../../plugins/image/transforms/is-image-active");
|
|
8
10
|
const remove_selected_image_1 = require("../../plugins/image/transforms/remove-selected-image");
|
|
9
|
-
const
|
|
11
|
+
const insert_image_modal_content_1 = require("./insert-image-modal-content");
|
|
10
12
|
const ImageElement = (props) => {
|
|
11
|
-
const selected = (0,
|
|
12
|
-
const
|
|
13
|
+
const selected = (0, is_image_active_1.isImageActive)(props.editor);
|
|
14
|
+
const onEdit = (0, react_1.useCallback)(() => {
|
|
15
|
+
(0, modal_service_1.openModal)({
|
|
16
|
+
children: (0, jsx_runtime_1.jsx)(insert_image_modal_content_1.InsertImageModalContent, { editor: props.editor, imageToEdit: (0, get_active_image_1.getActiveImage)(props.editor) }),
|
|
17
|
+
width: "lg",
|
|
18
|
+
});
|
|
19
|
+
}, [props.editor]);
|
|
20
|
+
const onDelete = (0, react_1.useCallback)(() => {
|
|
21
|
+
(0, remove_selected_image_1.removeSelectedImage)(props.editor);
|
|
22
|
+
}, [props.editor]);
|
|
13
23
|
const renderIfSelected = () => {
|
|
14
24
|
if (selected) {
|
|
15
|
-
return ((0, jsx_runtime_1.jsxs)(
|
|
16
|
-
setIsOpen(true);
|
|
17
|
-
}, children: "Edit" }), (0, jsx_runtime_1.jsx)("button", { onClick: () => {
|
|
18
|
-
(0, remove_selected_image_1.removeSelectedImage)(props.editor);
|
|
19
|
-
}, children: "Delete" }), (0, jsx_runtime_1.jsx)(image_upload_dialog_1.ImageUploadDialog, { editorId: props.editor.id, isOpen: isOpen, onClose: () => setIsOpen(false), imageToEdit: (0, get_active_image_1.getActiveImage)(props.editor) })] }));
|
|
25
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "flex gap-1 absolute top-6 right-6", contentEditable: false, children: [(0, jsx_runtime_1.jsx)(button_1.Button, { onClick: onEdit, children: "Upravit" }), (0, jsx_runtime_1.jsx)(button_1.Button, { onClick: onDelete, color: "error", children: "Smazat" })] }));
|
|
20
26
|
}
|
|
21
27
|
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
|
|
22
28
|
};
|
|
23
|
-
return ((0, jsx_runtime_1.jsxs)("div", { ...props.attributes,
|
|
29
|
+
return ((0, jsx_runtime_1.jsxs)("div", { ...props.attributes, className: "pt-4 pb-4", children: [(0, jsx_runtime_1.jsxs)("div", { className: "relative", contentEditable: false, children: [renderIfSelected(), (0, jsx_runtime_1.jsx)("img", { className: props.className + " " + `${selected ? "border-4 border-red-400" : "border-0"}`, src: props.element.url, alt: props.element.alt })] }), props.children] }));
|
|
24
30
|
};
|
|
25
31
|
exports.ImageElement = ImageElement;
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91aS9pbWFnZS9pbWFnZS1lbGVtZW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsMkNBQXdDO0FBQ3hDLCtEQUF3RDtBQUN4RCxpQ0FBb0M7QUFDcEMsc0ZBQWlGO0FBQ2pGLG9GQUErRTtBQUMvRSxnR0FBMkY7QUFFM0YsNkVBQXVFO0FBRWhFLE1BQU0sWUFBWSxHQUF3QyxDQUFDLEtBQUssRUFBRSxFQUFFO0lBQ3ZFLE1BQU0sUUFBUSxHQUFHLElBQUEsK0JBQWEsRUFBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsTUFBTSxNQUFNLEdBQUcsSUFBQSxtQkFBVyxFQUFDLEdBQUcsRUFBRTtRQUM1QixJQUFBLHlCQUFTLEVBQUM7WUFDTixRQUFRLEVBQUUsdUJBQUMsb0RBQXVCLElBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLElBQUEsaUNBQWMsRUFBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUk7WUFDdEcsS0FBSyxFQUFFLElBQUk7U0FDZCxDQUFDLENBQUM7SUFDUCxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNuQixNQUFNLFFBQVEsR0FBRyxJQUFBLG1CQUFXLEVBQUMsR0FBRyxFQUFFO1FBQzlCLElBQUEsMkNBQW1CLEVBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3RDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBRW5CLE1BQU0sZ0JBQWdCLEdBQUcsR0FBRyxFQUFFO1FBQzFCLElBQUksUUFBUSxFQUFFO1lBQ1YsT0FBTyxDQUNILGlDQUFLLFNBQVMsRUFBQyxtQ0FBbUMsRUFBQyxlQUFlLEVBQUUsS0FBSyxhQUNyRSx1QkFBQyxlQUFNLElBQUMsT0FBTyxFQUFFLE1BQU0sd0JBQWtCLEVBQ3pDLHVCQUFDLGVBQU0sSUFBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBQyxPQUFPLHVCQUUvQixJQUNQLENBQ1QsQ0FBQztTQUNMO1FBRUQsT0FBTyxrREFBSyxDQUFDO0lBQ2pCLENBQUMsQ0FBQztJQUNGLE9BQU8sQ0FDSCxvQ0FBUyxLQUFLLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBQyxXQUFXLGFBQzVDLGlDQUFLLFNBQVMsRUFBQyxVQUFVLEVBQUMsZUFBZSxFQUFFLEtBQUssYUFDM0MsZ0JBQWdCLEVBQUUsRUFDbkIsZ0NBQ0ksU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTLEdBQUcsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQ3pGLEdBQUcsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFDdEIsR0FBRyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxHQUN4QixJQUNBLEVBRUwsS0FBSyxDQUFDLFFBQVEsSUFDYixDQUNULENBQUM7QUFDTixDQUFDLENBQUM7QUF4Q1csUUFBQSxZQUFZLGdCQXdDdkIifQ==
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FC } from "react";
|
|
2
|
+
import { UxfEditor, UxfImageElement } from "../../types";
|
|
3
|
+
interface InsertImageModalContentProps {
|
|
4
|
+
editor: UxfEditor;
|
|
5
|
+
imageToEdit?: UxfImageElement;
|
|
6
|
+
}
|
|
7
|
+
export declare const InsertImageModalContent: FC<InsertImageModalContentProps>;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InsertImageModalContent = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const button_1 = require("@uxf/ui/button");
|
|
6
|
+
const file_input_1 = require("@uxf/ui/file-input");
|
|
7
|
+
const modal_service_1 = require("@uxf/ui/modal/modal-service");
|
|
8
|
+
const text_input_1 = require("@uxf/ui/text-input");
|
|
9
|
+
const react_1 = require("react");
|
|
10
|
+
const use_image_handlers_1 = require("../../plugins/image/hooks/use-image-handlers");
|
|
11
|
+
const insert_image_1 = require("../../plugins/image/transforms/insert-image");
|
|
12
|
+
const update_image_1 = require("../../plugins/image/transforms/update-image");
|
|
13
|
+
const InsertImageModalContent = ({ editor, imageToEdit }) => {
|
|
14
|
+
const imageHandlers = (0, use_image_handlers_1.useImageHandlers)(editor);
|
|
15
|
+
const [selectedFile, setSelectedFile] = (0, react_1.useState)((imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.file) || undefined);
|
|
16
|
+
const [alt, setAlt] = (0, react_1.useState)((imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.alt) || "");
|
|
17
|
+
const [caption, setCaption] = (0, react_1.useState)((imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.caption) || "");
|
|
18
|
+
const [source, setSource] = (0, react_1.useState)((imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.source) || "");
|
|
19
|
+
const fileUploadHandler = (0, react_1.useCallback)((file) => {
|
|
20
|
+
return imageHandlers.uploadImage(file).then((fileResponse) => {
|
|
21
|
+
setSelectedFile(fileResponse);
|
|
22
|
+
return fileResponse;
|
|
23
|
+
});
|
|
24
|
+
}, [imageHandlers]);
|
|
25
|
+
const reset = (0, react_1.useCallback)(() => {
|
|
26
|
+
setSelectedFile(undefined);
|
|
27
|
+
setAlt("");
|
|
28
|
+
setCaption("");
|
|
29
|
+
setSource("");
|
|
30
|
+
}, []);
|
|
31
|
+
const onCloseHandler = (0, react_1.useCallback)(() => {
|
|
32
|
+
reset();
|
|
33
|
+
(0, modal_service_1.closeModal)();
|
|
34
|
+
}, [reset]);
|
|
35
|
+
const onAddHandler = (0, react_1.useCallback)(() => {
|
|
36
|
+
if (selectedFile && !imageToEdit) {
|
|
37
|
+
(0, insert_image_1.insertImage)(editor, selectedFile, alt !== "" ? alt : undefined, caption !== "" ? caption : undefined, source !== "" ? source : undefined, imageHandlers.getImageUrl(selectedFile));
|
|
38
|
+
reset();
|
|
39
|
+
(0, modal_service_1.closeModal)();
|
|
40
|
+
}
|
|
41
|
+
else if (selectedFile && imageToEdit) {
|
|
42
|
+
(0, update_image_1.updateImage)(editor, selectedFile, alt !== "" ? alt : undefined, caption !== "" ? caption : undefined, source !== "" ? source : undefined, imageHandlers.getImageUrl(selectedFile));
|
|
43
|
+
reset();
|
|
44
|
+
(0, modal_service_1.closeModal)();
|
|
45
|
+
}
|
|
46
|
+
}, [alt, caption, editor, imageHandlers, imageToEdit, reset, selectedFile, source]);
|
|
47
|
+
return ((0, jsx_runtime_1.jsxs)("div", { className: "p-4", children: [(0, jsx_runtime_1.jsx)("p", { className: "mb-3 text-lg font-bold pt-2", children: imageToEdit ? "Upravit obrázek" : "Vložit obrázek" }), (0, jsx_runtime_1.jsx)(file_input_1.FileInput, { onUploadFile: fileUploadHandler, label: "Obr\u00E1zek", value: selectedFile }), (0, jsx_runtime_1.jsx)(text_input_1.TextInput, { type: "text", label: "Alt obr\u00E1zku", value: alt, onChange: setAlt }), (0, jsx_runtime_1.jsx)(text_input_1.TextInput, { type: "text", label: "Popisek obr\u00E1zku", value: caption, onChange: setCaption }), (0, jsx_runtime_1.jsx)(text_input_1.TextInput, { type: "text", label: "Zdroj obr\u00E1zku", value: source, onChange: setSource }), (0, jsx_runtime_1.jsx)("div", { className: "pt-2 relative", children: selectedFile && (0, jsx_runtime_1.jsx)("img", { src: imageHandlers.getImageUrl(selectedFile), alt: alt, width: "100%" }) }), (0, jsx_runtime_1.jsxs)("div", { className: "flex justify-end gap-2 pt-2 mt-2", children: [(0, jsx_runtime_1.jsx)(button_1.Button, { onClick: onCloseHandler, color: "error", children: "Zru\u0161it" }), (0, jsx_runtime_1.jsx)(button_1.Button, { onClick: onAddHandler, color: "default", children: imageToEdit ? "Upravit obrázek" : "Vložit obrázek" })] })] }));
|
|
48
|
+
};
|
|
49
|
+
exports.InsertImageModalContent = InsertImageModalContent;
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWltYWdlLW1vZGFsLWNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdWkvaW1hZ2UvaW5zZXJ0LWltYWdlLW1vZGFsLWNvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSwyQ0FBd0M7QUFDeEMsbURBQStDO0FBQy9DLCtEQUF5RDtBQUN6RCxtREFBK0M7QUFDL0MsaUNBQWtEO0FBQ2xELHFGQUFnRjtBQUNoRiw4RUFBMEU7QUFDMUUsOEVBQTBFO0FBU25FLE1BQU0sdUJBQXVCLEdBQXFDLENBQUMsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRTtJQUNqRyxNQUFNLGFBQWEsR0FBRyxJQUFBLHFDQUFnQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9DLE1BQU0sQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLEdBQUcsSUFBQSxnQkFBUSxFQUEyQixDQUFBLFdBQVcsYUFBWCxXQUFXLHVCQUFYLFdBQVcsQ0FBRSxJQUFJLEtBQUksU0FBUyxDQUFDLENBQUM7SUFDM0csTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxJQUFBLGdCQUFRLEVBQVMsQ0FBQSxXQUFXLGFBQVgsV0FBVyx1QkFBWCxXQUFXLENBQUUsR0FBRyxLQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELE1BQU0sQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEdBQUcsSUFBQSxnQkFBUSxFQUFTLENBQUEsV0FBVyxhQUFYLFdBQVcsdUJBQVgsV0FBVyxDQUFFLE9BQU8sS0FBSSxFQUFFLENBQUMsQ0FBQztJQUMzRSxNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLElBQUEsZ0JBQVEsRUFBUyxDQUFBLFdBQVcsYUFBWCxXQUFXLHVCQUFYLFdBQVcsQ0FBRSxNQUFNLEtBQUksRUFBRSxDQUFDLENBQUM7SUFFeEUsTUFBTSxpQkFBaUIsR0FBRyxJQUFBLG1CQUFXLEVBQ2pDLENBQUMs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
|
package/ui/link-element.js
CHANGED
|
@@ -2,8 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.LinkElement = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const floating_link_1 = require("./floating-link");
|
|
5
6
|
const LinkElement = (props) => {
|
|
6
|
-
return ((0, jsx_runtime_1.jsx)("a", { ...props.attributes, className: props.className
|
|
7
|
+
return ((0, jsx_runtime_1.jsxs)("span", { className: "relative", children: [(0, jsx_runtime_1.jsx)("a", { ...props.attributes, className: `${props.className} font-medium text-blue-600 dark:text-blue-500 hover:underline`, ...props.nodeProps, children: props.children }), (0, jsx_runtime_1.jsx)("span", { className: "absolute top-6 left-0 w-40 relative", contentEditable: false, children: (0, jsx_runtime_1.jsx)(floating_link_1.FloatingLink, {}) })] }));
|
|
7
8
|
};
|
|
8
9
|
exports.LinkElement = LinkElement;
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1lbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3VpL2xpbmstZWxlbWVudC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUVBLG1EQUErQztBQUV4QyxNQUFNLFdBQVcsR0FBcUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtJQUNuRSxPQUFPLENBQ0gsa0NBQU0sU0FBUyxFQUFDLFVBQVUsYUFDdEIsaUNBQ1EsS0FBSyxDQUFDLFVBQVUsRUFDcEIsU0FBUyxFQUFFLEdBQUcsS0FBSyxDQUFDLFNBQVMsK0RBQStELEtBQ3hGLEtBQUssQ0FBQyxTQUFTLFlBRWxCLEtBQUssQ0FBQyxRQUFRLEdBQ2YsRUFDSixpQ0FBTSxTQUFTLEVBQUMscUNBQXFDLEVBQUMsZUFBZSxFQUFFLEtBQUssWUFDeEUsdUJBQUMsNEJBQVksS0FBRyxHQUNiLElBQ0osQ0FDVixDQUFDO0FBQ04sQ0FBQyxDQUFDO0FBZlcsUUFBQSxXQUFXLGVBZXRCIn0=
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ListOrderedElement = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const ListOrderedElement = (props) => {
|
|
6
|
-
return ((0, jsx_runtime_1.jsx)("ol", { ...props.attributes, className: props.className, children: props.children }));
|
|
6
|
+
return ((0, jsx_runtime_1.jsx)("ol", { ...props.attributes, className: props.className + " list-decimal pl-4", children: props.children }));
|
|
7
7
|
};
|
|
8
8
|
exports.ListOrderedElement = ListOrderedElement;
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1vcmRlcmVkLWVsZW1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdWkvbGlzdC1vcmRlcmVkLWVsZW1lbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFTyxNQUFNLGtCQUFrQixHQUF1QixDQUFDLEtBQUssRUFBRSxFQUFFO0lBQzVELE9BQU8sQ0FDSCxrQ0FBUSxLQUFLLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUyxHQUFHLG9CQUFvQixZQUN0RSxLQUFLLENBQUMsUUFBUSxHQUNkLENBQ1IsQ0FBQztBQUNOLENBQUMsQ0FBQztBQU5XLFFBQUEsa0JBQWtCLHNCQU03QiJ9
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ListUnorderedElement = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const ListUnorderedElement = (props) => {
|
|
6
|
-
return ((0, jsx_runtime_1.jsx)("ul", { ...props.attributes, className: props.className, children: props.children }));
|
|
6
|
+
return ((0, jsx_runtime_1.jsx)("ul", { ...props.attributes, className: props.className + " list-disc pl-4", children: props.children }));
|
|
7
7
|
};
|
|
8
8
|
exports.ListUnorderedElement = ListUnorderedElement;
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC11bm9yZGVyZWQtZWxlbWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91aS9saXN0LXVub3JkZXJlZC1lbGVtZW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBRU8sTUFBTSxvQkFBb0IsR0FBdUIsQ0FBQyxLQUFLLEVBQUUsRUFBRTtJQUM5RCxPQUFPLENBQ0gsa0NBQVEsS0FBSyxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsWUFDbkUsS0FBSyxDQUFDLFFBQVEsR0FDZCxDQUNSLENBQUM7QUFDTixDQUFDLENBQUM7QUFOVyxRQUFBLG9CQUFvQix3QkFNL0IifQ==
|
|
@@ -3,8 +3,7 @@ import { ToolbarIcon } from "../toolbar";
|
|
|
3
3
|
interface ElementToolbarButtonProps {
|
|
4
4
|
id?: any;
|
|
5
5
|
pluginKey: string;
|
|
6
|
-
|
|
7
|
-
icon?: ToolbarIcon;
|
|
6
|
+
Icon: ToolbarIcon;
|
|
8
7
|
}
|
|
9
8
|
export declare const ElementToolbarButton: FC<ElementToolbarButtonProps>;
|
|
10
9
|
export {};
|