@pilotiq/pilotiq 0.8.2 → 0.10.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 (83) hide show
  1. package/.turbo/turbo-build.log +2 -2
  2. package/CHANGELOG.md +213 -0
  3. package/dist/Pilotiq.d.ts +55 -0
  4. package/dist/Pilotiq.d.ts.map +1 -1
  5. package/dist/Pilotiq.js +21 -0
  6. package/dist/Pilotiq.js.map +1 -1
  7. package/dist/Resource.d.ts +39 -0
  8. package/dist/Resource.d.ts.map +1 -1
  9. package/dist/Resource.js +30 -0
  10. package/dist/Resource.js.map +1 -1
  11. package/dist/index.d.ts +1 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js.map +1 -1
  14. package/dist/pageData/helpers.d.ts +19 -1
  15. package/dist/pageData/helpers.d.ts.map +1 -1
  16. package/dist/pageData/helpers.js +33 -0
  17. package/dist/pageData/helpers.js.map +1 -1
  18. package/dist/pageData/navigation.d.ts +17 -1
  19. package/dist/pageData/navigation.d.ts.map +1 -1
  20. package/dist/pageData/navigation.js +14 -0
  21. package/dist/pageData/navigation.js.map +1 -1
  22. package/dist/pageData/resourcePages.d.ts.map +1 -1
  23. package/dist/pageData/resourcePages.js +17 -2
  24. package/dist/pageData/resourcePages.js.map +1 -1
  25. package/dist/pageData.d.ts +1 -1
  26. package/dist/pageData.d.ts.map +1 -1
  27. package/dist/pageData.js +1 -1
  28. package/dist/pageData.js.map +1 -1
  29. package/dist/react/AppShell.d.ts +5 -0
  30. package/dist/react/AppShell.d.ts.map +1 -1
  31. package/dist/react/AppShell.js +1 -1
  32. package/dist/react/AppShell.js.map +1 -1
  33. package/dist/react/FormCollabBindingRegistry.d.ts +71 -1
  34. package/dist/react/FormCollabBindingRegistry.d.ts.map +1 -1
  35. package/dist/react/FormCollabBindingRegistry.js.map +1 -1
  36. package/dist/react/FormStateContext.d.ts +17 -0
  37. package/dist/react/FormStateContext.d.ts.map +1 -1
  38. package/dist/react/FormStateContext.js +44 -3
  39. package/dist/react/FormStateContext.js.map +1 -1
  40. package/dist/react/RecordWrapperGate.d.ts +19 -6
  41. package/dist/react/RecordWrapperGate.d.ts.map +1 -1
  42. package/dist/react/RecordWrapperGate.js +18 -8
  43. package/dist/react/RecordWrapperGate.js.map +1 -1
  44. package/dist/react/fields/MarkdownInput.d.ts.map +1 -1
  45. package/dist/react/fields/MarkdownInput.js +105 -3
  46. package/dist/react/fields/MarkdownInput.js.map +1 -1
  47. package/dist/react/fields/TextLikeInput.d.ts +10 -0
  48. package/dist/react/fields/TextLikeInput.d.ts.map +1 -1
  49. package/dist/react/fields/TextLikeInput.js +179 -0
  50. package/dist/react/fields/TextLikeInput.js.map +1 -1
  51. package/dist/react/fields/textDelta.d.ts +44 -0
  52. package/dist/react/fields/textDelta.d.ts.map +1 -0
  53. package/dist/react/fields/textDelta.js +80 -0
  54. package/dist/react/fields/textDelta.js.map +1 -0
  55. package/dist/react/index.d.ts +2 -2
  56. package/dist/react/index.d.ts.map +1 -1
  57. package/dist/react/index.js +1 -1
  58. package/dist/react/index.js.map +1 -1
  59. package/dist/react/parseRecordEditUrl.d.ts +33 -9
  60. package/dist/react/parseRecordEditUrl.d.ts.map +1 -1
  61. package/dist/react/parseRecordEditUrl.js +40 -2
  62. package/dist/react/parseRecordEditUrl.js.map +1 -1
  63. package/package.json +1 -1
  64. package/src/Pilotiq.ts +64 -0
  65. package/src/Resource.test.ts +44 -0
  66. package/src/Resource.ts +58 -0
  67. package/src/index.ts +2 -0
  68. package/src/pageData/helpers.ts +40 -1
  69. package/src/pageData/navigation.ts +32 -1
  70. package/src/pageData/resourcePages.ts +17 -1
  71. package/src/pageData.test.ts +137 -0
  72. package/src/pageData.ts +1 -0
  73. package/src/react/AppShell.tsx +6 -1
  74. package/src/react/FormCollabBindingRegistry.ts +63 -1
  75. package/src/react/FormStateContext.tsx +62 -3
  76. package/src/react/RecordWrapperGate.tsx +26 -8
  77. package/src/react/fields/MarkdownInput.tsx +100 -3
  78. package/src/react/fields/TextLikeInput.tsx +203 -1
  79. package/src/react/fields/textDelta.test.ts +141 -0
  80. package/src/react/fields/textDelta.ts +86 -0
  81. package/src/react/index.ts +9 -1
  82. package/src/react/parseRecordEditUrl.test.ts +48 -1
  83. package/src/react/parseRecordEditUrl.ts +52 -13
