svedit 0.12.0 → 0.13.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.
Files changed (86) hide show
  1. package/README.md +33 -21
  2. package/dist/Command.svelte.d.ts +38 -30
  3. package/dist/Command.svelte.d.ts.map +1 -1
  4. package/dist/Command.svelte.js +271 -326
  5. package/dist/CustomProperty.svelte +3 -5
  6. package/dist/CustomProperty.svelte.d.ts +3 -6
  7. package/dist/CustomProperty.svelte.d.ts.map +1 -1
  8. package/dist/KeyMapper.svelte.d.ts +19 -6
  9. package/dist/KeyMapper.svelte.d.ts.map +1 -1
  10. package/dist/KeyMapper.svelte.js +95 -112
  11. package/dist/Node.svelte +16 -13
  12. package/dist/Node.svelte.d.ts +3 -5
  13. package/dist/Node.svelte.d.ts.map +1 -1
  14. package/dist/NodeArrayProperty.svelte +39 -22
  15. package/dist/NodeArrayProperty.svelte.d.ts +3 -5
  16. package/dist/NodeArrayProperty.svelte.d.ts.map +1 -1
  17. package/dist/NodeCaret.svelte +1 -1
  18. package/dist/NodeCaret.svelte.d.ts +6 -14
  19. package/dist/NodeCaret.svelte.d.ts.map +1 -1
  20. package/dist/NodeGap.svelte +12 -6
  21. package/dist/NodeGap.svelte.d.ts +7 -14
  22. package/dist/NodeGap.svelte.d.ts.map +1 -1
  23. package/dist/NodeGapMarkers.svelte +19 -10
  24. package/dist/NodeGapMarkers.svelte.d.ts +6 -11
  25. package/dist/NodeGapMarkers.svelte.d.ts.map +1 -1
  26. package/dist/NodeSelectionMarkers.svelte +20 -6
  27. package/dist/NodeSelectionMarkers.svelte.d.ts +2 -5
  28. package/dist/NodeSelectionMarkers.svelte.d.ts.map +1 -1
  29. package/dist/Session.svelte.d.ts +81 -129
  30. package/dist/Session.svelte.d.ts.map +1 -1
  31. package/dist/Session.svelte.js +542 -648
  32. package/dist/Svedit.svelte +144 -138
  33. package/dist/Svedit.svelte.d.ts +30 -10
  34. package/dist/Svedit.svelte.d.ts.map +1 -1
  35. package/dist/TextProperty.svelte +32 -18
  36. package/dist/TextProperty.svelte.d.ts +3 -5
  37. package/dist/TextProperty.svelte.d.ts.map +1 -1
  38. package/dist/Transaction.svelte.d.ts +64 -127
  39. package/dist/Transaction.svelte.d.ts.map +1 -1
  40. package/dist/Transaction.svelte.js +839 -1001
  41. package/dist/UnknownNode.svelte +4 -3
  42. package/dist/UnknownNode.svelte.d.ts +5 -9
  43. package/dist/UnknownNode.svelte.d.ts.map +1 -1
  44. package/dist/doc_utils.d.ts +67 -155
  45. package/dist/doc_utils.d.ts.map +1 -1
  46. package/dist/doc_utils.js +619 -863
  47. package/dist/index.d.ts +20 -17
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +1 -17
  50. package/dist/node_visibility.svelte.d.ts +110 -9
  51. package/dist/node_visibility.svelte.d.ts.map +1 -1
  52. package/dist/node_visibility.svelte.js +473 -544
  53. package/dist/paste_utils.d.ts +11 -44
  54. package/dist/paste_utils.d.ts.map +1 -1
  55. package/dist/paste_utils.js +111 -152
  56. package/dist/transforms.svelte.d.ts +9 -7
  57. package/dist/transforms.svelte.d.ts.map +1 -1
  58. package/dist/transforms.svelte.js +125 -150
  59. package/dist/types.d.ts +277 -309
  60. package/dist/types.d.ts.map +1 -0
  61. package/dist/types.js +1 -0
  62. package/dist/utils.d.ts +40 -119
  63. package/dist/utils.d.ts.map +1 -1
  64. package/dist/utils.js +346 -473
  65. package/package.json +69 -70
  66. package/src/lib/{Command.svelte.js → Command.svelte.ts} +29 -17
  67. package/src/lib/CustomProperty.svelte +3 -5
  68. package/src/lib/{KeyMapper.svelte.js → KeyMapper.svelte.ts} +28 -11
  69. package/src/lib/Node.svelte +16 -13
  70. package/src/lib/NodeArrayProperty.svelte +39 -22
  71. package/src/lib/NodeCaret.svelte +1 -1
  72. package/src/lib/NodeGap.svelte +12 -6
  73. package/src/lib/NodeGapMarkers.svelte +19 -10
  74. package/src/lib/NodeSelectionMarkers.svelte +20 -6
  75. package/src/lib/{Session.svelte.js → Session.svelte.ts} +130 -127
  76. package/src/lib/Svedit.svelte +144 -138
  77. package/src/lib/TextProperty.svelte +32 -18
  78. package/src/lib/{Transaction.svelte.js → Transaction.svelte.ts} +139 -143
  79. package/src/lib/UnknownNode.svelte +4 -3
  80. package/src/lib/{doc_utils.js → doc_utils.ts} +247 -206
  81. package/src/lib/{index.js → index.ts} +47 -0
  82. package/src/lib/{node_visibility.svelte.js → node_visibility.svelte.ts} +68 -92
  83. package/src/lib/{paste_utils.js → paste_utils.ts} +47 -58
  84. package/src/lib/{transforms.svelte.js → transforms.svelte.ts} +39 -21
  85. package/src/lib/{types.d.ts → types.ts} +143 -66
  86. package/src/lib/{utils.js → utils.ts} +110 -129
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/lib/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1 @@
1
+ export {};
package/dist/utils.d.ts CHANGED
@@ -1,113 +1,79 @@
1
- /**
2
- * Detect if the virtual keyboard is likely visible.
3
- *
4
- * This is a heuristic based on the visual viewport becoming smaller than the
5
- * layout viewport.
6
- *
7
- * @returns {boolean} true if the virtual keyboard is likely active, false otherwise
8
- */
9
- export function is_virtual_keyboard_active(): boolean;
1
+ import type { Attachment, Mark, Text, SelectionRange, Selection, DocumentSchema, DocumentNode, DocumentPath } from './types.js';
2
+ export declare function is_virtual_keyboard_active(): boolean;
10
3
  /**
11
4
  * Detect if the current browser is likely on a mobile device.
12
5
  *
13
6
  * This uses the user agent only so touch-capable laptops are not treated as
14
7
  * mobile browsers.
15
- *
16
- * @returns {boolean} true if mobile browser, false otherwise
17
8
  */
