@treenity/react 3.0.1 → 3.0.3

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 (100) hide show
  1. package/README.md +1 -1
  2. package/dist/App.d.ts.map +1 -1
  3. package/dist/App.js +33 -7
  4. package/dist/App.js.map +1 -1
  5. package/dist/ComponentSection.js +1 -1
  6. package/dist/ComponentSection.js.map +1 -1
  7. package/dist/ErrorBoundary.d.ts.map +1 -1
  8. package/dist/ErrorBoundary.js +2 -1
  9. package/dist/ErrorBoundary.js.map +1 -1
  10. package/dist/Treenity.d.ts +15 -0
  11. package/dist/Treenity.d.ts.map +1 -0
  12. package/dist/Treenity.js +17 -0
  13. package/dist/Treenity.js.map +1 -0
  14. package/dist/cache.d.ts.map +1 -1
  15. package/dist/cache.js +5 -0
  16. package/dist/cache.js.map +1 -1
  17. package/dist/client-tree.d.ts.map +1 -1
  18. package/dist/client-tree.js +2 -2
  19. package/dist/client-tree.js.map +1 -1
  20. package/dist/components/ui/button.d.ts +2 -2
  21. package/dist/components/ui/button.d.ts.map +1 -1
  22. package/dist/components/ui/button.js +3 -3
  23. package/dist/components/ui/button.js.map +1 -1
  24. package/dist/components/ui/pagination.d.ts +2 -2
  25. package/dist/components/ui/pagination.d.ts.map +1 -1
  26. package/dist/components/ui/pagination.js +3 -3
  27. package/dist/components/ui/pagination.js.map +1 -1
  28. package/dist/components/ui/textarea.js +1 -1
  29. package/dist/components/ui/textarea.js.map +1 -1
  30. package/dist/events.d.ts +2 -0
  31. package/dist/events.d.ts.map +1 -1
  32. package/dist/events.js +47 -2
  33. package/dist/events.js.map +1 -1
  34. package/dist/fiber-tree.d.ts.map +1 -1
  35. package/dist/fiber-tree.js.map +1 -1
  36. package/dist/hooks.d.ts +9 -0
  37. package/dist/hooks.d.ts.map +1 -1
  38. package/dist/hooks.js +80 -5
  39. package/dist/hooks.js.map +1 -1
  40. package/dist/lib/minimd.d.ts.map +1 -1
  41. package/dist/lib/minimd.js +8 -1
  42. package/dist/lib/minimd.js.map +1 -1
  43. package/dist/lib/sanitize-href.d.ts +3 -0
  44. package/dist/lib/sanitize-href.d.ts.map +1 -0
  45. package/dist/lib/sanitize-href.js +14 -0
  46. package/dist/lib/sanitize-href.js.map +1 -0
  47. package/dist/main.d.ts +2 -0
  48. package/dist/main.d.ts.map +1 -1
  49. package/dist/main.js +14 -5
  50. package/dist/main.js.map +1 -1
  51. package/dist/mods/editor-ui/FieldLabel.d.ts.map +1 -1
  52. package/dist/mods/editor-ui/FieldLabel.js +2 -1
  53. package/dist/mods/editor-ui/FieldLabel.js.map +1 -1
  54. package/dist/mods/editor-ui/default-edit.js +4 -2
  55. package/dist/mods/editor-ui/default-edit.js.map +1 -1
  56. package/dist/mods/editor-ui/form-field.d.ts.map +1 -1
  57. package/dist/mods/editor-ui/form-field.js +3 -2
  58. package/dist/mods/editor-ui/form-field.js.map +1 -1
  59. package/dist/mods/editor-ui/type-picker.d.ts.map +1 -1
  60. package/dist/mods/editor-ui/type-picker.js +2 -1
  61. package/dist/mods/editor-ui/type-picker.js.map +1 -1
  62. package/dist/mods/treenity/preview.d.ts.map +1 -1
  63. package/dist/mods/treenity/preview.js +2 -3
  64. package/dist/mods/treenity/preview.js.map +1 -1
  65. package/dist/mods/treenity/ref-view.js +2 -1
  66. package/dist/mods/treenity/ref-view.js.map +1 -1
  67. package/dist/mods/treenity/seed.js +3 -2
  68. package/dist/mods/treenity/seed.js.map +1 -1
  69. package/dist/symbols.d.ts.map +1 -1
  70. package/dist/symbols.js +11 -5
  71. package/dist/symbols.js.map +1 -1
  72. package/package.json +4 -2
  73. package/src/App.tsx +29 -1
  74. package/src/ComponentSection.tsx +1 -1
  75. package/src/ErrorBoundary.tsx +6 -3
  76. package/src/Treenity.tsx +32 -0
  77. package/src/cache.ts +7 -0
  78. package/src/client-tree.ts +7 -7
  79. package/src/components/ui/button.tsx +4 -5
  80. package/src/components/ui/pagination.tsx +4 -9
  81. package/src/components/ui/textarea.tsx +1 -1
  82. package/src/events.ts +46 -6
  83. package/src/fiber-tree.ts +3 -3
  84. package/src/hooks.ts +73 -4
  85. package/src/lib/minimd.ts +7 -1
  86. package/src/lib/sanitize-href.ts +13 -0
  87. package/src/main.tsx +23 -11
  88. package/src/mods/editor-ui/FieldLabel.tsx +5 -4
  89. package/src/mods/editor-ui/default-edit.tsx +6 -4
  90. package/src/mods/editor-ui/form-field.tsx +4 -2
  91. package/src/mods/editor-ui/type-picker.tsx +3 -2
  92. package/src/mods/treenity/preview.tsx +6 -7
  93. package/src/mods/treenity/ref-view.tsx +11 -6
  94. package/src/mods/treenity/seed.ts +3 -2
  95. package/src/symbols.ts +12 -5
  96. package/src/bind/bind.test.ts +0 -316
  97. package/src/cache.test.ts +0 -139
  98. package/src/client-tree.test.ts +0 -116
  99. package/src/optimistic.test.ts +0 -111
  100. package/src/remote-tree.test.ts +0 -142
