@camstack/ui-library 1.2.237 → 1.2.238
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/index.cjs +26 -12
- package/dist/index.js +26 -12
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -28752,18 +28752,31 @@ function GroupedModelSelector({ catalog, value, onChange, disabled }) {
|
|
|
28752
28752
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
28753
28753
|
className: "space-y-3",
|
|
28754
28754
|
children: [
|
|
28755
|
-
families.length > 1 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [
|
|
28756
|
-
|
|
28757
|
-
|
|
28758
|
-
|
|
28759
|
-
|
|
28760
|
-
|
|
28761
|
-
|
|
28762
|
-
|
|
28763
|
-
|
|
28764
|
-
|
|
28765
|
-
|
|
28766
|
-
|
|
28755
|
+
families.length > 1 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [
|
|
28756
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
|
|
28757
|
+
className: "text-[10px] uppercase tracking-wide text-foreground-subtle mb-1.5",
|
|
28758
|
+
children: "Family"
|
|
28759
|
+
}),
|
|
28760
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
28761
|
+
className: "flex flex-wrap gap-1.5",
|
|
28762
|
+
children: families.map((f) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Chip, {
|
|
28763
|
+
active: f.family === family.family,
|
|
28764
|
+
disabled,
|
|
28765
|
+
...f.hint !== void 0 ? { title: f.hint } : {},
|
|
28766
|
+
onClick: () => onChange(f.tiers[0]?.baseModelId ?? ""),
|
|
28767
|
+
children: f.label
|
|
28768
|
+
}, f.family))
|
|
28769
|
+
}),
|
|
28770
|
+
family.hint !== void 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("p", {
|
|
28771
|
+
className: "mt-1 text-[10px] text-foreground-subtle",
|
|
28772
|
+
"data-testid": "model-family-hint",
|
|
28773
|
+
children: [
|
|
28774
|
+
family.label,
|
|
28775
|
+
": ",
|
|
28776
|
+
family.hint
|
|
28777
|
+
]
|
|
28778
|
+
})
|
|
28779
|
+
] }),
|
|
28767
28780
|
family.tiers.length > 1 && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("p", {
|
|
28768
28781
|
className: "text-[10px] uppercase tracking-wide text-foreground-subtle mb-1.5",
|
|
28769
28782
|
children: [family.label, " — size"]
|
|
@@ -29400,6 +29413,7 @@ function supplyNotes(supply) {
|
|
|
29400
29413
|
if (supply.stepId === "package-detection") return [...notes, "The root model's own package boxes become the package result at this step's threshold; this step's zone-crop view is not used, so small parcels the full-frame model misses stay missed."];
|
|
29401
29414
|
return [...notes, "This step's class list decides which of the root's labels become the fine class; a switched-off class stays at its macro."];
|
|
29402
29415
|
}
|
|
29416
|
+
if (supply.kind === "mask") return ["Masks come from the root model: each detection carries the root's own instance mask, so this step's model does not run. A root mask follows the model's mask grid (a quarter of its input), coarser than this step's own per-crop mask."];
|
|
29403
29417
|
if (supply.stepId === "face-detection") return ["Face boxes come from the root model. Each is re-found by this step's face detector in a square around it before recognition, so only a face it finds is recognised; a box with no face in it is dropped."];
|
|
29404
29418
|
return ["Plate boxes come from the root model and the plate reader reads them. The crop margin around a root plate box has not been measured for this model yet."];
|
|
29405
29419
|
}
|
package/dist/index.js
CHANGED
|
@@ -28728,18 +28728,31 @@ function GroupedModelSelector({ catalog, value, onChange, disabled }) {
|
|
|
28728
28728
|
return /* @__PURE__ */ jsxs("div", {
|
|
28729
28729
|
className: "space-y-3",
|
|
28730
28730
|
children: [
|
|
28731
|
-
families.length > 1 && /* @__PURE__ */ jsxs("div", { children: [
|
|
28732
|
-
|
|
28733
|
-
|
|
28734
|
-
|
|
28735
|
-
|
|
28736
|
-
|
|
28737
|
-
|
|
28738
|
-
|
|
28739
|
-
|
|
28740
|
-
|
|
28741
|
-
|
|
28742
|
-
|
|
28731
|
+
families.length > 1 && /* @__PURE__ */ jsxs("div", { children: [
|
|
28732
|
+
/* @__PURE__ */ jsx("p", {
|
|
28733
|
+
className: "text-[10px] uppercase tracking-wide text-foreground-subtle mb-1.5",
|
|
28734
|
+
children: "Family"
|
|
28735
|
+
}),
|
|
28736
|
+
/* @__PURE__ */ jsx("div", {
|
|
28737
|
+
className: "flex flex-wrap gap-1.5",
|
|
28738
|
+
children: families.map((f) => /* @__PURE__ */ jsx(Chip, {
|
|
28739
|
+
active: f.family === family.family,
|
|
28740
|
+
disabled,
|
|
28741
|
+
...f.hint !== void 0 ? { title: f.hint } : {},
|
|
28742
|
+
onClick: () => onChange(f.tiers[0]?.baseModelId ?? ""),
|
|
28743
|
+
children: f.label
|
|
28744
|
+
}, f.family))
|
|
28745
|
+
}),
|
|
28746
|
+
family.hint !== void 0 && /* @__PURE__ */ jsxs("p", {
|
|
28747
|
+
className: "mt-1 text-[10px] text-foreground-subtle",
|
|
28748
|
+
"data-testid": "model-family-hint",
|
|
28749
|
+
children: [
|
|
28750
|
+
family.label,
|
|
28751
|
+
": ",
|
|
28752
|
+
family.hint
|
|
28753
|
+
]
|
|
28754
|
+
})
|
|
28755
|
+
] }),
|
|
28743
28756
|
family.tiers.length > 1 && /* @__PURE__ */ jsxs("div", { children: [/* @__PURE__ */ jsxs("p", {
|
|
28744
28757
|
className: "text-[10px] uppercase tracking-wide text-foreground-subtle mb-1.5",
|
|
28745
28758
|
children: [family.label, " — size"]
|
|
@@ -29376,6 +29389,7 @@ function supplyNotes(supply) {
|
|
|
29376
29389
|
if (supply.stepId === "package-detection") return [...notes, "The root model's own package boxes become the package result at this step's threshold; this step's zone-crop view is not used, so small parcels the full-frame model misses stay missed."];
|
|
29377
29390
|
return [...notes, "This step's class list decides which of the root's labels become the fine class; a switched-off class stays at its macro."];
|
|
29378
29391
|
}
|
|
29392
|
+
if (supply.kind === "mask") return ["Masks come from the root model: each detection carries the root's own instance mask, so this step's model does not run. A root mask follows the model's mask grid (a quarter of its input), coarser than this step's own per-crop mask."];
|
|
29379
29393
|
if (supply.stepId === "face-detection") return ["Face boxes come from the root model. Each is re-found by this step's face detector in a square around it before recognition, so only a face it finds is recognised; a box with no face in it is dropped."];
|
|
29380
29394
|
return ["Plate boxes come from the root model and the plate reader reads them. The crop margin around a root plate box has not been measured for this model yet."];
|
|
29381
29395
|
}
|