@krainovsd/markdown-editor 0.0.1 → 0.0.3

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/package.json CHANGED
@@ -1,73 +1,75 @@
1
- {
2
- "name": "@krainovsd/markdown-editor",
3
- "version": "0.0.1",
4
- "description": "Krainov markdown-editor",
5
- "type": "module",
6
- "author": "KrainovSD <denislosev48@gmail.com>",
7
- "license": "ISC",
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/KrainovSD/markdown-editor"
11
- },
12
- "sideEffects": false,
13
- "exports": {
14
- ".": {
15
- "types": "./tmp/index.d.ts",
16
- "import": "./lib/esm/index.js",
17
- "require": "./lib/cjs/bundle.cjs"
18
- }
19
- },
20
- "keywords": [
21
- "markdown",
22
- "editor",
23
- "codemirror",
24
- "js"
25
- ],
26
- "files": [
27
- "lib",
28
- "tmp"
29
- ],
30
- "scripts": {
31
- "dev": "vite",
32
- "build": "npm run build:types && npm run build:js",
33
- "build:js": "rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript --no-stdin --environment BUILD:production,NODE_ENV:production",
34
- "build:types": "tsc -p tsconfig.build.json",
35
- "lint": "eslint src/** -c ./eslint.config.js --color --max-warnings 0",
36
- "lint:debug": "eslint --debug eslint.config.js",
37
- "format": "prettier --write 'src/**/*.{js,ts,tsx,scss,css,json}'"
38
- },
39
- "devDependencies": {
40
- "@codemirror/language-data": "6.5.1",
41
- "@krainovsd/eslint-presets": "0.1.0",
42
- "@lezer/common": "1.2.3",
43
- "@lezer/markdown": "1.3.2",
44
- "@rollup/plugin-node-resolve": "15.3.0",
45
- "@rollup/plugin-terser": "0.4.4",
46
- "@rollup/plugin-typescript": "12.1.1",
47
- "@trivago/prettier-plugin-sort-imports": "4.3.0",
48
- "@types/node": "22.8.6",
49
- "@types/rollup-plugin-peer-deps-external": "2.2.5",
50
- "eslint": "9.13.0",
51
- "prettier": "3.3.3",
52
- "rollup": "4.21.2",
53
- "rollup-plugin-peer-deps-external": "2.2.4",
54
- "rollup-plugin-postcss": "4.0.2",
55
- "sass": "1.83.0",
56
- "sass-embedded": "1.81.0",
57
- "typescript": "5.6.3",
58
- "vite": "5.4.10"
59
- },
60
- "dependencies": {
61
- "@codemirror/commands": "6.7.1",
62
- "@codemirror/lang-markdown": "6.3.1",
63
- "@codemirror/language": "6.10.6",
64
- "@codemirror/state": "6.5.0",
65
- "@codemirror/view": "6.35.3",
66
- "@lezer/highlight": "1.2.1",
67
- "@replit/codemirror-vim": "6.2.1",
68
- "clsx": "2.1.1",
69
- "y-codemirror.next": "0.3.5",
70
- "y-websocket": "2.0.4",
71
- "yjs": "13.6.20"
72
- }
73
- }
1
+ {
2
+ "name": "@krainovsd/markdown-editor",
3
+ "version": "0.0.3",
4
+ "description": "Krainov markdown-editor",
5
+ "type": "module",
6
+ "author": "KrainovSD <denislosev48@gmail.com>",
7
+ "license": "ISC",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/KrainovSD/markdown-editor"
11
+ },
12
+ "sideEffects": false,
13
+ "exports": {
14
+ ".": {
15
+ "types": "./tmp/index.d.ts",
16
+ "import": "./lib/esm/index.js",
17
+ "require": "./lib/cjs/bundle.cjs"
18
+ }
19
+ },
20
+ "keywords": [
21
+ "markdown",
22
+ "editor",
23
+ "codemirror",
24
+ "js"
25
+ ],
26
+ "files": [
27
+ "lib",
28
+ "tmp"
29
+ ],
30
+ "scripts": {
31
+ "dev": "vite",
32
+ "build": "npm run build:types && npm run build:js",
33
+ "build:js": "rollup --config rollup.config.ts --configPlugin @rollup/plugin-typescript --no-stdin --environment BUILD:production,NODE_ENV:production",
34
+ "build:types": "tspc -p tsconfig.build.json",
35
+ "lint": "eslint src/** -c ./eslint.config.js --color --max-warnings 0",
36
+ "lint:debug": "eslint --debug eslint.config.js",
37
+ "format": "prettier --write 'src/**/*.{js,ts,tsx,scss,css,json}'"
38
+ },
39
+ "devDependencies": {
40
+ "@codemirror/language-data": "6.5.1",
41
+ "@krainovsd/eslint-presets": "0.1.0",
42
+ "@lezer/common": "1.2.3",
43
+ "@lezer/markdown": "1.3.2",
44
+ "@rollup/plugin-node-resolve": "15.3.0",
45
+ "@rollup/plugin-terser": "0.4.4",
46
+ "@rollup/plugin-typescript": "12.1.1",
47
+ "@trivago/prettier-plugin-sort-imports": "4.3.0",
48
+ "@types/node": "22.8.6",
49
+ "@types/rollup-plugin-peer-deps-external": "2.2.5",
50
+ "eslint": "9.13.0",
51
+ "prettier": "3.3.3",
52
+ "rollup": "4.21.2",
53
+ "rollup-plugin-peer-deps-external": "2.2.4",
54
+ "rollup-plugin-postcss": "4.0.2",
55
+ "sass": "1.83.0",
56
+ "sass-embedded": "1.81.0",
57
+ "ts-patch": "^3.3.0",
58
+ "typescript": "5.6.3",
59
+ "typescript-transform-paths": "^3.5.2",
60
+ "vite": "5.4.10"
61
+ },
62
+ "dependencies": {
63
+ "@codemirror/commands": "6.7.1",
64
+ "@codemirror/lang-markdown": "6.3.1",
65
+ "@codemirror/language": "6.10.6",
66
+ "@codemirror/state": "6.5.0",
67
+ "@codemirror/view": "6.35.3",
68
+ "@lezer/highlight": "1.2.1",
69
+ "@replit/codemirror-vim": "6.2.1",
70
+ "clsx": "2.1.1",
71
+ "y-codemirror.next": "0.3.5",
72
+ "y-websocket": "2.0.4",
73
+ "yjs": "13.6.20"
74
+ }
75
+ }
@@ -1,3 +1,8 @@
1
1
  export * from "./compartments";
