@pilotiq/pilotiq 0.12.0 → 0.13.1
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/.turbo/turbo-build.log +2 -2
- package/CHANGELOG.md +19 -0
- package/dist/pageData/helpers.d.ts +16 -0
- package/dist/pageData/helpers.d.ts.map +1 -1
- package/dist/pageData/helpers.js +61 -1
- package/dist/pageData/helpers.js.map +1 -1
- package/dist/pageData.d.ts +1 -1
- package/dist/pageData.d.ts.map +1 -1
- package/dist/pageData.js +1 -1
- package/dist/pageData.js.map +1 -1
- package/dist/react/FormCollabBindingRegistry.d.ts +33 -98
- package/dist/react/FormCollabBindingRegistry.d.ts.map +1 -1
- package/dist/react/FormCollabBindingRegistry.js.map +1 -1
- package/dist/react/FormStateContext.d.ts +1 -35
- package/dist/react/FormStateContext.d.ts.map +1 -1
- package/dist/react/FormStateContext.js +15 -92
- package/dist/react/FormStateContext.js.map +1 -1
- package/dist/react/RowCoordsContext.d.ts +19 -0
- package/dist/react/RowCoordsContext.d.ts.map +1 -0
- package/dist/react/RowCoordsContext.js +6 -0
- package/dist/react/RowCoordsContext.js.map +1 -0
- package/dist/react/fields/BuilderInput.d.ts.map +1 -1
- package/dist/react/fields/BuilderInput.js +78 -49
- package/dist/react/fields/BuilderInput.js.map +1 -1
- package/dist/react/fields/MarkdownInput.d.ts.map +1 -1
- package/dist/react/fields/MarkdownInput.js +35 -125
- package/dist/react/fields/MarkdownInput.js.map +1 -1
- package/dist/react/fields/RepeaterInput.d.ts.map +1 -1
- package/dist/react/fields/RepeaterInput.js +104 -60
- package/dist/react/fields/RepeaterInput.js.map +1 -1
- package/dist/react/fields/TextLikeInput.d.ts +11 -9
- package/dist/react/fields/TextLikeInput.d.ts.map +1 -1
- package/dist/react/fields/TextLikeInput.js +59 -189
- package/dist/react/fields/TextLikeInput.js.map +1 -1
- package/dist/react/fields/repeaterReconcile.d.ts +66 -0
- package/dist/react/fields/repeaterReconcile.d.ts.map +1 -0
- package/dist/react/fields/repeaterReconcile.js +96 -0
- package/dist/react/fields/repeaterReconcile.js.map +1 -0
- package/dist/react/formStateHelpers.d.ts +0 -15
- package/dist/react/formStateHelpers.d.ts.map +1 -1
- package/dist/react/formStateHelpers.js +0 -91
- package/dist/react/formStateHelpers.js.map +1 -1
- package/dist/react/index.d.ts +1 -1
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js.map +1 -1
- package/dist/react/schemaRenderer/form/FormRenderer.d.ts.map +1 -1
- package/dist/react/schemaRenderer/form/FormRenderer.js +10 -0
- package/dist/react/schemaRenderer/form/FormRenderer.js.map +1 -1
- package/package.json +1 -1
- package/src/pageData/helpers.ts +55 -1
- package/src/pageData.test.ts +67 -0
- package/src/pageData.ts +1 -0
- package/src/react/FormCollabBindingRegistry.ts +34 -91
- package/src/react/FormStateContext.tsx +14 -126
- package/src/react/RowCoordsContext.tsx +23 -0
- package/src/react/fields/BuilderInput.tsx +75 -39
- package/src/react/fields/MarkdownInput.tsx +42 -129
- package/src/react/fields/RepeaterInput.tsx +107 -48
- package/src/react/fields/TextLikeInput.tsx +67 -225
- package/src/react/fields/repeaterReconcile.test.ts +114 -0
- package/src/react/fields/repeaterReconcile.ts +104 -0
- package/src/react/formStateHelpers.test.ts +0 -99
- package/src/react/formStateHelpers.ts +0 -83
- package/src/react/index.ts +0 -2
- package/src/react/schemaRenderer/form/FormRenderer.tsx +10 -0
- package/dist/react/fields/textDelta.d.ts +0 -44
- package/dist/react/fields/textDelta.d.ts.map +0 -1
- package/dist/react/fields/textDelta.js +0 -80
- package/dist/react/fields/textDelta.js.map +0 -1
- package/src/react/fields/textDelta.test.ts +0 -141
- package/src/react/fields/textDelta.ts +0 -86
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState, } from 'react';
|
|
3
|
-
import { collectFieldDefaults, collectRowArrayFieldNames,
|
|
3
|
+
import { collectFieldDefaults, collectRowArrayFieldNames, findFieldMeta, parseFormDataToNested, readNestedValue, routeBindingWrite, writeNestedValue, } from './formStateHelpers.js';
|
|
4
4
|
import { runJsHandler } from './fieldJsHandler.js';
|
|
5
5
|
import { useToast } from './Toaster.js';
|
|
6
6
|
import { useCollabRoom } from './CollabRoomContext.js';
|
|
@@ -53,7 +53,6 @@ export function useFieldState(name) {
|
|
|
53
53
|
triggerLive: () => { },
|
|
54
54
|
pending: false,
|
|
55
55
|
errors: [],
|
|
56
|
-
textBinding: null,
|
|
57
56
|
};
|
|
58
57
|
}
|
|
59
58
|
// Dotted-path fields (inner Repeater rows) always render uncontrolled
|
|
@@ -66,37 +65,8 @@ export function useFieldState(name) {
|
|
|
66
65
|
triggerLive: (valueOverride) => ctx.triggerLive(name, valueOverride),
|
|
67
66
|
pending: ctx.fieldStatus(name) === 'pending',
|
|
68
67
|
errors: ctx.errors[name] ?? [],
|
|
69
|
-
// Phase F.6 — top-level text fields resolve from the binding-mount
|
|
70
|
-
// text stash. Phase F.5c — dotted-path row leaves resolve through
|
|
71
|
-
// `getRowTextBinding` when the field is text-shaped AND the row's
|
|
72
|
-
// `__id` is already stamped in the values map. Outside a collab
|
|
73
|
-
// room, for non-text fields, or before `addRow` has settled the
|
|
74
|
-
// row's id, the lookup returns null and `BoundTextInput` falls
|
|
75
|
-
// back to today's uncontrolled-input path.
|
|
76
|
-
textBinding: dotted
|
|
77
|
-
? resolveRowTextBinding(ctx, name)
|
|
78
|
-
: (ctx.textBindings?.get(name) ?? null),
|
|
79
68
|
};
|
|
80
69
|
}
|
|
81
|
-
/**
|
|
82
|
-
* Phase F.5c — dotted-name `TextBinding` resolver. Returns `null`
|
|
83
|
-
* whenever any precondition fails so the caller's renderer can take a
|
|
84
|
-
* single branch on null vs non-null.
|
|
85
|
-
*/
|
|
86
|
-
function resolveRowTextBinding(ctx, dottedName) {
|
|
87
|
-
if (!ctx.rowTextLeaves || !ctx.getRowTextBinding)
|
|
88
|
-
return null;
|
|
89
|
-
const parsed = parseRowFieldPath(dottedName);
|
|
90
|
-
if (!parsed)
|
|
91
|
-
return null;
|
|
92
|
-
const set = ctx.rowTextLeaves.get(parsed.arrayName);
|
|
93
|
-
if (!set?.has(parsed.fieldName))
|
|
94
|
-
return null;
|
|
95
|
-
const rowId = rowIdAtIndex(ctx.values, parsed.arrayName, parsed.index);
|
|
96
|
-
if (!rowId)
|
|
97
|
-
return null;
|
|
98
|
-
return ctx.getRowTextBinding(parsed.arrayName, rowId, parsed.fieldName);
|
|
99
|
-
}
|
|
100
70
|
/** Provider component for the controlled form path. Holds the values map,
|
|
101
71
|
* the current form meta (replaced wholesale on live POST), and the
|
|
102
72
|
* per-field live trigger. Mounted by `FormRenderer` when the form has a
|
|
@@ -107,22 +77,11 @@ export function FormStateProvider({ initialMeta, initialErrors, children, fetchI
|
|
|
107
77
|
const [errors, setErrors] = useState(initialErrors);
|
|
108
78
|
const [pendingNames, setPendingNames] = useState(() => new Set());
|
|
109
79
|
const [inFlight, setInFlight] = useState(false);
|
|
110
|
-
// Phase F.
|
|
111
|
-
//
|
|
112
|
-
// a ref) so consumers of
|
|
113
|
-
//
|
|
114
|
-
// existing `setValuesState` overlay below already triggers one when the
|
|
115
|
-
// room has pre-existing state.
|
|
116
|
-
const [textBindings, setTextBindings] = useState(null);
|
|
117
|
-
// Phase F.5 — per-Repeater/Builder row-array stash. Same lifecycle as
|
|
118
|
-
// `textBindings`: populated on collab mount when the binding implements
|
|
119
|
-
// F.5 row methods, cleared on unmount.
|
|
80
|
+
// Phase F.5 — per-Repeater/Builder row-array stash. Populated on
|
|
81
|
+
// collab mount when the binding implements F.5 row methods, cleared
|
|
82
|
+
// on unmount. Stored in state (not a ref) so consumers of
|
|
83
|
+
// `useRowBinding` re-render once the bindings land.
|
|
120
84
|
const [rowBindings, setRowBindings] = useState(null);
|
|
121
|
-
// Phase F.5c — per-array set of text-shaped row leaves + a pre-bound
|
|
122
|
-
// resolver. Both populated at binding mount when the active binding
|
|
123
|
-
// implements `getRowTextBinding`; cleared on unmount.
|
|
124
|
-
const [rowTextLeaves, setRowTextLeaves] = useState(null);
|
|
125
|
-
const [getRowTextBinding, setGetRowTextBinding] = useState(null);
|
|
126
85
|
const { notify } = useToast();
|
|
127
86
|
// Track an incrementing in-flight id so out-of-order responses are dropped.
|
|
128
87
|
// useRef (not useState) so React StrictMode dev double-invokes don't
|
|
@@ -177,27 +136,6 @@ export function FormStateProvider({ initialMeta, initialErrors, children, fetchI
|
|
|
177
136
|
if (Object.keys(synced).length > 0) {
|
|
178
137
|
setValuesState((prev) => ({ ...prev, ...synced }));
|
|
179
138
|
}
|
|
180
|
-
// Phase F.6 — ask the binding for a `TextBinding` on every top-level
|
|
181
|
-
// field name. The text/non-text allowlist lives in the binding impl,
|
|
182
|
-
// not in core: the binding returns `null` for non-text fields and
|
|
183
|
-
// text fields opted out via `.collab(false)`. `getTextBinding` is
|
|
184
|
-
// optional on the contract — F1-era plugins that haven't implemented
|
|
185
|
-
// it short-circuit the whole stash and every text field stays on the
|
|
186
|
-
// LWW path. We stash only the non-null answers. Cleanup is owned by
|
|
187
|
-
// `binding.destroy()` (expected to cascade into every issued
|
|
188
|
-
// `TextBinding`).
|
|
189
|
-
if (binding.getTextBinding) {
|
|
190
|
-
const textStash = new Map();
|
|
191
|
-
for (const fieldName of Object.keys(valuesRef.current)) {
|
|
192
|
-
if (fieldName.includes('.'))
|
|
193
|
-
continue;
|
|
194
|
-
const tb = binding.getTextBinding(fieldName);
|
|
195
|
-
if (tb)
|
|
196
|
-
textStash.set(fieldName, tb);
|
|
197
|
-
}
|
|
198
|
-
if (textStash.size > 0)
|
|
199
|
-
setTextBindings(textStash);
|
|
200
|
-
}
|
|
201
139
|
// Phase F.5 — build a `RowBindingApi` per top-level Repeater/Builder
|
|
202
140
|
// field when the binding implements all three lifecycle methods. The
|
|
203
141
|
// walk reads from formMeta (structural — fields exist regardless of
|
|
@@ -205,10 +143,9 @@ export function FormStateProvider({ initialMeta, initialErrors, children, fetchI
|
|
|
205
143
|
// the array name so `RepeaterInput` calls `rb.add(rowId, …)` rather
|
|
206
144
|
// than `binding.addRow(name, rowId, …)`. Partial F.5 impls (e.g. a
|
|
207
145
|
// binding that has addRow but not reorderRows) skip the stash — the
|
|
208
|
-
// contract says all three or nothing.
|
|
209
|
-
// exposed separately via `getRowTextBinding` and stays optional.
|
|
146
|
+
// contract says all three or nothing.
|
|
210
147
|
if (binding.addRow && binding.removeRow && binding.reorderRows) {
|
|
211
|
-
const { addRow, removeRow, reorderRows, subscribeRows } = binding;
|
|
148
|
+
const { addRow, removeRow, reorderRows, subscribeRows, getRowOrder } = binding;
|
|
212
149
|
const arrayNames = collectRowArrayFieldNames(formMetaRef.current);
|
|
213
150
|
if (arrayNames.length > 0) {
|
|
214
151
|
const rowStash = new Map();
|
|
@@ -224,26 +161,18 @@ export function FormStateProvider({ initialMeta, initialErrors, children, fetchI
|
|
|
224
161
|
subscribe: subscribeRows
|
|
225
162
|
? (fn) => subscribeRows.call(binding, arrayName, fn)
|
|
226
163
|
: () => () => { },
|
|
164
|
+
// `getRowOrder` is optional — bindings that ship row CRUD
|
|
165
|
+
// without a snapshot read (test stubs, older plugins) get a
|
|
166
|
+
// `[]` substitute. The renderer's reconciler treats empty as
|
|
167
|
+
// "no orphans known" and no-ops, which is the safest fallback.
|
|
168
|
+
current: getRowOrder
|
|
169
|
+
? () => getRowOrder.call(binding, arrayName)
|
|
170
|
+
: () => [],
|
|
227
171
|
});
|
|
228
172
|
}
|
|
229
173
|
setRowBindings(rowStash);
|
|
230
174
|
}
|
|
231
175
|
}
|
|
232
|
-
// Phase F.5c — capture the per-array text-leaf allowlist + bind the
|
|
233
|
-
// row-text resolver to the active binding. `getRowTextBinding` may
|
|
234
|
-
// be absent on partial F.5 impls; we expose the resolver as null in
|
|
235
|
-
// that case so `useFieldState` short-circuits cleanly.
|
|
236
|
-
if (binding.getRowTextBinding) {
|
|
237
|
-
const leaves = collectRowTextLeavesByArray(formMetaRef.current);
|
|
238
|
-
if (leaves.size > 0) {
|
|
239
|
-
setRowTextLeaves(leaves);
|
|
240
|
-
const bound = binding.getRowTextBinding;
|
|
241
|
-
// useState's functional-updater overload would invoke the
|
|
242
|
-
// stored function during set; wrapping in a fresh closure keeps
|
|
243
|
-
// React's setState path from confusing it for an updater fn.
|
|
244
|
-
setGetRowTextBinding(() => (arrayName, rowId, fieldName) => bound.call(binding, arrayName, rowId, fieldName));
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
176
|
// Subscribe to remote changes. Local writes ALSO trigger this
|
|
248
177
|
// (Yjs observers fire on local transactions too) — the per-key
|
|
249
178
|
// Object.is short-circuit below collapses them into no-op renders.
|
|
@@ -264,10 +193,7 @@ export function FormStateProvider({ initialMeta, initialErrors, children, fetchI
|
|
|
264
193
|
unsubscribe();
|
|
265
194
|
binding.destroy();
|
|
266
195
|
bindingRef.current = null;
|
|
267
|
-
setTextBindings(null);
|
|
268
196
|
setRowBindings(null);
|
|
269
|
-
setRowTextLeaves(null);
|
|
270
|
-
setGetRowTextBinding(null);
|
|
271
197
|
};
|
|
272
198
|
// `valuesRef.current` is intentionally read once at mount — initial
|
|
273
199
|
// values seed the binding; subsequent edits flow through `setValue`
|
|
@@ -495,11 +421,8 @@ export function FormStateProvider({ initialMeta, initialErrors, children, fetchI
|
|
|
495
421
|
formMeta,
|
|
496
422
|
inFlight,
|
|
497
423
|
fieldStatus,
|
|
498
|
-
textBindings,
|
|
499
424
|
rowBindings,
|
|
500
|
-
|
|
501
|
-
getRowTextBinding,
|
|
502
|
-
}), [values, setValue, triggerLive, errors, applyErrors, formMeta, inFlight, fieldStatus, textBindings, rowBindings, rowTextLeaves, getRowTextBinding]);
|
|
425
|
+
}), [values, setValue, triggerLive, errors, applyErrors, formMeta, inFlight, fieldStatus, rowBindings]);
|
|
503
426
|
return (_jsx(FormStateContext.Provider, { value: api, children: children }));
|
|
504
427
|
}
|
|
505
428
|
//# sourceMappingURL=FormStateContext.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormStateContext.js","sourceRoot":"","sources":["../../src/react/FormStateContext.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormStateContext.js","sourceRoot":"","sources":["../../src/react/FormStateContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Phase 1 — row-text Tiptap-backed collab plan
|
|
4
|
+
* (`pilotiq-pro/docs/plans/collab-row-text-tiptap-backed.md`).
|
|
5
|
+
*
|
|
6
|
+
* Each Repeater / Builder row mounts a `<RowCoordsContext.Provider>`
|
|
7
|
+
* around its children so dotted-path text leaves can compose a
|
|
8
|
+
* fragment-key that includes the stable `rowId` (survives reorders).
|
|
9
|
+
* Top-level fields see `null` and fall through to bare-name fragment
|
|
10
|
+
* routing.
|
|
11
|
+
*/
|
|
12
|
+
export interface RowCoords {
|
|
13
|
+
arrayName: string;
|
|
14
|
+
rowIndex: number;
|
|
15
|
+
rowId: string;
|
|
16
|
+
}
|
|
17
|
+
export declare const RowCoordsContext: React.Context<RowCoords | null>;
|
|
18
|
+
export declare function useRowCoords(): RowCoords | null;
|
|
19
|
+
//# sourceMappingURL=RowCoordsContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RowCoordsContext.d.ts","sourceRoot":"","sources":["../../src/react/RowCoordsContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAG,MAAM,CAAA;IACjB,KAAK,EAAM,MAAM,CAAA;CAClB;AAED,eAAO,MAAM,gBAAgB,iCAAwC,CAAA;AAErE,wBAAgB,YAAY,IAAI,SAAS,GAAG,IAAI,CAE/C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RowCoordsContext.js","sourceRoot":"","sources":["../../src/react/RowCoordsContext.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAkBxD,MAAM,CAAC,MAAM,gBAAgB,GAAG,aAAa,CAAmB,IAAI,CAAC,CAAA;AAErE,MAAM,UAAU,YAAY;IAC1B,OAAO,UAAU,CAAC,gBAAgB,CAAC,CAAA;AACrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BuilderInput.d.ts","sourceRoot":"","sources":["../../../src/react/fields/BuilderInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkE,MAAM,OAAO,CAAA;AAEtF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"BuilderInput.d.ts","sourceRoot":"","sources":["../../../src/react/fields/BuilderInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkE,MAAM,OAAO,CAAA;AAEtF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAkG1D;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EACF,IAAI,EACJ,QAAQ,GACT,EAAE;IACD,EAAE,EAAQ,WAAW,CAAA;IACrB,IAAI,EAAM,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;CAClB,GAAG,KAAK,CAAC,YAAY,CA0erB"}
|
|
@@ -5,9 +5,11 @@ import { Button } from '../ui/button.js';
|
|
|
5
5
|
import { SchemaRenderer } from '../SchemaRenderer.js';
|
|
6
6
|
import { FormIdContext, useFormState, useRowBinding } from '../FormStateContext.js';
|
|
7
7
|
import { findFieldMeta } from '../formStateHelpers.js';
|
|
8
|
+
import { RowCoordsContext } from '../RowCoordsContext.js';
|
|
8
9
|
import { useIconFor } from '../icon-context.js';
|
|
9
10
|
import { reorderRows, ExtraActionStrip, buildGridContainer } from './RepeaterInput.js';
|
|
10
11
|
import { syncRowGates } from './syncRowGates.js';
|
|
12
|
+
import { consumeReconcileFlag, computeReconcilePlan } from './repeaterReconcile.js';
|
|
11
13
|
import { RowChromeIconButton, ReorderGrip, CollapseChevron, BulkCollapseHeader, resolveRowChrome, DEFAULT_MOVE_UP, DEFAULT_MOVE_DOWN, DEFAULT_CLONE, DEFAULT_DELETE, } from './rowChromeButton.js';
|
|
12
14
|
import { generateRowId, makeAccordionStorage, makeCollapsedStorage, } from './rowState.js';
|
|
13
15
|
import { useRowReorderDnd } from './useRowReorderDnd.js';
|
|
@@ -94,11 +96,9 @@ export function BuilderInput({ el, name, disabled, }) {
|
|
|
94
96
|
// the first event — without it, the picker dropdown choice doesn't
|
|
95
97
|
// propagate until the user makes their first inner-field edit.
|
|
96
98
|
const rowBinding = useRowBinding(name);
|
|
97
|
-
//
|
|
98
|
-
// row
|
|
99
|
-
//
|
|
100
|
-
// Without this stamp the F.5c per-row Y.Text path stays null on Builder
|
|
101
|
-
// and inner text fields never sync. Mirrors the same fix in RepeaterInput.
|
|
99
|
+
// Mirror row identities into the form's values map so dotted row-leaf
|
|
100
|
+
// consumers can resolve the row's `__id` via `rowIdAtIndex(ctx.values,
|
|
101
|
+
// name, i)`. Mirrors the same plumbing in RepeaterInput.
|
|
102
102
|
const formStateForIds = useFormState();
|
|
103
103
|
const ctxSetValue = formStateForIds?.setValue;
|
|
104
104
|
useEffect(() => {
|
|
@@ -164,6 +164,33 @@ export function BuilderInput({ el, name, disabled, }) {
|
|
|
164
164
|
});
|
|
165
165
|
});
|
|
166
166
|
}, [rowBinding, blocksByName, meta.blocks]);
|
|
167
|
+
// Phase A reconciliation for `Builder.relationship` PK-switch — mirrors
|
|
168
|
+
// the effect in `RepeaterInput`. See its comment + the plan doc:
|
|
169
|
+
// `pilotiq-pro/docs/plans/repeater-relationship-pk-switch.md`.
|
|
170
|
+
useEffect(() => {
|
|
171
|
+
if (!rowBinding)
|
|
172
|
+
return;
|
|
173
|
+
if (!consumeReconcileFlag(formId))
|
|
174
|
+
return;
|
|
175
|
+
const timer = setTimeout(() => {
|
|
176
|
+
const plan = computeReconcilePlan({
|
|
177
|
+
current: rowBinding.current(),
|
|
178
|
+
authoritative: initialRows.map(r => r.id),
|
|
179
|
+
});
|
|
180
|
+
for (const id of plan.toRemove)
|
|
181
|
+
rowBinding.remove(id);
|
|
182
|
+
// For Builder, the row carries a block `type` discriminator; seed
|
|
183
|
+
// it on the add path so peers' picker dropdowns see the right
|
|
184
|
+
// block (matches the existing add path in `addBlock`). The block
|
|
185
|
+
// type comes from initialRows when the row is server-rendered.
|
|
186
|
+
for (const id of plan.toAdd) {
|
|
187
|
+
const row = initialRows.find(r => r.id === id);
|
|
188
|
+
rowBinding.add(id, row?.type ? { type: row.type } : {});
|
|
189
|
+
}
|
|
190
|
+
}, 1500);
|
|
191
|
+
return () => clearTimeout(timer);
|
|
192
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
193
|
+
}, [rowBinding, formId]);
|
|
167
194
|
const [collapsed, setCollapsed] = useState(() => accordion ? {} : initSeedCollapsed(initialRows, formId, name, defaultCollapsed, collapsible));
|
|
168
195
|
// Accordion mode: single open row id (null = all collapsed). See
|
|
169
196
|
// RepeaterInput for the seeding semantics — Builder mirrors it exactly.
|
|
@@ -277,52 +304,48 @@ export function BuilderInput({ el, name, disabled, }) {
|
|
|
277
304
|
}
|
|
278
305
|
};
|
|
279
306
|
const moveRow = (id, dir) => {
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
let
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
return next;
|
|
305
|
-
});
|
|
306
|
-
if (newOrder !== null)
|
|
307
|
-
rowBinding?.reorder(newOrder);
|
|
307
|
+
const idx = rows.findIndex(r => r.id === id);
|
|
308
|
+
if (idx < 0)
|
|
309
|
+
return;
|
|
310
|
+
let next;
|
|
311
|
+
if (dir === -1) {
|
|
312
|
+
let target = idx - 1;
|
|
313
|
+
while (target >= 0 && rows[target]?.hidden)
|
|
314
|
+
target--;
|
|
315
|
+
if (target < 0)
|
|
316
|
+
return;
|
|
317
|
+
next = reorderRows(rows, idx, target);
|
|
318
|
+
}
|
|
319
|
+
else {
|
|
320
|
+
let target = idx + 1;
|
|
321
|
+
while (target < rows.length && rows[target]?.hidden)
|
|
322
|
+
target++;
|
|
323
|
+
if (target >= rows.length)
|
|
324
|
+
return;
|
|
325
|
+
next = reorderRows(rows, idx, target + 1);
|
|
326
|
+
}
|
|
327
|
+
if (next === rows)
|
|
328
|
+
return;
|
|
329
|
+
setRows(next);
|
|
330
|
+
rowBinding?.reorder(next.map(r => r.id));
|
|
308
331
|
};
|
|
309
332
|
// ── DnD state (skipped when buttonsOnly) ────────────────
|
|
310
333
|
const dndEnabled = reorderable && !buttonsOnly && !disabled;
|
|
311
334
|
const { dragId, dropAt, onDragStart: onRowDragStart, onDragOver: onRowDragOver, onDrop: onRowDrop, onDragEnd: onRowDragEnd, } = useRowReorderDnd({
|
|
312
335
|
enabled: dndEnabled,
|
|
313
336
|
onDrop: (fromId, at) => {
|
|
314
|
-
|
|
315
|
-
setRows
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
337
|
+
// See RepeaterInput's matching onDrop comment — closure-mutation
|
|
338
|
+
// through setRows's updater is unreliable when other state updates
|
|
339
|
+
// are batched (useRowReorderDnd nulls dragId/dropAt right before
|
|
340
|
+
// calling this).
|
|
341
|
+
const fromIdx = rows.findIndex(r => r.id === fromId);
|
|
342
|
+
if (fromIdx < 0)
|
|
343
|
+
return;
|
|
344
|
+
const next = reorderRows(rows, fromIdx, at);
|
|
345
|
+
if (next === rows)
|
|
346
|
+
return;
|
|
347
|
+
setRows(next);
|
|
348
|
+
rowBinding?.reorder(next.map(r => r.id));
|
|
326
349
|
},
|
|
327
350
|
});
|
|
328
351
|
// ── Inner-field live re-resolve (mirrors RepeaterInput) ─
|
|
@@ -529,12 +552,18 @@ function BuilderRow({ row, block, index, isFirstVisible, isLastVisible, name, di
|
|
|
529
552
|
// `name.<i>.type`.
|
|
530
553
|
const dataPrefix = `${name}.${index}.data`;
|
|
531
554
|
const namespaced = useMemo(() => row.children.map(c => prefixFieldNames(c, dataPrefix)), [row.children, dataPrefix]);
|
|
555
|
+
// Row coords for dotted-path text leaves under this row — composes
|
|
556
|
+
// fragment-key `${arrayName}.${rowId}.${fieldName}` (Phase 1 of
|
|
557
|
+
// collab-row-text-tiptap-backed.md). `parseRowFieldPath` strips the
|
|
558
|
+
// Builder-specific `data` segment, so the coords use the array name +
|
|
559
|
+
// the row's stable id without referencing the dialect.
|
|
560
|
+
const rowCoords = useMemo(() => ({ arrayName: name, rowIndex: index, rowId: row.id }), [name, index, row.id]);
|
|
532
561
|
const RowIcon = useIconFor(showIcons ? block?.icon : undefined);
|
|
533
562
|
const blockLabel = block?.label ?? row.type ?? 'Block';
|
|
534
563
|
const numberPrefix = showNumbers ? `${index + 1}. ` : '';
|
|
535
564
|
const headerLabel = row.itemLabel ?? `${numberPrefix}${blockLabel}`;
|
|
536
565
|
if (row.hidden) {
|
|
537
|
-
return (_jsxs("div", { style: { display: 'none' }, "data-pilotiq-builder-row": "hidden", children: [_jsx("input", { type: "hidden", name: `${name}.${index}.__id`, value: row.id, readOnly: true }), _jsx("input", { type: "hidden", name: `${name}.${index}.type`, value: row.type, readOnly: true }), _jsx(SchemaRenderer, { elements: namespaced })] }));
|
|
566
|
+
return (_jsx(RowCoordsContext.Provider, { value: rowCoords, children: _jsxs("div", { style: { display: 'none' }, "data-pilotiq-builder-row": "hidden", children: [_jsx("input", { type: "hidden", name: `${name}.${index}.__id`, value: row.id, readOnly: true }), _jsx("input", { type: "hidden", name: `${name}.${index}.type`, value: row.type, readOnly: true }), _jsx(SchemaRenderer, { elements: namespaced })] }) }));
|
|
538
567
|
}
|
|
539
568
|
if (row.unknownType || !block) {
|
|
540
569
|
// Stale block type — keep envelope round-tripping but show a clear
|
|
@@ -559,9 +588,9 @@ function BuilderRow({ row, block, index, isFirstVisible, isLastVisible, name, di
|
|
|
559
588
|
}
|
|
560
589
|
: {};
|
|
561
590
|
const innerColumns = block.columns && block.columns > 1 ? block.columns : 1;
|
|
562
|
-
return (_jsxs("div", { className: `rounded-md border bg-card transition-opacity ${isDragging ? 'opacity-50' : ''}`, "data-pilotiq-builder-row": "", ...dragProps, children: [_jsxs("div", { className: "flex items-center gap-2 border-b px-3 py-2", children: [reorderable && !buttonsOnly && canReorder && (_jsx(ReorderGrip, { disabled: disabled, buttons: buttons })), collapsible && (_jsx(CollapseChevron, { isCollapsed: isCollapsed, disabled: disabled, buttons: buttons, onToggle: onToggleCollapse })), RowIcon && _jsx(RowIcon, { className: "size-4 shrink-0 text-muted-foreground" }), _jsx("span", { className: "flex-1 truncate text-sm font-medium", children: headerLabel }), _jsx("input", { type: "hidden", name: `${name}.${index}.__id`, value: row.id, readOnly: true }), _jsx("input", { type: "hidden", name: `${name}.${index}.type`, value: row.type, readOnly: true }), reorderable && canReorder && (_jsxs(_Fragment, { children: [_jsx(RowChromeIconButton, { defaults: DEFAULT_MOVE_UP, override: buttons?.moveUp, disabled: disabled || isFirstVisible, onClick: onMoveUp }), _jsx(RowChromeIconButton, { defaults: DEFAULT_MOVE_DOWN, override: buttons?.moveDown, disabled: disabled || isLastVisible, onClick: onMoveDown })] })), row.extraActions && row.extraActions.length > 0 && (_jsx(ExtraActionStrip, { actions: row.extraActions, rowPath: rowPath, disabled: disabled })), cloneable && canClone && (_jsx(RowChromeIconButton, { defaults: DEFAULT_CLONE, override: buttons?.clone, disabled: disabled || atMax, onClick: onClone })), deletable && canDelete && (_jsx(RowChromeIconButton, { defaults: DEFAULT_DELETE, override: buttons?.delete, disabled: disabled || atMin, onClick: onRemove }))] }), _jsx("div", { className: "p-3", style: isCollapsed ? { display: 'none' } : undefined, children: innerColumns > 1
|
|
563
|
-
|
|
564
|
-
|
|
591
|
+
return (_jsx(RowCoordsContext.Provider, { value: rowCoords, children: _jsxs("div", { className: `rounded-md border bg-card transition-opacity ${isDragging ? 'opacity-50' : ''}`, "data-pilotiq-builder-row": "", ...dragProps, children: [_jsxs("div", { className: "flex items-center gap-2 border-b px-3 py-2", children: [reorderable && !buttonsOnly && canReorder && (_jsx(ReorderGrip, { disabled: disabled, buttons: buttons })), collapsible && (_jsx(CollapseChevron, { isCollapsed: isCollapsed, disabled: disabled, buttons: buttons, onToggle: onToggleCollapse })), RowIcon && _jsx(RowIcon, { className: "size-4 shrink-0 text-muted-foreground" }), _jsx("span", { className: "flex-1 truncate text-sm font-medium", children: headerLabel }), _jsx("input", { type: "hidden", name: `${name}.${index}.__id`, value: row.id, readOnly: true }), _jsx("input", { type: "hidden", name: `${name}.${index}.type`, value: row.type, readOnly: true }), reorderable && canReorder && (_jsxs(_Fragment, { children: [_jsx(RowChromeIconButton, { defaults: DEFAULT_MOVE_UP, override: buttons?.moveUp, disabled: disabled || isFirstVisible, onClick: onMoveUp }), _jsx(RowChromeIconButton, { defaults: DEFAULT_MOVE_DOWN, override: buttons?.moveDown, disabled: disabled || isLastVisible, onClick: onMoveDown })] })), row.extraActions && row.extraActions.length > 0 && (_jsx(ExtraActionStrip, { actions: row.extraActions, rowPath: rowPath, disabled: disabled })), cloneable && canClone && (_jsx(RowChromeIconButton, { defaults: DEFAULT_CLONE, override: buttons?.clone, disabled: disabled || atMax, onClick: onClone })), deletable && canDelete && (_jsx(RowChromeIconButton, { defaults: DEFAULT_DELETE, override: buttons?.delete, disabled: disabled || atMin, onClick: onRemove }))] }), _jsx("div", { className: "p-3", style: isCollapsed ? { display: 'none' } : undefined, children: innerColumns > 1
|
|
592
|
+
? (_jsx("div", { className: "grid gap-3", style: { gridTemplateColumns: `repeat(${innerColumns}, minmax(0, 1fr))` }, children: _jsx(SchemaRenderer, { elements: namespaced }) }))
|
|
593
|
+
: _jsx(SchemaRenderer, { elements: namespaced }) })] }) }));
|
|
565
594
|
}
|
|
566
595
|
function DropIndicator() {
|
|
567
596
|
return (_jsx("div", { "aria-hidden": "true", className: "pointer-events-none h-0.5 rounded-full bg-primary" }));
|