@seed-ship/mcp-ui-solid 2.5.3 → 2.6.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.
- package/dist/components/ChatPrompt.cjs +16 -75
- package/dist/components/ChatPrompt.cjs.map +1 -1
- package/dist/components/ChatPrompt.d.ts.map +1 -1
- package/dist/components/ChatPrompt.js +16 -75
- package/dist/components/ChatPrompt.js.map +1 -1
- package/dist/components/FormFieldRenderer.cjs +232 -3
- package/dist/components/FormFieldRenderer.cjs.map +1 -1
- package/dist/components/FormFieldRenderer.d.ts.map +1 -1
- package/dist/components/FormFieldRenderer.js +233 -4
- package/dist/components/FormFieldRenderer.js.map +1 -1
- package/dist/types/chat-bus.d.ts +21 -1
- package/dist/types/chat-bus.d.ts.map +1 -1
- package/dist/types/index.d.ts +17 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types.d.cts +17 -1
- package/dist/types.d.ts +17 -1
- package/package.json +1 -1
- package/src/components/ChatPrompt.tsx +19 -47
- package/src/components/FormFieldRenderer.tsx +218 -3
- package/src/types/chat-bus.ts +21 -1
- package/src/types/index.ts +19 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
|
3
3
|
const web = require("solid-js/web");
|
|
4
4
|
const solidJs = require("solid-js");
|
|
5
5
|
const useConditionalField = require("../hooks/useConditionalField.cjs");
|
|
6
|
-
var _tmpl$ = /* @__PURE__ */ web.template(`<span class="text-red-500 ml-1"aria-hidden=true>*`), _tmpl$2 = /* @__PURE__ */ web.template(`<label class="block text-sm font-medium text-gray-700 dark:text-gray-300"><!$><!/><!$><!/>`), _tmpl$3 = /* @__PURE__ */ web.template(`<input>`), _tmpl$4 = /* @__PURE__ */ web.template(`<input type=number>`), _tmpl$5 = /* @__PURE__ */ web.template(`<input type=date>`), _tmpl$6 = /* @__PURE__ */ web.template(`<textarea>`), _tmpl$7 = /* @__PURE__ */ web.template(`<option value disabled>`), _tmpl$8 = /* @__PURE__ */ web.template(`<select><!$><!/><!$><!/>`), _tmpl$9 = /* @__PURE__ */ web.template(`<label class="flex items-center gap-2 cursor-pointer"><input type=checkbox class="w-4 h-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700"><span class="text-sm text-gray-700 dark:text-gray-300"><!$><!/><!$><!/>`), _tmpl$0 = /* @__PURE__ */ web.template(`<div class=space-y-2 role=radiogroup>`), _tmpl$1 = /* @__PURE__ */ web.template(`<p class="text-xs text-gray-500 dark:text-gray-400">`), _tmpl$10 = /* @__PURE__ */ web.template(`<p role=alert class="text-xs text-red-600 dark:text-red-400">`), _tmpl$11 = /* @__PURE__ */ web.template(`<div class=space-y-1><!$><!/><!$><!/><!$><!/><!$><!/>`), _tmpl$12 = /* @__PURE__ */ web.template(`<option>`), _tmpl$13 = /* @__PURE__ */ web.template(`<label class="flex items-center gap-2 cursor-pointer"><input type=radio class="w-4 h-4 border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600"><span class="text-sm text-gray-700 dark:text-gray-300">`);
|
|
6
|
+
var _tmpl$ = /* @__PURE__ */ web.template(`<span class="text-red-500 ml-1"aria-hidden=true>*`), _tmpl$2 = /* @__PURE__ */ web.template(`<label class="block text-sm font-medium text-gray-700 dark:text-gray-300"><!$><!/><!$><!/>`), _tmpl$3 = /* @__PURE__ */ web.template(`<input>`), _tmpl$4 = /* @__PURE__ */ web.template(`<input type=number>`), _tmpl$5 = /* @__PURE__ */ web.template(`<input type=date>`), _tmpl$6 = /* @__PURE__ */ web.template(`<textarea>`), _tmpl$7 = /* @__PURE__ */ web.template(`<option value disabled>`), _tmpl$8 = /* @__PURE__ */ web.template(`<select><!$><!/><!$><!/>`), _tmpl$9 = /* @__PURE__ */ web.template(`<label class="flex items-center gap-2 cursor-pointer"><input type=checkbox class="w-4 h-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700"><span class="text-sm text-gray-700 dark:text-gray-300"><!$><!/><!$><!/>`), _tmpl$0 = /* @__PURE__ */ web.template(`<div class=space-y-2 role=radiogroup>`), _tmpl$1 = /* @__PURE__ */ web.template(`<p class="text-xs text-gray-500 dark:text-gray-400">`), _tmpl$10 = /* @__PURE__ */ web.template(`<p role=alert class="text-xs text-red-600 dark:text-red-400">`), _tmpl$11 = /* @__PURE__ */ web.template(`<div class=space-y-1><!$><!/><!$><!/><!$><!/><!$><!/>`), _tmpl$12 = /* @__PURE__ */ web.template(`<option>`), _tmpl$13 = /* @__PURE__ */ web.template(`<label class="flex items-center gap-2 cursor-pointer"><input type=radio class="w-4 h-4 border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600"><span class="text-sm text-gray-700 dark:text-gray-300">`), _tmpl$14 = /* @__PURE__ */ web.template(`<div class="flex flex-wrap gap-1 mb-1">`), _tmpl$15 = /* @__PURE__ */ web.template(`<div class="absolute z-20 mt-1 w-full bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-md shadow-lg max-h-48 overflow-auto">`), _tmpl$16 = /* @__PURE__ */ web.template(`<div class=relative><!$><!/><button type=button><span></span><svg class="w-4 h-4 text-gray-400"fill=none viewBox="0 0 24 24"stroke=currentColor><path stroke-linecap=round stroke-linejoin=round stroke-width=2 d="M19 9l-7 7-7-7"></path></svg></button><!$><!/>`), _tmpl$17 = /* @__PURE__ */ web.template(`<span class="inline-flex items-center gap-1 px-2 py-0.5 text-xs font-medium bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 rounded-full"><!$><!/><button type=button class="hover:text-blue-900 dark:hover:text-blue-100">×`), _tmpl$18 = /* @__PURE__ */ web.template(`<label class="flex items-center gap-2 px-3 py-2 hover:bg-gray-100 dark:hover:bg-gray-700 cursor-pointer text-sm"><input type=checkbox class="w-4 h-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600"><span class="text-gray-900 dark:text-white">`), _tmpl$19 = /* @__PURE__ */ web.template(`<div class=relative><input type=text autocomplete=off><!$><!/>`), _tmpl$20 = /* @__PURE__ */ web.template(`<button type=button class="w-full text-left px-3 py-2 text-sm hover:bg-blue-50 dark:hover:bg-blue-900/20 text-gray-900 dark:text-white">`);
|
|
7
7
|
const FormFieldRenderer = (props) => {
|
|
8
8
|
const {
|
|
9
9
|
isVisible
|
|
@@ -199,7 +199,7 @@ const FormFieldRenderer = (props) => {
|
|
|
199
199
|
}
|
|
200
200
|
}), web.createComponent(solidJs.Match, {
|
|
201
201
|
get when() {
|
|
202
|
-
return props.field.type === "select";
|
|
202
|
+
return web.memo(() => props.field.type === "select")() && !props.field.multiple;
|
|
203
203
|
},
|
|
204
204
|
get children() {
|
|
205
205
|
var _el$10 = web.getNextElement(_tmpl$8), _el$12 = _el$10.firstChild, [_el$13, _co$3] = web.getNextMarker(_el$12.nextSibling), _el$14 = _el$13.nextSibling, [_el$15, _co$4] = web.getNextMarker(_el$14.nextSibling);
|
|
@@ -282,6 +282,52 @@ const FormFieldRenderer = (props) => {
|
|
|
282
282
|
web.effect(() => web.setProperty(_el$17, "checked", props.value || false));
|
|
283
283
|
return _el$16;
|
|
284
284
|
}
|
|
285
|
+
}), web.createComponent(solidJs.Match, {
|
|
286
|
+
get when() {
|
|
287
|
+
return web.memo(() => props.field.type === "select")() && props.field.multiple;
|
|
288
|
+
},
|
|
289
|
+
get children() {
|
|
290
|
+
return web.createComponent(MultiSelectField, {
|
|
291
|
+
get field() {
|
|
292
|
+
return props.field;
|
|
293
|
+
},
|
|
294
|
+
get value() {
|
|
295
|
+
return props.value || [];
|
|
296
|
+
},
|
|
297
|
+
get onChange() {
|
|
298
|
+
return props.onChange;
|
|
299
|
+
},
|
|
300
|
+
get disabled() {
|
|
301
|
+
return props.disabled;
|
|
302
|
+
},
|
|
303
|
+
get baseClass() {
|
|
304
|
+
return baseInputClass();
|
|
305
|
+
}
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
}), web.createComponent(solidJs.Match, {
|
|
309
|
+
get when() {
|
|
310
|
+
return props.field.type === "autocomplete";
|
|
311
|
+
},
|
|
312
|
+
get children() {
|
|
313
|
+
return web.createComponent(AutocompleteField, {
|
|
314
|
+
get field() {
|
|
315
|
+
return props.field;
|
|
316
|
+
},
|
|
317
|
+
get value() {
|
|
318
|
+
return props.value || "";
|
|
319
|
+
},
|
|
320
|
+
get onChange() {
|
|
321
|
+
return props.onChange;
|
|
322
|
+
},
|
|
323
|
+
get disabled() {
|
|
324
|
+
return props.disabled;
|
|
325
|
+
},
|
|
326
|
+
get baseClass() {
|
|
327
|
+
return baseInputClass();
|
|
328
|
+
}
|
|
329
|
+
});
|
|
330
|
+
}
|
|
285
331
|
}), web.createComponent(solidJs.Match, {
|
|
286
332
|
get when() {
|
|
287
333
|
return props.field.type === "radio";
|
|
@@ -353,6 +399,189 @@ const FormFieldRenderer = (props) => {
|
|
|
353
399
|
}
|
|
354
400
|
});
|
|
355
401
|
};
|
|
356
|
-
|
|
402
|
+
const MultiSelectField = (props) => {
|
|
403
|
+
const [open, setOpen] = solidJs.createSignal(false);
|
|
404
|
+
const toggle = (val) => {
|
|
405
|
+
const current = props.value || [];
|
|
406
|
+
if (current.includes(val)) {
|
|
407
|
+
props.onChange(current.filter((v) => v !== val));
|
|
408
|
+
} else {
|
|
409
|
+
props.onChange([...current, val]);
|
|
410
|
+
}
|
|
411
|
+
};
|
|
412
|
+
const removeChip = (val) => {
|
|
413
|
+
props.onChange((props.value || []).filter((v) => v !== val));
|
|
414
|
+
};
|
|
415
|
+
const getLabel = (val) => {
|
|
416
|
+
var _a, _b;
|
|
417
|
+
return ((_b = (_a = props.field.options) == null ? void 0 : _a.find((o) => o.value === val)) == null ? void 0 : _b.label) || val;
|
|
418
|
+
};
|
|
419
|
+
return (() => {
|
|
420
|
+
var _el$39 = web.getNextElement(_tmpl$16), _el$44 = _el$39.firstChild, [_el$45, _co$1] = web.getNextMarker(_el$44.nextSibling), _el$41 = _el$45.nextSibling, _el$42 = _el$41.firstChild, _el$46 = _el$41.nextSibling, [_el$47, _co$10] = web.getNextMarker(_el$46.nextSibling);
|
|
421
|
+
web.insert(_el$39, web.createComponent(solidJs.Show, {
|
|
422
|
+
get when() {
|
|
423
|
+
return props.value.length > 0;
|
|
424
|
+
},
|
|
425
|
+
get children() {
|
|
426
|
+
var _el$40 = web.getNextElement(_tmpl$14);
|
|
427
|
+
web.insert(_el$40, web.createComponent(solidJs.For, {
|
|
428
|
+
get each() {
|
|
429
|
+
return props.value;
|
|
430
|
+
},
|
|
431
|
+
children: (val) => (() => {
|
|
432
|
+
var _el$48 = web.getNextElement(_tmpl$17), _el$50 = _el$48.firstChild, [_el$51, _co$11] = web.getNextMarker(_el$50.nextSibling), _el$49 = _el$51.nextSibling;
|
|
433
|
+
web.insert(_el$48, () => getLabel(val), _el$51, _co$11);
|
|
434
|
+
_el$49.$$click = () => removeChip(val);
|
|
435
|
+
web.effect(() => web.setAttribute(_el$49, "aria-label", `Remove ${getLabel(val)}`));
|
|
436
|
+
web.runHydrationEvents();
|
|
437
|
+
return _el$48;
|
|
438
|
+
})()
|
|
439
|
+
}));
|
|
440
|
+
return _el$40;
|
|
441
|
+
}
|
|
442
|
+
}), _el$45, _co$1);
|
|
443
|
+
_el$41.$$click = () => setOpen(!open());
|
|
444
|
+
web.insert(_el$42, (() => {
|
|
445
|
+
var _c$ = web.memo(() => !!props.value.length);
|
|
446
|
+
return () => _c$() ? `${props.value.length} selected` : props.field.placeholder || "Select...";
|
|
447
|
+
})());
|
|
448
|
+
web.insert(_el$39, web.createComponent(solidJs.Show, {
|
|
449
|
+
get when() {
|
|
450
|
+
return open();
|
|
451
|
+
},
|
|
452
|
+
get children() {
|
|
453
|
+
var _el$43 = web.getNextElement(_tmpl$15);
|
|
454
|
+
web.insert(_el$43, web.createComponent(solidJs.For, {
|
|
455
|
+
get each() {
|
|
456
|
+
return props.field.options;
|
|
457
|
+
},
|
|
458
|
+
children: (option) => (() => {
|
|
459
|
+
var _el$52 = web.getNextElement(_tmpl$18), _el$53 = _el$52.firstChild, _el$54 = _el$53.nextSibling;
|
|
460
|
+
_el$53.addEventListener("change", () => toggle(option.value));
|
|
461
|
+
web.insert(_el$54, () => option.label);
|
|
462
|
+
web.effect(() => web.setProperty(_el$53, "checked", (props.value || []).includes(option.value)));
|
|
463
|
+
return _el$52;
|
|
464
|
+
})()
|
|
465
|
+
}));
|
|
466
|
+
return _el$43;
|
|
467
|
+
}
|
|
468
|
+
}), _el$47, _co$10);
|
|
469
|
+
web.effect((_p$) => {
|
|
470
|
+
var _v$60 = props.disabled, _v$61 = `${props.baseClass} text-left flex items-center justify-between`, _v$62 = props.value.length ? "text-gray-900 dark:text-white" : "text-gray-400";
|
|
471
|
+
_v$60 !== _p$.e && web.setProperty(_el$41, "disabled", _p$.e = _v$60);
|
|
472
|
+
_v$61 !== _p$.t && web.className(_el$41, _p$.t = _v$61);
|
|
473
|
+
_v$62 !== _p$.a && web.className(_el$42, _p$.a = _v$62);
|
|
474
|
+
return _p$;
|
|
475
|
+
}, {
|
|
476
|
+
e: void 0,
|
|
477
|
+
t: void 0,
|
|
478
|
+
a: void 0
|
|
479
|
+
});
|
|
480
|
+
web.runHydrationEvents();
|
|
481
|
+
return _el$39;
|
|
482
|
+
})();
|
|
483
|
+
};
|
|
484
|
+
const AutocompleteField = (props) => {
|
|
485
|
+
const [query, setQuery] = solidJs.createSignal("");
|
|
486
|
+
const [suggestions, setSuggestions] = solidJs.createSignal([]);
|
|
487
|
+
const [isOpen, setIsOpen] = solidJs.createSignal(false);
|
|
488
|
+
const [selectedLabel, setSelectedLabel] = solidJs.createSignal("");
|
|
489
|
+
let debounceTimer = null;
|
|
490
|
+
const minChars = () => props.field.minChars ?? 2;
|
|
491
|
+
const debounceMs = () => props.field.debounceMs ?? 300;
|
|
492
|
+
const fetchSuggestions = async (q) => {
|
|
493
|
+
if (!props.field.apiUrl || !props.field.searchParam) return;
|
|
494
|
+
try {
|
|
495
|
+
const params = new URLSearchParams({
|
|
496
|
+
[props.field.searchParam]: q
|
|
497
|
+
});
|
|
498
|
+
if (props.field.extraParams) {
|
|
499
|
+
for (const [k, v] of Object.entries(props.field.extraParams)) {
|
|
500
|
+
params.set(k, v);
|
|
501
|
+
}
|
|
502
|
+
}
|
|
503
|
+
const res = await fetch(`${props.field.apiUrl}?${params}`);
|
|
504
|
+
if (!res.ok) return;
|
|
505
|
+
const data = await res.json();
|
|
506
|
+
const items = Array.isArray(data) ? data : data.results || data.features || [];
|
|
507
|
+
const labelField = props.field.labelField || "label";
|
|
508
|
+
const valueField = props.field.valueField || "value";
|
|
509
|
+
setSuggestions(items.slice(0, 10).map((item) => ({
|
|
510
|
+
label: item[labelField] || String(item),
|
|
511
|
+
value: String(item[valueField] || item[labelField] || item)
|
|
512
|
+
})));
|
|
513
|
+
setIsOpen(true);
|
|
514
|
+
} catch {
|
|
515
|
+
setSuggestions([]);
|
|
516
|
+
}
|
|
517
|
+
};
|
|
518
|
+
const handleInput = (value) => {
|
|
519
|
+
setQuery(value);
|
|
520
|
+
setSelectedLabel("");
|
|
521
|
+
props.onChange("");
|
|
522
|
+
if (debounceTimer) clearTimeout(debounceTimer);
|
|
523
|
+
if (value.length < minChars()) {
|
|
524
|
+
setSuggestions([]);
|
|
525
|
+
setIsOpen(false);
|
|
526
|
+
return;
|
|
527
|
+
}
|
|
528
|
+
debounceTimer = setTimeout(() => fetchSuggestions(value), debounceMs());
|
|
529
|
+
};
|
|
530
|
+
const selectSuggestion = (item) => {
|
|
531
|
+
props.onChange(item.value);
|
|
532
|
+
setSelectedLabel(item.label);
|
|
533
|
+
setQuery(item.label);
|
|
534
|
+
setIsOpen(false);
|
|
535
|
+
setSuggestions([]);
|
|
536
|
+
};
|
|
537
|
+
solidJs.onCleanup(() => {
|
|
538
|
+
if (debounceTimer) clearTimeout(debounceTimer);
|
|
539
|
+
});
|
|
540
|
+
return (() => {
|
|
541
|
+
var _el$55 = web.getNextElement(_tmpl$19), _el$56 = _el$55.firstChild, _el$58 = _el$56.nextSibling, [_el$59, _co$12] = web.getNextMarker(_el$58.nextSibling);
|
|
542
|
+
_el$56.addEventListener("blur", () => setTimeout(() => setIsOpen(false), 200));
|
|
543
|
+
_el$56.addEventListener("focus", () => {
|
|
544
|
+
if (suggestions().length) setIsOpen(true);
|
|
545
|
+
});
|
|
546
|
+
_el$56.$$input = (e) => handleInput(e.currentTarget.value);
|
|
547
|
+
web.insert(_el$55, web.createComponent(solidJs.Show, {
|
|
548
|
+
get when() {
|
|
549
|
+
return web.memo(() => !!isOpen())() && suggestions().length > 0;
|
|
550
|
+
},
|
|
551
|
+
get children() {
|
|
552
|
+
var _el$57 = web.getNextElement(_tmpl$15);
|
|
553
|
+
web.insert(_el$57, web.createComponent(solidJs.For, {
|
|
554
|
+
get each() {
|
|
555
|
+
return suggestions();
|
|
556
|
+
},
|
|
557
|
+
children: (item) => (() => {
|
|
558
|
+
var _el$60 = web.getNextElement(_tmpl$20);
|
|
559
|
+
_el$60.$$click = () => selectSuggestion(item);
|
|
560
|
+
_el$60.$$mousedown = (e) => e.preventDefault();
|
|
561
|
+
web.insert(_el$60, () => item.label);
|
|
562
|
+
web.runHydrationEvents();
|
|
563
|
+
return _el$60;
|
|
564
|
+
})()
|
|
565
|
+
}));
|
|
566
|
+
return _el$57;
|
|
567
|
+
}
|
|
568
|
+
}), _el$59, _co$12);
|
|
569
|
+
web.effect((_p$) => {
|
|
570
|
+
var _v$63 = props.field.placeholder, _v$64 = props.disabled, _v$65 = props.baseClass;
|
|
571
|
+
_v$63 !== _p$.e && web.setAttribute(_el$56, "placeholder", _p$.e = _v$63);
|
|
572
|
+
_v$64 !== _p$.t && web.setProperty(_el$56, "disabled", _p$.t = _v$64);
|
|
573
|
+
_v$65 !== _p$.a && web.className(_el$56, _p$.a = _v$65);
|
|
574
|
+
return _p$;
|
|
575
|
+
}, {
|
|
576
|
+
e: void 0,
|
|
577
|
+
t: void 0,
|
|
578
|
+
a: void 0
|
|
579
|
+
});
|
|
580
|
+
web.effect(() => web.setProperty(_el$56, "value", query()));
|
|
581
|
+
web.runHydrationEvents();
|
|
582
|
+
return _el$55;
|
|
583
|
+
})();
|
|
584
|
+
};
|
|
585
|
+
web.delegateEvents(["input", "click", "mousedown"]);
|
|
357
586
|
exports.FormFieldRenderer = FormFieldRenderer;
|
|
358
587
|
//# sourceMappingURL=FormFieldRenderer.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormFieldRenderer.cjs","sources":["../../src/components/FormFieldRenderer.tsx"],"sourcesContent":["/**\n * FormFieldRenderer - Individual form field component\n * Sprint 1: Form Foundation\n * Sprint 2: Conditional field visibility (showWhen)\n */\n\nimport { Component, Show, For, Switch, Match, Accessor } from 'solid-js'\nimport type { FormFieldParams } from '../types'\nimport { useConditionalField } from '../hooks/useConditionalField'\n\nexport interface FormFieldRendererProps {\n field: FormFieldParams\n value: any\n error?: string\n onChange: (value: any) => void\n disabled?: boolean\n /**\n * Form data accessor for conditional field visibility\n */\n formData?: Accessor<Record<string, any>>\n}\n\nexport const FormFieldRenderer: Component<FormFieldRendererProps> = (props) => {\n // Conditional visibility based on showWhen\n const { isVisible } = useConditionalField({\n condition: props.field.showWhen,\n formData: props.formData || (() => ({})),\n })\n\n const baseInputClass = () => `\n w-full px-3 py-2 border rounded-md\n focus:ring-2 focus:ring-blue-500 focus:border-blue-500\n disabled:bg-gray-100 disabled:cursor-not-allowed\n ${props.error\n ? 'border-red-500 focus:ring-red-500'\n : 'border-gray-300 dark:border-gray-600'}\n dark:bg-gray-700 dark:text-white\n `\n\n const fieldId = () => `field-${props.field.name}`\n const errorId = () => `${props.field.name}-error`\n\n return (\n <Show when={isVisible()}>\n <div class=\"space-y-1\">\n <Show when={props.field.label && props.field.type !== 'checkbox'}>\n <label\n for={fieldId()}\n class=\"block text-sm font-medium text-gray-700 dark:text-gray-300\"\n >\n {props.field.label}\n <Show when={props.field.required}>\n <span class=\"text-red-500 ml-1\" aria-hidden=\"true\">*</span>\n </Show>\n </label>\n </Show>\n\n <Switch>\n {/* Text Input */}\n <Match when={props.field.type === 'text' || props.field.type === 'email' || props.field.type === 'password'}>\n <input\n id={fieldId()}\n type={props.field.type}\n name={props.field.name}\n value={props.value || ''}\n onInput={(e) => props.onChange(e.currentTarget.value)}\n placeholder={props.field.placeholder}\n disabled={props.disabled}\n required={props.field.required}\n minLength={props.field.minLength}\n maxLength={props.field.maxLength}\n pattern={props.field.pattern}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Number Input */}\n <Match when={props.field.type === 'number'}>\n <input\n id={fieldId()}\n type=\"number\"\n name={props.field.name}\n value={props.value ?? ''}\n onInput={(e) => props.onChange(e.currentTarget.value === '' ? undefined : Number(e.currentTarget.value))}\n placeholder={props.field.placeholder}\n disabled={props.disabled}\n required={props.field.required}\n min={props.field.min}\n max={props.field.max}\n step={props.field.step}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Date Input */}\n <Match when={props.field.type === 'date'}>\n <input\n id={fieldId()}\n type=\"date\"\n name={props.field.name}\n value={props.value || ''}\n onInput={(e) => props.onChange(e.currentTarget.value)}\n disabled={props.disabled}\n required={props.field.required}\n min={props.field.minDate}\n max={props.field.maxDate}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Textarea */}\n <Match when={props.field.type === 'textarea'}>\n <textarea\n id={fieldId()}\n name={props.field.name}\n value={props.value || ''}\n onInput={(e) => props.onChange(e.currentTarget.value)}\n placeholder={props.field.placeholder}\n disabled={props.disabled}\n required={props.field.required}\n rows={props.field.rows || 4}\n minLength={props.field.minLength}\n maxLength={props.field.maxLength}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Select */}\n <Match when={props.field.type === 'select'}>\n <select\n id={fieldId()}\n name={props.field.name}\n value={props.value || ''}\n onChange={(e) => props.onChange(e.currentTarget.value)}\n disabled={props.disabled}\n required={props.field.required}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n >\n <Show when={props.field.placeholder}>\n <option value=\"\" disabled>{props.field.placeholder}</option>\n </Show>\n <For each={props.field.options}>\n {(option) => (\n <option value={option.value} disabled={option.disabled}>\n {option.label}\n </option>\n )}\n </For>\n </select>\n </Match>\n\n {/* Checkbox */}\n <Match when={props.field.type === 'checkbox'}>\n <label class=\"flex items-center gap-2 cursor-pointer\">\n <input\n id={fieldId()}\n type=\"checkbox\"\n name={props.field.name}\n checked={props.value || false}\n onChange={(e) => props.onChange(e.currentTarget.checked)}\n disabled={props.disabled}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class=\"w-4 h-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700\"\n />\n <span class=\"text-sm text-gray-700 dark:text-gray-300\">\n {props.field.checkboxLabel || props.field.label}\n <Show when={props.field.required}>\n <span class=\"text-red-500 ml-1\" aria-hidden=\"true\">*</span>\n </Show>\n </span>\n </label>\n </Match>\n\n {/* Radio Group */}\n <Match when={props.field.type === 'radio'}>\n <div\n class=\"space-y-2\"\n role=\"radiogroup\"\n aria-labelledby={props.field.label ? `${fieldId()}-label` : undefined}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n >\n <For each={props.field.options}>\n {(option, index) => (\n <label class=\"flex items-center gap-2 cursor-pointer\">\n <input\n type=\"radio\"\n name={props.field.name}\n id={`${fieldId()}-${index()}`}\n value={option.value}\n checked={props.value === option.value}\n onChange={() => props.onChange(option.value)}\n disabled={props.disabled || option.disabled}\n class=\"w-4 h-4 border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600\"\n />\n <span class=\"text-sm text-gray-700 dark:text-gray-300\">\n {option.label}\n </span>\n </label>\n )}\n </For>\n </div>\n </Match>\n </Switch>\n\n <Show when={props.field.helpText && !props.error}>\n <p class=\"text-xs text-gray-500 dark:text-gray-400\">{props.field.helpText}</p>\n </Show>\n\n <Show when={props.error}>\n <p id={errorId()} role=\"alert\" class=\"text-xs text-red-600 dark:text-red-400\">\n {props.error}\n </p>\n </Show>\n </div>\n </Show>\n )\n}\n"],"names":["FormFieldRenderer","props","isVisible","useConditionalField","condition","field","showWhen","formData","baseInputClass","error","fieldId","name","errorId","_$createComponent","Show","when","children","_el$","_$getNextElement","_tmpl$11","_el$27","firstChild","_el$28","_co$7","_$getNextMarker","nextSibling","_el$29","_el$30","_co$8","_el$31","_el$32","_co$9","_el$33","_el$34","_co$0","_$insert","_$memo","label","type","_el$2","_tmpl$2","_el$4","_el$5","_co$","_el$6","_el$7","_co$2","required","_tmpl$","_$effect","_$setAttribute","Switch","Match","_el$8","_tmpl$3","$$input","e","onChange","currentTarget","value","_p$","_v$","_v$2","_v$3","_v$4","placeholder","_v$5","disabled","_v$6","_v$7","minLength","_v$8","maxLength","_v$9","pattern","_v$0","_v$1","undefined","_v$10","t","a","o","i","_$setProperty","n","s","h","r","d","l","u","_$className","_$runHydrationEvents","_el$9","_tmpl$4","Number","_v$11","_v$12","_v$13","_v$14","_v$15","_v$16","min","_v$17","max","_v$18","step","_v$19","_v$20","_v$21","_el$0","_tmpl$5","_v$22","_v$23","_v$24","_v$25","_v$26","minDate","_v$27","maxDate","_v$28","_v$29","_v$30","_el$1","_tmpl$6","_v$31","_v$32","_v$33","_v$34","_v$35","_v$36","rows","_v$37","_v$38","_v$39","_v$40","_v$41","_el$10","_tmpl$8","_el$12","_el$13","_co$3","_el$14","_el$15","_co$4","addEventListener","_el$11","_tmpl$7","For","each","options","option","_el$35","_tmpl$12","_v$42","_v$43","_v$44","_v$45","_v$46","_v$47","_v$48","_el$16","_tmpl$9","_el$17","_el$18","_el$20","_el$21","_co$5","_el$22","_el$23","_co$6","checked","checkboxLabel","_v$49","_v$50","_v$51","_v$52","_v$53","_el$24","_tmpl$0","index","_el$36","_tmpl$13","_el$37","_el$38","_v$57","_v$58","_v$59","_v$54","_v$55","_v$56","helpText","_el$25","_tmpl$1","_el$26","_tmpl$10","_$delegateEvents"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FormFieldRenderer.cjs","sources":["../../src/components/FormFieldRenderer.tsx"],"sourcesContent":["/**\n * FormFieldRenderer - Individual form field component\n * Sprint 1: Form Foundation\n * Sprint 2: Conditional field visibility (showWhen)\n */\n\nimport { Component, Show, For, Switch, Match, Accessor, createSignal, createEffect, onCleanup } from 'solid-js'\nimport type { FormFieldParams } from '../types'\nimport { useConditionalField } from '../hooks/useConditionalField'\n\nexport interface FormFieldRendererProps {\n field: FormFieldParams\n value: any\n error?: string\n onChange: (value: any) => void\n disabled?: boolean\n /**\n * Form data accessor for conditional field visibility\n */\n formData?: Accessor<Record<string, any>>\n}\n\nexport const FormFieldRenderer: Component<FormFieldRendererProps> = (props) => {\n // Conditional visibility based on showWhen\n const { isVisible } = useConditionalField({\n condition: props.field.showWhen,\n formData: props.formData || (() => ({})),\n })\n\n const baseInputClass = () => `\n w-full px-3 py-2 border rounded-md\n focus:ring-2 focus:ring-blue-500 focus:border-blue-500\n disabled:bg-gray-100 disabled:cursor-not-allowed\n ${props.error\n ? 'border-red-500 focus:ring-red-500'\n : 'border-gray-300 dark:border-gray-600'}\n dark:bg-gray-700 dark:text-white\n `\n\n const fieldId = () => `field-${props.field.name}`\n const errorId = () => `${props.field.name}-error`\n\n return (\n <Show when={isVisible()}>\n <div class=\"space-y-1\">\n <Show when={props.field.label && props.field.type !== 'checkbox'}>\n <label\n for={fieldId()}\n class=\"block text-sm font-medium text-gray-700 dark:text-gray-300\"\n >\n {props.field.label}\n <Show when={props.field.required}>\n <span class=\"text-red-500 ml-1\" aria-hidden=\"true\">*</span>\n </Show>\n </label>\n </Show>\n\n <Switch>\n {/* Text Input */}\n <Match when={props.field.type === 'text' || props.field.type === 'email' || props.field.type === 'password'}>\n <input\n id={fieldId()}\n type={props.field.type}\n name={props.field.name}\n value={props.value || ''}\n onInput={(e) => props.onChange(e.currentTarget.value)}\n placeholder={props.field.placeholder}\n disabled={props.disabled}\n required={props.field.required}\n minLength={props.field.minLength}\n maxLength={props.field.maxLength}\n pattern={props.field.pattern}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Number Input */}\n <Match when={props.field.type === 'number'}>\n <input\n id={fieldId()}\n type=\"number\"\n name={props.field.name}\n value={props.value ?? ''}\n onInput={(e) => props.onChange(e.currentTarget.value === '' ? undefined : Number(e.currentTarget.value))}\n placeholder={props.field.placeholder}\n disabled={props.disabled}\n required={props.field.required}\n min={props.field.min}\n max={props.field.max}\n step={props.field.step}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Date Input */}\n <Match when={props.field.type === 'date'}>\n <input\n id={fieldId()}\n type=\"date\"\n name={props.field.name}\n value={props.value || ''}\n onInput={(e) => props.onChange(e.currentTarget.value)}\n disabled={props.disabled}\n required={props.field.required}\n min={props.field.minDate}\n max={props.field.maxDate}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Textarea */}\n <Match when={props.field.type === 'textarea'}>\n <textarea\n id={fieldId()}\n name={props.field.name}\n value={props.value || ''}\n onInput={(e) => props.onChange(e.currentTarget.value)}\n placeholder={props.field.placeholder}\n disabled={props.disabled}\n required={props.field.required}\n rows={props.field.rows || 4}\n minLength={props.field.minLength}\n maxLength={props.field.maxLength}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n />\n </Match>\n\n {/* Select (single) */}\n <Match when={props.field.type === 'select' && !props.field.multiple}>\n <select\n id={fieldId()}\n name={props.field.name}\n value={props.value || ''}\n onChange={(e) => props.onChange(e.currentTarget.value)}\n disabled={props.disabled}\n required={props.field.required}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class={baseInputClass()}\n >\n <Show when={props.field.placeholder}>\n <option value=\"\" disabled>{props.field.placeholder}</option>\n </Show>\n <For each={props.field.options}>\n {(option) => (\n <option value={option.value} disabled={option.disabled}>\n {option.label}\n </option>\n )}\n </For>\n </select>\n </Match>\n\n {/* Checkbox */}\n <Match when={props.field.type === 'checkbox'}>\n <label class=\"flex items-center gap-2 cursor-pointer\">\n <input\n id={fieldId()}\n type=\"checkbox\"\n name={props.field.name}\n checked={props.value || false}\n onChange={(e) => props.onChange(e.currentTarget.checked)}\n disabled={props.disabled}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n class=\"w-4 h-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700\"\n />\n <span class=\"text-sm text-gray-700 dark:text-gray-300\">\n {props.field.checkboxLabel || props.field.label}\n <Show when={props.field.required}>\n <span class=\"text-red-500 ml-1\" aria-hidden=\"true\">*</span>\n </Show>\n </span>\n </label>\n </Match>\n\n {/* Multi-Select with chips */}\n <Match when={props.field.type === 'select' && props.field.multiple}>\n <MultiSelectField\n field={props.field}\n value={props.value || []}\n onChange={props.onChange}\n disabled={props.disabled}\n baseClass={baseInputClass()}\n />\n </Match>\n\n {/* Autocomplete with API fetch */}\n <Match when={props.field.type === 'autocomplete'}>\n <AutocompleteField\n field={props.field}\n value={props.value || ''}\n onChange={props.onChange}\n disabled={props.disabled}\n baseClass={baseInputClass()}\n />\n </Match>\n\n {/* Radio Group */}\n <Match when={props.field.type === 'radio'}>\n <div\n class=\"space-y-2\"\n role=\"radiogroup\"\n aria-labelledby={props.field.label ? `${fieldId()}-label` : undefined}\n aria-invalid={!!props.error}\n aria-describedby={props.error ? errorId() : undefined}\n >\n <For each={props.field.options}>\n {(option, index) => (\n <label class=\"flex items-center gap-2 cursor-pointer\">\n <input\n type=\"radio\"\n name={props.field.name}\n id={`${fieldId()}-${index()}`}\n value={option.value}\n checked={props.value === option.value}\n onChange={() => props.onChange(option.value)}\n disabled={props.disabled || option.disabled}\n class=\"w-4 h-4 border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600\"\n />\n <span class=\"text-sm text-gray-700 dark:text-gray-300\">\n {option.label}\n </span>\n </label>\n )}\n </For>\n </div>\n </Match>\n </Switch>\n\n <Show when={props.field.helpText && !props.error}>\n <p class=\"text-xs text-gray-500 dark:text-gray-400\">{props.field.helpText}</p>\n </Show>\n\n <Show when={props.error}>\n <p id={errorId()} role=\"alert\" class=\"text-xs text-red-600 dark:text-red-400\">\n {props.error}\n </p>\n </Show>\n </div>\n </Show>\n )\n}\n\n// ─── Multi-Select with Chips ─────────────────────────────────\n\nconst MultiSelectField: Component<{\n field: FormFieldParams\n value: string[]\n onChange: (value: string[]) => void\n disabled?: boolean\n baseClass: string\n}> = (props) => {\n const [open, setOpen] = createSignal(false)\n\n const toggle = (val: string) => {\n const current = props.value || []\n if (current.includes(val)) {\n props.onChange(current.filter((v) => v !== val))\n } else {\n props.onChange([...current, val])\n }\n }\n\n const removeChip = (val: string) => {\n props.onChange((props.value || []).filter((v) => v !== val))\n }\n\n const getLabel = (val: string) =>\n props.field.options?.find((o) => o.value === val)?.label || val\n\n return (\n <div class=\"relative\">\n {/* Selected chips */}\n <Show when={props.value.length > 0}>\n <div class=\"flex flex-wrap gap-1 mb-1\">\n <For each={props.value}>\n {(val) => (\n <span class=\"inline-flex items-center gap-1 px-2 py-0.5 text-xs font-medium bg-blue-100 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 rounded-full\">\n {getLabel(val)}\n <button\n type=\"button\"\n onClick={() => removeChip(val)}\n class=\"hover:text-blue-900 dark:hover:text-blue-100\"\n aria-label={`Remove ${getLabel(val)}`}\n >\n ×\n </button>\n </span>\n )}\n </For>\n </div>\n </Show>\n\n {/* Trigger button */}\n <button\n type=\"button\"\n onClick={() => setOpen(!open())}\n disabled={props.disabled}\n class={`${props.baseClass} text-left flex items-center justify-between`}\n >\n <span class={props.value.length ? 'text-gray-900 dark:text-white' : 'text-gray-400'}>\n {props.value.length\n ? `${props.value.length} selected`\n : props.field.placeholder || 'Select...'}\n </span>\n <svg class=\"w-4 h-4 text-gray-400\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 9l-7 7-7-7\" />\n </svg>\n </button>\n\n {/* Dropdown */}\n <Show when={open()}>\n <div class=\"absolute z-20 mt-1 w-full bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-md shadow-lg max-h-48 overflow-auto\">\n <For each={props.field.options}>\n {(option) => (\n <label class=\"flex items-center gap-2 px-3 py-2 hover:bg-gray-100 dark:hover:bg-gray-700 cursor-pointer text-sm\">\n <input\n type=\"checkbox\"\n checked={(props.value || []).includes(option.value)}\n onChange={() => toggle(option.value)}\n class=\"w-4 h-4 rounded border-gray-300 text-blue-600 focus:ring-blue-500 dark:border-gray-600\"\n />\n <span class=\"text-gray-900 dark:text-white\">{option.label}</span>\n </label>\n )}\n </For>\n </div>\n </Show>\n </div>\n )\n}\n\n// ─── Autocomplete with API fetch ─────────────────────────────\n\nconst AutocompleteField: Component<{\n field: FormFieldParams\n value: string\n onChange: (value: string) => void\n disabled?: boolean\n baseClass: string\n}> = (props) => {\n const [query, setQuery] = createSignal('')\n const [suggestions, setSuggestions] = createSignal<Array<{ label: string; value: string }>>([])\n const [isOpen, setIsOpen] = createSignal(false)\n const [selectedLabel, setSelectedLabel] = createSignal('')\n let debounceTimer: ReturnType<typeof setTimeout> | null = null\n\n const minChars = () => props.field.minChars ?? 2\n const debounceMs = () => props.field.debounceMs ?? 300\n\n const fetchSuggestions = async (q: string) => {\n if (!props.field.apiUrl || !props.field.searchParam) return\n\n try {\n const params = new URLSearchParams({ [props.field.searchParam]: q })\n if (props.field.extraParams) {\n for (const [k, v] of Object.entries(props.field.extraParams)) {\n params.set(k, v)\n }\n }\n const res = await fetch(`${props.field.apiUrl}?${params}`)\n if (!res.ok) return\n\n const data = await res.json()\n const items = Array.isArray(data) ? data : data.results || data.features || []\n const labelField = props.field.labelField || 'label'\n const valueField = props.field.valueField || 'value'\n\n setSuggestions(items.slice(0, 10).map((item: any) => ({\n label: item[labelField] || String(item),\n value: String(item[valueField] || item[labelField] || item),\n })))\n setIsOpen(true)\n } catch {\n setSuggestions([])\n }\n }\n\n const handleInput = (value: string) => {\n setQuery(value)\n setSelectedLabel('')\n props.onChange('')\n\n if (debounceTimer) clearTimeout(debounceTimer)\n if (value.length < minChars()) {\n setSuggestions([])\n setIsOpen(false)\n return\n }\n debounceTimer = setTimeout(() => fetchSuggestions(value), debounceMs())\n }\n\n const selectSuggestion = (item: { label: string; value: string }) => {\n props.onChange(item.value)\n setSelectedLabel(item.label)\n setQuery(item.label)\n setIsOpen(false)\n setSuggestions([])\n }\n\n onCleanup(() => { if (debounceTimer) clearTimeout(debounceTimer) })\n\n return (\n <div class=\"relative\">\n <input\n type=\"text\"\n value={query()}\n onInput={(e) => handleInput(e.currentTarget.value)}\n onFocus={() => { if (suggestions().length) setIsOpen(true) }}\n onBlur={() => setTimeout(() => setIsOpen(false), 200)}\n placeholder={props.field.placeholder}\n disabled={props.disabled}\n class={props.baseClass}\n autocomplete=\"off\"\n />\n\n <Show when={isOpen() && suggestions().length > 0}>\n <div class=\"absolute z-20 mt-1 w-full bg-white dark:bg-gray-800 border border-gray-200 dark:border-gray-600 rounded-md shadow-lg max-h-48 overflow-auto\">\n <For each={suggestions()}>\n {(item) => (\n <button\n type=\"button\"\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => selectSuggestion(item)}\n class=\"w-full text-left px-3 py-2 text-sm hover:bg-blue-50 dark:hover:bg-blue-900/20 text-gray-900 dark:text-white\"\n >\n {item.label}\n </button>\n )}\n </For>\n </div>\n </Show>\n </div>\n )\n}\n"],"names":["FormFieldRenderer","props","isVisible","useConditionalField","condition","field","showWhen","formData","baseInputClass","error","fieldId","name","errorId","_$createComponent","Show","when","children","_el$","_$getNextElement","_tmpl$11","_el$27","firstChild","_el$28","_co$7","_$getNextMarker","nextSibling","_el$29","_el$30","_co$8","_el$31","_el$32","_co$9","_el$33","_el$34","_co$0","_$insert","_$memo","label","type","_el$2","_tmpl$2","_el$4","_el$5","_co$","_el$6","_el$7","_co$2","required","_tmpl$","_$effect","_$setAttribute","Switch","Match","_el$8","_tmpl$3","$$input","e","onChange","currentTarget","value","_p$","_v$","_v$2","_v$3","_v$4","placeholder","_v$5","disabled","_v$6","_v$7","minLength","_v$8","maxLength","_v$9","pattern","_v$0","_v$1","undefined","_v$10","t","a","o","i","_$setProperty","n","s","h","r","d","l","u","_$className","_$runHydrationEvents","_el$9","_tmpl$4","Number","_v$11","_v$12","_v$13","_v$14","_v$15","_v$16","min","_v$17","max","_v$18","step","_v$19","_v$20","_v$21","_el$0","_tmpl$5","_v$22","_v$23","_v$24","_v$25","_v$26","minDate","_v$27","maxDate","_v$28","_v$29","_v$30","_el$1","_tmpl$6","_v$31","_v$32","_v$33","_v$34","_v$35","_v$36","rows","_v$37","_v$38","_v$39","_v$40","_v$41","multiple","_el$10","_tmpl$8","_el$12","_el$13","_co$3","_el$14","_el$15","_co$4","addEventListener","_el$11","_tmpl$7","For","each","options","option","_el$35","_tmpl$12","_v$42","_v$43","_v$44","_v$45","_v$46","_v$47","_v$48","_el$16","_tmpl$9","_el$17","_el$18","_el$20","_el$21","_co$5","_el$22","_el$23","_co$6","checked","checkboxLabel","_v$49","_v$50","_v$51","_v$52","_v$53","MultiSelectField","baseClass","AutocompleteField","_el$24","_tmpl$0","index","_el$36","_tmpl$13","_el$37","_el$38","_v$57","_v$58","_v$59","_v$54","_v$55","_v$56","helpText","_el$25","_tmpl$1","_el$26","_tmpl$10","open","setOpen","createSignal","toggle","val","current","includes","filter","v","removeChip","getLabel","find","_el$39","_tmpl$16","_el$44","_el$45","_co$1","_el$41","_el$42","_el$46","_el$47","_co$10","length","_el$40","_tmpl$14","_el$48","_tmpl$17","_el$50","_el$51","_co$11","_el$49","$$click","_c$","_el$43","_tmpl$15","_el$52","_tmpl$18","_el$53","_el$54","_v$60","_v$61","_v$62","query","setQuery","suggestions","setSuggestions","isOpen","setIsOpen","selectedLabel","setSelectedLabel","debounceTimer","minChars","debounceMs","fetchSuggestions","q","apiUrl","searchParam","params","URLSearchParams","extraParams","k","Object","entries","set","res","fetch","ok","data","json","items","Array","isArray","results","features","labelField","valueField","slice","map","item","String","handleInput","setTimeout","selectSuggestion","onCleanup","_el$55","_tmpl$19","_el$56","_el$58","_el$59","_co$12","_el$57","_el$60","_tmpl$20","$$mousedown","preventDefault","_v$63","_v$64","_v$65","_$delegateEvents"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormFieldRenderer.d.ts","sourceRoot":"","sources":["../../src/components/FormFieldRenderer.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAA4B,QAAQ,
|
|
1
|
+
{"version":3,"file":"FormFieldRenderer.d.ts","sourceRoot":"","sources":["../../src/components/FormFieldRenderer.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAA4B,QAAQ,EAAyC,MAAM,UAAU,CAAA;AAC/G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAG/C,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,eAAe,CAAA;IACtB,KAAK,EAAE,GAAG,CAAA;IACV,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;CACzC;AAED,eAAO,MAAM,iBAAiB,EAAE,SAAS,CAAC,sBAAsB,CAoO/D,CAAA"}
|