2
2
  export * from "./init-extensions";
3
3
  export { getDarkTheme, getLightTheme } from "./theme";
4
+ export type { InitKeyMapsOptions, HandleEnterKeyMapEditorFunction } from "./keymaps";
5
+ export type { InitListenersOptions, GetChangeEventOptions, GetFocusEventOptions, HandleBlurEditorFunction, HandleChangeEditorFunction, HandleFocusEditorFunction, } from "./listeners";
6
+ export type { DecorationPlugin, GetDecorationFunction, GetDecorationOptions, GetSelectionDecorationFunction, GetSelectionDecorationOptions, InitMarkdownOptions, } from "./markdown";
7
+ export type { InitSettingsOptions } from "./settings";
8
+ export type { HighlightConfig, InitThemeOptions, ThemeConfig, ThemeOptions } from "./theme";
@@ -1 +1 @@
1
- export * from "./init-key-maps";
1
+ export * from "./init-key-map";
@@ -1,8 +1,9 @@
1
1
  import type { Extension } from "@codemirror/state";
2
2
  import { type EditorView } from "@codemirror/view";
3
3
  export type InitKeyMapsOptions = {
4
- onEnter?: (view: EditorView) => boolean;
4
+ onEnter?: HandleEnterKeyMapEditorFunction;
5
5
  };