18
- export function is_mobile_browser(): boolean;
9
+ export declare function is_mobile_browser(): boolean;
19
10
  /**
20
11
  * Detect if the current browser is Chrome on desktop
21
- * @returns {boolean} true if Chrome desktop browser, false otherwise
22
12
  */
23
- export function is_chrome_desktop_browser(): boolean;
13
+ export declare function is_chrome_desktop_browser(): boolean;
24
14
  /**
25
15
  * Get the actual character length (accounting for multi-byte characters)
26
16
  *
27
17
  * Uses Intl.Segmenter to count grapheme clusters rather than UTF-16 code units,
28
18
  * ensuring emojis and other complex Unicode sequences are counted as single characters.
29
19
  *
30
- * @param {string} str - The string to measure
31
- * @returns {number} The number of visual characters (grapheme clusters)
32
- *
33
20
  * @example
34
21
  * get_char_length('Hello') // Returns: 5
35
22
  * get_char_length('a😀b') // Returns: 3 (not 4)
36
23
  * get_char_length('👋🏽') // Returns: 1 (not 4 - skin tone modifier treated as single char)
37
24
  */
38
- export function get_char_length(str: string): number;
25
+ export declare function get_char_length(str: string): number;
39
26
  /**
40
27
  * Get a single character at the specified position (accounting for multi-byte characters)
41
28
  *
42
29
  * Uses Intl.Segmenter to access grapheme clusters rather than UTF-16 code units,
43
30
  * ensuring emojis and other complex Unicode sequences are treated as single characters.
44
31
  *
45
- * @param {string} str - The string to access
46
- * @param {number} index - Character position (0-based)
47
- * @returns {string} The character at the specified position, or empty string if index is out of bounds
48
- *
49
32
  * @example
50
33
  * get_char_at('Hello', 1) // Returns: 'e'
51
34
  * get_char_at('a😀b', 1) // Returns: '😀' (full emoji)
52
35
  * get_char_at('👋🏽', 0) // Returns: '👋🏽' (skin tone modifier included)
53
36
  */