@@ -1,10 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useMemo, useRef, useState } from 'react';
2
+ import { useEffect, useMemo, useRef, useState } from 'react';
3
3
  import { marked } from 'marked';
4
4
  import { BoldIcon, ItalicIcon, StrikethroughIcon, LinkIcon, HeadingIcon, ListIcon, ListOrderedIcon, QuoteIcon, CodeIcon, PaperclipIcon, Loader2Icon, } from 'lucide-react';
5
5
  import { useFieldState } from '../FormStateContext.js';
6
6
  import { useToast } from '../Toaster.js';
7
7
  import { Button } from '../ui/button.js';
8
+ import { computeDelta, preserveCursor } from './textDelta.js';
8
9
  /**
9
10
  * Plain-markdown editor. Stores the raw string under `name`. Renders a
10
11
  * tab switcher (Write / Preview), a configurable formatting toolbar, and
@@ -22,12 +23,93 @@ export function MarkdownInput({ name, defaultValue, disabled, placeholder, toolb
22
23
  const fs = useFieldState(name);
23
24
  const { notify } = useToast();
24
25
  const textareaRef = useRef(null);
26
+ // Phase F.6 — IME composition gate. Set between `compositionstart` /
27
+ // `compositionend`; the textarea's onChange skips `applyDelta` while
28
+ // composing so intermediate chars don't emit ops. Lives at the
29
+ // component scope so the onChange and composition handlers share it.
30
+ const isComposingRef = useRef(false);
25
31
  const initial = useMemo(() => stringValue(defaultValue), []);
26
32
  const [localValue, setLocalValue] = useState(initial);
27
33
  const [tab, setTab] = useState('write');
28
34
  const [busy, setBusy] = useState(false);
29
- const value = fs.controlled ? stringValue(fs.value) : localValue;
35
+ // Phase F.6 when a `<RecordCollabRoom>` is mounted and the field has
36
+ // a `TextBinding`, the textarea is bound to a `Y.Text` and edits emit
37
+ // `TextDelta`s. Mirrors the architecture in `TextLikeInput.tsx` but
38
+ // wired in-line because MarkdownInput has its own toolbar + Preview
39
+ // tab that also need to flow through the binding.
40
+ const binding = fs.textBinding;
41
+ const [boundValue, setBoundValue] = useState(() => binding?.read() ?? initial);
42
+ const boundValueRef = useRef(boundValue);
43
+ useEffect(() => { boundValueRef.current = boundValue; }, [boundValue]);
44
+ // On binding swap: read current Y.Text state. If non-empty, lift it
45
+ // into local + form-map state. If empty (no peer has typed yet), leave
46
+ // the SSR-default-derived `boundValue` showing — first edit will
47
+ // emit a replace-from-empty delta that atomically populates Y.Text.
48
+ // No client-side seed: Y.Text isn't safe to seed under concurrent
49
+ // first-mounters (see @pilotiq-pro/collab `formCollabBinding.ts`).
50
+ useEffect(() => {
51
+ if (!binding)
52
+ return;
53
+ const next = binding.read();
54
+ if (next.length > 0) {
55
+ setBoundValue(next);
56
+ boundValueRef.current = next;
57
+ fs.setValue(next);
58
+ }
59
+ // eslint-disable-next-line react-hooks/exhaustive-deps
60
+ }, [binding]);
61
+ // Subscribe to remote changes. Local-echoes are filtered by the
62
+ // `next === prev` guard. Cursor preserved via the same heuristic
63
+ // used in `TextLikeInput.BoundTextInput`.
64
+ useEffect(() => {
65
+ if (!binding)
66
+ return;
67
+ return binding.observe((next) => {
68
+ const prev = boundValueRef.current;
69
+ if (next === prev)
70
+ return;
71
+ const ta = textareaRef.current;
72
+ const cursor = ta?.selectionStart ?? next.length;
73
+ const restored = preserveCursor(prev, next, cursor);
74
+ setBoundValue(next);
75
+ boundValueRef.current = next;
76
+ fs.setValue(next);
77
+ requestAnimationFrame(() => {
78
+ if (!ta)
79
+ return;
80
+ if (document.activeElement !== ta)
81
+ return;
82
+ try {
83
+ ta.setSelectionRange(restored, restored);
84
+ }
85
+ catch { /* defensive */ }
86
+ });
87
+ });
88
+ // eslint-disable-next-line react-hooks/exhaustive-deps
89
+ }, [binding]);
90
+ const value = binding
91
+ ? boundValue
92
+ : (fs.controlled ? stringValue(fs.value) : localValue);
30
93
  const setValue = (next) => {
94
+ if (binding) {
95
+ // Compute against current Y.Text contents (not the local ref) so:
96
+ // - first edit against empty Y.Text → `insert@0 <whole>` atomic
97
+ // populate (no separate seed op needed);
98
+ // - after a remote-applied update or server-resolve replace, the
99
+ // delta reflects the actual current shared state, not stale
100
+ // local bookkeeping.
101
+ const before = binding.read();
102
+ if (next !== before) {
103
+ const delta = computeDelta(before, next);
104
+ if (delta)
105
+ binding.applyDelta(delta);
106
+ setBoundValue(next);
107
+ boundValueRef.current = next;
108
+ }
109
+ fs.setValue(next);
110
+ fs.triggerLive(next);
111
+ return;
112
+ }
31
113
  if (fs.controlled) {
32
114
  fs.setValue(next);
33
115
  fs.triggerLive(next);
@@ -227,7 +309,27 @@ export function MarkdownInput({ name, defaultValue, disabled, placeholder, toolb
227
309
  ? _jsx(Loader2Icon, { className: "size-4 animate-spin" })
228
310
  : _jsx(Icon, { className: "size-4" }) }, b));
229
311
  }) }))] }), tab === 'write' ? (_jsx("textarea", { ref: textareaRef, name: name, id: name, className: "w-full resize-y bg-transparent px-3 py-2 text-sm font-mono leading-relaxed outline-none disabled:opacity-50", style: taStyle, placeholder: placeholder, disabled: disabled, ...(fs.controlled
230
- ? { value, onChange: (e) => setValue(e.target.value) }
312
+ ? {
313
+ value,
314
+ onChange: (e) => {
315
+ // Phase F.6 — when the binding is active and the user
316
+ // is mid-IME, paint locally and hold the delta until
317
+ // compositionend so we never emit ops for the
318
+ // intermediate composing chars.
319
+ if (binding && isComposingRef.current) {
320
+ setBoundValue(e.target.value);
321
+ return;
322
+ }
323
+ setValue(e.target.value);
324
+ },
325
+ ...(binding ? {
326
+ onCompositionStart: () => { isComposingRef.current = true; },
327
+ onCompositionEnd: (e) => {
328
+ isComposingRef.current = false;
329
+ setValue(e.currentTarget.value);
330
+ },
331
+ } : {}),
332
+ }
231
333
  : { defaultValue: initial, onChange: (e) => setLocalValue(e.target.value) }), onPaste: onPaste, onKeyDown: onKeyDown })) : (_jsxs(_Fragment, { children: [_jsx("input", { type: "hidden", name: name, value: value, readOnly: true }), _jsx("div", { className: "prose prose-sm dark:prose-invert max-w-none px-3 py-2", style: taStyle, dangerouslySetInnerHTML: { __html: previewHtml || '<p class="text-muted-foreground italic">Nothing to preview</p>' } })] }))] }));