6
+ export type HandleEnterKeyMapEditorFunction = (view: EditorView) => boolean;
6
7
  export declare const initKeyMaps: ({ onEnter, multiCursorMode, }: InitKeyMapsOptions & {
7
8
  multiCursorMode: boolean;
8
9
  }) => Extension;
@@ -0,0 +1,2 @@
1
+ import type { KeyBinding } from "@codemirror/view";
2
+ export declare const italicKeymap: KeyBinding[];
@@ -1,2 +1,2 @@
1
- import { KeyBinding } from '@codemirror/view';
1
+ import type { KeyBinding } from "@codemirror/view";
2
2
  export declare const lineThroughKeymap: KeyBinding[];
@@ -1,2 +1,2 @@
1
- import { KeyBinding } from '@codemirror/view';
1
+ import type { KeyBinding } from "@codemirror/view";
2
2
  export declare const underlineKeymap: KeyBinding[];
@@ -1,5 +1,6 @@
1
1
  import { type ViewUpdate } from "@codemirror/view";
2
2
  export type GetChangeEventOptions = {
3
- onChange?: (view: ViewUpdate) => void;
3
+ onChange?: HandleChangeEditorFunction;
4
4
  };
5
+ export type HandleChangeEditorFunction = (view: ViewUpdate) => void;
5
6
  export declare function getChangeEvent({ onChange }: GetChangeEventOptions): import("@codemirror/state").Extension;
@@ -1,6 +1,8 @@
1
1
  import { type EditorState } from "@codemirror/state";
2
2
  export type GetFocusEventOptions = {
3
- onFocus?: (state: EditorState) => void;
4
- onBlur?: (state: EditorState) => void;
3
+ onFocus?: HandleFocusEditorFunction;
4
+ onBlur?: HandleBlurEditorFunction;
5
5
  };
6
+ export type HandleFocusEditorFunction = (state: EditorState) => void;
7
+ export type HandleBlurEditorFunction = (state: EditorState) => void;
6
8
  export declare function getFocusEvent({ onBlur, onFocus }: GetFocusEventOptions): import("@codemirror/state").Extension;
@@ -1 +1,3 @@
1
1
  export * from "./init-listeners";
2
+ export type { GetChangeEventOptions, HandleChangeEditorFunction } from "./get-change-event";
3
+ export type { GetFocusEventOptions, HandleBlurEditorFunction, HandleFocusEditorFunction, } from "./get-focus-event";
package/tmp/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
1
  export type { EditorInterface, EditorArguments, MultiCursorOptions } from "./module";
2
2
  export { Editor } from "./module";