54
- export function get_char_at(str: string, index: number): string;
37
+ export declare function get_char_at(str: string, index: number): string;
55
38
  /**
56
39
  * Slice string by character positions (accounting for multi-byte characters)
57
40
  *
58
41
  * Uses Intl.Segmenter to slice by grapheme clusters rather than UTF-16 code units,
59
42
  * ensuring emojis and other complex Unicode sequences remain intact.
60
43
  *
61
- * @param {string} str - The string to slice
62
- * @param {number} start - Starting character position (inclusive)
63
- * @param {number} [end] - Ending character position (exclusive). If undefined, slices to end
64
- * @returns {string} The sliced string with complete characters
65
- *
66
44
  * @example
67
45
  * char_slice('Hello 😀 World', 6, 8) // Returns: '😀 ' (emoji stays intact)
68
46
  * char_slice('a👋🏽b', 1, 2) // Returns: '👋🏽' (skin tone modifier included)
69
47
  */
70
- export function char_slice(str: string, start: number, end?: number): string;
48
+ export declare function char_slice(str: string, start: number, end?: number | undefined): string;
71
49
  /**
72
50
  * Convert UTF-16 code unit offset to grapheme cluster offset within a string
73
51
  *
74
52
  * Converts DOM selection offsets (which use UTF-16 code units) to character-based
75
53
  * offsets (grapheme clusters) for consistent text manipulation.
76
54
  *
77
- * @param {string} str - The string to convert offsets within
78
- * @param {number} utf16_offset - The UTF-16 code unit offset from DOM
79
- * @returns {number} The corresponding grapheme cluster offset
80
- *
81
55
  * @example
82
56
  * // For string "a😀b" where 😀 uses 2 UTF-16 code units
83
57
  * utf16_to_char_offset("a😀b", 3) // Returns: 2 (position after emoji)
84
58
  */
85
- export function utf16_to_char_offset(str: string, utf16_offset: number): number;
59
+ export declare function utf16_to_char_offset(str: string, utf16_offset: number): number;
86
60
  /**
87
61
  * Convert grapheme cluster offset to UTF-16 code unit offset within a string
88
62
  *
89
63
  * Converts character-based offsets (grapheme clusters) to DOM selection offsets
90
64
  * (UTF-16 code units) for proper DOM selection positioning.
91
65
  *
92
- * @param {string} str - The string to convert offsets within
93
- * @param {number} char_offset - The grapheme cluster offset
94
- * @returns {number} The corresponding UTF-16 code unit offset for DOM operations
95
- *
96
66
  * @example
97
67
  * // For string "a😀b" where 😀 uses 2 UTF-16 code units
98
68
  * char_to_utf16_offset("a😀b", 2) // Returns: 3 (UTF-16 position after emoji)
99
69
  */
100
- export function char_to_utf16_offset(str: string, char_offset: number): number;
70
+ export declare function char_to_utf16_offset(str: string, char_offset: number): number;
101
71
  /**
102
- * Splits an annotated text at the specified character position.
72
+ * Splits a text value at the specified character position.
103
73
  *
104
74
  * Marks and annotations that span the split point will be divided
105
75
  * appropriately, with offsets adjusted for each resulting part.
106
76
  *
107
- * @param {AnnotatedText} text_value - Annotated text object
108
- * @param {number} at_position - Character position where to split (0-based)
109
- * @returns {[AnnotatedText, AnnotatedText]} Tuple of [left_part, right_part]
110
- *
111
77
  * @example
112
78
  * split_text({content: "Hello world", marks: [{start_offset: 6, end_offset: 11, node_id: "strong"}], annotations: []}, 8)
113
79
  * // Returns:
@@ -116,52 +82,39 @@ export function char_to_utf16_offset(str: string, char_offset: number): number;
116
82
  * // {content: "rld", marks: [{start_offset: 0, end_offset: 3, node_id: "strong"}], annotations: []}
117
83
  * // ]
118
84
  */
119
- export function split_text(text_value: AnnotatedText, at_position: number): [AnnotatedText, AnnotatedText];
85
+ export declare function split_text(text_value: Text, at_position: number): [Text, Text];
120
86
  /**
121
- * Joins two annotated texts into a single annotated text.
87
+ * Joins two text values into a single text value.
122
88
  *
123
89
  * Marks and annotations from the second text will have their offsets shifted
124
90
  * by the length of the first text. Adjacent ranges referencing the same node
125
91
  * will be merged.
126
92
  *
127
- * @param {AnnotatedText} first_text - First annotated text object
128
- * @param {AnnotatedText} second_text - Second annotated text object
129
- * @returns {AnnotatedText} Combined annotated text object
130
- *
131
93
  * @example
132
94
  * join_text({content: "Hello wo", marks: [{start_offset: 6, end_offset: 8, node_id: "strong"}], annotations: []}, {content: "rld", marks: [{start_offset: 0, end_offset: 3, node_id: "strong"}], annotations: []})
133
95
  * // Returns: {content: "Hello world", marks: [{start_offset: 6, end_offset: 11, node_id: "strong"}], annotations: []}
134
96
  */