package/dist/events.js CHANGED
@@ -3,11 +3,40 @@
3
3
  import { applyPatch } from 'fast-json-patch';
4
4
  import * as cache from './cache';
5
5
  import { trpc } from './trpc';
6
+ // ── SSE connection events (consumed by App.tsx) ──
7
+ export const SSE_CONNECTED = 'sse-connected';
8
+ export const SSE_DISCONNECTED = 'sse-disconnected';
6
9
  let unsub = null;
10
+ let reconnectTimer = null;
11
+ let lastConfig = null;
7
12
  export function startEvents(config) {
8
13
  stopEvents();
14
+ lastConfig = config;
9
15
  const { loadChildren, getExpanded, getSelected } = config;
10
16
  const sub = trpc.events.subscribe(undefined, {
17
+ onStarted() {
18
+ window.dispatchEvent(new Event(SSE_CONNECTED));
19
+ },
20
+ onConnectionStateChange(state) {
21
+ if (state.state === 'connecting') {
22
+ window.dispatchEvent(new Event(SSE_DISCONNECTED));
23
+ }
24
+ else if (state.state === 'pending') {
25
+ // 'pending' = connected and waiting for data — SSE is alive
26
+ window.dispatchEvent(new Event(SSE_CONNECTED));
27
+ }
28
+ },
29
+ onError(err) {
30
+ console.error('[sse] subscription error (non-retryable):', err);
31
+ window.dispatchEvent(new Event(SSE_DISCONNECTED));
32
+ // tRPC exhausted retries — schedule a single delayed re-subscribe
33
+ scheduleResubscribe();
34
+ },
35
+ onStopped() {
36
+ // Server closed the stream — schedule re-subscribe
37
+ window.dispatchEvent(new Event(SSE_DISCONNECTED));
38
+ scheduleResubscribe();
39
+ },
11
40
  onData(event) {
12
41
  if (event.type === 'reconnect') {
13
42
  if (!event.preserved) {
@@ -35,8 +64,9 @@ export function startEvents(config) {
35
64
  const existing = cache.get(event.path);
36
65
  if (existing && event.patches) {
37
66
  try {
38
- applyPatch(existing, event.patches);
39
- cache.put(existing);
67
+ const patched = structuredClone(existing);
68
+ applyPatch(patched, event.patches);
69
+ cache.put(patched);
40
70
  }
41
71
  catch (e) {
42
72
  console.error('Failed to apply patches, fetching full node:', e);
@@ -69,7 +99,22 @@ export function startEvents(config) {
69
99
  });
70
100
  unsub = () => sub.unsubscribe();
71
101
  }
102
+ const RESUBSCRIBE_DELAY = 5_000;
103
+ function scheduleResubscribe() {
104
+ if (reconnectTimer || !lastConfig)
105
+ return;
106
+ console.log(`[sse] will re-subscribe in ${RESUBSCRIBE_DELAY}ms`);
107
+ reconnectTimer = setTimeout(() => {
108
+ reconnectTimer = null;
109
+ if (lastConfig)
110
+ startEvents(lastConfig);
111
+ }, RESUBSCRIBE_DELAY);
112
+ }
72
113
  export function stopEvents() {
114
+ if (reconnectTimer) {
115
+ clearTimeout(reconnectTimer);
116
+ reconnectTimer = null;
117
+ }
73
118
  if (unsub) {
74
119
  unsub();
75
120
  unsub = null;
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-tree.d.ts","sourceRoot":"","sources":["../src/fiber-tree.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAA;AA6E/C,wBAAgB,eAAe,IAAI,IAAI,CAyBtC"}
1
+ {"version":3,"file":"fiber-tree.d.ts","sourceRoot":"","sources":["../src/fiber-tree.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AA6EhD,wBAAgB,eAAe,IAAI,IAAI,CAyBtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fiber-tree.js","sourceRoot":"","sources":["../src/fiber-tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fiber-tree.js","sourceRoot":"","sources":["../src/fiber-tree.ts"],"names":[],"mappings":"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"}
package/dist/hooks.d.ts CHANGED
@@ -17,6 +17,15 @@ export declare function useChildren(parentPath: string, opts?: WatchOpts): NodeD
17
17
  export declare function set(next: NodeData): Promise<void>;
18
18
  export declare const execute: (pathOrUri: string, action: string, data?: unknown, type?: string, key?: string) => Promise<unknown>;
19
19
  export declare function useCanWrite(path: string | null): boolean;
20
+ export declare function useAutoSave(node: NodeData): readonly [{
21
+ [x: string]: unknown;
22
+ $type: string;
23
+ $acl?: import("@treenity/core").GroupPerm[];
24
+ $path: string;
25
+ $owner?: string;
26
+ $rev?: number;
27
+ $refs?: import("@treenity/core").RefEntry[];
28
+ }, (field: string, value: unknown) => void, boolean];
20
29
  /** Optimistic prediction: run a sync method locally on a cloned cached node */
21
30
  export declare function predictOptimistic<T extends object>(path: string, cls: Class<T>, key: string | undefined, fn: Function, data: unknown): void;
22
31
  export declare function watch<T = unknown>(uri: string): AsyncGenerator<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAOA,OAAO,EAAgB,KAAK,QAAQ,EAA0B,MAAM,gBAAgB,CAAC;AACrF,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAkBjE,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhD,eAAO,MAAM,gBAAgB,6CAAuB,CAAC;AAErD,wBAAgB,WAAW,IAAI,UAAU,CAIxC;AAOD,KAAK,QAAQ,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnC,wBAAgB,OAAO,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;AAC1F,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAoCnG,KAAK,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,cA0B/D;AAID,wBAAsB,GAAG,CAAC,IAAI,EAAE,QAAQ,iBAKvC;AAID,eAAO,MAAM,OAAO,GAClB,WAAW,MAAM,EAAE,QAAQ,MAAM,EAAE,OAAO,OAAO,EAAE,OAAO,MAAM,EAAE,MAAM,MAAM,qBAqB/E,CAAC;AAQF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAiBxD;AAOD,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAChD,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,EACpD,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,GAC1B,IAAI,CAcN;AA+DD,wBAAuB,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,CA8BxE"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"AAOA,OAAO,EAAgB,KAAK,QAAQ,EAA0B,MAAM,gBAAgB,CAAC;AACrF,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAkBjE,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAEhD,eAAO,MAAM,gBAAgB,6CAAuB,CAAC;AAErD,wBAAgB,WAAW,IAAI,UAAU,CAIxC;AAOD,KAAK,QAAQ,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEnC,wBAAgB,OAAO,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;AAC1F,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAoCnG,KAAK,SAAS,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,cA6B/D;AAID,wBAAsB,GAAG,CAAC,IAAI,EAAE,QAAQ,iBAYvC;AAID,eAAO,MAAM,OAAO,GAClB,WAAW,MAAM,EAAE,QAAQ,MAAM,EAAE,OAAO,OAAO,EAAE,OAAO,MAAM,EAAE,MAAM,MAAM,qBAqB/E,CAAC;AAQF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAiBxD;AAOD,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ;;;;;;;;WA+BH,MAAM,SAAS,OAAO,oBAqB5D;AAOD,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAChD,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,EACpD,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,GAC1B,IAAI,CAcN;AA+DD,wBAAuB,KAAK,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC,CA8BxE"}
package/dist/hooks.js CHANGED
@@ -57,17 +57,32 @@ export function useChildren(parentPath, opts) {
57
57
  }
58
58
  trpc.getChildren
59
59
  .query({ path: parentPath, limit: opts?.limit, watch: opts?.watch, watchNew: opts?.watchNew })
60
- .then((result) => cache.putMany(result.items, parentPath));
60
+ .then((result) => {
61
+ if (result.truncated)
62
+ console.warn(`[tree] Children of ${parentPath} truncated — results may be incomplete`);
63
+ cache.putMany(result.items, parentPath);
64
+ });
61
65
  }, [parentPath, gen, opts?.limit, opts?.watch, opts?.watchNew]);
62
66
  return useSyncExternalStore(useCallback((cb) => cache.subscribeChildren(parentPath, cb), [parentPath]), useCallback(() => cache.getChildren(parentPath), [parentPath]));
63
67
  }
64
68
  // ── set: optimistic update + server persist ──
65
69
  export async function set(next) {
70
+ const prev = cache.get(next.$path);
66
71
  cache.put(next);
67
- await tree.set(next);
68
- const fresh = await tree.get(next.$path);
69
- if (fresh)
70
- cache.put(fresh);
72
+ try {
73
+ await tree.set(next);
74
+ const fresh = await tree.get(next.$path);
75
+ if (fresh)
76
+ cache.put(fresh);
77
+ }
78
+ catch (err) {
79
+ // F15: rollback optimistic cache on server reject (validation, ACL, OCC)
80
+ if (prev)
81
+ cache.put(prev);
82
+ else
83
+ cache.remove(next.$path);
84
+ throw err;
85
+ }
71
86
  }
72
87
  // ── execute: action caller ──
73
88
  export const execute = (pathOrUri, action, data, type, key) => {
@@ -111,6 +126,66 @@ export function useCanWrite(path) {
111
126
  }, [path]);
112
127
  return (perm & W) !== 0;
113
128
  }
129
+ // ── useAutoSave: throttled auto-persist for editable views ──
130
+ // First save fires after 500ms (responsive), subsequent saves throttled to 2s.
131
+ // Returns [localData, setField, dirty] — local updates are instant, server writes are batched.
132
+ // TODO: check why unused
133
+ export function useAutoSave(node) {
134
+ const [local, setLocal] = useState({});
135
+ const dirtyRef = useRef(false);
136
+ const timerRef = useRef(null);
137
+ const savingRef = useRef(false);
138
+ const pendingRef = useRef(false);
139
+ const lastSaveRef = useRef(0);
140
+ const nodeRef = useRef(node);
141
+ nodeRef.current = node;
142
+ const flush = useCallback(async () => {
143
+ if (savingRef.current) {
144
+ pendingRef.current = true;
145
+ return;
146
+ }
147
+ if (!dirtyRef.current)
148
+ return;
149
+ savingRef.current = true;
150
+ try {
151
+ const merged = { ...nodeRef.current, ...local };
152
+ delete merged.$rev; // skip OCC — force-write
153
+ await set(merged);
154
+ dirtyRef.current = false;
155
+ lastSaveRef.current = Date.now();
156
+ }
157
+ catch (e) {
158
+ console.error('[autoSave] failed:', e);
159
+ }
160
+ finally {
161
+ savingRef.current = false;
162
+ if (pendingRef.current) {
163
+ pendingRef.current = false;
164
+ flush();
165
+ }
166
+ }
167
+ }, [local]);
168
+ const setField = useCallback((field, value) => {
169
+ setLocal(prev => ({ ...prev, [field]: value }));
170
+ dirtyRef.current = true;
171
+ if (timerRef.current)
172
+ clearTimeout(timerRef.current);
173
+ const elapsed = Date.now() - lastSaveRef.current;
174
+ const delay = elapsed > 2000 ? 500 : 2000; // first batch fast, then throttle
175
+ timerRef.current = setTimeout(() => { timerRef.current = null; flush(); }, delay);
176
+ }, [flush]);
177
+ // Flush on unmount
178
+ useEffect(() => () => {
179
+ if (timerRef.current) {
180
+ clearTimeout(timerRef.current);
181
+ flush();
182
+ }
183
+ }, [flush]);
184
+ // Reset local on node path change
185
+ useEffect(() => { setLocal({}); dirtyRef.current = false; }, [node.$path]);
186
+ const merged = useMemo(() => ({ ...node, ...local }), [node, local]);
187
+ return [merged, setField, dirtyRef.current];
188
+ }
114
189
  // ── Internals ──
115
190
  const AsyncGenFn = Object.getPrototypeOf(async function* () { }).constructor;
116
191
  const AsyncFn = Object.getPrototypeOf(async function () { }).constructor;
package/dist/hooks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"minimd.d.ts","sourceRoot":"","sources":["../../src/lib/minimd.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,CAAC;AActB,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA8E1C"}
1
+ {"version":3,"file":"minimd.d.ts","sourceRoot":"","sources":["../../src/lib/minimd.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,CAAC;AAoBtB,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CA8E1C"}
@@ -1,6 +1,7 @@
1
1
  // Minimal markdown → HTML for chat bubbles (~50 lines)
2
2
  // Covers: headers, bold, italic, inline code, code blocks, links, lists, blockquotes, hr
3
3
  import './minimd.css';
4
+ import { sanitizeHref } from './sanitize-href';
4
5
  const esc = (s) => s.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
5
6
  function inline(s) {
6
7
  return esc(s)
@@ -9,7 +10,13 @@ function inline(s) {
9
10
  .replace(/__(.+?)__/g, '<strong>$1</strong>')
10
11
  .replace(/\*(.+?)\*/g, '<em>$1</em>')
11
12
  .replace(/_(.+?)_/g, '<em>$1</em>')
12
- .replace(/\[([^\]]+)\]\(([^)]+)\)/g, '<a href="$2" target="_blank" rel="noopener">$1</a>');
13
+ .replace(/\[([^\]]+)\]\(([^)]+)\)/g, (_, text, url) => {
14
+ const safe = sanitizeHref(url);
15
+ if (!safe)
16
+ return text;
17
+ const safeUrl = safe.replace(/"/g, '&quot;');
18
+ return `<a href="${safeUrl}" target="_blank" rel="noopener">${text}</a>`;
19
+ });
13
20
  }
14
21
  export function minimd(src) {
15
22
  const lines = src.split('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"minimd.js","sourceRoot":"","sources":["../../src/lib/minimd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"minimd.js","sourceRoot":"","sources":["../../src/lib/minimd.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /** Returns sanitized URL string, or null if the protocol is unsafe. */
2
+ export declare function sanitizeHref(url: string): string | null;
3
+ //# sourceMappingURL=sanitize-href.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize-href.d.ts","sourceRoot":"","sources":["../../src/lib/sanitize-href.ts"],"names":[],"mappings":"AAMA,uEAAuE;AACvE,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKvD"}
@@ -0,0 +1,14 @@
1
+ // Allowlist-based href sanitizer — blocks javascript:, data:, vbscript:, etc.
2
+ // Strips control characters before protocol check to defeat browser bypass vectors
3
+ // (e.g. "java\tscript:" → browsers collapse to "javascript:")
4
+ const SAFE_PROTOCOL = /^(https?:|mailto:|tel:|\/|#)/i;
5
+ /** Returns sanitized URL string, or null if the protocol is unsafe. */
6
+ export function sanitizeHref(url) {
7
+ const trimmed = url.replace(/[\x00-\x20]+/g, '');
8
+ if (!trimmed)
9
+ return null;
10
+ if (SAFE_PROTOCOL.test(trimmed))
11
+ return url.trim();
12
+ return null;
13
+ }
14
+ //# sourceMappingURL=sanitize-href.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize-href.js","sourceRoot":"","sources":["../../src/lib/sanitize-href.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,mFAAmF;AACnF,8DAA8D;AAE9D,MAAM,aAAa,GAAG,+BAA+B,CAAC;AAEtD,uEAAuE;AACvE,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACnD,OAAO,IAAI,CAAC;AACd,CAAC"}
package/dist/main.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import 'reflect-metadata';
2
2
  import './load-client';
3
3
  import './root.css';
4
+ /** Mount Treenity UI into a DOM element */
5
+ export declare function boot(el?: HTMLElement | string): void;
4
6
  //# sourceMappingURL=main.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAM1B,OAAO,eAAe,CAAC;AAEvB,OAAO,YAAY,CAAC"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAM1B,OAAO,eAAe,CAAC;AAEvB,OAAO,YAAY,CAAC;AAUpB,2CAA2C;AAC3C,wBAAgB,IAAI,CAAC,EAAE,GAAE,WAAW,GAAG,MAAgB,QAWtD"}
package/dist/main.js CHANGED
@@ -2,7 +2,6 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import 'reflect-metadata';
3
3
  import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
4
4
  import { enablePatches } from 'immer';
5
- import { StrictMode } from 'react';
6
5
  import { createRoot } from 'react-dom/client';
7
6
  import { App } from './App';
8
7
  import './load-client';
@@ -10,8 +9,18 @@ import { Toaster } from './components/ui/sonner';
10
9
  import './root.css';
11
10
  enablePatches();
12
11
  const queryClient = new QueryClient();
13
- const root = document.getElementById('root');
14
- if (!root)
15
- throw new Error('No #root element');
16
- createRoot(root).render(_jsx(StrictMode, { children: _jsxs(QueryClientProvider, { client: queryClient, children: [_jsx(App, {}), _jsx(Toaster, {})] }) }));
12
+ // StrictMode off: FlowGram inversify container breaks on double-mount
13
+ // https://github.com/bytedance/flowgram.ai/issues/402
14
+ const Strict = ({ children }) => children;
15
+ /** Mount Treenity UI into a DOM element */
16
+ export function boot(el = '#root') {
17
+ const root = typeof el === 'string' ? document.querySelector(el) : el;
18
+ if (!root)
19
+ throw new Error(`Treenity boot: element "${el}" not found`);
20
+ createRoot(root).render(_jsx(Strict, { children: _jsxs(QueryClientProvider, { client: queryClient, children: [_jsx(App, {}), _jsx(Toaster, {})] }) }));
21
+ }
22
+ // Auto-boot when loaded directly (not imported)
23
+ if (typeof document !== 'undefined' && document.getElementById('root')) {
24
+ boot('#root');
25
+ }
17
26
  //# sourceMappingURL=main.js.map
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":";AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,YAAY,CAAC;AAEpB,aAAa,EAAE,CAAC;AAEhB,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;AAC7C,IAAI,CAAC,IAAI;IAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;AAC/C,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CACrB,KAAC,UAAU,cACT,MAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW,aACtC,KAAC,GAAG,KAAG,EACP,KAAC,OAAO,KAAG,IACS,GACX,CACd,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.tsx"],"names":[],"mappings":";AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,YAAY,CAAC;AAEpB,aAAa,EAAE,CAAC;AAEhB,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC,sEAAsE;AACtE,sDAAsD;AACtD,MAAM,MAAM,GAAG,CAAC,EAAE,QAAQ,EAA2B,EAAE,EAAE,CAAC,QAAQ,CAAC;AAEnE,2CAA2C;AAC3C,MAAM,UAAU,IAAI,CAAC,KAA2B,OAAO;IACrD,MAAM,IAAI,GAAG,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,EAAE,aAAa,CAAC,CAAC;IACvE,UAAU,CAAC,IAAmB,CAAC,CAAC,MAAM,CACpC,KAAC,MAAM,cACL,MAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW,aACtC,KAAC,GAAG,KAAG,EACP,KAAC,OAAO,KAAG,IACS,GACf,CACV,CAAC;AACJ,CAAC;AAED,gDAAgD;AAChD,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;IACvE,IAAI,CAAC,OAAO,CAAC,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"FieldLabel.d.ts","sourceRoot":"","sources":["../../../src/mods/editor-ui/FieldLabel.tsx"],"names":[],"mappings":"AAwBA,gFAAgF;AAChF,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,2CA6DA;AAED,8EAA8E;AAC9E,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAC7C,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACnC,2CA2BA"}
1
+ {"version":3,"file":"FieldLabel.d.ts","sourceRoot":"","sources":["../../../src/mods/editor-ui/FieldLabel.tsx"],"names":[],"mappings":"AAyBA,gFAAgF;AAChF,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,2CA6DA;AAED,8EAA8E;AAC9E,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAC7C,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACnC,2CA2BA"}
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // FieldLabel — interactive label for Inspector fields
3
3
  // Click → dropdown menu (value/$ref/$map + copy/clear), drop target for tree nodes
4
4
  import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from '#components/ui/dropdown-menu';
5
+ import { Input } from '#components/ui/input';
5
6
  import { isRef } from '@treenity/core';
6
7
  import { useState } from 'react';
7
8
  function getFieldMode(v) {
@@ -50,6 +51,6 @@ export function FieldLabel({ label, value, onChange }) {
50
51
  /** Inline ref/map editor — $ref + optional $map, compact single/double row */
51
52
  export function RefEditor({ value, onChange }) {
52
53
  const hasMap = value.$map !== undefined;
53
- return (_jsxs("div", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [_jsxs("div", { className: "flex items-center gap-1", children: [_jsx("span", { className: "text-[9px] text-muted-foreground shrink-0 w-5", children: "$ref" }), _jsx("input", { className: "flex-1 min-w-0", value: value.$ref, onChange: (e) => onChange(hasMap ? { $ref: e.target.value, $map: value.$map } : { $ref: e.target.value }), placeholder: "path" })] }), hasMap && (_jsxs("div", { className: "flex items-center gap-1", children: [_jsx("span", { className: "text-[9px] text-muted-foreground shrink-0 w-5", children: "$map" }), _jsx("input", { className: "flex-1 min-w-0", value: value.$map ?? '', onChange: (e) => onChange({ $ref: value.$ref, $map: e.target.value }), placeholder: "field" })] }))] }));
54
+ return (_jsxs("div", { className: "flex flex-col gap-1 flex-1 min-w-0", children: [_jsxs("div", { className: "flex items-center gap-1", children: [_jsx("span", { className: "text-[9px] text-muted-foreground shrink-0 w-5", children: "$ref" }), _jsx(Input, { className: "h-7 text-xs flex-1 min-w-0", value: value.$ref, onChange: (e) => onChange(hasMap ? { $ref: e.target.value, $map: value.$map } : { $ref: e.target.value }), placeholder: "path" })] }), hasMap && (_jsxs("div", { className: "flex items-center gap-1", children: [_jsx("span", { className: "text-[9px] text-muted-foreground shrink-0 w-5", children: "$map" }), _jsx(Input, { className: "h-7 text-xs flex-1 min-w-0", value: value.$map ?? '', onChange: (e) => onChange({ $ref: value.$ref, $map: e.target.value }), placeholder: "field" })] }))] }));
54
55
  }
55
56
  //# sourceMappingURL=FieldLabel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldLabel.js","sourceRoot":"","sources":["../../../src/mods/editor-ui/FieldLabel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FieldLabel.js","sourceRoot":"","sources":["../../../src/mods/editor-ui/FieldLabel.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Checkbox } from '#components/ui/checkbox';
3
+ import { Input } from '#components/ui/input';
2
4
  import { useSchema } from '#schema-loader';
3
5
  import { isRef, register, resolve } from '@treenity/core';
4
6
  import { createElement } from 'react';
@@ -36,7 +38,7 @@ function DefaultEditForm({ value, onChange }) {
36
38
  if (v && typeof v === 'object' && isRef(v)) {
37
39
  return (_jsxs("div", { className: "field", children: [_jsx(FieldLabel, { label: k, value: v, onChange: onCh }), _jsx(RefEditor, { value: v, onChange: onCh })] }, k));
38
40
  }
39
- return (_jsxs("div", { className: `field${Array.isArray(v) || (typeof v === 'object' && v !== null) ? ' stack' : ''}`, children: [_jsx(FieldLabel, { label: k, value: v, onChange: onCh }), typeof v === 'boolean' ? (_jsxs("label", { className: "flex items-center gap-2 cursor-pointer", children: [_jsx("input", { type: "checkbox", checked: !!data[k], className: "w-auto", onChange: (e) => setData((prev) => ({ ...prev, [k]: e.target.checked })) }), data[k] ? 'true' : 'false'] })) : typeof v === 'number' ? (_jsx("input", { type: "number", value: String(data[k] ?? 0), onChange: (e) => setData((prev) => ({ ...prev, [k]: Number(e.target.value) })) })) : Array.isArray(v) ? (_jsx(StringArrayField, { value: data[k], onChange: (next) => setData((prev) => ({ ...prev, [k]: next })) })) : typeof v === 'object' ? ((() => {
41
+ return (_jsxs("div", { className: `field${Array.isArray(v) || (typeof v === 'object' && v !== null) ? ' stack' : ''}`, children: [_jsx(FieldLabel, { label: k, value: v, onChange: onCh }), typeof v === 'boolean' ? (_jsxs("label", { className: "flex items-center gap-2 cursor-pointer", children: [_jsx(Checkbox, { checked: !!data[k], onChange: (e) => setData((prev) => ({ ...prev, [k]: e.target.checked })) }), data[k] ? 'true' : 'false'] })) : typeof v === 'number' ? (_jsx(Input, { type: "number", className: "h-7 text-xs", value: String(data[k] ?? 0), onChange: (e) => setData((prev) => ({ ...prev, [k]: Number(e.target.value) })) })) : Array.isArray(v) ? (_jsx(StringArrayField, { value: data[k], onChange: (next) => setData((prev) => ({ ...prev, [k]: next })) })) : typeof v === 'object' ? ((() => {
40
42
  const h = resolve('object', 'react:form');
41
43
  return h
42
44
  ? createElement(h, {
@@ -44,7 +46,7 @@ function DefaultEditForm({ value, onChange }) {
44
46
  onChange: (next) => setData((prev) => ({ ...prev, [k]: next.value })),
45
47
  })
46
48
  : _jsx("pre", { className: "text-[11px] font-mono text-foreground/60", children: JSON.stringify(data[k], null, 2) });
47
- })()) : (_jsx("input", { value: String(data[k] ?? ''), onChange: (e) => setData((prev) => ({ ...prev, [k]: e.target.value })) }))] }, k));
49
+ })()) : (_jsx(Input, { className: "h-7 text-xs", value: String(data[k] ?? ''), onChange: (e) => setData((prev) => ({ ...prev, [k]: e.target.value })) }))] }, k));
48
50
  }) }));
49
51
  }
50
52
  // Empty
@@ -1 +1 @@
1
- {"version":3,"file":"default-edit.js","sourceRoot":"","sources":["../../../src/mods/editor-ui/default-edit.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-edit.js","sourceRoot":"","sources":["../../../src/mods/editor-ui/default-edit.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"form-field.d.ts","sourceRoot":"","sources":["../../../src/mods/editor-ui/form-field.tsx"],"names":[],"mappings":"AAMA,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EACD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,kDA6DlF;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACrC,2CAwDA"}
1
+ {"version":3,"file":"form-field.d.ts","sourceRoot":"","sources":["../../../src/mods/editor-ui/form-field.tsx"],"names":[],"mappings":"AAOA,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,EACD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,kDA6DlF;AAED,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACrC,2CAyDA"}
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Button } from '#components/ui/button';
3
3
  import { Input } from '#components/ui/input';
4
+ import { Textarea } from '#components/ui/textarea';
4
5
  import { isRef, resolveExact } from '@treenity/core';
5
6
  import { createElement, useState } from 'react';
6
7
  import { FieldLabel, RefEditor } from './FieldLabel';
@@ -19,7 +20,7 @@ export function renderField(name, fieldSchema, data, setData) {
19
20
  const ctx = fieldSchema.readOnly ? 'react' : 'react:form';
20
21
  const handler = resolveExact(fieldSchema.type, ctx) ?? resolveExact('string', ctx);
21
22
  if (!handler)
22
- return (_jsxs("div", { className: "text-[--danger] text-xs", children: ["No form handler: ", fieldSchema.type] }, name));
23
+ return (_jsxs("div", { className: "text-destructive text-xs", children: ["No form handler: ", fieldSchema.type] }, name));
23
24
  const fieldData = {
24
25
  $type: fieldSchema.type,
25
26
  value: rawValue,
@@ -45,7 +46,7 @@ export function StringArrayField({ value, onChange, }) {
45
46
  const [input, setInput] = useState('');
46
47
  const isStrings = value.every((v) => typeof v === 'string');
47
48
  if (!isStrings) {
48
- return (_jsx("textarea", { value: JSON.stringify(value, null, 2), onChange: (e) => {
49
+ return (_jsx(Textarea, { className: "min-h-16 text-xs font-mono", value: JSON.stringify(value, null, 2), onChange: (e) => {
49
50
  try {
50
51
  onChange(JSON.parse(e.target.value));
51
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"form-field.js","sourceRoot":"","sources":["../../../src/mods/editor-ui/form-field.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"form-field.js","sourceRoot":"","sources":["../../../src/mods/editor-ui/form-field.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"type-picker.d.ts","sourceRoot":"","sources":["../../../src/mods/editor-ui/type-picker.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5E,wBAAsB,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAgBrD;AAaD,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,QAAQ,EACR,KAAqB,EACrB,SAAuB,EACvB,MAAiB,EACjB,QAAgB,GACjB,EAAE;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,2CA8FA"}
1
+ {"version":3,"file":"type-picker.d.ts","sourceRoot":"","sources":["../../../src/mods/editor-ui/type-picker.tsx"],"names":[],"mappings":"AAQA,MAAM,MAAM,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5E,wBAAsB,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAgBrD;AAaD,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,QAAQ,EACR,KAAqB,EACrB,SAAuB,EACvB,MAAiB,EACjB,QAAgB,GACjB,EAAE;IACD,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,2CA8FA"}