@tumaet/prompt-ui-components 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/DatePicker.js +18 -0
- package/dist/components/DatePicker.js.map +1 -0
- package/dist/components/DateRangePicker.js +12 -0
- package/dist/components/DateRangePicker.js.map +1 -0
- package/dist/components/DeleteConfirmationDialog.js +13 -0
- package/dist/components/DeleteConfirmationDialog.js.map +1 -0
- package/dist/components/ErrorPage.js +9 -0
- package/dist/components/ErrorPage.js.map +1 -0
- package/dist/components/ExportedApplicationAnswerTable.js +16 -0
- package/dist/components/ExportedApplicationAnswerTable.js.map +1 -0
- package/dist/components/LoadingPage.js +6 -0
- package/dist/components/LoadingPage.js.map +1 -0
- package/dist/components/ManagementPageHeader.js +5 -0
- package/dist/components/ManagementPageHeader.js.map +1 -0
- package/dist/components/MissingConfig.js +12 -0
- package/dist/components/MissingConfig.js.map +1 -0
- package/dist/components/MultiSelect.js +96 -0
- package/dist/components/MultiSelect.js.map +1 -0
- package/dist/components/SaveChangesAlert.js +31 -0
- package/dist/components/SaveChangesAlert.js.map +1 -0
- package/dist/components/StudentProfile.js +14 -0
- package/dist/components/StudentProfile.js.map +1 -0
- package/dist/components/ThemeToggle.js +10 -0
- package/dist/components/ThemeToggle.js.map +1 -0
- package/dist/components/UnauthorizedPage.js +13 -0
- package/dist/components/UnauthorizedPage.js.map +1 -0
- package/dist/components/index.js +9 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/minimal-tiptap/components/bubble-menu/link-bubble-menu.js +65 -0
- package/dist/components/minimal-tiptap/components/bubble-menu/link-bubble-menu.js.map +1 -0
- package/dist/components/minimal-tiptap/components/image/image-edit-block.js +38 -0
- package/dist/components/minimal-tiptap/components/image/image-edit-block.js.map +1 -0
- package/dist/components/minimal-tiptap/components/image/image-edit-dialog.js +12 -0
- package/dist/components/minimal-tiptap/components/image/image-edit-dialog.js.map +1 -0
- package/dist/components/minimal-tiptap/components/link/link-edit-block.js +34 -0
- package/dist/components/minimal-tiptap/components/link/link-edit-block.js.map +1 -0
- package/dist/components/minimal-tiptap/components/link/link-edit-popover.js +38 -0
- package/dist/components/minimal-tiptap/components/link/link-edit-popover.js.map +1 -0
- package/dist/components/minimal-tiptap/components/link/link-popover-block.js +28 -0
- package/dist/components/minimal-tiptap/components/link/link-popover-block.js.map +1 -0
- package/dist/components/minimal-tiptap/components/measured-container.js +16 -0
- package/dist/components/minimal-tiptap/components/measured-container.js.map +1 -0
- package/dist/components/minimal-tiptap/components/section/five.js +39 -0
- package/dist/components/minimal-tiptap/components/section/five.js.map +1 -0
- package/dist/components/minimal-tiptap/components/section/four.js +29 -0
- package/dist/components/minimal-tiptap/components/section/four.js.map +1 -0
- package/dist/components/minimal-tiptap/components/section/mailingPlaceholders.js +23 -0
- package/dist/components/minimal-tiptap/components/section/mailingPlaceholders.js.map +1 -0
- package/dist/components/minimal-tiptap/components/section/one.js +77 -0
- package/dist/components/minimal-tiptap/components/section/one.js.map +1 -0
- package/dist/components/minimal-tiptap/components/section/three.js +79 -0
- package/dist/components/minimal-tiptap/components/section/three.js.map +1 -0
- package/dist/components/minimal-tiptap/components/section/two.js +65 -0
- package/dist/components/minimal-tiptap/components/section/two.js.map +1 -0
- package/dist/components/minimal-tiptap/components/shortcut-key.js +11 -0
- package/dist/components/minimal-tiptap/components/shortcut-key.js.map +1 -0
- package/dist/components/minimal-tiptap/components/spinner.js +9 -0
- package/dist/components/minimal-tiptap/components/spinner.js.map +1 -0
- package/dist/components/minimal-tiptap/components/toolbar-button.js +15 -0
- package/dist/components/minimal-tiptap/components/toolbar-button.js.map +1 -0
- package/dist/components/minimal-tiptap/components/toolbar-section.js +27 -0
- package/dist/components/minimal-tiptap/components/toolbar-section.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/code-block-lowlight/code-block-lowlight.js +16 -0
- package/dist/components/minimal-tiptap/extensions/code-block-lowlight/code-block-lowlight.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/code-block-lowlight/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/code-block-lowlight/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/color/color.js +20 -0
- package/dist/components/minimal-tiptap/extensions/color/color.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/color/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/color/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/file-handler/index.js +74 -0
- package/dist/components/minimal-tiptap/extensions/file-handler/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/horizontal-rule/horizontal-rule.js +16 -0
- package/dist/components/minimal-tiptap/extensions/horizontal-rule/horizontal-rule.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/horizontal-rule/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/horizontal-rule/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/components/image-actions.js +39 -0
- package/dist/components/minimal-tiptap/extensions/image/components/image-actions.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/components/image-overlay.js +9 -0
- package/dist/components/minimal-tiptap/extensions/image/components/image-overlay.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/components/image-view-block.js +167 -0
- package/dist/components/minimal-tiptap/extensions/image/components/image-view-block.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/components/resize-handle.js +11 -0
- package/dist/components/minimal-tiptap/extensions/image/components/resize-handle.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/hooks/use-drag-resize.js +88 -0
- package/dist/components/minimal-tiptap/extensions/image/hooks/use-drag-resize.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/hooks/use-image-actions.js +32 -0
- package/dist/components/minimal-tiptap/extensions/image/hooks/use-image-actions.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/image.js +225 -0
- package/dist/components/minimal-tiptap/extensions/image/image.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/image/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/image/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/index.js +10 -0
- package/dist/components/minimal-tiptap/extensions/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/link/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/link/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/link/link.js +74 -0
- package/dist/components/minimal-tiptap/extensions/link/link.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/reset-marks-on-enter/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/reset-marks-on-enter/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/reset-marks-on-enter/reset-marks-on-enter.js +20 -0
- package/dist/components/minimal-tiptap/extensions/reset-marks-on-enter/reset-marks-on-enter.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/selection/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/selection/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/selection/selection.js +31 -0
- package/dist/components/minimal-tiptap/extensions/selection/selection.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/unset-all-marks/index.js +2 -0
- package/dist/components/minimal-tiptap/extensions/unset-all-marks/index.js.map +1 -0
- package/dist/components/minimal-tiptap/extensions/unset-all-marks/unset-all-marks.js +9 -0
- package/dist/components/minimal-tiptap/extensions/unset-all-marks/unset-all-marks.js.map +1 -0
- package/dist/components/minimal-tiptap/form-description-tiptap.js +26 -0
- package/dist/components/minimal-tiptap/form-description-tiptap.js.map +1 -0
- package/dist/components/minimal-tiptap/hooks/use-container-size.js +44 -0
- package/dist/components/minimal-tiptap/hooks/use-container-size.js.map +1 -0
- package/dist/components/minimal-tiptap/hooks/use-minimal-tiptap.js +160 -0
- package/dist/components/minimal-tiptap/hooks/use-minimal-tiptap.js.map +1 -0
- package/dist/components/minimal-tiptap/hooks/use-theme.js +19 -0
- package/dist/components/minimal-tiptap/hooks/use-theme.js.map +1 -0
- package/dist/components/minimal-tiptap/hooks/use-throttle.js +24 -0
- package/dist/components/minimal-tiptap/hooks/use-throttle.js.map +1 -0
- package/dist/components/minimal-tiptap/index.js +2 -0
- package/dist/components/minimal-tiptap/index.js.map +1 -0
- package/dist/components/minimal-tiptap/mailing-tiptap.js +30 -0
- package/dist/components/minimal-tiptap/mailing-tiptap.js.map +1 -0
- package/dist/components/minimal-tiptap/minimal-tiptap.js +29 -0
- package/dist/components/minimal-tiptap/minimal-tiptap.js.map +1 -0
- package/dist/components/minimal-tiptap/types.js +2 -0
- package/dist/components/minimal-tiptap/types.js.map +1 -0
- package/dist/components/minimal-tiptap/utils.js +156 -0
- package/dist/components/minimal-tiptap/utils.js.map +1 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/CoursePhaseParticipationsTablePage.js +71 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/CoursePhaseParticipationsTablePage.js.map +1 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/components/FilterMenu.js +43 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/components/FilterMenu.js.map +1 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/components/GroupActionsMenu.js +50 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/components/GroupActionsMenu.js.map +1 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/components/columns.js +84 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/components/columns.js.map +1 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/interfaces/ExtraParticipationTableData.js +2 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/interfaces/ExtraParticipationTableData.js.map +1 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/utils/downloadParticipations.js +70 -0
- package/dist/components/pages/CoursePhaseParticpationsTable/utils/downloadParticipations.js.map +1 -0
- package/dist/components/pages/Mailing/CoursePhaseMailing.js +88 -0
- package/dist/components/pages/Mailing/CoursePhaseMailing.js.map +1 -0
- package/dist/components/pages/Mailing/components/AvailableMailPlaceholders.js +61 -0
- package/dist/components/pages/Mailing/components/AvailableMailPlaceholders.js.map +1 -0
- package/dist/components/pages/Mailing/components/ConfirmSendEmailDialog.js +35 -0
- package/dist/components/pages/Mailing/components/ConfirmSendEmailDialog.js.map +1 -0
- package/dist/components/pages/Mailing/components/MailingEditor.js +29 -0
- package/dist/components/pages/Mailing/components/MailingEditor.js.map +1 -0
- package/dist/components/pages/Mailing/components/ManualMailSending.js +35 -0
- package/dist/components/pages/Mailing/components/ManualMailSending.js.map +1 -0
- package/dist/components/pages/Mailing/components/SettingsCard.js +14 -0
- package/dist/components/pages/Mailing/components/SettingsCard.js.map +1 -0
- package/dist/components/table/GroupActionDialog.js +8 -0
- package/dist/components/table/GroupActionDialog.js.map +1 -0
- package/dist/components/table/SortableHeader.js +7 -0
- package/dist/components/table/SortableHeader.js.map +1 -0
- package/dist/components/ui/card.js +1 -1
- package/dist/components/ui/card.js.map +1 -1
- package/dist/components/ui/chart.js +1 -1
- package/dist/components/ui/chart.js.map +1 -1
- package/dist/index.css +2 -3
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/types/components/DatePicker.d.ts +6 -0
- package/dist/types/components/DateRangePicker.d.ts +8 -0
- package/dist/types/components/DeleteConfirmationDialog.d.ts +9 -0
- package/dist/types/components/ErrorPage.d.ts +9 -0
- package/dist/types/components/ExportedApplicationAnswerTable.d.ts +6 -0
- package/dist/types/components/LoadingPage.d.ts +1 -0
- package/dist/types/components/ManagementPageHeader.d.ts +5 -0
- package/dist/types/components/MissingConfig.d.ts +13 -0
- package/dist/types/components/MultiSelect.d.ts +68 -0
- package/dist/types/components/SaveChangesAlert.d.ts +8 -0
- package/dist/types/components/StudentProfile.d.ts +7 -0
- package/dist/types/components/ThemeToggle.d.ts +1 -0
- package/dist/types/components/UnauthorizedPage.d.ts +7 -0
- package/dist/types/components/index.d.ts +9 -0
- package/dist/types/components/minimal-tiptap/components/bubble-menu/link-bubble-menu.d.ts +7 -0
- package/dist/types/components/minimal-tiptap/components/image/image-edit-block.d.ts +8 -0
- package/dist/types/components/minimal-tiptap/components/image/image-edit-dialog.d.ts +8 -0
- package/dist/types/components/minimal-tiptap/components/link/link-edit-block.d.ts +9 -0
- package/dist/types/components/minimal-tiptap/components/link/link-edit-popover.d.ts +8 -0
- package/dist/types/components/minimal-tiptap/components/link/link-popover-block.d.ts +8 -0
- package/dist/types/components/minimal-tiptap/components/measured-container.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/components/section/five.d.ts +12 -0
- package/dist/types/components/minimal-tiptap/components/section/four.d.ts +12 -0
- package/dist/types/components/minimal-tiptap/components/section/mailingPlaceholders.d.ts +10 -0
- package/dist/types/components/minimal-tiptap/components/section/one.d.ts +11 -0
- package/dist/types/components/minimal-tiptap/components/section/three.d.ts +9 -0
- package/dist/types/components/minimal-tiptap/components/section/two.d.ts +12 -0
- package/dist/types/components/minimal-tiptap/components/shortcut-key.d.ts +5 -0
- package/dist/types/components/minimal-tiptap/components/spinner.d.ts +5 -0
- package/dist/types/components/minimal-tiptap/components/toolbar-button.d.ts +10 -0
- package/dist/types/components/minimal-tiptap/components/toolbar-section.d.ts +16 -0
- package/dist/types/components/minimal-tiptap/extensions/code-block-lowlight/code-block-lowlight.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/extensions/code-block-lowlight/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/color/color.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/color/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/file-handler/index.d.ts +12 -0
- package/dist/types/components/minimal-tiptap/extensions/horizontal-rule/horizontal-rule.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/extensions/horizontal-rule/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/image/components/image-actions.d.ts +17 -0
- package/dist/types/components/minimal-tiptap/extensions/image/components/image-overlay.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/extensions/image/components/image-view-block.d.ts +3 -0
- package/dist/types/components/minimal-tiptap/extensions/image/components/resize-handle.d.ts +6 -0
- package/dist/types/components/minimal-tiptap/extensions/image/hooks/use-drag-resize.d.ts +24 -0
- package/dist/types/components/minimal-tiptap/extensions/image/hooks/use-image-actions.d.ts +24 -0
- package/dist/types/components/minimal-tiptap/extensions/image/image.d.ts +52 -0
- package/dist/types/components/minimal-tiptap/extensions/image/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/index.d.ts +9 -0
- package/dist/types/components/minimal-tiptap/extensions/link/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/link/link.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/extensions/reset-marks-on-enter/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/reset-marks-on-enter/reset-marks-on-enter.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/extensions/selection/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/selection/selection.d.ts +3 -0
- package/dist/types/components/minimal-tiptap/extensions/unset-all-marks/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/extensions/unset-all-marks/unset-all-marks.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/form-description-tiptap.d.ts +4 -0
- package/dist/types/components/minimal-tiptap/hooks/use-container-size.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/hooks/use-minimal-tiptap.d.ts +13 -0
- package/dist/types/components/minimal-tiptap/hooks/use-theme.d.ts +2 -0
- package/dist/types/components/minimal-tiptap/hooks/use-throttle.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/index.d.ts +1 -0
- package/dist/types/components/minimal-tiptap/mailing-tiptap.d.ts +13 -0
- package/dist/types/components/minimal-tiptap/minimal-tiptap.d.ts +12 -0
- package/dist/types/components/minimal-tiptap/types.d.ts +25 -0
- package/dist/types/components/minimal-tiptap/utils.d.ts +38 -0
- package/dist/types/components/pages/CoursePhaseParticpationsTable/CoursePhaseParticipationsTablePage.d.ts +13 -0
- package/dist/types/components/pages/CoursePhaseParticpationsTable/components/FilterMenu.d.ts +7 -0
- package/dist/types/components/pages/CoursePhaseParticpationsTable/components/GroupActionsMenu.d.ts +10 -0
- package/dist/types/components/pages/CoursePhaseParticpationsTable/components/columns.d.ts +9 -0
- package/dist/types/components/pages/CoursePhaseParticpationsTable/interfaces/ExtraParticipationTableData.d.ts +5 -0
- package/dist/types/components/pages/CoursePhaseParticpationsTable/utils/downloadParticipations.d.ts +3 -0
- package/dist/types/components/pages/Mailing/CoursePhaseMailing.d.ts +6 -0
- package/dist/types/components/pages/Mailing/components/AvailableMailPlaceholders.d.ts +12 -0
- package/dist/types/components/pages/Mailing/components/ConfirmSendEmailDialog.d.ts +8 -0
- package/dist/types/components/pages/Mailing/components/MailingEditor.d.ts +12 -0
- package/dist/types/components/pages/Mailing/components/ManualMailSending.d.ts +7 -0
- package/dist/types/components/pages/Mailing/components/SettingsCard.d.ts +7 -0
- package/dist/types/components/table/GroupActionDialog.d.ts +11 -0
- package/dist/types/components/table/SortableHeader.d.ts +4 -0
- package/dist/types/index.d.ts +1 -0
- package/package.json +23 -2
- package/src/index.css +1 -2
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';
|
|
4
|
+
import { Link2Icon } from 'lucide-react';
|
|
5
|
+
import { ToolbarButton } from '../toolbar-button';
|
|
6
|
+
import { LinkEditBlock } from './link-edit-block';
|
|
7
|
+
const LinkEditPopover = ({ editor, size, variant }) => {
|
|
8
|
+
const [open, setOpen] = React.useState(false);
|
|
9
|
+
const { from, to } = editor.state.selection;
|
|
10
|
+
const text = editor.state.doc.textBetween(from, to, ' ');
|
|
11
|
+
const onSetLink = React.useCallback(
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-shadow
|
|
13
|
+
(url, text, openInNewTab) => {
|
|
14
|
+
editor
|
|
15
|
+
.chain()
|
|
16
|
+
.focus()
|
|
17
|
+
.extendMarkRange('link')
|
|
18
|
+
.insertContent({
|
|
19
|
+
type: 'text',
|
|
20
|
+
text: text || url,
|
|
21
|
+
marks: [
|
|
22
|
+
{
|
|
23
|
+
type: 'link',
|
|
24
|
+
attrs: {
|
|
25
|
+
href: url,
|
|
26
|
+
target: openInNewTab ? '_blank' : '',
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
})
|
|
31
|
+
.setLink({ href: url })
|
|
32
|
+
.run();
|
|
33
|
+
editor.commands.enter();
|
|
34
|
+
}, [editor]);
|
|
35
|
+
return (_jsxs(Popover, { open: open, onOpenChange: setOpen, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsx(ToolbarButton, { isActive: editor.isActive('link'), tooltip: 'Link', "aria-label": 'Insert link', disabled: editor.isActive('codeBlock'), size: size, variant: variant, children: _jsx(Link2Icon, { className: 'size-5' }) }) }), _jsx(PopoverContent, { className: 'w-full min-w-80', align: 'end', side: 'bottom', children: _jsx(LinkEditBlock, { onSave: onSetLink, defaultText: text }) })] }));
|
|
36
|
+
};
|
|
37
|
+
export { LinkEditPopover };
|
|
38
|
+
//# sourceMappingURL=link-edit-popover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-edit-popover.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/link/link-edit-popover.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAMjD,MAAM,eAAe,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAwB,EAAE,EAAE;IAC1E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE7C,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAA;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;IAExD,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW;IACjC,wDAAwD;IACxD,CAAC,GAAW,EAAE,IAAa,EAAE,YAAsB,EAAE,EAAE;QACrD,MAAM;aACH,KAAK,EAAE;aACP,KAAK,EAAE;aACP,eAAe,CAAC,MAAM,CAAC;aACvB,aAAa,CAAC;YACb,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI,IAAI,GAAG;YACjB,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE;wBACL,IAAI,EAAE,GAAG;wBACT,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;qBACrC;iBACF;aACF;SACF,CAAC;aACD,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;aACtB,GAAG,EAAE,CAAA;QAER,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;IACzB,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAA;IAED,OAAO,CACL,MAAC,OAAO,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,aACxC,KAAC,cAAc,IAAC,OAAO,kBACrB,KAAC,aAAa,IACZ,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EACjC,OAAO,EAAC,MAAM,gBACH,aAAa,EACxB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,EACtC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,YAEhB,KAAC,SAAS,IAAC,SAAS,EAAC,QAAQ,GAAG,GAClB,GACD,EACjB,KAAC,cAAc,IAAC,SAAS,EAAC,iBAAiB,EAAC,KAAK,EAAC,KAAK,EAAC,IAAI,EAAC,QAAQ,YACnE,KAAC,aAAa,IAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,GAAI,GACxC,IACT,CACX,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Separator } from '@/components/ui/separator';
|
|
4
|
+
import { ToolbarButton } from '../toolbar-button';
|
|
5
|
+
import { CopyIcon, ExternalLinkIcon, Link2Off } from 'lucide-react';
|
|
6
|
+
export const LinkPopoverBlock = ({ url, onClear, onEdit }) => {
|
|
7
|
+
const [copyTitle, setCopyTitle] = React.useState('Copy');
|
|
8
|
+
const handleCopy = React.useCallback((e) => {
|
|
9
|
+
e.preventDefault();
|
|
10
|
+
navigator.clipboard
|
|
11
|
+
.writeText(url)
|
|
12
|
+
.then(() => {
|
|
13
|
+
setCopyTitle('Copied!');
|
|
14
|
+
setTimeout(() => setCopyTitle('Copy'), 1000);
|
|
15
|
+
})
|
|
16
|
+
.catch(console.error);
|
|
17
|
+
}, [url]);
|
|
18
|
+
const handleOpenLink = React.useCallback(() => {
|
|
19
|
+
window.open(url, '_blank', 'noopener,noreferrer');
|
|
20
|
+
}, [url]);
|
|
21
|
+
return (_jsx("div", { className: 'flex h-10 overflow-hidden rounded bg-background p-2 shadow-lg', children: _jsxs("div", { className: 'inline-flex items-center gap-1', children: [_jsx(ToolbarButton, { tooltip: 'Edit link', onClick: onEdit, className: 'w-auto px-2', children: "Edit link" }), _jsx(Separator, { orientation: 'vertical' }), _jsx(ToolbarButton, { tooltip: 'Open link in a new tab', onClick: handleOpenLink, children: _jsx(ExternalLinkIcon, { className: 'size-4' }) }), _jsx(Separator, { orientation: 'vertical' }), _jsx(ToolbarButton, { tooltip: 'Clear link', onClick: onClear, children: _jsx(Link2Off, { className: 'size-4' }) }), _jsx(Separator, { orientation: 'vertical' }), _jsx(ToolbarButton, { tooltip: copyTitle, onClick: handleCopy, tooltipOptions: {
|
|
22
|
+
onPointerDownOutside: (e) => {
|
|
23
|
+
if (e.target === e.currentTarget)
|
|
24
|
+
e.preventDefault();
|
|
25
|
+
},
|
|
26
|
+
}, children: _jsx(CopyIcon, { className: 'size-4' }) })] }) }));
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=link-popover-block.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-popover-block.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/link/link-popover-block.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAQnE,MAAM,CAAC,MAAM,gBAAgB,GAAoC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;IAC5F,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAS,MAAM,CAAC,CAAA;IAEhE,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAClC,CAAC,CAAsC,EAAE,EAAE;QACzC,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,SAAS,CAAC,SAAS;aAChB,SAAS,CAAC,GAAG,CAAC;aACd,IAAI,CAAC,GAAG,EAAE;YACT,YAAY,CAAC,SAAS,CAAC,CAAA;YACvB,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,CAAA;QAC9C,CAAC,CAAC;aACD,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,EACD,CAAC,GAAG,CAAC,CACN,CAAA;IAED,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE;QAC5C,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAA;IACnD,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;IAET,OAAO,CACL,cAAK,SAAS,EAAC,+DAA+D,YAC5E,eAAK,SAAS,EAAC,gCAAgC,aAC7C,KAAC,aAAa,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAC,aAAa,0BAE3D,EAChB,KAAC,SAAS,IAAC,WAAW,EAAC,UAAU,GAAG,EACpC,KAAC,aAAa,IAAC,OAAO,EAAC,wBAAwB,EAAC,OAAO,EAAE,cAAc,YACrE,KAAC,gBAAgB,IAAC,SAAS,EAAC,QAAQ,GAAG,GACzB,EAChB,KAAC,SAAS,IAAC,WAAW,EAAC,UAAU,GAAG,EACpC,KAAC,aAAa,IAAC,OAAO,EAAC,YAAY,EAAC,OAAO,EAAE,OAAO,YAClD,KAAC,QAAQ,IAAC,SAAS,EAAC,QAAQ,GAAG,GACjB,EAChB,KAAC,SAAS,IAAC,WAAW,EAAC,UAAU,GAAG,EACpC,KAAC,aAAa,IACZ,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE;wBACd,oBAAoB,EAAE,CAAC,CAAC,EAAE,EAAE;4BAC1B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,aAAa;gCAAE,CAAC,CAAC,cAAc,EAAE,CAAA;wBACtD,CAAC;qBACF,YAED,KAAC,QAAQ,IAAC,SAAS,EAAC,QAAQ,GAAG,GACjB,IACZ,GACF,CACP,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/* eslint-disable react/prop-types */
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { useContainerSize } from '../hooks/use-container-size';
|
|
5
|
+
export const MeasuredContainer = React.forwardRef(({ as: Component, name, children, style = {}, ...props }, ref) => {
|
|
6
|
+
const innerRef = React.useRef(null);
|
|
7
|
+
const rect = useContainerSize(innerRef.current);
|
|
8
|
+
React.useImperativeHandle(ref, () => innerRef.current);
|
|
9
|
+
const customStyle = {
|
|
10
|
+
[`--${name}-width`]: `${rect.width}px`,
|
|
11
|
+
[`--${name}-height`]: `${rect.height}px`,
|
|
12
|
+
};
|
|
13
|
+
return (_jsx(Component, { ...props, ref: innerRef, style: { ...customStyle, ...style }, children: children }));
|
|
14
|
+
});
|
|
15
|
+
MeasuredContainer.displayName = 'MeasuredContainer';
|
|
16
|
+
//# sourceMappingURL=measured-container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measured-container.js","sourceRoot":"","sources":["../../../../src/components/minimal-tiptap/components/measured-container.tsx"],"names":[],"mappings":";AAAA,qCAAqC;AACrC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAQ9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAC/C,CACE,EACE,EAAE,EAAE,SAAS,EACb,IAAI,EACJ,QAAQ,EACR,KAAK,GAAG,EAAE,EACV,GAAG,KAAK,EAC4C,EACtD,GAA2B,EAC3B,EAAE;IACF,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAc,IAAI,CAAC,CAAA;IAChD,MAAM,IAAI,GAAG,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAE/C,KAAK,CAAC,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAsB,CAAC,CAAA;IAErE,MAAM,WAAW,GAAG;QAClB,CAAC,KAAK,IAAI,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,IAAI;QACtC,CAAC,KAAK,IAAI,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,IAAI;KACzC,CAAA;IAED,OAAO,CACL,KAAC,SAAS,OAAK,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,GAAG,WAAW,EAAE,GAAG,KAAK,EAAE,YACrE,QAAQ,GACC,CACb,CAAA;AACH,CAAC,CACF,CAAA;AAED,iBAAiB,CAAC,WAAW,GAAG,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronDown, CodeIcon, SeparatorHorizontalIcon, PlusIcon, QuoteIcon } from 'lucide-react';
|
|
3
|
+
import { LinkEditPopover } from '../link/link-edit-popover';
|
|
4
|
+
import { ToolbarSection } from '../toolbar-section';
|
|
5
|
+
const formatActions = [
|
|
6
|
+
{
|
|
7
|
+
value: 'codeBlock',
|
|
8
|
+
label: 'Code block',
|
|
9
|
+
icon: _jsx(CodeIcon, { className: 'size-5' }),
|
|
10
|
+
action: (editor) => editor.chain().focus().toggleCodeBlock().run(),
|
|
11
|
+
isActive: (editor) => editor.isActive('codeBlock'),
|
|
12
|
+
canExecute: (editor) => editor.can().chain().focus().toggleCodeBlock().run(),
|
|
13
|
+
shortcuts: ['mod', 'alt', 'C'],
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
value: 'blockquote',
|
|
17
|
+
label: 'Blockquote',
|
|
18
|
+
icon: _jsx(QuoteIcon, { className: 'size-5' }),
|
|
19
|
+
action: (editor) => editor.chain().focus().toggleBlockquote().run(),
|
|
20
|
+
isActive: (editor) => editor.isActive('blockquote'),
|
|
21
|
+
canExecute: (editor) => editor.can().chain().focus().toggleBlockquote().run(),
|
|
22
|
+
shortcuts: ['mod', 'shift', 'B'],
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
value: 'horizontalRule',
|
|
26
|
+
label: 'Divider',
|
|
27
|
+
icon: _jsx(SeparatorHorizontalIcon, { className: 'size-5' }),
|
|
28
|
+
action: (editor) => editor.chain().focus().setHorizontalRule().run(),
|
|
29
|
+
isActive: () => false,
|
|
30
|
+
canExecute: (editor) => editor.can().chain().focus().setHorizontalRule().run(),
|
|
31
|
+
shortcuts: ['mod', 'alt', '-'],
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
export const SectionFive = ({ editor, activeActions = formatActions.map((action) => action.value), mainActionCount = 0, size, variant, }) => {
|
|
35
|
+
return (_jsxs(_Fragment, { children: [_jsx(LinkEditPopover, { editor: editor, size: size, variant: variant }), _jsx(ToolbarSection, { editor: editor, actions: formatActions, activeActions: activeActions, mainActionCount: mainActionCount, dropdownIcon: _jsxs(_Fragment, { children: [_jsx(PlusIcon, { className: 'size-5' }), _jsx(ChevronDown, { className: 'size-5' })] }), dropdownTooltip: 'Insert elements', size: size, variant: variant })] }));
|
|
36
|
+
};
|
|
37
|
+
SectionFive.displayName = 'SectionFive';
|
|
38
|
+
export default SectionFive;
|
|
39
|
+
//# sourceMappingURL=five.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"five.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/section/five.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { ChevronDown, ListIcon } from 'lucide-react';
|
|
3
|
+
import { ToolbarSection } from '../toolbar-section';
|
|
4
|
+
const formatActions = [
|
|
5
|
+
{
|
|
6
|
+
value: 'orderedList',
|
|
7
|
+
label: 'Numbered list',
|
|
8
|
+
icon: (_jsx("svg", { xmlns: 'http://www.w3.org/2000/svg', height: '20px', viewBox: '0 -960 960 960', width: '20px', fill: 'currentColor', children: _jsx("path", { d: 'M144-144v-48h96v-24h-48v-48h48v-24h-96v-48h120q10.2 0 17.1 6.9 6.9 6.9 6.9 17.1v48q0 10.2-6.9 17.1-6.9 6.9-17.1 6.9 10.2 0 17.1 6.9 6.9 6.9 6.9 17.1v48q0 10.2-6.9 17.1-6.9 6.9-17.1 6.9H144Zm0-240v-96q0-10.2 6.9-17.1 6.9-6.9 17.1-6.9h72v-24h-96v-48h120q10.2 0 17.1 6.9 6.9 6.9 6.9 17.1v72q0 10.2-6.9 17.1-6.9 6.9-17.1 6.9h-72v24h96v48H144Zm48-240v-144h-48v-48h96v192h-48Zm168 384v-72h456v72H360Zm0-204v-72h456v72H360Zm0-204v-72h456v72H360Z' }) })),
|
|
9
|
+
isActive: (editor) => editor.isActive('orderedList'),
|
|
10
|
+
action: (editor) => editor.chain().focus().toggleOrderedList().run(),
|
|
11
|
+
canExecute: (editor) => editor.can().chain().focus().toggleOrderedList().run(),
|
|
12
|
+
shortcuts: ['mod', 'shift', '7'],
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
value: 'bulletList',
|
|
16
|
+
label: 'Bullet list',
|
|
17
|
+
icon: _jsx(ListIcon, { className: 'size-5' }),
|
|
18
|
+
isActive: (editor) => editor.isActive('bulletList'),
|
|
19
|
+
action: (editor) => editor.chain().focus().toggleBulletList().run(),
|
|
20
|
+
canExecute: (editor) => editor.can().chain().focus().toggleBulletList().run(),
|
|
21
|
+
shortcuts: ['mod', 'shift', '8'],
|
|
22
|
+
},
|
|
23
|
+
];
|
|
24
|
+
export const SectionFour = ({ editor, activeActions = formatActions.map((action) => action.value), mainActionCount = 0, size, variant, }) => {
|
|
25
|
+
return (_jsx(ToolbarSection, { editor: editor, actions: formatActions, activeActions: activeActions, mainActionCount: mainActionCount, dropdownIcon: _jsxs(_Fragment, { children: [_jsx(ListIcon, { className: 'size-5' }), _jsx(ChevronDown, { className: 'size-5' })] }), dropdownTooltip: 'Lists', size: size, variant: variant }));
|
|
26
|
+
};
|
|
27
|
+
SectionFour.displayName = 'SectionFour';
|
|
28
|
+
export default SectionFour;
|
|
29
|
+
//# sourceMappingURL=four.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"four.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/section/four.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAOnD,MAAM,aAAa,GAAe;IAChC;QACE,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,CACJ,cACE,KAAK,EAAC,4BAA4B,EAClC,MAAM,EAAC,MAAM,EACb,OAAO,EAAC,gBAAgB,EACxB,KAAK,EAAC,MAAM,EACZ,IAAI,EAAC,cAAc,YAEnB,eAAM,CAAC,EAAC,wbAAwb,GAAG,GAC/b,CACP;QACD,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;QACpD,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE;QACpE,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE;QAC9E,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC;KACjC;IACD;QACE,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,KAAC,QAAQ,IAAC,SAAS,EAAC,QAAQ,GAAG;QACrC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC;QACnD,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,gBAAgB,EAAE,CAAC,GAAG,EAAE;QACnE,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,gBAAgB,EAAE,CAAC,GAAG,EAAE;QAC7E,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC;KACjC;CACF,CAAA;AAQD,MAAM,CAAC,MAAM,WAAW,GAA+B,CAAC,EACtD,MAAM,EACN,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAC3D,eAAe,GAAG,CAAC,EACnB,IAAI,EACJ,OAAO,GACR,EAAE,EAAE;IACH,OAAO,CACL,KAAC,cAAc,IACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,EACtB,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,YAAY,EACV,8BACE,KAAC,QAAQ,IAAC,SAAS,EAAC,QAAQ,GAAG,EAC/B,KAAC,WAAW,IAAC,SAAS,EAAC,QAAQ,GAAG,IACjC,EAEL,eAAe,EAAC,OAAO,EACvB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,GAChB,CACH,CAAA;AACH,CAAC,CAAA;AAED,WAAW,CAAC,WAAW,GAAG,aAAa,CAAA;AAEvC,eAAe,WAAW,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { ListIcon } from 'lucide-react';
|
|
3
|
+
import { ToolbarSection } from '../toolbar-section';
|
|
4
|
+
import { MailSearch } from 'lucide-react';
|
|
5
|
+
const formatActions = (placeholders) => {
|
|
6
|
+
return placeholders.map((placeholder) => ({
|
|
7
|
+
label: placeholder,
|
|
8
|
+
icon: _jsx(ListIcon, { className: 'size-5' }),
|
|
9
|
+
action: (editor) => {
|
|
10
|
+
editor.chain().focus().insertContent(`${placeholder}`).run();
|
|
11
|
+
},
|
|
12
|
+
isActive: () => false,
|
|
13
|
+
canExecute: () => true,
|
|
14
|
+
shortcuts: [],
|
|
15
|
+
value: placeholder,
|
|
16
|
+
}));
|
|
17
|
+
};
|
|
18
|
+
export const SectionMailingPlaceholders = ({ editor, placeholders, size, variant, }) => {
|
|
19
|
+
return (_jsx(ToolbarSection, { editor: editor, actions: formatActions(placeholders), dropdownIcon: _jsx(_Fragment, { children: _jsx(MailSearch, { className: 'size-5' }) }), dropdownTooltip: 'Available Mailing Placeholders', size: size, variant: variant }));
|
|
20
|
+
};
|
|
21
|
+
SectionMailingPlaceholders.displayName = 'MailingPlaceholders';
|
|
22
|
+
export default SectionMailingPlaceholders;
|
|
23
|
+
//# sourceMappingURL=mailingPlaceholders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mailingPlaceholders.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/section/mailingPlaceholders.tsx"],"names":[],"mappings":";AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,MAAM,aAAa,GAAG,CAAC,YAAsB,EAAkB,EAAE;IAC/D,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACxC,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,KAAC,QAAQ,IAAC,SAAS,EAAC,QAAQ,GAAG;QACrC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;YACjB,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,GAAG,WAAW,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;QAC9D,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK;QACrB,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI;QACtB,SAAS,EAAE,EAAE;QACb,KAAK,EAAE,WAAW;KACnB,CAAC,CAAC,CAAA;AACL,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,0BAA0B,GAA6C,CAAC,EACnF,MAAM,EACN,YAAY,EACZ,IAAI,EACJ,OAAO,GACR,EAAE,EAAE;IACH,OAAO,CACL,KAAC,cAAc,IACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,CAAC,YAAY,CAAC,EACpC,YAAY,EACV,4BACE,KAAC,UAAU,IAAC,SAAS,EAAC,QAAQ,GAAG,GAChC,EAEL,eAAe,EAAC,gCAAgC,EAChD,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,GAChB,CACH,CAAA;AACH,CAAC,CAAA;AAED,0BAA0B,CAAC,WAAW,GAAG,qBAAqB,CAAA;AAE9D,eAAe,0BAA0B,CAAA"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { cn } from '@/lib/utils';
|
|
4
|
+
import { ChevronDown, CaseSensitive } from 'lucide-react';
|
|
5
|
+
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu';
|
|
6
|
+
import { ToolbarButton } from '../toolbar-button';
|
|
7
|
+
import { ShortcutKey } from '../shortcut-key';
|
|
8
|
+
const formatActions = [
|
|
9
|
+
{
|
|
10
|
+
label: 'Normal Text',
|
|
11
|
+
element: 'span',
|
|
12
|
+
className: 'grow',
|
|
13
|
+
shortcuts: ['mod', 'alt', '0'],
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
label: 'Heading 1',
|
|
17
|
+
element: 'h1',
|
|
18
|
+
level: 1,
|
|
19
|
+
className: 'm-0 grow text-3xl font-extrabold',
|
|
20
|
+
shortcuts: ['mod', 'alt', '1'],
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
label: 'Heading 2',
|
|
24
|
+
element: 'h2',
|
|
25
|
+
level: 2,
|
|
26
|
+
className: 'm-0 grow text-xl font-bold',
|
|
27
|
+
shortcuts: ['mod', 'alt', '2'],
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
label: 'Heading 3',
|
|
31
|
+
element: 'h3',
|
|
32
|
+
level: 3,
|
|
33
|
+
className: 'm-0 grow text-lg font-semibold',
|
|
34
|
+
shortcuts: ['mod', 'alt', '3'],
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
label: 'Heading 4',
|
|
38
|
+
element: 'h4',
|
|
39
|
+
level: 4,
|
|
40
|
+
className: 'm-0 grow text-base font-semibold',
|
|
41
|
+
shortcuts: ['mod', 'alt', '4'],
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
label: 'Heading 5',
|
|
45
|
+
element: 'h5',
|
|
46
|
+
level: 5,
|
|
47
|
+
className: 'm-0 grow text-sm font-normal',
|
|
48
|
+
shortcuts: ['mod', 'alt', '5'],
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
label: 'Heading 6',
|
|
52
|
+
element: 'h6',
|
|
53
|
+
level: 6,
|
|
54
|
+
className: 'm-0 grow text-sm font-normal',
|
|
55
|
+
shortcuts: ['mod', 'alt', '6'],
|
|
56
|
+
},
|
|
57
|
+
];
|
|
58
|
+
export const SectionOne = React.memo(({ editor, activeLevels = [1, 2, 3, 4, 5, 6], size, variant }) => {
|
|
59
|
+
const filteredActions = React.useMemo(() => formatActions.filter((action) => !action.level || activeLevels.includes(action.level)), [activeLevels]);
|
|
60
|
+
const handleStyleChange = React.useCallback((level) => {
|
|
61
|
+
if (level) {
|
|
62
|
+
editor.chain().focus().toggleHeading({ level }).run();
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
editor.chain().focus().setParagraph().run();
|
|
66
|
+
}
|
|
67
|
+
}, [editor]);
|
|
68
|
+
const renderMenuItem = React.useCallback(({ label, element: Element, level, className, shortcuts }) => (_jsxs(DropdownMenuItem, { onClick: () => handleStyleChange(level), className: cn('flex flex-row items-center justify-between gap-4', {
|
|
69
|
+
'bg-accent': level
|
|
70
|
+
? editor.isActive('heading', { level })
|
|
71
|
+
: editor.isActive('paragraph'),
|
|
72
|
+
}), "aria-label": label, children: [_jsx(Element, { className: className, children: label }), _jsx(ShortcutKey, { keys: shortcuts })] }, label)), [editor, handleStyleChange]);
|
|
73
|
+
return (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsxs(ToolbarButton, { isActive: editor.isActive('heading'), tooltip: 'Text styles', "aria-label": 'Text styles', pressed: editor.isActive('heading'), className: 'w-12', disabled: editor.isActive('codeBlock'), size: size, variant: variant, children: [_jsx(CaseSensitive, { className: 'size-5' }), _jsx(ChevronDown, { className: 'size-5' })] }) }), _jsx(DropdownMenuContent, { align: 'start', className: 'w-full', children: filteredActions.map(renderMenuItem) })] }));
|
|
74
|
+
});
|
|
75
|
+
SectionOne.displayName = 'SectionOne';
|
|
76
|
+
export default SectionOne;
|
|
77
|
+
//# sourceMappingURL=one.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"one.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/section/one.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/* eslint-disable react/prop-types */
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import { ChevronDown, CheckIcon } from 'lucide-react';
|
|
5
|
+
import { ToolbarButton } from '../toolbar-button';
|
|
6
|
+
import { Popover, PopoverTrigger, PopoverContent } from '@/components/ui/popover';
|
|
7
|
+
import { ToggleGroup, ToggleGroupItem } from '@/components/ui/toggle-group';
|
|
8
|
+
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
|
|
9
|
+
import { useTheme } from '../../hooks/use-theme';
|
|
10
|
+
const COLORS = [
|
|
11
|
+
{
|
|
12
|
+
label: 'Palette 1',
|
|
13
|
+
inverse: 'hsl(var(--background))',
|
|
14
|
+
colors: [
|
|
15
|
+
{ cssVar: 'hsl(var(--foreground))', label: 'Default' },
|
|
16
|
+
{ cssVar: 'var(--mt-accent-bold-blue)', label: 'Bold blue' },
|
|
17
|
+
{ cssVar: 'var(--mt-accent-bold-teal)', label: 'Bold teal' },
|
|
18
|
+
{ cssVar: 'var(--mt-accent-bold-green)', label: 'Bold green' },
|
|
19
|
+
{ cssVar: 'var(--mt-accent-bold-orange)', label: 'Bold orange' },
|
|
20
|
+
{ cssVar: 'var(--mt-accent-bold-red)', label: 'Bold red' },
|
|
21
|
+
{ cssVar: 'var(--mt-accent-bold-purple)', label: 'Bold purple' },
|
|
22
|
+
],
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
label: 'Palette 2',
|
|
26
|
+
inverse: 'hsl(var(--background))',
|
|
27
|
+
colors: [
|
|
28
|
+
{ cssVar: 'var(--mt-accent-gray)', label: 'Gray' },
|
|
29
|
+
{ cssVar: 'var(--mt-accent-blue)', label: 'Blue' },
|
|
30
|
+
{ cssVar: 'var(--mt-accent-teal)', label: 'Teal' },
|
|
31
|
+
{ cssVar: 'var(--mt-accent-green)', label: 'Green' },
|
|
32
|
+
{ cssVar: 'var(--mt-accent-orange)', label: 'Orange' },
|
|
33
|
+
{ cssVar: 'var(--mt-accent-red)', label: 'Red' },
|
|
34
|
+
{ cssVar: 'var(--mt-accent-purple)', label: 'Purple' },
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
label: 'Palette 3',
|
|
39
|
+
inverse: 'hsl(var(--foreground))',
|
|
40
|
+
colors: [
|
|
41
|
+
{ cssVar: 'hsl(var(--background))', label: 'White', darkLabel: 'Black' },
|
|
42
|
+
{ cssVar: 'var(--mt-accent-blue-subtler)', label: 'Blue subtle' },
|
|
43
|
+
{ cssVar: 'var(--mt-accent-teal-subtler)', label: 'Teal subtle' },
|
|
44
|
+
{ cssVar: 'var(--mt-accent-green-subtler)', label: 'Green subtle' },
|
|
45
|
+
{ cssVar: 'var(--mt-accent-yellow-subtler)', label: 'Yellow subtle' },
|
|
46
|
+
{ cssVar: 'var(--mt-accent-red-subtler)', label: 'Red subtle' },
|
|
47
|
+
{ cssVar: 'var(--mt-accent-purple-subtler)', label: 'Purple subtle' },
|
|
48
|
+
],
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
const MemoizedColorButton = React.memo(({ color, isSelected, inverse, onClick }) => {
|
|
52
|
+
const isDarkMode = useTheme();
|
|
53
|
+
const label = isDarkMode && color.darkLabel ? color.darkLabel : color.label;
|
|
54
|
+
return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(ToggleGroupItem, { tabIndex: 0, className: 'relative size-7 rounded-md p-0', value: color.cssVar, "aria-label": label, style: { backgroundColor: color.cssVar }, onClick: (e) => {
|
|
55
|
+
e.preventDefault();
|
|
56
|
+
onClick(color.cssVar);
|
|
57
|
+
}, children: isSelected && (_jsx(CheckIcon, { className: 'absolute inset-0 m-auto size-6', style: { color: inverse } })) }) }), _jsx(TooltipContent, { side: 'bottom', children: _jsx("p", { children: label }) })] }));
|
|
58
|
+
});
|
|
59
|
+
MemoizedColorButton.displayName = 'MemoizedColorButton';
|
|
60
|
+
const MemoizedColorPicker = React.memo(({ palette, selectedColor, inverse, onColorChange }) => (_jsx(ToggleGroup, { type: 'single', value: selectedColor, onValueChange: (value) => {
|
|
61
|
+
if (value)
|
|
62
|
+
onColorChange(value);
|
|
63
|
+
}, className: 'gap-1.5', children: palette.colors.map((color, index) => (_jsx(MemoizedColorButton, { inverse: inverse, color: color, isSelected: selectedColor === color.cssVar, onClick: onColorChange }, index))) })));
|
|
64
|
+
MemoizedColorPicker.displayName = 'MemoizedColorPicker';
|
|
65
|
+
export const SectionThree = ({ editor, size, variant }) => {
|
|
66
|
+
const color = editor.getAttributes('textStyle')?.color || 'hsl(var(--foreground))';
|
|
67
|
+
const [selectedColor, setSelectedColor] = React.useState(color);
|
|
68
|
+
const handleColorChange = React.useCallback((value) => {
|
|
69
|
+
setSelectedColor(value);
|
|
70
|
+
editor.chain().setColor(value).run();
|
|
71
|
+
}, [editor]);
|
|
72
|
+
React.useEffect(() => {
|
|
73
|
+
setSelectedColor(color);
|
|
74
|
+
}, [color]);
|
|
75
|
+
return (_jsxs(Popover, { children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(ToolbarButton, { tooltip: 'Text color', "aria-label": 'Text color', className: 'w-12', size: size, variant: variant, children: [_jsxs("svg", { xmlns: 'http://www.w3.org/2000/svg', width: '24', height: '24', viewBox: '0 0 24 24', fill: 'none', stroke: 'currentColor', strokeWidth: '2', strokeLinecap: 'round', strokeLinejoin: 'round', className: 'size-5', style: { color: selectedColor }, children: [_jsx("path", { d: 'M4 20h16' }), _jsx("path", { d: 'm6 16 6-12 6 12' }), _jsx("path", { d: 'M8 12h8' })] }), _jsx(ChevronDown, { className: 'size-5' })] }) }), _jsx(PopoverContent, { align: 'start', className: 'w-full', children: _jsx("div", { className: 'space-y-1.5', children: COLORS.map((palette, index) => (_jsx(MemoizedColorPicker, { palette: palette, inverse: palette.inverse, selectedColor: selectedColor, onColorChange: handleColorChange }, index))) }) })] }));
|
|
76
|
+
};
|
|
77
|
+
SectionThree.displayName = 'SectionThree';
|
|
78
|
+
export default SectionThree;
|
|
79
|
+
//# sourceMappingURL=three.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"three.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/section/three.tsx"],"names":[],"mappings":";AAAA,qCAAqC;AACrC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACjF,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC3E,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACjF,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAchD,MAAM,MAAM,GAAmB;IAC7B;QACE,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,wBAAwB;QACjC,MAAM,EAAE;YACN,EAAE,MAAM,EAAE,wBAAwB,EAAE,KAAK,EAAE,SAAS,EAAE;YACtD,EAAE,MAAM,EAAE,4BAA4B,EAAE,KAAK,EAAE,WAAW,EAAE;YAC5D,EAAE,MAAM,EAAE,4BAA4B,EAAE,KAAK,EAAE,WAAW,EAAE;YAC5D,EAAE,MAAM,EAAE,6BAA6B,EAAE,KAAK,EAAE,YAAY,EAAE;YAC9D,EAAE,MAAM,EAAE,8BAA8B,EAAE,KAAK,EAAE,aAAa,EAAE;YAChE,EAAE,MAAM,EAAE,2BAA2B,EAAE,KAAK,EAAE,UAAU,EAAE;YAC1D,EAAE,MAAM,EAAE,8BAA8B,EAAE,KAAK,EAAE,aAAa,EAAE;SACjE;KACF;IACD;QACE,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,wBAAwB;QACjC,MAAM,EAAE;YACN,EAAE,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE;YAClD,EAAE,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE;YAClD,EAAE,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,MAAM,EAAE;YAClD,EAAE,MAAM,EAAE,wBAAwB,EAAE,KAAK,EAAE,OAAO,EAAE;YACpD,EAAE,MAAM,EAAE,yBAAyB,EAAE,KAAK,EAAE,QAAQ,EAAE;YACtD,EAAE,MAAM,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE;YAChD,EAAE,MAAM,EAAE,yBAAyB,EAAE,KAAK,EAAE,QAAQ,EAAE;SACvD;KACF;IACD;QACE,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,wBAAwB;QACjC,MAAM,EAAE;YACN,EAAE,MAAM,EAAE,wBAAwB,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE;YACxE,EAAE,MAAM,EAAE,+BAA+B,EAAE,KAAK,EAAE,aAAa,EAAE;YACjE,EAAE,MAAM,EAAE,+BAA+B,EAAE,KAAK,EAAE,aAAa,EAAE;YACjE,EAAE,MAAM,EAAE,gCAAgC,EAAE,KAAK,EAAE,cAAc,EAAE;YACnE,EAAE,MAAM,EAAE,iCAAiC,EAAE,KAAK,EAAE,eAAe,EAAE;YACrE,EAAE,MAAM,EAAE,8BAA8B,EAAE,KAAK,EAAE,YAAY,EAAE;YAC/D,EAAE,MAAM,EAAE,iCAAiC,EAAE,KAAK,EAAE,eAAe,EAAE;SACtE;KACF;CACF,CAAA;AAED,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAKnC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;IAC7C,MAAM,UAAU,GAAG,QAAQ,EAAE,CAAA;IAC7B,MAAM,KAAK,GAAG,UAAU,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAA;IAE3E,OAAO,CACL,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,KAAC,eAAe,IACd,QAAQ,EAAE,CAAC,EACX,SAAS,EAAC,gCAAgC,EAC1C,KAAK,EAAE,KAAK,CAAC,MAAM,gBACP,KAAK,EACjB,KAAK,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,MAAM,EAAE,EACxC,OAAO,EAAE,CAAC,CAAsC,EAAE,EAAE;wBAClD,CAAC,CAAC,cAAc,EAAE,CAAA;wBAClB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;oBACvB,CAAC,YAEA,UAAU,IAAI,CACb,KAAC,SAAS,IAAC,SAAS,EAAC,gCAAgC,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAI,CACpF,GACe,GACH,EACjB,KAAC,cAAc,IAAC,IAAI,EAAC,QAAQ,YAC3B,sBAAI,KAAK,GAAK,GACC,IACT,CACX,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,mBAAmB,CAAC,WAAW,GAAG,qBAAqB,CAAA;AAEvD,MAAM,mBAAmB,GAAG,KAAK,CAAC,IAAI,CAKnC,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CACzD,KAAC,WAAW,IACV,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,CAAC,KAAa,EAAE,EAAE;QAC/B,IAAI,KAAK;YAAE,aAAa,CAAC,KAAK,CAAC,CAAA;IACjC,CAAC,EACD,SAAS,EAAC,SAAS,YAElB,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CACpC,KAAC,mBAAmB,IAElB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,aAAa,KAAK,KAAK,CAAC,MAAM,EAC1C,OAAO,EAAE,aAAa,IAJjB,KAAK,CAKV,CACH,CAAC,GACU,CACf,CAAC,CAAA;AAEF,mBAAmB,CAAC,WAAW,GAAG,qBAAqB,CAAA;AAMvD,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;IACrF,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,KAAK,IAAI,wBAAwB,CAAA;IAClF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE/D,MAAM,iBAAiB,GAAG,KAAK,CAAC,WAAW,CACzC,CAAC,KAAa,EAAE,EAAE;QAChB,gBAAgB,CAAC,KAAK,CAAC,CAAA;QACvB,MAAM,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;IACtC,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAA;IAED,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,gBAAgB,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;IAEX,OAAO,CACL,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBACrB,MAAC,aAAa,IACZ,OAAO,EAAC,YAAY,gBACT,YAAY,EACvB,SAAS,EAAC,MAAM,EAChB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,aAEhB,eACE,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,EACf,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,EACtB,SAAS,EAAC,QAAQ,EAClB,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,aAE/B,eAAM,CAAC,EAAC,UAAU,GAAG,EACrB,eAAM,CAAC,EAAC,iBAAiB,GAAG,EAC5B,eAAM,CAAC,EAAC,SAAS,GAAG,IAChB,EACN,KAAC,WAAW,IAAC,SAAS,EAAC,QAAQ,GAAG,IACpB,GACD,EACjB,KAAC,cAAc,IAAC,KAAK,EAAC,OAAO,EAAC,SAAS,EAAC,QAAQ,YAC9C,cAAK,SAAS,EAAC,aAAa,YACzB,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAC9B,KAAC,mBAAmB,IAElB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,CAAC,OAAO,EACxB,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,iBAAiB,IAJ3B,KAAK,CAKV,CACH,CAAC,GACE,GACS,IACT,CACX,CAAA;AACH,CAAC,CAAA;AAED,YAAY,CAAC,WAAW,GAAG,cAAc,CAAA;AAEzC,eAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { CodeIcon, Ellipsis, BoldIcon, ItalicIcon, StrikethroughIcon, UnderlineIcon, RemoveFormatting, } from 'lucide-react';
|
|
3
|
+
import { ToolbarSection } from '../toolbar-section';
|
|
4
|
+
const formatActions = [
|
|
5
|
+
{
|
|
6
|
+
value: 'bold',
|
|
7
|
+
label: 'Bold',
|
|
8
|
+
icon: _jsx(BoldIcon, { className: 'size-5' }),
|
|
9
|
+
action: (editor) => editor.chain().focus().toggleBold().run(),
|
|
10
|
+
isActive: (editor) => editor.isActive('bold'),
|
|
11
|
+
canExecute: (editor) => editor.can().chain().focus().toggleBold().run() && !editor.isActive('codeBlock'),
|
|
12
|
+
shortcuts: ['mod', 'B'],
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
value: 'italic',
|
|
16
|
+
label: 'Italic',
|
|
17
|
+
icon: _jsx(ItalicIcon, { className: 'size-5' }),
|
|
18
|
+
action: (editor) => editor.chain().focus().toggleItalic().run(),
|
|
19
|
+
isActive: (editor) => editor.isActive('italic'),
|
|
20
|
+
canExecute: (editor) => editor.can().chain().focus().toggleItalic().run() && !editor.isActive('codeBlock'),
|
|
21
|
+
shortcuts: ['mod', 'I'],
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
value: 'underline',
|
|
25
|
+
label: 'Underline',
|
|
26
|
+
icon: _jsx(UnderlineIcon, { className: 'size-5' }),
|
|
27
|
+
action: (editor) => editor.chain().focus().toggleUnderline().run(),
|
|
28
|
+
isActive: (editor) => editor.isActive('underline'),
|
|
29
|
+
canExecute: (editor) => editor.can().chain().focus().toggleUnderline().run() && !editor.isActive('codeBlock'),
|
|
30
|
+
shortcuts: ['mod', 'U'],
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
value: 'strikethrough',
|
|
34
|
+
label: 'Strikethrough',
|
|
35
|
+
icon: _jsx(StrikethroughIcon, { className: 'size-5' }),
|
|
36
|
+
action: (editor) => editor.chain().focus().toggleStrike().run(),
|
|
37
|
+
isActive: (editor) => editor.isActive('strike'),
|
|
38
|
+
canExecute: (editor) => editor.can().chain().focus().toggleStrike().run() && !editor.isActive('codeBlock'),
|
|
39
|
+
shortcuts: ['mod', 'shift', 'S'],
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
value: 'code',
|
|
43
|
+
label: 'Code',
|
|
44
|
+
icon: _jsx(CodeIcon, { className: 'size-5' }),
|
|
45
|
+
action: (editor) => editor.chain().focus().toggleCode().run(),
|
|
46
|
+
isActive: (editor) => editor.isActive('code'),
|
|
47
|
+
canExecute: (editor) => editor.can().chain().focus().toggleCode().run() && !editor.isActive('codeBlock'),
|
|
48
|
+
shortcuts: ['mod', 'E'],
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
value: 'clearFormatting',
|
|
52
|
+
label: 'Clear formatting',
|
|
53
|
+
icon: _jsx(RemoveFormatting, { className: 'size-5' }),
|
|
54
|
+
action: (editor) => editor.chain().focus().unsetAllMarks().run(),
|
|
55
|
+
isActive: () => false,
|
|
56
|
+
canExecute: (editor) => editor.can().chain().focus().unsetAllMarks().run() && !editor.isActive('codeBlock'),
|
|
57
|
+
shortcuts: ['mod', '\\'],
|
|
58
|
+
},
|
|
59
|
+
];
|
|
60
|
+
export const SectionTwo = ({ editor, activeActions = formatActions.map((action) => action.value), mainActionCount = 2, size, variant, }) => {
|
|
61
|
+
return (_jsx(ToolbarSection, { editor: editor, actions: formatActions, activeActions: activeActions, mainActionCount: mainActionCount, dropdownIcon: _jsx(Ellipsis, { className: 'size-5' }), dropdownTooltip: 'More formatting', dropdownClassName: 'w-8', size: size, variant: variant }));
|
|
62
|
+
};
|
|
63
|
+
SectionTwo.displayName = 'SectionTwo';
|
|
64
|
+
export default SectionTwo;
|
|
65
|
+
//# sourceMappingURL=two.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"two.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/components/section/two.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { cn } from '@/lib/utils';
|
|
4
|
+
import { getShortcutKey } from '../utils';
|
|
5
|
+
export const ShortcutKey = React.forwardRef(({ className, keys, ...props }, ref) => {
|
|
6
|
+
const modifiedKeys = keys.map((key) => getShortcutKey(key));
|
|
7
|
+
const ariaLabel = modifiedKeys.map((shortcut) => shortcut.readable).join(' + ');
|
|
8
|
+
return (_jsx("span", { "aria-label": ariaLabel, className: cn('inline-flex items-center gap-0.5', className), ...props, ref: ref, children: modifiedKeys.map((shortcut) => (_jsx("kbd", { className: cn('inline-block min-w-2.5 text-center align-baseline font-sans text-xs font-medium capitalize text-[rgb(156,157,160)]', className), ...props, ref: ref, children: shortcut.symbol }, shortcut.symbol))) }));
|
|
9
|
+
});
|
|
10
|
+
ShortcutKey.displayName = 'ShortcutKey';
|
|
11
|
+
//# sourceMappingURL=shortcut-key.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shortcut-key.js","sourceRoot":"","sources":["../../../../src/components/minimal-tiptap/components/shortcut-key.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAMzC,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CACzC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACrC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAA;IAC3D,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAE/E,OAAO,CACL,6BACc,SAAS,EACrB,SAAS,EAAE,EAAE,CAAC,kCAAkC,EAAE,SAAS,CAAC,KACxD,KAAK,EACT,GAAG,EAAE,GAAG,YAEP,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAC9B,cAEE,SAAS,EAAE,EAAE,CACX,oHAAoH,EAEpH,SAAS,CACV,KACG,KAAK,EACT,GAAG,EAAE,GAAG,YAEP,QAAQ,CAAC,MAAM,IATX,QAAQ,CAAC,MAAM,CAUhB,CACP,CAAC,GACG,CACR,CAAA;AACH,CAAC,CACF,CAAA;AAED,WAAW,CAAC,WAAW,GAAG,aAAa,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { cn } from '@/lib/utils';
|
|
4
|
+
const SpinnerComponent = React.forwardRef(function Spinner({ className, ...props }, ref) {
|
|
5
|
+
return (_jsxs("svg", { ref: ref, xmlns: 'http://www.w3.org/2000/svg', fill: 'none', viewBox: '0 0 24 24', className: cn('animate-spin', className), ...props, children: [_jsx("circle", { className: 'opacity-25', cx: '12', cy: '12', r: '10', stroke: 'currentColor', strokeWidth: '4' }), _jsx("path", { className: 'opacity-75', fill: 'currentColor', d: 'M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z' })] }));
|
|
6
|
+
});
|
|
7
|
+
SpinnerComponent.displayName = 'Spinner';
|
|
8
|
+
export const Spinner = React.memo(SpinnerComponent);
|
|
9
|
+
//# sourceMappingURL=spinner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spinner.js","sourceRoot":"","sources":["../../../../src/components/minimal-tiptap/components/spinner.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAIhC,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAA8B,SAAS,OAAO,CACrF,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EACvB,GAAG;IAEH,OAAO,CACL,eACE,GAAG,EAAE,GAAG,EACR,KAAK,EAAC,4BAA4B,EAClC,IAAI,EAAC,MAAM,EACX,OAAO,EAAC,WAAW,EACnB,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC,KACpC,KAAK,aAET,iBACE,SAAS,EAAC,YAAY,EACtB,EAAE,EAAC,IAAI,EACP,EAAE,EAAC,IAAI,EACP,CAAC,EAAC,IAAI,EACN,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,GAAG,GACP,EACV,eACE,SAAS,EAAC,YAAY,EACtB,IAAI,EAAC,cAAc,EACnB,CAAC,EAAC,iHAAiH,GAC7G,IACJ,CACP,CAAA;AACH,CAAC,CAAC,CAAA;AAEF,gBAAgB,CAAC,WAAW,GAAG,SAAS,CAAA;AAExC,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
|
|
4
|
+
import { Toggle } from '@/components/ui/toggle';
|
|
5
|
+
import { cn } from '@/lib/utils';
|
|
6
|
+
export const ToolbarButton = React.forwardRef(({ isActive, children, tooltip, className, tooltipOptions, ...props }, ref) => {
|
|
7
|
+
const toggleButton = (_jsx(Toggle, { size: 'sm', ref: ref, className: cn('size-8 p-0', { 'bg-accent': isActive }, className), ...props, children: children }));
|
|
8
|
+
if (!tooltip) {
|
|
9
|
+
return toggleButton;
|
|
10
|
+
}
|
|
11
|
+
return (_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { asChild: true, children: toggleButton }), _jsx(TooltipContent, { ...tooltipOptions, children: _jsx("div", { className: 'flex flex-col items-center text-center', children: tooltip }) })] }));
|
|
12
|
+
});
|
|
13
|
+
ToolbarButton.displayName = 'ToolbarButton';
|
|
14
|
+
export default ToolbarButton;
|
|
15
|
+
//# sourceMappingURL=toolbar-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar-button.js","sourceRoot":"","sources":["../../../../src/components/minimal-tiptap/components/toolbar-button.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAQhC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAC3C,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAC5E,MAAM,YAAY,GAAG,CACnB,KAAC,MAAM,IACL,IAAI,EAAC,IAAI,EACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,SAAS,CAAC,KAC7D,KAAK,YAER,QAAQ,GACF,CACV,CAAA;IAED,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,OAAO,CACL,MAAC,OAAO,eACN,KAAC,cAAc,IAAC,OAAO,kBAAE,YAAY,GAAkB,EACvD,KAAC,cAAc,OAAK,cAAc,YAChC,cAAK,SAAS,EAAC,wCAAwC,YAAE,OAAO,GAAO,GACxD,IACT,CACX,CAAA;AACH,CAAC,CACF,CAAA;AAED,aAAa,CAAC,WAAW,GAAG,eAAe,CAAA;AAE3C,eAAe,aAAa,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { cn } from '@/lib/utils';
|
|
4
|
+
import { ChevronDown } from 'lucide-react';
|
|
5
|
+
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu';
|
|
6
|
+
import { ToolbarButton } from './toolbar-button';
|
|
7
|
+
import { ShortcutKey } from './shortcut-key';
|
|
8
|
+
import { getShortcutKey } from '../utils';
|
|
9
|
+
export const ToolbarSection = ({ editor, actions, activeActions = actions.map((action) => action.value), mainActionCount = 0, dropdownIcon, dropdownTooltip = 'More options', dropdownClassName = 'w-12', size, variant, }) => {
|
|
10
|
+
const { mainActions, dropdownActions } = React.useMemo(() => {
|
|
11
|
+
const sortedActions = actions
|
|
12
|
+
.filter((action) => activeActions.includes(action.value))
|
|
13
|
+
.sort((a, b) => activeActions.indexOf(a.value) - activeActions.indexOf(b.value));
|
|
14
|
+
return {
|
|
15
|
+
mainActions: sortedActions.slice(0, mainActionCount),
|
|
16
|
+
dropdownActions: sortedActions.slice(mainActionCount),
|
|
17
|
+
};
|
|
18
|
+
}, [actions, activeActions, mainActionCount]);
|
|
19
|
+
const renderToolbarButton = React.useCallback((action) => (_jsx(ToolbarButton, { onClick: () => action.action(editor), disabled: !action.canExecute(editor), isActive: action.isActive(editor), tooltip: `${action.label} ${action.shortcuts.map((s) => getShortcutKey(s).symbol).join(' ')}`, "aria-label": action.label, size: size, variant: variant, children: action.icon }, action.label)), [editor, size, variant]);
|
|
20
|
+
const renderDropdownMenuItem = React.useCallback((action) => (_jsxs(DropdownMenuItem, { onClick: () => action.action(editor), disabled: !action.canExecute(editor), className: cn('flex flex-row items-center justify-between gap-4', {
|
|
21
|
+
'bg-accent': action.isActive(editor),
|
|
22
|
+
}), "aria-label": action.label, children: [_jsx("span", { className: 'grow', children: action.label }), _jsx(ShortcutKey, { keys: action.shortcuts })] }, action.label)), [editor]);
|
|
23
|
+
const isDropdownActive = React.useMemo(() => dropdownActions.some((action) => action.isActive(editor)), [dropdownActions, editor]);
|
|
24
|
+
return (_jsxs(_Fragment, { children: [mainActions.map(renderToolbarButton), dropdownActions.length > 0 && (_jsxs(DropdownMenu, { children: [_jsx(DropdownMenuTrigger, { asChild: true, children: _jsx(ToolbarButton, { isActive: isDropdownActive, tooltip: dropdownTooltip, "aria-label": dropdownTooltip, className: cn(dropdownClassName), size: size, variant: variant, children: dropdownIcon || _jsx(ChevronDown, { className: 'size-5' }) }) }), _jsx(DropdownMenuContent, { align: 'start', className: 'w-full', children: dropdownActions.map(renderDropdownMenuItem) })] }))] }));
|
|
25
|
+
};
|
|
26
|
+
export default ToolbarSection;
|
|
27
|
+
//# sourceMappingURL=toolbar-section.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolbar-section.js","sourceRoot":"","sources":["../../../../src/components/minimal-tiptap/components/toolbar-section.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CodeBlockLowlight as TiptapCodeBlockLowlight } from '@tiptap/extension-code-block-lowlight';
|
|
2
|
+
import { common, createLowlight } from 'lowlight';
|
|
3
|
+
export const CodeBlockLowlight = TiptapCodeBlockLowlight.extend({
|
|
4
|
+
addOptions() {
|
|
5
|
+
return {
|
|
6
|
+
...this.parent?.(),
|
|
7
|
+
lowlight: createLowlight(common),
|
|
8
|
+
defaultLanguage: null,
|
|
9
|
+
HTMLAttributes: {
|
|
10
|
+
class: 'block-node',
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
},
|
|
14
|
+
});
|
|
15
|
+
export default CodeBlockLowlight;
|
|
16
|
+
//# sourceMappingURL=code-block-lowlight.js.map
|
package/dist/components/minimal-tiptap/extensions/code-block-lowlight/code-block-lowlight.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"code-block-lowlight.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/extensions/code-block-lowlight/code-block-lowlight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,IAAI,uBAAuB,EAAE,MAAM,uCAAuC,CAAA;AACpG,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAEjD,MAAM,CAAC,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAC9D,UAAU;QACR,OAAO;YACL,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE;YAClB,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC;YAChC,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE;gBACd,KAAK,EAAE,YAAY;aACpB;SACF,CAAA;IACH,CAAC;CACF,CAAC,CAAA;AAEF,eAAe,iBAAiB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/minimal-tiptap/extensions/code-block-lowlight/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA"}
|