135
- export function join_text(first_text: AnnotatedText, second_text: AnnotatedText): AnnotatedText;
97
+ export declare function join_text(first_text: Text, second_text: Text): Text;
136
98
  /**
137
99
  * Convert snake_case string to PascalCase
138
100
  *
139
- * @param {string} str - The snake_case string to convert
140
- * @returns {string} The converted PascalCase string
141
- *
142
101
  * @example
143
102
  * snake_to_pascal('list_item') // Returns: 'ListItem'
144
103
  */
145
- export function snake_to_pascal(str: string): string;
104
+ export declare function snake_to_pascal(str: string): string;
105
+ export declare const PATH_SEPARATOR = "__";
146
106
  /**
147
107
  * Check whether a string can be used as a Svedit path segment.
148
108
  *
149
109
  * Path string segments include node ids and schema property names. Keeping
150
110
  * them restricted makes serialized paths reversible, valid as HTML ids, and
151
111
  * safe to use as CSS anchor-name suffixes.
152
- *
153
- * @param {string} segment
154
- * @returns {boolean}
155
112
  */
156
- export function is_path_string_segment_valid(segment: string): boolean;
113
+ export declare function is_path_string_segment_valid(segment: string): boolean;
157
114
  /**
158
115
  * Assert that a string can be used as a Svedit path segment.
159
- *
160
- * @param {string} segment
161
- * @param {string} [label]
162
- * @returns {void}
163
116
  */
164
- export function assert_path_string_segment(segment: string, label?: string): void;
117
+ export declare function assert_path_string_segment(segment: string, label?: string): void;
165
118
  /**
166
119
  * Serialize a document path while preserving whether each segment is a
167
120
  * property/key string or an array index number.
@@ -169,65 +122,46 @@ export function assert_path_string_segment(segment: string, label?: string): voi
169
122
  * The result is reversible and safe to use as a data attribute value, HTML id,
170
123
  * or CSS anchor-name suffix.
171
124
  *
172
- * @param {Array<string | number>} path
173
- * @returns {string}
174
- *
175
125
  * @example
176
126
  * serialize_path(['page_1', 'body', 0, 'items']) // Returns: 'page_1__body__0__items'
177
127
  */
178
- export function serialize_path(path: Array<string | number>): string;
128
+ export declare function serialize_path(path: DocumentPath): string;
179
129
  /**
180
130
  * Deserialize a path string produced by serialize_path.
181
131
  *
182
- * @param {string} serialized_path
183
- * @returns {Array<string | number>}
184
- *
185
132
  * @example
186
133
  * deserialize_path('page_1__body__0__items') // Returns: ['page_1', 'body', 0, 'items']
187
134
  */
188
- export function deserialize_path(serialized_path: string): Array<string | number>;
135
+ export declare function deserialize_path(serialized_path: string): DocumentPath;
189
136
  /**
190
137
  * Compare two document paths segment-by-segment, preserving segment types.
191
- *
192
- * @param {Array<string | number>} a
193
- * @param {Array<string | number>} b
194
- * @returns {boolean}
195
138
  */
196
- export function paths_equal(a: Array<string | number>, b: Array<string | number>): boolean;
139
+ export declare function paths_equal(a: DocumentPath, b: DocumentPath): boolean;
197
140
  /**
198
141
  * Like traverse, but returns only node ids in depth-first order and never
199
142
  * clones nodes. Use this when only the reachable id set is needed (e.g.
200
143
  * reference bookkeeping) — traverse() deep-clones every visited node,
201
144
  * which is wasteful for id-only consumers.
202
145
  *
203
- * @param {string} node_id - The ID of the node to start traversing from
204
- * @param {object} schema - The document schema
205
- * @param {Record<string, any>} nodes - All document nodes
206
- * @returns {string[]} Node ids in depth-first order (entry point last)
146
+ * @returns Node ids in depth-first order (entry point last)
207
147
  */