3
- export type { ExtensionsOptions, InitExtensionsOptions } from "./extensions";
3
+ export type { ExtensionsOptions, InitExtensionsOptions, DecorationPlugin, GetDecorationFunction, GetDecorationOptions, GetSelectionDecorationFunction, GetSelectionDecorationOptions, HighlightConfig, InitKeyMapsOptions, InitListenersOptions, InitMarkdownOptions, InitSettingsOptions, InitThemeOptions, ThemeConfig, ThemeOptions, GetChangeEventOptions, GetFocusEventOptions, HandleBlurEditorFunction, HandleChangeEditorFunction, HandleEnterKeyMapEditorFunction, HandleFocusEditorFunction, } from "./extensions";
@@ -1,4 +1,4 @@
1
- import { type ExtensionsOptions } from "@/extensions";
1
+ import { type ExtensionsOptions } from "../../extensions";
2
2
  export type EditorArguments = {
3
3
  root: HTMLElement;
4
4
  initialText?: string;
@@ -1,5 +1,5 @@
1
1
  import { EditorState } from "@codemirror/state";
2
- import { type InitExtensionsOptions } from "@/extensions";
2
+ import { type InitExtensionsOptions } from "../../../extensions";
3
3
  type InitEditorStateOptions = {
4
4
  text: string;
5
5
  } & InitExtensionsOptions;
@@ -1 +0,0 @@
1
- ._header_XFwV5{font-weight:700}._header_XFwV5._level_1_-KPph{font-size:2rem}._header_XFwV5._level_2_ecHlB{font-size:1.8rem}._header_XFwV5._level_3_SYcVr{font-size:1.6rem}._header_XFwV5._level_4_V3o5m{font-size:1.4rem}._header_XFwV5._level_5_I7eVk{font-size:1.3rem}._header_XFwV5._level_6_A3lbK{font-size:1.2rem}._bold_I8DT-{font-weight:700}._italic_72qBe{font-style:italic}._blockquote_Xq6O4{border-left:3px solid;margin-left:5px}._blockquote__inner_mjT0h{margin-left:1px;padding-left:5px;position:relative}._blockquote__inner_mjT0h:before{border-left:3px solid;content:"";height:140%;left:0;position:absolute;top:-3px}._blockquote__inner-deep_s6tNj{margin-left:5px}._strike-through_U64jP{text-decoration:line-through}._list_MHIjT._common_0GdDi{position:relative;visibility:hidden}._list_MHIjT._common_0GdDi:after{border-radius:100%;content:"";height:5px;left:0;position:absolute;top:50%;transform:translateY(-50%);visibility:visible;width:5px}._link_7U9wl{text-decoration:none;text-decoration:underline}._link__label_dHGGf{font-size:12px;position:relative;top:-4px}._image_KmBM8{display:inline-flex}._code__line_m3IiO{padding:5px;position:relative}._code__line_m3IiO,._code__single_hbMte{font-family:monospace}._code__button_WwYE-{background-color:transparent;border:none;border-radius:4px;box-shadow:none;cursor:pointer;min-width:30px;outline:none;padding:4px 10px;position:absolute;right:5px;top:5px;transition:all .3s ease;z-index:1}._code__button_WwYE-._pending_fgHgD:before{animation:_loading-btn--fade-in_8z5an .33s ease,_loading-btn--rotation_QaopN .66s linear 0s infinite;border:2px solid hsla(0,0%,100%,.33);border-radius:50%;border-top-color:#000;content:"";display:inline-block;height:10.5px;left:50%;position:absolute;top:50%;width:10.5px}._code__button_WwYE-._success_kUPnO:after{animation:_loading-btn--fade-in_8z5an .6s ease;border-color:currentcolor;border-style:solid;border-width:0 0 1px 1px;content:"";display:inline-block;height:7px;left:50%;position:absolute;top:50%;transform:translate(-50%,-75%) rotate(-45deg);width:11px}._code__button_WwYE-._fail_cOpap:after,._code__button_WwYE-._fail_cOpap:before{content:" ";height:13px;left:50%;position:absolute;top:50%;width:1px}._code__button_WwYE-._fail_cOpap:before{transform:translate(-50%,-50%) rotate(45deg)}._code__button_WwYE-._fail_cOpap:after{transform:translate(-50%,-50%) rotate(-45deg)}@keyframes _loading-btn--fade-in_8z5an{0%{opacity:0}to{opacity:1}}@keyframes _loading-btn--rotation_QaopN{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}._code__span_iSCmj{opacity:1;transition:opacity .3s ease}._code__span_iSCmj._hide_uqpax{opacity:0}._horizontal_J1jU-{border-bottom:1px solid;margin:0 5px;position:relative;width:calc(100% - 10px)}._todo_m6MIP{align-items:flex-end;display:inline-flex;height:100%;padding-left:3px;padding-right:3px}._todo_m6MIP>input{margin:0}._todo__checked_kemjy{text-decoration:line-through}._mention_cpzik{font-weight:700}
package/lib/esm/index.css DELETED
@@ -1 +0,0 @@
1
- ._header_XFwV5{font-weight:700}._header_XFwV5._level_1_-KPph{font-size:2rem}._header_XFwV5._level_2_ecHlB{font-size:1.8rem}._header_XFwV5._level_3_SYcVr{font-size:1.6rem}._header_XFwV5._level_4_V3o5m{font-size:1.4rem}._header_XFwV5._level_5_I7eVk{font-size:1.3rem}._header_XFwV5._level_6_A3lbK{font-size:1.2rem}._bold_I8DT-{font-weight:700}._italic_72qBe{font-style:italic}._blockquote_Xq6O4{border-left:3px solid;margin-left:5px}._blockquote__inner_mjT0h{margin-left:1px;padding-left:5px;position:relative}._blockquote__inner_mjT0h:before{border-left:3px solid;content:"";height:140%;left:0;position:absolute;top:-3px}._blockquote__inner-deep_s6tNj{margin-left:5px}._strike-through_U64jP{text-decoration:line-through}._list_MHIjT._common_0GdDi{position:relative;visibility:hidden}._list_MHIjT._common_0GdDi:after{border-radius:100%;content:"";height:5px;left:0;position:absolute;top:50%;transform:translateY(-50%);visibility:visible;width:5px}._link_7U9wl{text-decoration:none;text-decoration:underline}._link__label_dHGGf{font-size:12px;position:relative;top:-4px}._image_KmBM8{display:inline-flex}._code__line_m3IiO{padding:5px;position:relative}._code__line_m3IiO,._code__single_hbMte{font-family:monospace}._code__button_WwYE-{background-color:transparent;border:none;border-radius:4px;box-shadow:none;cursor:pointer;min-width:30px;outline:none;padding:4px 10px;position:absolute;right:5px;top:5px;transition:all .3s ease;z-index:1}._code__button_WwYE-._pending_fgHgD:before{animation:_loading-btn--fade-in_8z5an .33s ease,_loading-btn--rotation_QaopN .66s linear 0s infinite;border:2px solid hsla(0,0%,100%,.33);border-radius:50%;border-top-color:#000;content:"";display:inline-block;height:10.5px;left:50%;position:absolute;top:50%;width:10.5px}._code__button_WwYE-._success_kUPnO:after{animation:_loading-btn--fade-in_8z5an .6s ease;border-color:currentcolor;border-style:solid;border-width:0 0 1px 1px;content:"";display:inline-block;height:7px;left:50%;position:absolute;top:50%;transform:translate(-50%,-75%) rotate(-45deg);width:11px}._code__button_WwYE-._fail_cOpap:after,._code__button_WwYE-._fail_cOpap:before{content:" ";height:13px;left:50%;position:absolute;top:50%;width:1px}._code__button_WwYE-._fail_cOpap:before{transform:translate(-50%,-50%) rotate(45deg)}._code__button_WwYE-._fail_cOpap:after{transform:translate(-50%,-50%) rotate(-45deg)}@keyframes _loading-btn--fade-in_8z5an{0%{opacity:0}to{opacity:1}}@keyframes _loading-btn--rotation_QaopN{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}._code__span_iSCmj{opacity:1;transition:opacity .3s ease}._code__span_iSCmj._hide_uqpax{opacity:0}._horizontal_J1jU-{border-bottom:1px solid;margin:0 5px;position:relative;width:calc(100% - 10px)}._todo_m6MIP{align-items:flex-end;display:inline-flex;height:100%;padding-left:3px;padding-right:3px}._todo_m6MIP>input{margin:0}._todo__checked_kemjy{text-decoration:line-through}._mention_cpzik{font-weight:700}
@@ -1,2 +0,0 @@
1
- import { KeyBinding } from '@codemirror/view';
2
- export declare const italicKeymap: KeyBinding[];