232
334
  }
233
335
  function TabButton({ active, onClick, children }) {
@@ -1 +1 @@
1
- {"version":3,"file":"MarkdownInput.js","sourceRoot":"","sources":["../../../src/react/fields/MarkdownInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MarkdownInput.js","sourceRoot":"","sources":["../../../src/react/fields/MarkdownInput.tsx"],"names":[],"mappings":"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"}
@@ -6,6 +6,16 @@ import type { ElementMeta } from '../../schema/Element.js';
6
6
  * `live()` fields, the input is bound to the context's values map and
7
7
  * fires the live trigger on change/blur according to the field's `live`
8
8
  * config. Outside a controlled form, falls back to plain `defaultValue`.
9
+ *
10
+ * **Phase F.6 — character-level CRDT branch.** When a `<RecordCollabRoom>`
11
+ * is mounted up-tree AND `@pilotiq-pro/collab`'s binding registered a
12
+ * `TextBinding` for this field (text-shaped fieldType + `.collab() !== false`),
13
+ * the input takes the `BoundTextInput` path: edits emit `TextDelta`s to
14
+ * the binding's `Y.Text`, remote changes flow back via `observe`, and
15
+ * cursor position survives both. The legacy whole-string LWW path
16
+ * still runs for non-text fields, non-collab forms, and masked inputs
17
+ * (mask + character-level CRDT is incompatible — peers would see raw
18
+ * keystrokes desynced from the rendered mask).
9
19
  */
10
20
  export declare function TextLikeInput({ el, name, common, type, extraProps, multiline, applyMask, }: {
11
21
  el: ElementMeta;
@@ -1 +1 @@
1
- {"version":3,"file":"TextLikeInput.d.ts","sourceRoot":"","sources":["../../../src/react/fields/TextLikeInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAK1D;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,EAC5B,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,GACzD,EAAE;IACD,EAAE,EAAU,WAAW,CAAA;IACvB,IAAI,EAAQ,MAAM,CAAA;IAClB,MAAM,EAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,IAAI,EAAQ,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,SAAS,EAAG,OAAO,CAAA;IACnB;;oDAEgD;IAChD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;CACtC,GAAG,KAAK,CAAC,YAAY,CA6CrB"}
1
+ {"version":3,"file":"TextLikeInput.d.ts","sourceRoot":"","sources":["../../../src/react/fields/TextLikeInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAO1D;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,aAAa,CAAC,EAC5B,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,GACzD,EAAE;IACD,EAAE,EAAU,WAAW,CAAA;IACvB,IAAI,EAAQ,MAAM,CAAA;IAClB,MAAM,EAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,IAAI,EAAQ,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnC,SAAS,EAAG,OAAO,CAAA;IACnB;;oDAEgD;IAChD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;CACtC,GAAG,KAAK,CAAC,YAAY,CAmErB"}
@@ -1,13 +1,25 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
2
3
  import { useFieldState } from '../FormStateContext.js';
3
4
  import { Input } from '../ui/input.js';
4
5
  import { Textarea } from '../ui/textarea.js';
6
+ import { computeDelta, preserveCursor } from './textDelta.js';
5
7
  /**
6
8
  * Bridge between controlled (FormStateProvider) and uncontrolled
7
9
  * (defaultValue) modes for text-style inputs. When inside a form with
8
10
  * `live()` fields, the input is bound to the context's values map and
9
11
  * fires the live trigger on change/blur according to the field's `live`
10
12
  * config. Outside a controlled form, falls back to plain `defaultValue`.
13
+ *
14
+ * **Phase F.6 — character-level CRDT branch.** When a `<RecordCollabRoom>`
15
+ * is mounted up-tree AND `@pilotiq-pro/collab`'s binding registered a
16
+ * `TextBinding` for this field (text-shaped fieldType + `.collab() !== false`),
17
+ * the input takes the `BoundTextInput` path: edits emit `TextDelta`s to
18
+ * the binding's `Y.Text`, remote changes flow back via `observe`, and
19
+ * cursor position survives both. The legacy whole-string LWW path
20
+ * still runs for non-text fields, non-collab forms, and masked inputs
21
+ * (mask + character-level CRDT is incompatible — peers would see raw
22
+ * keystrokes desynced from the rendered mask).
11
23
  */
12
24
  export function TextLikeInput({ el, name, common, type, extraProps, multiline, applyMask, }) {
13
25
  const fs = useFieldState(name);
@@ -17,6 +29,16 @@ export function TextLikeInput({ el, name, common, type, extraProps, multiline, a
17
29
  : {});
18
30
  const onBlurMode = liveOpts.onBlur === true;
19
31
  const mask = applyMask ?? identity;
32
+ // Phase F.6 — character-level CRDT path. Masking is mutually exclusive
33
+ // with character-level CRDT (peers would see raw keystrokes diverged
34
+ // from the local mask render); masked fields fall through to LWW.
35
+ // We read the mask from the field meta directly — `applyMask` is a
36
+ // `useCallback`-wrapped fn that's *always* defined (identity when no
37
+ // mask), so its truthiness can't gate the branch.
38
+ const hasMask = typeof el['mask'] === 'string';
39
+ if (fs.textBinding && !hasMask) {
40
+ return (_jsx(BoundTextInput, { binding: fs.textBinding, name: name, triggerLive: fs.triggerLive, onBlurMode: onBlurMode, common: common, extraProps: extraProps, type: type, multiline: multiline }));
41
+ }
20
42
  if (fs.controlled) {
21
43
  const ctxValue = fs.value !== undefined && fs.value !== null ? String(fs.value) : '';
22
44
  const onChange = (e) => {
@@ -57,5 +79,162 @@ export function TextLikeInput({ el, name, common, type, extraProps, multiline, a
57
79
  return _jsx(Textarea, { ...common, ...extraProps });
58
80
  return _jsx(Input, { ...common, type: type, ...extraProps });
59
81
  }
82
+ /**
83
+ * Phase F.6 — CRDT-bound text input. Owns its own controlled state
84
+ * because the binding's `Y.Text` is the source of truth (not the
85
+ * form's `values` map). Mirrors every committed value back into the
86
+ * form context via `fs.setValue` so submission / live re-resolve see
87
+ * the latest string.
88
+ *
89
+ * Lifecycle:
90
+ * - Mount: seed local state from `binding.read()`; mirror it into
91
+ * the form's `values` map.
92
+ * - Local edit: compute a `TextDelta` (insert / delete / replace)
93
+ * from the before/after strings and `applyDelta` to the binding.
94
+ * Eagerly update local state in the same React render so the
95
+ * controlled input doesn't lag the keystroke.
96
+ * - Remote edit: `binding.observe` fires with the post-change
97
+ * string; we replace local state and best-effort preserve the
98
+ * local cursor via `preserveCursor`. The local-echo of our own
99
+ * `applyDelta` is collapsed by the value-equality check.
100
+ * - IME composition: `applyDelta` is deferred to `compositionend`
101
+ * so the binding never sees intermediate composing chars (which
102
+ * would emit one delta per keystroke and confuse downstream
103
+ * observers).
104
+ */
105
+ function BoundTextInput({ binding, name, triggerLive, onBlurMode, common, extraProps, type, multiline, }) {
106
+ const fs = useFieldState(name);
107
+ // SSR-rendered default. Captured once at mount; used as display
108
+ // fallback while the room's `Y.Text` is still empty (the seed race
109
+ // for Y.Text isn't safe across concurrent first-mounters, so no peer
110
+ // populates it client-side — see `@pilotiq-pro/collab` for the
111
+ // rationale). First user edit emits a replace-from-empty delta that
112
+ // atomically lifts the displayed value into the CRDT.
113
+ // eslint-disable-next-line react-hooks/exhaustive-deps
114
+ const fallback = useMemo(() => stringValue(fs.value), []);
115
+ const [value, setValueLocal] = useState(() => binding.read() || fallback);
116
+ const valueRef = useRef(value);
117
+ const isComposing = useRef(false);
118
+ const inputRef = useRef(null);
119
+ useEffect(() => { valueRef.current = value; }, [value]);
120
+ // Stable ref to the form-mirror writer so the observer effect below
121
+ // doesn't tear down on every render (fs.setValue is a fresh arrow on
122
+ // every useFieldState call).
123
+ const mirrorRef = useRef(() => { });
124
+ useEffect(() => {
125
+ mirrorRef.current = (v) => { fs.setValue(v); };
126
+ });
127
+ // On mount / binding swap: read the binding's current state. If
128
+ // non-empty (i.e. someone else has already typed), display it and
129
+ // mirror into the form values map. If empty, leave the fallback
130
+ // showing — no client-side seed (see file-header comment).
131
+ useEffect(() => {
132
+ const initial = binding.read();
133
+ if (initial.length > 0) {
134
+ setValueLocal(initial);
135
+ valueRef.current = initial;
136
+ mirrorRef.current(initial);
137
+ }
138
+ }, [binding]);
139
+ // Subscribe to text-CRDT changes. Yjs fires this for BOTH local and
140
+ // remote transactions — local echoes are collapsed by the
141
+ // `next === prev` guard.
142
+ useEffect(() => {
143
+ const unsubscribe = binding.observe((next) => {
144
+ const prev = valueRef.current;
145
+ if (next === prev)
146
+ return;
147
+ const el = inputRef.current;
148
+ const cursor = el?.selectionStart ?? next.length;
149
+ const restored = preserveCursor(prev, next, cursor);
150
+ setValueLocal(next);
151
+ valueRef.current = next;
152
+ mirrorRef.current(next);
153
+ // Defer cursor restore until after React commits. Only reapply
154
+ // when the input is still focused — yanking the selection on a
155
+ // blurred field would steal focus across the page.
156
+ requestAnimationFrame(() => {
157
+ if (!el)
158
+ return;
159
+ if (document.activeElement !== el)
160
+ return;
161
+ try {
162
+ el.setSelectionRange(restored, restored);
163
+ }
164
+ catch { /* setSelectionRange unsupported on some input types — defensive */ }
165
+ });
166
+ });
167
+ return unsubscribe;
168
+ }, [binding]);
169
+ const commitDelta = useCallback((after) => {
170
+ // Compute the delta against the binding's *current* Y.Text contents
171
+ // — not the renderer's `before` ref. The two can diverge in three
172
+ // cases that all converge correctly under this approach:
173
+ // 1. First edit when Y.Text is empty: delta = `insert@0 <whole>`,
174
+ // which atomically lifts the displayed fallback into the CRDT
175
+ // without a separate seed op.
176
+ // 2. After a remote-applied update: Y.Text holds the peer's value;
177
+ // computing against it avoids "ghost" deltas that re-emit ops
178
+ // against a stale local ref.
179
+ // 3. After a server-resolve `triggerLive` replace: same as (2).
180
+ const before = binding.read();
181
+ if (after === before)
182
+ return;
183
+ const delta = computeDelta(before, after);
184
+ if (!delta)
185
+ return;
186
+ binding.applyDelta(delta);
187
+ // Eager local + form-map update so the controlled input doesn't
188
+ // wait on the observer echo to render the new keystroke. Observer
189
+ // will fire with the same string and short-circuit via the equality
190
+ // check above.
191
+ setValueLocal(after);
192
+ valueRef.current = after;
193
+ mirrorRef.current(after);
194
+ if (!onBlurMode)
195
+ triggerLive(after);
196
+ }, [binding, onBlurMode, triggerLive]);
197
+ const onChange = (e) => {
198
+ if (isComposing.current) {
199
+ // IME mid-composition — paint locally, hold the delta until commit.
200
+ setValueLocal(e.target.value);
201
+ return;
202
+ }
203
+ commitDelta(e.target.value);
204
+ };
205
+ const onCompositionStart = () => { isComposing.current = true; };
206
+ const onCompositionEnd = (e) => {
207
+ isComposing.current = false;
208
+ commitDelta(e.currentTarget.value);
209
+ };
210
+ const onBlur = () => {
211
+ if (onBlurMode)
212
+ triggerLive(valueRef.current);
213
+ };
214
+ const setRef = (el) => {
215
+ inputRef.current = el;
216
+ };
217
+ const props = {
218
+ ...common,
219
+ ...extraProps,
220
+ defaultValue: undefined,
221
+ value,
222
+ onChange,
223
+ onBlur,
224
+ onCompositionStart,
225
+ onCompositionEnd,
226
+ ref: setRef,
227
+ };
228
+ if (multiline)
229
+ return _jsx(Textarea, { ...props });
230
+ return _jsx(Input, { ...props, type: type });
231
+ }
60
232
  function identity(v) { return v; }
233
+ function stringValue(v) {
234
+ if (v === undefined || v === null)
235
+ return '';
236
+ if (typeof v === 'string')
237
+ return v;
238
+ return String(v);
239
+ }
61
240
  //# sourceMappingURL=TextLikeInput.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextLikeInput.js","sourceRoot":"","sources":["../../../src/react/fields/TextLikeInput.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,EAC5B,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,GAYzD;IACC,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IAC9B,MAAM,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;IAC1B,MAAM,QAAQ,GAAG,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI;QAC/D,CAAC,CAAC,OAAkD;QACpD,CAAC,CAAC,EAAE,CAAC,CAAA;IACP,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAA;IAC3C,MAAM,IAAI,GAAG,SAAS,IAAI,QAAQ,CAAA;IAElC,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACpF,MAAM,QAAQ,GAAG,CAAC,CAA4D,EAAQ,EAAE;YACtF,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtC,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;YACtB,IAAI,CAAC,UAAU;gBAAE,EAAE,CAAC,WAAW,EAAE,CAAA;QACnC,CAAC,CAAA;QACD,MAAM,MAAM,GAAG,GAAS,EAAE;YACxB,IAAI,UAAU;gBAAE,EAAE,CAAC,WAAW,EAAE,CAAA;QAClC,CAAC,CAAA;QACD,MAAM,KAAK,GAAG;YACZ,GAAG,MAAM;YACT,GAAG,UAAU;YACb,YAAY,EAAE,SAAS;YACvB,KAAK,EAAS,QAAQ;YACtB,QAAQ;YACR,MAAM;SACP,CAAA;QACD,IAAI,SAAS;YAAE,OAAO,KAAC,QAAQ,OAAM,KAA+C,GAAI,CAAA;QACxF,OAAO,KAAC,KAAK,OAAM,KAA4C,EAAE,IAAI,EAAE,IAAI,GAAI,CAAA;IACjF,CAAC;IAED,iEAAiE;IACjE,qEAAqE;IACrE,kEAAkE;IAClE,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,CAAC,CAA0D,EAAQ,EAAE;YACnF,MAAM,MAAM,GAAG,CAAC,CAAC,aAAa,CAAA;YAC9B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC,CAAA;QACD,IAAI,SAAS;YAAE,OAAO,KAAC,QAAQ,OAAM,MAAgD,KAAM,UAAU,EAAE,OAAO,EAAE,OAAO,GAAI,CAAA;QAC3H,OAAO,KAAC,KAAK,OAAM,MAA6C,EAAE,IAAI,EAAE,IAAI,KAAM,UAAU,EAAE,OAAO,EAAE,OAAO,GAAI,CAAA;IACpH,CAAC;IAED,IAAI,SAAS;QAAE,OAAO,KAAC,QAAQ,OAAM,MAAgD,KAAM,UAAU,GAAI,CAAA;IACzG,OAAO,KAAC,KAAK,OAAM,MAA6C,EAAE,IAAI,EAAE,IAAI,KAAM,UAAU,GAAI,CAAA;AAClG,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,IAAY,OAAO,CAAC,CAAA,CAAC,CAAC"}
1
+ {"version":3,"file":"TextLikeInput.js","sourceRoot":"","sources":["../../../src/react/fields/TextLikeInput.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import type { TextDelta } from '../FormCollabBindingRegistry.js';
2
+ /**
3
+ * Phase F.6 — derive a single character-level edit op from two strings.
4
+ *
5
+ * Strategy: find the longest common prefix and suffix between `before`
6
+ * and `after`; whatever's left in the middle is the changed region.
7
+ *
8
+ * - middle-after empty + middle-before non-empty → `delete`
9
+ * - middle-before empty + middle-after non-empty → `insert`
10
+ * - both non-empty → `replace`
11
+ * - both empty (identical strings) → `null`
12
+ *
13
+ * This correctly handles the common edit shapes: single-key insert,
14
+ * single-key backspace, multi-char paste replacing a selection, IME
15
+ * commits, accent-key composition. It does NOT preserve user intent
16
+ * when the same character appears at multiple positions and the edit
17
+ * could be attributed to either occurrence — Yjs's per-character
18
+ * identity makes that distinction lossy at the string-diff layer
19
+ * (the `Y.Text` itself maintains item identity internally). For v1
20
+ * we accept the ambiguity; the CRDT semantics still converge.
21
+ */
22
+ export declare function computeDelta(before: string, after: string): TextDelta | null;
23
+ /**
24
+ * Phase F.6 — best-effort cursor anchor across a remote-applied edit.
25
+ *
26
+ * - Edit landed AFTER cursor (cursor inside the common prefix) → keep
27
+ * cursor where it is.
28
+ * - Edit landed BEFORE cursor → shift
29
+ * cursor by `after.length − before.length` so its character-offset
30
+ * into the post-edit string matches its pre-edit anchor.
31
+ * - Edit landed OVERLAPPING the cursor → cursor
32
+ * ends up at the boundary between the changed region and the
33
+ * unchanged suffix (which `Math.max(0, cursor + delta)` produces
34
+ * naturally and clamps to the new bounds).
35
+ *
36
+ * This is a heuristic, not a Yjs `RelativePosition`. Two peers typing
37
+ * at the exact same insertion point can still see a one-character cursor
38
+ * twitch on the remote-mirror side; v2 (in-input remote carets) would
39
+ * upgrade to relative positions if/when a consumer asks. Native input
40
+ * cursors are clamped to `[0, after.length]` by every browser, so this
41
+ * function does the same to avoid `setSelectionRange` throwing.
42
+ */
43
+ export declare function preserveCursor(before: string, after: string, cursor: number): number;
44
+ //# sourceMappingURL=textDelta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textDelta.d.ts","sourceRoot":"","sources":["../../../src/react/fields/textDelta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CA8B5E;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAWpF"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Phase F.6 — derive a single character-level edit op from two strings.
3
+ *
4
+ * Strategy: find the longest common prefix and suffix between `before`
5
+ * and `after`; whatever's left in the middle is the changed region.
6
+ *
7
+ * - middle-after empty + middle-before non-empty → `delete`
8
+ * - middle-before empty + middle-after non-empty → `insert`
9
+ * - both non-empty → `replace`
10
+ * - both empty (identical strings) → `null`
11
+ *
12
+ * This correctly handles the common edit shapes: single-key insert,
13
+ * single-key backspace, multi-char paste replacing a selection, IME
14
+ * commits, accent-key composition. It does NOT preserve user intent
15
+ * when the same character appears at multiple positions and the edit
16
+ * could be attributed to either occurrence — Yjs's per-character
17
+ * identity makes that distinction lossy at the string-diff layer
18
+ * (the `Y.Text` itself maintains item identity internally). For v1
19
+ * we accept the ambiguity; the CRDT semantics still converge.
20
+ */
21
+ export function computeDelta(before, after) {
22
+ if (before === after)
23
+ return null;
24
+ let prefix = 0;
25
+ const minLen = Math.min(before.length, after.length);
26
+ while (prefix < minLen && before[prefix] === after[prefix])
27
+ prefix++;
28
+ // Walk back from each end, capped so suffix can't overlap the prefix
29
+ // on either side. Without the cap, identical strings of repeated
30
+ // chars (e.g. 'aaa' → 'aa') would consume the same byte from both
31
+ // directions and produce an empty middle on both sides.
32
+ let suffix = 0;
33
+ const maxSuffix = Math.min(before.length - prefix, after.length - prefix);
34
+ while (suffix < maxSuffix &&
35
+ before[before.length - 1 - suffix] === after[after.length - 1 - suffix]) {
36
+ suffix++;
37
+ }
38
+ const beforeMid = before.slice(prefix, before.length - suffix);
39
+ const afterMid = after.slice(prefix, after.length - suffix);
40
+ if (beforeMid.length === 0 && afterMid.length > 0) {
41
+ return { kind: 'insert', index: prefix, text: afterMid };
42
+ }
43
+ if (afterMid.length === 0 && beforeMid.length > 0) {
44
+ return { kind: 'delete', index: prefix, length: beforeMid.length };
45
+ }
46
+ return { kind: 'replace', from: prefix, to: prefix + beforeMid.length, text: afterMid };
47
+ }
48
+ /**
49
+ * Phase F.6 — best-effort cursor anchor across a remote-applied edit.
50
+ *
51
+ * - Edit landed AFTER cursor (cursor inside the common prefix) → keep
52
+ * cursor where it is.
53
+ * - Edit landed BEFORE cursor → shift
54
+ * cursor by `after.length − before.length` so its character-offset
55
+ * into the post-edit string matches its pre-edit anchor.
56
+ * - Edit landed OVERLAPPING the cursor → cursor
57
+ * ends up at the boundary between the changed region and the
58
+ * unchanged suffix (which `Math.max(0, cursor + delta)` produces
59
+ * naturally and clamps to the new bounds).
60
+ *
61
+ * This is a heuristic, not a Yjs `RelativePosition`. Two peers typing
62
+ * at the exact same insertion point can still see a one-character cursor
63
+ * twitch on the remote-mirror side; v2 (in-input remote carets) would
64
+ * upgrade to relative positions if/when a consumer asks. Native input
65
+ * cursors are clamped to `[0, after.length]` by every browser, so this
66
+ * function does the same to avoid `setSelectionRange` throwing.
67
+ */
68
+ export function preserveCursor(before, after, cursor) {
69
+ if (before === after)
70
+ return cursor;
71
+ let prefix = 0;
72
+ const minLen = Math.min(before.length, after.length);
73
+ while (prefix < minLen && before[prefix] === after[prefix])
74
+ prefix++;
75
+ if (cursor <= prefix)
76
+ return Math.min(cursor, after.length);
77
+ const delta = after.length - before.length;
78
+ return Math.max(0, Math.min(after.length, cursor + delta));
79
+ }
80
+ //# sourceMappingURL=textDelta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textDelta.js","sourceRoot":"","sources":["../../../src/react/fields/textDelta.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,KAAa;IACxD,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,IAAI,CAAA;IAEjC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACpD,OAAO,MAAM,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC;QAAE,MAAM,EAAE,CAAA;IAEpE,qEAAqE;IACrE,iEAAiE;IACjE,kEAAkE;IAClE,wDAAwD;IACxD,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;IACzE,OACE,MAAM,GAAG,SAAS;QAClB,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,EACvE,CAAC;QACD,MAAM,EAAE,CAAA;IACV,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;IAC9D,MAAM,QAAQ,GAAI,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAA;IAE5D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IAC1D,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,CAAA;IACpE,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;AACzF,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,KAAa,EAAE,MAAc;IAC1E,IAAI,MAAM,KAAK,KAAK;QAAE,OAAO,MAAM,CAAA;IAEnC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IACpD,OAAO,MAAM,GAAG,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC;QAAE,MAAM,EAAE,CAAA;IAEpE,IAAI,MAAM,IAAI,MAAM;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;IAE3D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAA;AAC5D,CAAC"}
@@ -8,12 +8,12 @@ export { PendingSuggestionsContext, usePendingSuggestions, usePendingSuggestions
8
8
  export { registerPendingSuggestionApplier, getPendingSuggestionApplier, type PendingSuggestionApplier, } from './PendingSuggestionApplierRegistry.js';
9
9
  export { CollabRoomContext, useCollabRoom, type CollabRoom, } from './CollabRoomContext.js';
10
10
  export { registerCollabExtensions, getCollabExtensions, type CollabExtensionFactory, type CollabExtensionFactoryArgs, } from './CollabExtensionFactoryRegistry.js';
11
- export { registerFormCollabBinding, getFormCollabBinding, type FormCollabBinding, type FormCollabBindingFactory, type FormCollabBindingFactoryArgs, } from './FormCollabBindingRegistry.js';
11
+ export { registerFormCollabBinding, getFormCollabBinding, type FormCollabBinding, type FormCollabBindingFactory, type FormCollabBindingFactoryArgs, type TextBinding, type TextDelta, } from './FormCollabBindingRegistry.js';
12
12
  export { registerFieldPresenceComponent, getFieldPresenceComponent, type FieldPresenceProps, } from './FieldPresenceRegistry.js';
13
13
  export { registerFieldFocusReporter, getFieldFocusReporter, type FieldFocusReporter, type FieldFocusEvent, } from './FieldFocusReporterRegistry.js';
14
14
  export { registerRecordWrapper, getRecordWrapper, type RecordWrapperProps, } from './RecordWrapperRegistry.js';
15
15
  export { RecordWrapperGate, type RecordWrapperGateProps, } from './RecordWrapperGate.js';
16
- export { parseRecordEditUrl, type RecordEditIdentity } from './parseRecordEditUrl.js';
16
+ export { parseRecordPageUrl, parseRecordEditUrl, type RecordPageIdentity, type RecordPageRole, type RecordEditIdentity, } from './parseRecordEditUrl.js';
17
17
  export { registerWidgetRenderer, getWidgetRenderer, type WidgetRendererProps, } from './widgetRegistry.js';
18
18
  export { FormStateProvider, useFieldState, useFormState, type FormStateApi, type FormStateProviderProps, type UseFieldStateResult, } from './FormStateContext.js';
19
19
  export { parseFormDataToNested } from './formStateHelpers.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,UAAU,EACV,KAAK,iBAAiB,GACvB,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACL,cAAc,EACd,KAAK,mBAAmB,EACxB,UAAU,EACV,KAAK,eAAe,GACrB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAChG,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjH,OAAO,EACL,gCAAgC,EAChC,2BAA2B,EAC3B,KAAK,6BAA6B,GACnC,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,6BAA6B,EAC7B,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,GAC3B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,gCAAgC,EAChC,2BAA2B,EAC3B,KAAK,wBAAwB,GAC9B,MAAM,uCAAuC,CAAA;AAC9C,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,KAAK,UAAU,GAChB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,wBAAwB,EACxB,mBAAmB,EACnB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,qCAAqC,CAAA;AAC5C,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,4BAA4B,EACjC,KAAK,WAAW,EAChB,KAAK,SAAS,GACf,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,KAAK,kBAAkB,GACxB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,eAAe,GACrB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,kBAAkB,GACxB,MAAM,4BAA4B,CAAA;AACnC,OAAO,EACL,iBAAiB,EACjB,KAAK,sBAAsB,GAC5B,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,kBAAkB,GACxB,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAE7D,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAA;AAE9E,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAExD,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,uBAAuB,GAC7B,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,kBAAkB,GACxB,MAAM,2BAA2B,CAAA;AAElC,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,uBAAuB,EACvB,KAAK,eAAe,EACpB,KAAK,yBAAyB,GAC/B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,GACvB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAY,oBAAoB,CAAA;AACxD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,GAC1B,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAW,gBAAgB,CAAA;AAE/C,OAAO,EACL,eAAe,EACf,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,GAC3B,MAAM,sBAAsB,CAAA;AAC7B,YAAY,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAG7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,KAAK,aAAa,IAAI,eAAe,EAAE,MAAM,eAAe,CAAA"}
@@ -13,7 +13,7 @@ export { registerFieldPresenceComponent, getFieldPresenceComponent, } from './Fi
13
13
  export { registerFieldFocusReporter, getFieldFocusReporter, } from './FieldFocusReporterRegistry.js';
14
14
  export { registerRecordWrapper, getRecordWrapper, } from './RecordWrapperRegistry.js';
15
15
  export { RecordWrapperGate, } from './RecordWrapperGate.js';
16
- export { parseRecordEditUrl } from './parseRecordEditUrl.js';
16
+ export { parseRecordPageUrl, parseRecordEditUrl, } from './parseRecordEditUrl.js';
17
17
  export { registerWidgetRenderer, getWidgetRenderer, } from './widgetRegistry.js';
18
18
  export { FormStateProvider, useFieldState, useFormState, } from './FormStateContext.js';
19
19
  export { parseFormDataToNested } from './formStateHelpers.js';