208
- export function traverse_ids(node_id: string, schema: object, nodes: Record<string, any>): string[];
209
- export function traverse(node_id: any, schema: any, nodes: any): any[];
148
+ export declare function traverse_ids(node_id: string, schema: DocumentSchema, nodes: Record<string, DocumentNode>): string[];
149
+ export declare function traverse(node_id: string, schema: DocumentSchema, nodes: Record<string, DocumentNode>): DocumentNode[];
210
150
  /**
211
151
  * Extracts the normalized range from a text or node selection.
212
152
  * Returns start and end offsets in document order (start <= end), regardless of selection direction.
213
- * @param {Selection} [selection] - The selection to extract the range from
214
- * @returns {SelectionRange | null} The normalized selection range, or null if selection is null, undefined, or a property selection
153
+ * Returns null if selection is null, undefined, or a property selection.
215
154
  */
216
- export function get_selection_range(selection?: Selection): SelectionRange | null;
217
- export function is_selection_collapsed(selection: any): boolean;
155
+ export declare function get_selection_range(selection?: Selection | null): SelectionRange | null;
156
+ export declare function is_selection_collapsed(selection?: Selection | null): boolean;
218
157
  /**
219
158
  * Adjust ranges (marks or annotations) after deleting a sequence range.
220
159
  *
221
- * Works for both annotated text (character offsets) and annotated node arrays
160
+ * Works for both text values (character offsets) and node arrays
222
161
  * (node offsets).
223
- *
224
- * @param {Array<import('./types.d.ts').Attachment>} ranges
225
- * @param {number} start
226
- * @param {number} end
227
- * @returns {{ranges: Array<import('./types.d.ts').Attachment>, removed_node_ids: string[]}}
228
162
  */
