@mrshmllw/smores-react 7.0.1 → 9.0.0

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.
@@ -1,7 +1,7 @@
1
1
  import { FC } from 'react';
2
2
  import { MarginProps } from '../utils/space';
3
3
  export interface RichTextEditorProps extends MarginProps {
4
- defaultValue?: string;
4
+ value?: string;
5
5
  maxHeight?: string;
6
6
  height?: string;
7
7
  outline?: boolean;
@@ -1,44 +1,60 @@
1
- import React from 'react';
2
- import styled from 'styled-components';
3
- import { Box } from '../Box';
4
- import { theme } from '../theme';
5
- import { RichTextPlugin } from '@lexical/react/LexicalRichTextPlugin';
6
- import { ContentEditable } from '@lexical/react/LexicalContentEditable';
1
+ import { CodeHighlightNode, CodeNode } from '@lexical/code';
2
+ import { $generateNodesFromDOM } from '@lexical/html';
3
+ import { AutoLinkNode, LinkNode } from '@lexical/link';
4
+ import { ListItemNode, ListNode } from '@lexical/list';
5
+ import { TRANSFORMERS } from '@lexical/markdown';
7
6
  import { LexicalComposer } from '@lexical/react/LexicalComposer';
7
+ import { ContentEditable } from '@lexical/react/LexicalContentEditable';
8
8
  import LexicalErrorBoundary from '@lexical/react/LexicalErrorBoundary';
9
- import CustomAutoLinkPlugin from './plugins/AutoLinkPlugin';
10
- import { AutoLinkNode, LinkNode } from '@lexical/link';
11
- import { ListNode, ListItemNode } from '@lexical/list';
12
- import { LinkPlugin } from '@lexical/react/LexicalLinkPlugin';
13
- import ToolbarPlugin from './plugins/ToolbarPlugin';
14
9
  import { HistoryPlugin } from '@lexical/react/LexicalHistoryPlugin';
10
+ import { LinkPlugin } from '@lexical/react/LexicalLinkPlugin';
15
11
  import { ListPlugin } from '@lexical/react/LexicalListPlugin';
16
12
  import { MarkdownShortcutPlugin } from '@lexical/react/LexicalMarkdownShortcutPlugin';
17
- import { TRANSFORMERS } from '@lexical/markdown';
13
+ import { RichTextPlugin } from '@lexical/react/LexicalRichTextPlugin';
18
14
  import { HeadingNode, QuoteNode } from '@lexical/rich-text';
19
- import { CodeHighlightNode, CodeNode } from '@lexical/code';
20
- import { $generateNodesFromDOM } from '@lexical/html';
21
- import { $createParagraphNode, $getRoot } from 'lexical';
22
15
  import DOMPurify from 'dompurify';
16
+ import { $createParagraphNode, $getRoot, } from 'lexical';
17
+ import React, { useCallback, useState } from 'react';
18
+ import styled from 'styled-components';
19
+ import { Box } from '../Box';
20
+ import { theme } from '../theme';
21
+ import CustomAutoLinkPlugin from './plugins/AutoLinkPlugin';
23
22
  import { EditorUpdatePlugin } from './plugins/EditorUpdatePlugin';
24
- export const RichTextEditor = ({ defaultValue, height, outline = false, maxHeight = '300px', onChange, ...props }) => {
23
+ import ToolbarPlugin from './plugins/ToolbarPlugin';
24
+ const appendNodes = (root, nodes) => {
25
+ nodes
26
+ .filter((node) => node.__type !== 'linebreak')
27
+ .map((node) => {
28
+ if (node.__type === 'text') {
29
+ const paragraphNode = $createParagraphNode();
30
+ paragraphNode.append(node);
31
+ return paragraphNode;
32
+ }
33
+ return node;
34
+ })
35
+ .forEach((node) => root.append(node));
36
+ };
37
+ export const RichTextEditor = ({ value, height, outline = false, maxHeight = '300px', onChange, ...props }) => {
38
+ const [editorState, setEditorState] = useState(null);
39
+ useCallback(() => {
40
+ editorState &&
41
+ editorState.update(() => {
42
+ const parser = new DOMParser();
43
+ const dom = parser.parseFromString(value ? DOMPurify.sanitize(value) : '<p></p>', 'text/html');
44
+ const root = $getRoot();
45
+ root.clear();
46
+ const nodes = $generateNodesFromDOM(editorState, dom);
47
+ appendNodes(root, nodes);
48
+ });
49
+ }, [value])();
25
50
  const defaultEditorState = (editor) => {
51
+ setEditorState(editor);
26
52
  const parser = new DOMParser();
27
- const dom = parser.parseFromString(defaultValue ? DOMPurify.sanitize(defaultValue) : '<p></p>', 'text/html');
53
+ const dom = parser.parseFromString(value ? DOMPurify.sanitize(value) : '<p></p>', 'text/html');
28
54
  const nodes = $generateNodesFromDOM(editor, dom);
29
55
  const root = $getRoot();
30
56
  root.clear();
31
- nodes
32
- .filter((node) => node.__type !== 'linebreak')
33
- .map((node) => {
34
- if (node.__type === 'text') {
35
- const paragraphNode = $createParagraphNode();
36
- paragraphNode.append(node);
37
- return paragraphNode;
38
- }
39
- return node;
40
- })
41
- .forEach((node) => root.append(node));
57
+ appendNodes(root, nodes);
42
58
  };
43
59
  const initialConfig = {
44
60
  editorState: defaultEditorState,
@@ -1 +1 @@
1
- {"version":3,"file":"RichTextEditor.js","sourceRoot":"","sources":["../../src/RichTextEditor/RichTextEditor.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RichTextEditor.js","sourceRoot":"","sources":["../../src/RichTextEditor/RichTextEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AACvE,OAAO,oBAAoB,MAAM,qCAAqC,CAAA;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAA;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAA;AACrF,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,SAAS,MAAM,WAAW,CAAA;AACjC,OAAO,EACL,oBAAoB,EACpB,QAAQ,GAIT,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,EAAM,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACxD,OAAO,MAAM,MAAM,mBAAmB,CAAA;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AAC5B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAA;AAEhC,OAAO,oBAAoB,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,aAAa,MAAM,yBAAyB,CAAA;AAUnD,MAAM,WAAW,GAAG,CAAC,IAAc,EAAE,KAAoB,EAAE,EAAE;IAC3D,KAAK;SACF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC;SAC7C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,aAAa,GAAG,oBAAoB,EAAE,CAAA;YAC5C,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC1B,OAAO,aAAa,CAAA;QACtB,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC;SACD,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;AACzC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,cAAc,GAA4B,CAAC,EACtD,KAAK,EACL,MAAM,EACN,OAAO,GAAG,KAAK,EACf,SAAS,GAAG,OAAO,EACnB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,EAAE;IACH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAuB,IAAI,CAAC,CAAA;IAE1E,WAAW,CAAC,GAAG,EAAE;QACf,WAAW;YACT,WAAW,CAAC,MAAM,CAAC,GAAG,EAAE;gBACtB,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;gBAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAChC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAC7C,WAAW,CACZ,CAAA;gBACD,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAA;gBACvB,IAAI,CAAC,KAAK,EAAE,CAAA;gBACZ,MAAM,KAAK,GAAG,qBAAqB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;gBACrD,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YAC1B,CAAC,CAAC,CAAA;IACN,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAA;IAEb,MAAM,kBAAkB,GAAG,CAAC,MAAqB,EAAE,EAAE;QACnD,cAAc,CAAC,MAAM,CAAC,CAAA;QACtB,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAA;QAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,eAAe,CAChC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAC7C,WAAW,CACZ,CAAA;QACD,MAAM,KAAK,GAAG,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAChD,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAA;QACvB,IAAI,CAAC,KAAK,EAAE,CAAA;QAEZ,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC1B,CAAC,CAAA;IAED,MAAM,aAAa,GAAG;QACpB,WAAW,EAAE,kBAAkB;QAC/B,SAAS,EAAE,2BAA2B;QACtC,OAAO,EAAE,CAAC,CAAQ,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QACrC,KAAK,EAAE;YACL,YAAY;YACZ,QAAQ;YACR,QAAQ;YACR,YAAY;YACZ,WAAW;YACX,SAAS;YACT,iBAAiB;YACjB,QAAQ;SACT;KACF,CAAA;IAED,OAAO,CACL,oBAAC,SAAS,gBAAW,OAAO,KAAM,KAAK;QACrC,oBAAC,MAAM,kBAAa,SAAS,aAAW,MAAM;YAC5C,oBAAC,eAAe,IAAC,aAAa,EAAE,aAAa;gBAC3C,oBAAC,aAAa,OAAG;gBACjB,oBAAC,cAAc,IACb,eAAe,EAAE,oBAAC,eAAe,IAAC,SAAS,EAAC,cAAc,GAAG,EAC7D,WAAW,EAAE,gCAAW,EACxB,aAAa,EAAE,oBAAoB,GACnC;gBACF,oBAAC,UAAU,OAAG;gBACd,oBAAC,UAAU,OAAG;gBACd,oBAAC,aAAa,OAAG;gBACjB,oBAAC,oBAAoB,OAAG;gBACxB,oBAAC,sBAAsB,IAAC,YAAY,EAAE,YAAY,GAAI;gBACtD,oBAAC,kBAAkB,IAAC,QAAQ,EAAE,QAAQ,GAAI,CAC1B,CACX,CACC,CACb,CAAA;AACH,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAA0C;;;wBAG5C,KAAK,CAAC,MAAM,CAAC,KAAK;;wBAElB,KAAK,CAAC,MAAM,CAAC,OAAO;;;qBAGvB,KAAK,CAAC,MAAM,CAAC,QAAQ;kBACxB,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU;MAC1C,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,IAAI,WAAW,OAAO,EAAE;;;;;;;;CAQrD,CAAA;AAED,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAuB;sBAC9B,KAAK,CAAC,MAAM,CAAC,OAAO;;;IAGtC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,IAAI,qBAAqB,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;CAC5E,CAAA"}
@@ -4,5 +4,5 @@ export declare const useEventListener: ({ eventName, callback, ref, capture, }:
4
4
  eventName: keyof HTMLElementEventMap | string;
5
5
  callback: GenericEventCallback;
6
6
  ref: RefObject<HTMLElement | Document>;
7
- capture?: boolean | undefined;
7
+ capture?: boolean;
8
8
  }) => void;
@@ -1,4 +1,4 @@
1
1
  export declare const useScript: ({ url, async, }: {
2
2
  url: string;
3
- async?: boolean | undefined;
3
+ async?: boolean;
4
4
  }) => void;
@@ -4,4 +4,4 @@
4
4
  * @param delay - The debouncing delay.
5
5
  * @returns A debounced version of the function.
6
6
  */
7
- export declare const debounce: <Args extends unknown[], R>(fn: (...args: Args) => R, delay: number) => (...args: Args) => void;
7
+ export declare const debounce: <Args extends unknown[], R>(fn: (...args: Args) => R, delay: number) => ((...args: Args) => void);
@@ -1,4 +1,4 @@
1
1
  export declare const focusOutline: ({ selector, }?: {
2
- selector?: string | undefined;
2
+ selector?: string;
3
3
  }) => import("styled-components").RuleSet<object>;
4
4
  export declare const focusOutlineStyle: import("styled-components").RuleSet<object>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrshmllw/smores-react",
3
- "version": "7.0.1",
3
+ "version": "9.0.0",
4
4
  "main": "./dist/index.js",
5
5
  "description": "Collection of React components used by Marshmallow Technology",
6
6
  "keywords": [
@@ -15,7 +15,7 @@
15
15
  "scripts": {
16
16
  "clean": "rimraf ./dist",
17
17
  "build": "npm run clean && tsc --p ./tsconfig.build.json",
18
- "build-storybook": "storybook build -c .storybook -s public",
18
+ "build-storybook": "storybook build -c .storybook",
19
19
  "check-types": "tsc --noEmit",
20
20
  "deploy-storybook": "storybook-to-ghpages",
21
21
  "prepublishOnly": "npm run build",
@@ -26,7 +26,7 @@
26
26
  "test": "vitest --silent",
27
27
  "updateSnaps": "vitest --u",
28
28
  "snyk-protect": "snyk-protect",
29
- "prepare": "npm run snyk-protect && husky install",
29
+ "prepare": "npm run snyk-protect && husky",
30
30
  "pre-commit-lint": "npm run check-types && lint-staged",
31
31
  "fix-package-lock-conflicts": "echo \"Make sure conflicts in package.json are resolved before running this script\" && npm i --package-lock-only"
32
32
  },
@@ -39,13 +39,12 @@
39
39
  "@babel/preset-typescript": "^7.18.6",
40
40
  "@semantic-release/changelog": "^6.0.3",
41
41
  "@semantic-release/git": "^10.0.1",
42
- "@semantic-release/github": "^9.2.4",
43
- "@semantic-release/npm": "^11.0.1",
42
+ "@semantic-release/github": "^10.0.2",
43
+ "@semantic-release/npm": "^12.0.0",
44
44
  "@snyk/protect": "^1.881.0",
45
- "@storybook/addon-essentials": "^7.0.6",
46
- "@storybook/builder-vite": "^7.0.6",
47
- "@storybook/react": "^7.0.6",
48
- "@storybook/react-vite": "^7.0.6",
45
+ "@storybook/addon-essentials": "^8.0.4",
46
+ "@storybook/react": "^8.0.4",
47
+ "@storybook/react-vite": "^8.0.4",
49
48
  "@storybook/storybook-deployer": "^2.8.16",
50
49
  "@testing-library/react": "^14.0.0",
51
50
  "@types/body-scroll-lock": "^3.1.0",
@@ -61,24 +60,25 @@
61
60
  "eslint-config-prettier": "^9.0.0",
62
61
  "eslint-plugin-react": "^7.29.2",
63
62
  "eslint-plugin-react-hooks": "^4.1.2",
64
- "husky": "^8.0.1",
63
+ "husky": "^9.0.11",
65
64
  "lint-staged": "^15.1.0",
66
65
  "prettier": "^3.0.0",
67
66
  "react": "^18.2.0",
68
67
  "react-dom": "^18.2.0",
69
68
  "rimraf": "^5.0.5",
70
- "semantic-release": "^22.0.8",
71
- "storybook": "^7.0.6",
69
+ "semantic-release": "^23.0.7",
70
+ "storybook": "^8.0.4",
72
71
  "styled-components": "^6.1.8",
73
72
  "typescript": "^5.0.2",
74
- "vitest": "^1.2.2"
73
+ "vitest": "^1.2.2",
74
+ "vite": "^5.2.6"
75
75
  },
76
76
  "dependencies": {
77
+ "@lexical/react": "^0.13.1",
77
78
  "body-scroll-lock": "^4.0.0-beta.0",
78
- "date-fns": "^2.16.1",
79
+ "date-fns": "^3.6.0",
79
80
  "dompurify": "^3.0.9",
80
81
  "lexical": "^0.13.1",
81
- "@lexical/react": "^0.13.1",
82
82
  "polished": "^4.1.3"
83
83
  },
84
84
  "peerDependencies": {