@advui/editor 0.5.0 → 0.7.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.
- package/README.md +0 -4
- package/dist/components/rich-text-editor/RichTextEditor.d.ts +2 -2
- package/dist/components/rich-text-editor/RichTextEditor.d.ts.map +1 -1
- package/dist/components/rich-text-editor/RichTextEditor.js +3 -2
- package/dist/components/rich-text-editor/RichTextEditor.js.map +1 -1
- package/package.json +5 -5
- package/src/components/rich-text-editor/RichTextEditor.tsx +21 -19
package/README.md
CHANGED
|
@@ -7,10 +7,6 @@ keyboard shortcuts, a preview and a character count. `RichTextContent` shows
|
|
|
7
7
|
the same Markdown with the same styles; only `http(s)` and `mailto` links are
|
|
8
8
|
kept.
|
|
9
9
|
|
|
10
|
-
> Not on npm yet: `@advui/editor` will be published with the next release.
|
|
11
|
-
> Until then, copy the editor into your app with the CLI:
|
|
12
|
-
> `npx advui add rich-text-editor`.
|
|
13
|
-
|
|
14
10
|
```bash
|
|
15
11
|
pnpm add @advui/editor @advui/core @advui/theme @advui/icons tamagui
|
|
16
12
|
```
|
|
@@ -28,7 +28,7 @@ export interface RichTextEditorProps {
|
|
|
28
28
|
'aria-labelledby'?: string;
|
|
29
29
|
'aria-describedby'?: string;
|
|
30
30
|
'aria-required'?: boolean;
|
|
31
|
-
/** Native: help read after the name (
|
|
31
|
+
/** Native: help read after the name (a Field sets it). */
|
|
32
32
|
accessibilityHint?: string;
|
|
33
33
|
/** Toolbar, tool and preview names, for translation. */
|
|
34
34
|
labels?: Partial<Omit<RichTextEditorLabels, 'tools'>> & {
|
|
@@ -40,5 +40,5 @@ export interface RichTextEditorProps {
|
|
|
40
40
|
* Markdown, so the text is safe to save and shows the same on every platform
|
|
41
41
|
* with Rich Text Content.
|
|
42
42
|
*/
|
|
43
|
-
export declare function RichTextEditor(
|
|
43
|
+
export declare function RichTextEditor(editorProps: RichTextEditorProps): import("react").JSX.Element;
|
|
44
44
|
//# sourceMappingURL=RichTextEditor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RichTextEditor.d.ts","sourceRoot":"","sources":["../../../src/components/rich-text-editor/RichTextEditor.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,QAAQ,EAAuB,IAAI,EAAiB,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"RichTextEditor.d.ts","sourceRoot":"","sources":["../../../src/components/rich-text-editor/RichTextEditor.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,QAAQ,EAAuB,IAAI,EAAiB,MAAM,SAAS,CAAA;AAWjF,OAAO,EAAE,KAAK,YAAY,EAA8C,MAAM,YAAY,CAAA;AAE1F,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,0DAA0D;IAC1D,KAAK,EAAE,MAAM,CAAA;IACb,iEAAiE;IACjE,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;CAC/C;AAkCD,eAAO,MAAM,oBAAoB,EAAE,YAAY,EAU9C,CAAA;AAED,MAAM,WAAW,mBAAmB;IAClC,6BAA6B;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,oDAAoD;IACpD,KAAK,CAAC,EAAE,YAAY,EAAE,CAAA;IACtB,uDAAuD;IACvD,SAAS,CAAC,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC,WAAW,CAAC,CAAA;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,wDAAwD;IACxD,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC,GAAG;QACtD,KAAK,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAA;KAC/C,CAAA;CACF;AAUD;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,mBAAmB,+BAqN9D"}
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { BoldIcon, CodeIcon, HeadingIcon, ItalicIcon, LinkIcon, ListIcon, ListOrderedIcon, QuoteIcon, StrikethroughIcon, } from '@advui/icons';
|
|
3
3
|
import { useId, useLayoutEffect, useRef, useState } from 'react';
|
|
4
4
|
import { View, XStack, isWeb } from 'tamagui';
|
|
5
|
-
import { Button, IconButton, Text, Textarea, fieldBoxStyle, useControllableState, } from '@advui/core';
|
|
5
|
+
import { Button, IconButton, Text, Textarea, fieldBoxStyle, useControllableState, useFieldControl, } from '@advui/core';
|
|
6
6
|
import { RichTextContent } from './RichTextContent';
|
|
7
7
|
import { applyFormat, shortcuts } from './markdown';
|
|
8
8
|
const defaultLabels = {
|
|
@@ -50,7 +50,8 @@ export const defaultRichTextTools = [
|
|
|
50
50
|
* Markdown, so the text is safe to save and shows the same on every platform
|
|
51
51
|
* with Rich Text Content.
|
|
52
52
|
*/
|
|
53
|
-
export function RichTextEditor(
|
|
53
|
+
export function RichTextEditor(editorProps) {
|
|
54
|
+
const { value: valueProp, defaultValue = '', onValueChange, placeholder, tools = defaultRichTextTools, minHeight = '$32', maxLength, disabled = false, invalid = false, id, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, 'aria-describedby': ariaDescribedBy, 'aria-required': ariaRequired, accessibilityHint, labels: labelsProp, } = useFieldControl(editorProps);
|
|
54
55
|
const labels = {
|
|
55
56
|
...defaultLabels,
|
|
56
57
|
...labelsProp,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RichTextEditor.js","sourceRoot":"","sources":["../../../src/components/rich-text-editor/RichTextEditor.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,UAAU,EACV,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,SAAS,EACT,iBAAiB,GAClB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAqB,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACnF,OAAO,EAAsC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACjF,OAAO,EACL,MAAM,EACN,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,oBAAoB,
|
|
1
|
+
{"version":3,"file":"RichTextEditor.js","sourceRoot":"","sources":["../../../src/components/rich-text-editor/RichTextEditor.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@advui/editor",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Rich text editing for Adv UI: a Markdown editor with a formatting toolbar, shortcuts and a preview, and a viewer for the same Markdown, on web, iOS and Android.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -35,10 +35,10 @@
|
|
|
35
35
|
"react-native": "./dist/index.js"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@advui/icons": "0.
|
|
38
|
+
"@advui/icons": "0.7.0"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
|
-
"@advui/core": "^0.
|
|
41
|
+
"@advui/core": "^0.7.0",
|
|
42
42
|
"react": ">=19",
|
|
43
43
|
"react-native": "*",
|
|
44
44
|
"tamagui": "^2.7.7"
|
|
@@ -70,8 +70,8 @@
|
|
|
70
70
|
"test-renderer": "~1.2.0",
|
|
71
71
|
"vite": "^8.3.1",
|
|
72
72
|
"vitest": "^5.0.2",
|
|
73
|
-
"@advui/core": "0.
|
|
74
|
-
"@advui/theme": "0.
|
|
73
|
+
"@advui/core": "0.7.0",
|
|
74
|
+
"@advui/theme": "0.7.0"
|
|
75
75
|
},
|
|
76
76
|
"scripts": {
|
|
77
77
|
"build": "tsc -p tsconfig.build.json",
|
|
@@ -18,6 +18,7 @@ import {
|
|
|
18
18
|
Textarea,
|
|
19
19
|
fieldBoxStyle,
|
|
20
20
|
useControllableState,
|
|
21
|
+
useFieldControl,
|
|
21
22
|
} from '@advui/core'
|
|
22
23
|
import { RichTextContent } from './RichTextContent'
|
|
23
24
|
import { type RichTextTool, type TextSelection, applyFormat, shortcuts } from './markdown'
|
|
@@ -94,7 +95,7 @@ export interface RichTextEditorProps {
|
|
|
94
95
|
'aria-labelledby'?: string
|
|
95
96
|
'aria-describedby'?: string
|
|
96
97
|
'aria-required'?: boolean
|
|
97
|
-
/** Native: help read after the name (
|
|
98
|
+
/** Native: help read after the name (a Field sets it). */
|
|
98
99
|
accessibilityHint?: string
|
|
99
100
|
/** Toolbar, tool and preview names, for translation. */
|
|
100
101
|
labels?: Partial<Omit<RichTextEditorLabels, 'tools'>> & {
|
|
@@ -115,24 +116,25 @@ type Editable = TamaguiElement & {
|
|
|
115
116
|
* Markdown, so the text is safe to save and shows the same on every platform
|
|
116
117
|
* with Rich Text Content.
|
|
117
118
|
*/
|
|
118
|
-
export function RichTextEditor({
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
119
|
+
export function RichTextEditor(editorProps: RichTextEditorProps) {
|
|
120
|
+
const {
|
|
121
|
+
value: valueProp,
|
|
122
|
+
defaultValue = '',
|
|
123
|
+
onValueChange,
|
|
124
|
+
placeholder,
|
|
125
|
+
tools = defaultRichTextTools,
|
|
126
|
+
minHeight = '$32',
|
|
127
|
+
maxLength,
|
|
128
|
+
disabled = false,
|
|
129
|
+
invalid = false,
|
|
130
|
+
id,
|
|
131
|
+
'aria-label': ariaLabel,
|
|
132
|
+
'aria-labelledby': ariaLabelledBy,
|
|
133
|
+
'aria-describedby': ariaDescribedBy,
|
|
134
|
+
'aria-required': ariaRequired,
|
|
135
|
+
accessibilityHint,
|
|
136
|
+
labels: labelsProp,
|
|
137
|
+
} = useFieldControl(editorProps)
|
|
136
138
|
const labels = {
|
|
137
139
|
...defaultLabels,
|
|
138
140
|
...labelsProp,
|