229
- export function adjust_ranges_for_deletion(ranges: Array<import("./types.d.ts").Attachment>, start: number, end: number): {
230
- ranges: Array<import("./types.d.ts").Attachment>;
163
+ export declare function adjust_ranges_for_deletion(ranges: Array<Attachment>, start: number, end: number): {
164
+ ranges: Array<Attachment>;
231
165
  removed_node_ids: string[];
232
166
  };
233
167
  /**
@@ -235,38 +169,25 @@ export function adjust_ranges_for_deletion(ranges: Array<import("./types.d.ts").
235
169
  *
236
170
  * Insertion inside a range extends it. Insertion exactly at either edge
237
171
  * stays outside the range.
238
- *
239
- * @param {Array<import('./types.d.ts').Attachment>} ranges
240
- * @param {number} offset
241
- * @param {number} length
242
- * @returns {Array<import('./types.d.ts').Attachment>}
243
172
  */
244
- export function adjust_ranges_for_insertion(ranges: Array<import("./types.d.ts").Attachment>, offset: number, length: number): Array<import("./types.d.ts").Attachment>;
173
+ export declare function adjust_ranges_for_insertion(ranges: Array<Attachment>, offset: number, length: number): Array<Attachment>;
245
174
  /**
246
175
  * Check whether ranges are non-empty and mutually exclusive.
247
- *
248
- * @param {Array<import('./types.d.ts').Attachment>} ranges
249
- * @param {number} [length]
250
- * @returns {boolean}
251
176
  */
252
- export function are_ranges_exclusive(ranges: Array<import("./types.d.ts").Attachment>, length?: number): boolean;
177
+ export declare function are_ranges_exclusive(ranges: Array<Attachment>, length?: number): boolean;
253
178
  /**
254
- * Calculates abstract fragment ranges from a length and marks.
255
- *
256
- * @param {number} length - Length of the sequence (e.g. text length or array length)
257
- * @param {Array<import('./types.d.ts').Mark>} marks - Array of marks
258
- * @param {import('./types.d.ts').SelectionRange} [selection_highlight_range] - Optional selection highlight range
259
- * @returns {Array<{type: 'content' | 'mark' | 'selection_highlight', start_offset: number, end_offset: number, mark_index?: number, node_id?: string}>}
179
+ * A fragment range calculated from a sequence length, marks, and an optional
180
+ * selection highlight range.
260
181
  */
261
- export function calculate_fragment_ranges(length: number, marks: Array<import("./types.d.ts").Mark>, selection_highlight_range?: import("./types.d.ts").SelectionRange): Array<{
262
- type: "content" | "mark" | "selection_highlight";
182
+ export type FragmentRange = {
183
+ type: 'content' | 'mark' | 'selection_highlight';
263
184
  start_offset: number;
264
185
  end_offset: number;
265
186
  mark_index?: number;
266
187
  node_id?: string;
267
- }>;
268
- export const PATH_SEPARATOR: "__";
269
- import type { AnnotatedText } from './types.d.ts';
270
- import type { Selection } from './types.d.ts';
271
- import type { SelectionRange } from './types.d.ts';
188
+ };
189
+ /**
190
+ * Calculates abstract fragment ranges from a length and marks.
191
+ */
192
+ export declare function calculate_fragment_ranges(length: number, marks: Array<Mark>, selection_highlight_range?: SelectionRange | null): Array<FragmentRange>;
272
193
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/lib/utils.js"],"names":[],"mappings":"AAMA;;;;;;;GAOG;AACH,8CAFa,OAAO,CAanB;AAED;;;;;;;GAOG;AACH,qCAFa,OAAO,CASnB;AAGD;;;GAGG;AACH,6CAFa,OAAO,CAUnB;AAED;;;;;;;;;;;;;GAaG;AACH,qCARW,MAAM,GACJ,MAAM,CASlB;AAGD;;;;;;;;;;;;;;GAcG;AACH,iCATW,MAAM,SACN,MAAM,GACJ,MAAM,CAUlB;AAED;;;;;;;;;;;;;;GAcG;AACH,gCATW,MAAM,SACN,MAAM,QACN,MAAM,GACJ,MAAM,CAYlB;AAED;;;;;;;;;;;;;GAaG;AACH,0CARW,MAAM,gBACN,MAAM,GACJ,MAAM,CAmBlB;AAED;;;;;;;;;;;;;GAaG;AACH,0CARW,MAAM,eACN,MAAM,GACJ,MAAM,CAelB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,uCAZW,aAAa,eACb,MAAM,GACJ,CAAC,aAAa,EAAE,aAAa,CAAC,CAuC1C;AAED;;;;;;;;;;;;;;GAcG;AACH,sCARW,aAAa,eACb,aAAa,GACX,aAAa,CAgDzB;AAED;;;;;;;;GAQG;AACH,qCANW,MAAM,GACJ,MAAM,CAUlB;AAMD;;;;;;;;;GASG;AACH,sDAHW,MAAM,GACJ,OAAO,CAQnB;AAED;;;;;;GAMG;AACH,oDAJW,MAAM,UACN,MAAM,GACJ,IAAI,CAQhB;AAED;;;;;;;;;;;;GAYG;AACH,qCANW,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GACpB,MAAM,CAmBlB;AAED;;;;;;;;GAQG;AACH,kDANW,MAAM,GACJ,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAuBlC;AAED;;;;;;GAMG;AACH,+BAJW,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KACtB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GACpB,OAAO,CAKnB;AAED;;;;;;;;;;GAUG;AACH,sCALW,MAAM,UACN,MAAM,SACN,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,MAAM,EAAE,CAkCpB;AAED,uEAsCC;AAED;;;;;GAKG;AACH,gDAHW,SAAS,GACP,cAAc,GAAG,IAAI,CAWjC;AAED,gEAMC;AAED;;;;;;;;;;GAUG;AACH,mDALW,KAAK,CAAC,OAAO,cAAc,EAAE,UAAU,CAAC,SACxC,MAAM,OACN,MAAM,GACJ;IAAC,MAAM,EAAE,KAAK,CAAC,OAAO,cAAc,EAAE,UAAU,CAAC,CAAC;IAAC,gBAAgB,EAAE,MAAM,EAAE,CAAA;CAAC,CAkC1F;AAED;;;;;;;;;;GAUG;AACH,oDALW,KAAK,CAAC,OAAO,cAAc,EAAE,UAAU,CAAC,UACxC,MAAM,UACN,MAAM,GACJ,KAAK,CAAC,OAAO,cAAc,EAAE,UAAU,CAAC,CAsBpD;AAED;;;;;;GAMG;AACH,6CAJW,KAAK,CAAC,OAAO,cAAc,EAAE,UAAU,CAAC,WACxC,MAAM,GACJ,OAAO,CAgBnB;AAED;;;;;;;GAOG;AACH,kDALW,MAAM,SACN,KAAK,CAAC,OAAO,cAAc,EAAE,IAAI,CAAC,8BAClC,OAAO,cAAc,EAAE,cAAc,GACnC,KAAK,CAAC;IAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,qBAAqB,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAuDtJ;AA3XD,6BAA8B,IAAI,CAAC;mCA1SwD,cAAc;+BAAd,cAAc;oCAAd,cAAc"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/lib/utils.ts"],"names":[],"mappings":"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"}