@lofcz/platejs-list 52.0.11

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/LICENSE ADDED
@@ -0,0 +1,24 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) Ziad Beyens, Dylan Schiemann, Joe Anderson, Felix Feng
4
+
5
+ Unless otherwise specified in a LICENSE file within an individual package directory,
6
+ this license applies to all files in this repository outside of those package directories.
7
+
8
+ Permission is hereby granted, free of charge, to any person obtaining a copy
9
+ of this software and associated documentation files (the "Software"), to deal
10
+ in the Software without restriction, including without limitation the rights
11
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
+ copies of the Software, and to permit persons to whom the Software is
13
+ furnished to do so, subject to the following conditions:
14
+
15
+ The above copyright notice and this permission notice shall be included in
16
+ all copies or substantial portions of the Software.
17
+
18
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
24
+ THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,13 @@
1
+ # Plate indent list plugin
2
+
3
+ This package implements the indent list plugin for Plate.
4
+ It's a mix of indent and list plugins, also called as a "flat list"
5
+ because the list structure has no children.
6
+
7
+ ## Documentation
8
+
9
+ Check out [List](https://platejs.org/docs/list).
10
+
11
+ ## License
12
+
13
+ [MIT](../../LICENSE)
@@ -0,0 +1,289 @@
1
+ import { Editor, EditorAboveOptions, ElementEntryOf, ElementOf, ElementOrTextOf, NodeEntry as NodeEntry$1, OverrideEditor, Path, PluginConfig, SlateEditor, TElement, TLocation, TNode } from "platejs";
2
+
3
+ //#region src/lib/queries/getSiblingList.d.ts
4
+ type GetSiblingListOptions<N extends ElementOf<E>, E extends Editor = Editor> = {
5
+ breakOnEqIndentNeqListStyleType?: boolean;
6
+ breakOnListRestart?: boolean;
7
+ breakOnLowerIndent?: boolean;
8
+ breakQuery?: (siblingNode: TNode, currentNode: TNode) => boolean | undefined;
9
+ getNextEntry?: (entry: NodeEntry$1<ElementOrTextOf<E>>) => NodeEntry$1<N> | undefined;
10
+ getPreviousEntry?: (entry: NodeEntry$1<ElementOrTextOf<E>>) => NodeEntry$1<N> | undefined;
11
+ /** Query to break lookup */
12
+ eqIndent?: boolean;
13
+ /** Query to validate lookup. If false, check the next sibling. */
14
+ query?: (siblingNode: TNode, currentNode: TNode) => boolean | undefined;
15
+ };
16
+ /**
17
+ * Get the next sibling indent list node. Default query: the sibling node should
18
+ * have the same listStyleType.
19
+ */
20
+ declare const getSiblingList: <N extends ElementOf<E>, E extends Editor = Editor>(_editor: E, [node, path]: ElementEntryOf<E>, {
21
+ breakOnEqIndentNeqListStyleType,
22
+ breakOnListRestart,
23
+ breakOnLowerIndent,
24
+ breakQuery,
25
+ eqIndent,
26
+ getNextEntry,
27
+ getPreviousEntry,
28
+ query
29
+ }: GetSiblingListOptions<N, E>) => NodeEntry$1<N> | undefined;
30
+ //#endregion
31
+ //#region src/lib/types.d.ts
32
+ declare const ListStyleType: {
33
+ readonly ArabicIndic: "arabic-indic";
34
+ readonly Armenian: "armenian";
35
+ readonly Bengali: "bengali";
36
+ readonly Cambodian: "cambodian";
37
+ readonly Circle: "circle";
38
+ readonly CjkDecimal: "cjk-decimal";
39
+ readonly CjkEarthlyBranch: "cjk-earthly-branch";
40
+ readonly CjkHeavenlyStem: "cjk-heavenly-stem";
41
+ readonly Decimal: "decimal";
42
+ readonly DecimalLeadingZero: "decimal-leading-zero";
43
+ readonly Devanagari: "devanagari";
44
+ readonly Disc: "disc";
45
+ readonly DisclosureClosed: "disclosure-closed";
46
+ readonly DisclosureOpen: "disclosure-open";
47
+ readonly EthiopicNumeric: "ethiopic-numeric";
48
+ readonly Georgian: "georgian";
49
+ readonly Gujarati: "gujarati";
50
+ readonly Gurmukhi: "gurmukhi";
51
+ readonly Hebrew: "hebrew";
52
+ readonly Hiragana: "hiragana";
53
+ readonly HiraganaIroha: "hiragana-iroha";
54
+ readonly Inherit: "inherit";
55
+ readonly Initial: "initial";
56
+ readonly JapaneseFormal: "japanese-formal";
57
+ readonly JapaneseInformal: "japanese-informal";
58
+ readonly Kannada: "kannada";
59
+ readonly Katakana: "katakana";
60
+ readonly KatakanaIroha: "katakana-iroha";
61
+ readonly Khmer: "khmer";
62
+ readonly KoreanHangulFormal: "korean-hangul-formal";
63
+ readonly KoreanHanjaFormal: "korean-hanja-formal";
64
+ readonly KoreanHanjaInformal: "korean-hanja-informal";
65
+ readonly Lao: "lao";
66
+ readonly LowerAlpha: "lower-alpha";
67
+ readonly LowerArmenian: "lower-armenian";
68
+ readonly LowerGreek: "lower-greek";
69
+ readonly LowerLatin: "lower-latin";
70
+ readonly LowerRoman: "lower-roman";
71
+ readonly Malayalam: "malayalam";
72
+ readonly Mongolian: "mongolian";
73
+ readonly Myanmar: "myanmar";
74
+ readonly None: "none";
75
+ readonly Oriya: "oriya";
76
+ readonly Persian: "persian";
77
+ readonly SimpChineseFormal: "simp-chinese-formal";
78
+ readonly SimpChineseInformal: "simp-chinese-informal";
79
+ readonly Square: "square";
80
+ readonly Tamil: "tamil";
81
+ readonly Telugu: "telugu";
82
+ readonly Thai: "thai";
83
+ readonly Tibetan: "tibetan";
84
+ readonly TradChineseFormal: "trad-chinese-formal";
85
+ readonly TradChineseInformal: "trad-chinese-informal";
86
+ readonly UpperAlpha: "upper-alpha";
87
+ readonly UpperArmenian: "upper-armenian";
88
+ readonly UpperLatin: "upper-latin";
89
+ readonly UpperRoman: "upper-roman";
90
+ };
91
+ type ListStyleType = (typeof ListStyleType)[keyof typeof ListStyleType];
92
+ declare const ULIST_STYLE_TYPES: readonly ["disc", "circle", "square", "disclosure-open", "disclosure-closed"];
93
+ //#endregion
94
+ //#region src/lib/BaseListPlugin.d.ts
95
+ /**
96
+ * All list items are normalized to have a listStart prop indicating their
97
+ * position in the list (unless listStart would be 1, in which case it is
98
+ * omitted).
99
+ *
100
+ * ListRestart causes listStart to restart from the given number, regardless of
101
+ * any previous listStart.
102
+ *
103
+ * ListRestartPolite acts like listRestart, except it only takes effect for list
104
+ * items at the start of a list. When not at the start of a list, this prop is
105
+ * ignored, although it is not removed and may take effect in the future.
106
+ */
107
+ type BaseListConfig = PluginConfig<'list', {
108
+ getSiblingListOptions?: GetSiblingListOptions<TElement>;
109
+ /** Map html element to list style type. */
110
+ getListStyleType?: (element: HTMLElement) => ListStyleType;
111
+ }>;
112
+ declare const BaseListPlugin: any;
113
+ //#endregion
114
+ //#region src/lib/withList.d.ts
115
+ declare const withList: OverrideEditor<BaseListConfig>;
116
+ //#endregion
117
+ //#region src/lib/withNormalizeList.d.ts
118
+ declare const withNormalizeList: OverrideEditor<BaseListConfig>;
119
+ //#endregion
120
+ //#region src/lib/normalizers/normalizeListNotIndented.d.ts
121
+ /** Unset listStyle, listStart if KEYS.indent is not defined. */
122
+ declare const normalizeListNotIndented: (editor: Editor, [node, path]: NodeEntry$1) => true | undefined;
123
+ //#endregion
124
+ //#region src/lib/normalizers/normalizeListStart.d.ts
125
+ declare const getListExpectedListStart: (entry: NodeEntry$1, prevEntry?: NodeEntry$1) => number;
126
+ declare const normalizeListStart: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, entry: ElementEntryOf<E>, options?: Partial<GetSiblingListOptions<N, E>>) => any;
127
+ //#endregion
128
+ //#region src/lib/normalizers/withInsertBreakList.d.ts
129
+ declare const withInsertBreakList: OverrideEditor<BaseListConfig>;
130
+ //#endregion
131
+ //#region src/lib/queries/areEqListStyleType.d.ts
132
+ declare const areEqListStyleType: (_editor: Editor, entries: NodeEntry$1[], {
133
+ listStyleType
134
+ }: {
135
+ listStyleType?: string;
136
+ }) => boolean;
137
+ //#endregion
138
+ //#region src/lib/queries/expandListItemsWithChildren.d.ts
139
+ /**
140
+ * Expands a list of blocks to include list item children. For each list item in
141
+ * the input, adds all its children (items with bigger indent). Non-list blocks
142
+ * are kept as-is. Requires id to be set on the blocks.
143
+ *
144
+ * @returns Array of block entries with list items expanded to include their
145
+ * children
146
+ */
147
+ declare const expandListItemsWithChildren: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, entries: ElementEntryOf<E>[]) => NodeEntry$1<N>[];
148
+ //#endregion
149
+ //#region src/lib/queries/getListAbove.d.ts
150
+ declare const getListAbove: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, options?: Omit<EditorAboveOptions, "match">) => NodeEntry$1<N> | undefined;
151
+ //#endregion
152
+ //#region src/lib/queries/getListChildren.d.ts
153
+ /**
154
+ * Get all list items that are children of the current list item (have bigger
155
+ * indent). Stops when encountering an item with equal or lower indent.
156
+ */
157
+ declare const getListChildren: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, entry: ElementEntryOf<E>) => NodeEntry$1<N>[];
158
+ //#endregion
159
+ //#region src/lib/queries/getListSiblings.d.ts
160
+ interface GetListSiblingsOptions<N extends ElementOf<E>, E extends Editor = Editor> extends Partial<GetSiblingListOptions<N, E>> {
161
+ current?: boolean;
162
+ next?: boolean;
163
+ previous?: boolean;
164
+ }
165
+ declare const getListSiblings: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, entry: ElementEntryOf<E>, {
166
+ current,
167
+ next,
168
+ previous,
169
+ ...options
170
+ }?: GetListSiblingsOptions<N, E>) => NodeEntry[];
171
+ //#endregion
172
+ //#region src/lib/queries/getNextList.d.ts
173
+ /** Get the next indent list. */
174
+ declare const getNextList: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, entry: ElementEntryOf<E>, options?: Partial<GetSiblingListOptions<N, E>>) => NodeEntry$1<N> | undefined;
175
+ //#endregion
176
+ //#region src/lib/queries/getPreviousList.d.ts
177
+ /** Get the previous indent list node. */
178
+ declare const getPreviousList: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, entry: ElementEntryOf<E>, options?: Partial<GetSiblingListOptions<N, E>>) => NodeEntry$1<N> | undefined;
179
+ //#endregion
180
+ //#region src/lib/queries/getSiblingListStyleType.d.ts
181
+ /**
182
+ * Get the first sibling list style type at the given indent. If none, return
183
+ * the entry list style type.
184
+ */
185
+ declare const getSiblingListStyleType: <E extends SlateEditor>(editor: E, {
186
+ entry,
187
+ indent,
188
+ ...options
189
+ }: {
190
+ entry: NodeEntry$1<TElement>;
191
+ indent: number;
192
+ } & GetListSiblingsOptions<ElementOf<E>, E>) => ListStyleType;
193
+ //#endregion
194
+ //#region src/lib/queries/isOrderedList.d.ts
195
+ declare function isOrderedList(element: TElement): boolean;
196
+ //#endregion
197
+ //#region src/lib/queries/someList.d.ts
198
+ declare const someList: (editor: SlateEditor, type: string[] | string) => any;
199
+ //#endregion
200
+ //#region src/lib/queries/someTodoList.d.ts
201
+ declare const someTodoList: (editor: SlateEditor) => any;
202
+ //#endregion
203
+ //#region src/lib/transforms/indentList.d.ts
204
+ type ListOptions = {
205
+ at?: TLocation;
206
+ listRestart?: number;
207
+ listRestartPolite?: number;
208
+ listStyleType?: ListStyleType | string;
209
+ };
210
+ /** Increase the indentation of the selected blocks. */
211
+ declare const indentList: (editor: SlateEditor, {
212
+ listStyleType,
213
+ ...options
214
+ }?: ListOptions) => void;
215
+ declare const indentTodo: (editor: SlateEditor, {
216
+ listStyleType,
217
+ ...options
218
+ }?: ListOptions) => void;
219
+ //#endregion
220
+ //#region src/lib/transforms/outdentList.d.ts
221
+ /** Decrease the indentation of the selected blocks. */
222
+ declare const outdentList: (editor: SlateEditor, options?: ListOptions) => void;
223
+ //#endregion
224
+ //#region src/lib/transforms/setListNode.d.ts
225
+ declare const setListNode: (editor: Editor, {
226
+ at,
227
+ indent,
228
+ listStyleType
229
+ }: {
230
+ at: Path;
231
+ indent?: number;
232
+ listStyleType?: string;
233
+ }) => void;
234
+ declare const setIndentTodoNode: (editor: Editor, {
235
+ at,
236
+ indent,
237
+ listStyleType
238
+ }: {
239
+ at: Path;
240
+ indent?: number;
241
+ listStyleType?: string;
242
+ }) => void;
243
+ //#endregion
244
+ //#region src/lib/transforms/setListNodes.d.ts
245
+ /**
246
+ * Set indent list to the given entries. Add indent if listStyleType was not
247
+ * defined.
248
+ */
249
+ declare const setListNodes: (editor: Editor, entries: NodeEntry$1[], {
250
+ listStyleType
251
+ }: {
252
+ listStyleType?: string;
253
+ }) => void;
254
+ //#endregion
255
+ //#region src/lib/transforms/setListSiblingNodes.d.ts
256
+ /** Set indent list to entry + siblings. */
257
+ declare const setListSiblingNodes: <N extends ElementOf<E>, E extends Editor = Editor>(editor: E, entry: ElementEntryOf<E>, {
258
+ getSiblingListOptions,
259
+ listStyleType
260
+ }: {
261
+ getSiblingListOptions?: GetSiblingListOptions<N, E>;
262
+ listStyleType?: string;
263
+ }) => void;
264
+ //#endregion
265
+ //#region src/lib/transforms/toggleList.d.ts
266
+ /** Toggle indent list. */
267
+ declare const toggleList: <N extends ElementOf<E>, E extends SlateEditor = SlateEditor>(editor: E, options: ListOptions, getSiblingListOptions?: GetSiblingListOptions<N, E>) => void;
268
+ //#endregion
269
+ //#region src/lib/transforms/toggleListByPath.d.ts
270
+ declare const toggleListByPath: (editor: SlateEditor, [node, path]: NodeEntry$1, listStyleType: string) => void;
271
+ declare const toggleListByPathUnSet: (editor: SlateEditor, [, path]: NodeEntry$1) => any;
272
+ //#endregion
273
+ //#region src/lib/transforms/toggleListSet.d.ts
274
+ /** Set indent list if not set. */
275
+ declare const toggleListSet: (editor: Editor, [node, _path]: NodeEntry$1, {
276
+ listStyleType,
277
+ ...options
278
+ }: ListOptions) => true | undefined;
279
+ //#endregion
280
+ //#region src/lib/transforms/toggleListUnset.d.ts
281
+ /** Unset list style type if already set. */
282
+ declare const toggleListUnset: (editor: Editor, [node, path]: NodeEntry$1, {
283
+ listStyleType
284
+ }: {
285
+ listStyleType?: string;
286
+ }) => true | undefined;
287
+ //#endregion
288
+ export { withNormalizeList as A, getListAbove as C, getListExpectedListStart as D, withInsertBreakList as E, ULIST_STYLE_TYPES as F, GetSiblingListOptions as I, getSiblingList as L, BaseListConfig as M, BaseListPlugin as N, normalizeListStart as O, ListStyleType as P, getListChildren as S, areEqListStyleType as T, getSiblingListStyleType as _, toggleList as a, GetListSiblingsOptions as b, setIndentTodoNode as c, ListOptions as d, indentList as f, isOrderedList as g, someList as h, toggleListByPathUnSet as i, withList as j, normalizeListNotIndented as k, setListNode as l, someTodoList as m, toggleListSet as n, setListSiblingNodes as o, indentTodo as p, toggleListByPath as r, setListNodes as s, toggleListUnset as t, outdentList as u, getPreviousList as v, expandListItemsWithChildren as w, getListSiblings as x, getNextList as y };
289
+ //# sourceMappingURL=index-BnhNqFus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BnhNqFus.d.ts","names":[],"sources":["../src/lib/queries/getSiblingList.ts","../src/lib/types.ts","../src/lib/BaseListPlugin.tsx","../src/lib/withList.ts","../src/lib/withNormalizeList.ts","../src/lib/normalizers/normalizeListNotIndented.ts","../src/lib/normalizers/normalizeListStart.ts","../src/lib/normalizers/withInsertBreakList.ts","../src/lib/queries/areEqListStyleType.ts","../src/lib/queries/expandListItemsWithChildren.ts","../src/lib/queries/getListAbove.ts","../src/lib/queries/getListChildren.ts","../src/lib/queries/getListSiblings.ts","../src/lib/queries/getNextList.ts","../src/lib/queries/getPreviousList.ts","../src/lib/queries/getSiblingListStyleType.ts","../src/lib/queries/isOrderedList.ts","../src/lib/queries/someList.ts","../src/lib/queries/someTodoList.ts","../src/lib/transforms/indentList.ts","../src/lib/transforms/outdentList.ts","../src/lib/transforms/setListNode.ts","../src/lib/transforms/setListNodes.ts","../src/lib/transforms/setListSiblingNodes.ts","../src/lib/transforms/toggleList.ts","../src/lib/transforms/toggleListByPath.ts","../src/lib/transforms/toggleListSet.ts","../src/lib/transforms/toggleListUnset.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { A as withNormalizeList, C as getListAbove, D as getListExpectedListStart, E as withInsertBreakList, F as ULIST_STYLE_TYPES, I as GetSiblingListOptions, L as getSiblingList, M as BaseListConfig, N as BaseListPlugin, O as normalizeListStart, P as ListStyleType, S as getListChildren, T as areEqListStyleType, _ as getSiblingListStyleType, a as toggleList, b as GetListSiblingsOptions, c as setIndentTodoNode, d as ListOptions, f as indentList, g as isOrderedList, h as someList, i as toggleListByPathUnSet, j as withList, k as normalizeListNotIndented, l as setListNode, m as someTodoList, n as toggleListSet, o as setListSiblingNodes, p as indentTodo, r as toggleListByPath, s as setListNodes, t as toggleListUnset, u as outdentList, v as getPreviousList, w as expandListItemsWithChildren, x as getListSiblings, y as getNextList } from "./index-BnhNqFus";
2
+ export { BaseListConfig, BaseListPlugin, GetListSiblingsOptions, GetSiblingListOptions, ListOptions, ListStyleType, ULIST_STYLE_TYPES, areEqListStyleType, expandListItemsWithChildren, getListAbove, getListChildren, getListExpectedListStart, getListSiblings, getNextList, getPreviousList, getSiblingList, getSiblingListStyleType, indentList, indentTodo, isOrderedList, normalizeListNotIndented, normalizeListStart, outdentList, setIndentTodoNode, setListNode, setListNodes, setListSiblingNodes, someList, someTodoList, toggleList, toggleListByPath, toggleListByPathUnSet, toggleListSet, toggleListUnset, withInsertBreakList, withList, withNormalizeList };
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ import { A as getListChildren, C as getSiblingListStyleType, D as getSiblingList, E as getNextList, M as ListStyleType, N as ULIST_STYLE_TYPES, O as getListAbove, S as isOrderedList, T as getPreviousList, _ as getListExpectedListStart, a as toggleListByPathUnSet, b as someTodoList, c as toggleListSet, d as setIndentTodoNode, f as setListNode, g as withInsertBreakList, h as indentTodo, i as toggleListByPath, j as areEqListStyleType, k as expandListItemsWithChildren, l as setListSiblingNodes, m as indentList, n as withList, o as toggleList, p as outdentList, r as withNormalizeList, s as toggleListUnset, t as BaseListPlugin, u as setListNodes, v as normalizeListStart, w as getListSiblings, x as someList, y as normalizeListNotIndented } from "./src-Dvsp2AeZ.js";
2
+
3
+ export { BaseListPlugin, ListStyleType, ULIST_STYLE_TYPES, areEqListStyleType, expandListItemsWithChildren, getListAbove, getListChildren, getListExpectedListStart, getListSiblings, getNextList, getPreviousList, getSiblingList, getSiblingListStyleType, indentList, indentTodo, isOrderedList, normalizeListNotIndented, normalizeListStart, outdentList, setIndentTodoNode, setListNode, setListNodes, setListSiblingNodes, someList, someTodoList, toggleList, toggleListByPath, toggleListByPathUnSet, toggleListSet, toggleListUnset, withInsertBreakList, withList, withNormalizeList };
@@ -0,0 +1,64 @@
1
+ import { M as BaseListConfig } from "../index-BnhNqFus";
2
+ import { TElement } from "platejs";
3
+
4
+ //#region src/react/ListPlugin.d.ts
5
+ type ListConfig = BaseListConfig;
6
+ /** Enables support for indented lists with React-specific features. */
7
+ declare const ListPlugin: any;
8
+ //#endregion
9
+ //#region src/react/hooks/useListToolbarButton.d.ts
10
+ declare const useListToolbarButtonState: ({
11
+ nodeType
12
+ }?: {
13
+ nodeType?: string;
14
+ }) => {
15
+ nodeType: string;
16
+ pressed: any;
17
+ };
18
+ declare const useListToolbarButton: ({
19
+ nodeType,
20
+ pressed
21
+ }: ReturnType<typeof useListToolbarButtonState>) => {
22
+ props: {
23
+ pressed: any;
24
+ onClick: () => void;
25
+ onMouseDown: (e: React.MouseEvent<HTMLButtonElement>) => void;
26
+ };
27
+ };
28
+ //#endregion
29
+ //#region src/react/hooks/useTodoListElement.d.ts
30
+ declare const useTodoListElementState: ({
31
+ element
32
+ }: {
33
+ element: TElement;
34
+ }) => any;
35
+ declare const useTodoListElement: (state: ReturnType<typeof useTodoListElementState>) => {
36
+ checkboxProps: {
37
+ checked: boolean;
38
+ onCheckedChange: (value: boolean) => void;
39
+ onMouseDown: (e: any) => void;
40
+ };
41
+ };
42
+ //#endregion
43
+ //#region src/react/hooks/useTodoListToolbarButton.d.ts
44
+ declare const useIndentTodoToolBarButtonState: ({
45
+ nodeType
46
+ }?: {
47
+ nodeType?: string;
48
+ }) => {
49
+ nodeType: string;
50
+ pressed: any;
51
+ };
52
+ declare const useIndentTodoToolBarButton: ({
53
+ nodeType,
54
+ pressed
55
+ }: ReturnType<typeof useIndentTodoToolBarButtonState>) => {
56
+ props: {
57
+ pressed: any;
58
+ onClick: () => void;
59
+ onMouseDown: (e: React.MouseEvent<HTMLButtonElement>) => void;
60
+ };
61
+ };
62
+ //#endregion
63
+ export { ListConfig, ListPlugin, useIndentTodoToolBarButton, useIndentTodoToolBarButtonState, useListToolbarButton, useListToolbarButtonState, useTodoListElement, useTodoListElementState };
64
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/react/ListPlugin.tsx","../../src/react/hooks/useListToolbarButton.ts","../../src/react/hooks/useTodoListElement.ts","../../src/react/hooks/useTodoListToolbarButton.ts"],"sourcesContent":[],"mappings":";;;;KAIY,UAAA,GAAa;;cAGZ;;;cCFA;;;;;;EDDD,OAAA,EAAA,GAAA;AAGZ,CAAA;cCca;;;GAGV,kBAAkB;;;IAnBR,OAAA,EAAA,GAAA,GAAA,IAAA;IAgBA,WAAA,EAAA,CAAA,CAAA,EAcU,KAAA,CAAM,UAK5B,CALuC,iBAKvC,CAAA,EAAA,GAAA,IAAA;EAnBoC,CAAA;CAAA;;;cCjBxB;;;WAGF;;AFHC,cEiBC,kBFjBY,EAAA,CAAA,KAAc,EEkB9B,UFlB8B,CAAA,OEkBZ,uBFlBY,CAAA,EAAA,GAAA;EAG1B,aAA0C,EAAA;;;;ECF1C,CAAA;AAgBb,CAAA;;;cEhBa;;;;;;EHDD,OAAA,EAAA,GAAA;AAGZ,CAAA;cGca;;;GAGV,kBAAkB;;;IFnBR,OAAA,EAAA,GAAA,GAAA,IAAA;IAgBA,WAAA,EAAA,CAAA,CAAA,EEcU,KAAA,CAAM,UFK5B,CELuC,iBFKvC,CAAA,EAAA,GAAA,IAAA;EAnBoC,CAAA;CAAA"}
@@ -0,0 +1,182 @@
1
+ import { M as ListStyleType, b as someTodoList, o as toggleList, t as BaseListPlugin, x as someList } from "../src-Dvsp2AeZ.js";
2
+ import { c } from "react-compiler-runtime";
3
+ import { toPlatePlugin, useEditorRef, useEditorSelector, useReadOnly } from "platejs/react";
4
+
5
+ //#region src/react/ListPlugin.tsx
6
+ /** Enables support for indented lists with React-specific features. */
7
+ const ListPlugin = toPlatePlugin(BaseListPlugin);
8
+
9
+ //#endregion
10
+ //#region src/react/hooks/useListToolbarButton.ts
11
+ const useListToolbarButtonState = (t0) => {
12
+ const $ = c(8);
13
+ let t1;
14
+ if ($[0] !== t0) {
15
+ t1 = t0 === void 0 ? {} : t0;
16
+ $[0] = t0;
17
+ $[1] = t1;
18
+ } else t1 = $[1];
19
+ const { nodeType: t2 } = t1;
20
+ const nodeType = t2 === void 0 ? ListStyleType.Disc : t2;
21
+ let t3;
22
+ let t4;
23
+ if ($[2] !== nodeType) {
24
+ t3 = (editor) => someList(editor, nodeType);
25
+ t4 = [nodeType];
26
+ $[2] = nodeType;
27
+ $[3] = t3;
28
+ $[4] = t4;
29
+ } else {
30
+ t3 = $[3];
31
+ t4 = $[4];
32
+ }
33
+ const pressed = useEditorSelector(t3, t4);
34
+ let t5;
35
+ if ($[5] !== nodeType || $[6] !== pressed) {
36
+ t5 = {
37
+ nodeType,
38
+ pressed
39
+ };
40
+ $[5] = nodeType;
41
+ $[6] = pressed;
42
+ $[7] = t5;
43
+ } else t5 = $[7];
44
+ return t5;
45
+ };
46
+ const useListToolbarButton = (t0) => {
47
+ const $ = c(6);
48
+ const { nodeType, pressed } = t0;
49
+ const editor = useEditorRef();
50
+ let t1;
51
+ if ($[0] !== editor || $[1] !== nodeType) {
52
+ t1 = () => {
53
+ toggleList(editor, { listStyleType: nodeType });
54
+ };
55
+ $[0] = editor;
56
+ $[1] = nodeType;
57
+ $[2] = t1;
58
+ } else t1 = $[2];
59
+ let t2;
60
+ if ($[3] !== pressed || $[4] !== t1) {
61
+ t2 = { props: {
62
+ pressed,
63
+ onClick: t1,
64
+ onMouseDown: _temp$1
65
+ } };
66
+ $[3] = pressed;
67
+ $[4] = t1;
68
+ $[5] = t2;
69
+ } else t2 = $[5];
70
+ return t2;
71
+ };
72
+ function _temp$1(e) {
73
+ e.preventDefault();
74
+ }
75
+
76
+ //#endregion
77
+ //#region src/react/hooks/useTodoListElement.ts
78
+ const useTodoListElementState = (t0) => {
79
+ const $ = c(5);
80
+ const { element } = t0;
81
+ const editor = useEditorRef();
82
+ const { checked } = element;
83
+ const readOnly = useReadOnly();
84
+ let t1;
85
+ if ($[0] !== checked || $[1] !== editor || $[2] !== element || $[3] !== readOnly) {
86
+ t1 = {
87
+ checked,
88
+ editor,
89
+ element,
90
+ readOnly
91
+ };
92
+ $[0] = checked;
93
+ $[1] = editor;
94
+ $[2] = element;
95
+ $[3] = readOnly;
96
+ $[4] = t1;
97
+ } else t1 = $[4];
98
+ return t1;
99
+ };
100
+ const useTodoListElement = (state) => {
101
+ const { checked, editor, element, readOnly } = state;
102
+ return { checkboxProps: {
103
+ checked: !!checked,
104
+ onCheckedChange: (value) => {
105
+ if (readOnly) return;
106
+ const path = editor.api.findPath(element);
107
+ if (!path) return;
108
+ editor.tf.setNodes({ checked: value }, { at: path });
109
+ },
110
+ onMouseDown: (e) => {
111
+ e.preventDefault();
112
+ }
113
+ } };
114
+ };
115
+
116
+ //#endregion
117
+ //#region src/react/hooks/useTodoListToolbarButton.ts
118
+ const useIndentTodoToolBarButtonState = (t0) => {
119
+ const $ = c(7);
120
+ let t1;
121
+ if ($[0] !== t0) {
122
+ t1 = t0 === void 0 ? {} : t0;
123
+ $[0] = t0;
124
+ $[1] = t1;
125
+ } else t1 = $[1];
126
+ const { nodeType: t2 } = t1;
127
+ const nodeType = t2 === void 0 ? ListStyleType.Disc : t2;
128
+ let t3;
129
+ if ($[2] !== nodeType) {
130
+ t3 = [nodeType];
131
+ $[2] = nodeType;
132
+ $[3] = t3;
133
+ } else t3 = $[3];
134
+ const pressed = useEditorSelector(_temp, t3);
135
+ let t4;
136
+ if ($[4] !== nodeType || $[5] !== pressed) {
137
+ t4 = {
138
+ nodeType,
139
+ pressed
140
+ };
141
+ $[4] = nodeType;
142
+ $[5] = pressed;
143
+ $[6] = t4;
144
+ } else t4 = $[6];
145
+ return t4;
146
+ };
147
+ const useIndentTodoToolBarButton = (t0) => {
148
+ const $ = c(6);
149
+ const { nodeType, pressed } = t0;
150
+ const editor = useEditorRef();
151
+ let t1;
152
+ if ($[0] !== editor || $[1] !== nodeType) {
153
+ t1 = () => {
154
+ toggleList(editor, { listStyleType: nodeType });
155
+ };
156
+ $[0] = editor;
157
+ $[1] = nodeType;
158
+ $[2] = t1;
159
+ } else t1 = $[2];
160
+ let t2;
161
+ if ($[3] !== pressed || $[4] !== t1) {
162
+ t2 = { props: {
163
+ pressed,
164
+ onClick: t1,
165
+ onMouseDown: _temp2
166
+ } };
167
+ $[3] = pressed;
168
+ $[4] = t1;
169
+ $[5] = t2;
170
+ } else t2 = $[5];
171
+ return t2;
172
+ };
173
+ function _temp(editor) {
174
+ return someTodoList(editor);
175
+ }
176
+ function _temp2(e) {
177
+ e.preventDefault();
178
+ }
179
+
180
+ //#endregion
181
+ export { ListPlugin, useIndentTodoToolBarButton, useIndentTodoToolBarButtonState, useListToolbarButton, useListToolbarButtonState, useTodoListElement, useTodoListElementState };
182
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["toPlatePlugin","BaseListConfig","BaseListPlugin","ListConfig","ListPlugin","useEditorRef","useEditorSelector","ListStyleType","toggleList","someList","useListToolbarButtonState","t0","$","_c","t1","undefined","nodeType","t2","Disc","t3","t4","editor","pressed","t5","useListToolbarButton","listStyleType","props","onClick","onMouseDown","_temp","e","preventDefault","TElement","useEditorRef","useReadOnly","useTodoListElementState","t0","$","_c","element","editor","checked","readOnly","t1","useTodoListElement","state","ReturnType","checkboxProps","onCheckedChange","value","path","api","findPath","tf","setNodes","at","onMouseDown","e","preventDefault","useEditorRef","useEditorSelector","ListStyleType","toggleList","someTodoList","useIndentTodoToolBarButtonState","t0","$","_c","t1","undefined","nodeType","t2","Disc","t3","pressed","_temp","t4","useIndentTodoToolBarButton","editor","listStyleType","props","onClick","onMouseDown","_temp2","e","preventDefault"],"sources":["../../src/react/ListPlugin.tsx","../../src/react/hooks/useListToolbarButton.ts","../../src/react/hooks/useTodoListElement.ts","../../src/react/hooks/useTodoListToolbarButton.ts"],"sourcesContent":["import { toPlatePlugin } from 'platejs/react';\n\nimport { type BaseListConfig, BaseListPlugin } from '../lib';\n\nexport type ListConfig = BaseListConfig;\n\n/** Enables support for indented lists with React-specific features. */\nexport const ListPlugin = toPlatePlugin(BaseListPlugin);\n","import { useEditorRef, useEditorSelector } from 'platejs/react';\n\nimport { ListStyleType, toggleList } from '../../index';\nimport { someList } from '../../lib/queries/someList';\n\nexport const useListToolbarButtonState = ({\n nodeType = ListStyleType.Disc,\n}: {\n nodeType?: string;\n} = {}) => {\n const pressed = useEditorSelector(\n (editor) => someList(editor, nodeType),\n [nodeType]\n );\n\n return {\n nodeType,\n pressed,\n };\n};\n\nexport const useListToolbarButton = ({\n nodeType,\n pressed,\n}: ReturnType<typeof useListToolbarButtonState>) => {\n const editor = useEditorRef();\n\n return {\n props: {\n pressed,\n onClick: () => {\n toggleList(editor, {\n listStyleType: nodeType,\n });\n },\n onMouseDown: (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n },\n },\n };\n};\n","import type { TElement } from 'platejs';\n\nimport { useEditorRef, useReadOnly } from 'platejs/react';\n\nexport const useTodoListElementState = ({\n element,\n}: {\n element: TElement;\n}): any => {\n const editor = useEditorRef();\n const { checked } = element;\n const readOnly = useReadOnly();\n\n return {\n checked,\n editor,\n element,\n readOnly,\n };\n};\n\nexport const useTodoListElement = (\n state: ReturnType<typeof useTodoListElementState>\n) => {\n const { checked, editor, element, readOnly } = state;\n\n return {\n checkboxProps: {\n checked: !!checked,\n onCheckedChange: (value: boolean) => {\n if (readOnly) return;\n\n const path = editor.api.findPath(element);\n\n if (!path) return;\n\n editor.tf.setNodes({ checked: value }, { at: path });\n },\n onMouseDown: (e: any) => {\n e.preventDefault();\n },\n },\n };\n};\n","import { useEditorRef, useEditorSelector } from 'platejs/react';\n\nimport { ListStyleType, toggleList } from '../../index';\nimport { someTodoList } from '../../lib/queries/someTodoList';\n\nexport const useIndentTodoToolBarButtonState = ({\n nodeType = ListStyleType.Disc,\n}: {\n nodeType?: string;\n} = {}) => {\n const pressed = useEditorSelector(\n (editor) => someTodoList(editor),\n [nodeType]\n );\n\n return {\n nodeType,\n pressed,\n };\n};\n\nexport const useIndentTodoToolBarButton = ({\n nodeType,\n pressed,\n}: ReturnType<typeof useIndentTodoToolBarButtonState>) => {\n const editor = useEditorRef();\n\n return {\n props: {\n pressed,\n onClick: () => {\n toggleList(editor, {\n listStyleType: nodeType,\n });\n },\n onMouseDown: (e: React.MouseEvent<HTMLButtonElement>) => {\n e.preventDefault();\n },\n },\n };\n};\n"],"mappings":"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"}