@broberg/bodymap 0.13.1 → 0.13.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.
package/dist/three.d.cts CHANGED
@@ -398,6 +398,12 @@ interface BodyMap3DProps {
398
398
  * and all eleven take the same box so none is an ellipse among circles.
399
399
  */
400
400
  declare const INTENSITY_SIZE = 46;
401
+ /**
402
+ * F052.34 — the touch floor F052.8 set for this component (a phone is its primary
403
+ * surface). The panel's close control was 40×40 — round, but under the floor; it now
404
+ * takes exactly this. INTENSITY_SIZE sits above it.
405
+ */
406
+ declare const TOUCH_MIN = 44;
401
407
  /**
402
408
  * F052.33 — should the help note be on screen at all?
403
409
  *
@@ -418,4 +424,4 @@ declare function shouldShowHint(opts: {
418
424
  }): boolean;
419
425
  declare function BodyMap3D(props: BodyMap3DProps): react.JSX.Element;
420
426
 
421
- export { BodyMap3D, type BodyMap3DHint, type BodyMap3DModels, type BodyMap3DProps, type BodyMap3DSex, type BodyMap3DUiLabels, INTENSITY_SIZE, TAP_MAX_DISTANCE, ensureNormals, isTap, seamBlend, seamWeight, serializeReport, shouldShowHint };
427
+ export { BodyMap3D, type BodyMap3DHint, type BodyMap3DModels, type BodyMap3DProps, type BodyMap3DSex, type BodyMap3DUiLabels, INTENSITY_SIZE, TAP_MAX_DISTANCE, TOUCH_MIN, ensureNormals, isTap, seamBlend, seamWeight, serializeReport, shouldShowHint };
package/dist/three.d.ts CHANGED
@@ -398,6 +398,12 @@ interface BodyMap3DProps {
398
398
  * and all eleven take the same box so none is an ellipse among circles.
399
399
  */
400
400
  declare const INTENSITY_SIZE = 46;
401
+ /**
402
+ * F052.34 — the touch floor F052.8 set for this component (a phone is its primary
403
+ * surface). The panel's close control was 40×40 — round, but under the floor; it now
404
+ * takes exactly this. INTENSITY_SIZE sits above it.
405
+ */
406
+ declare const TOUCH_MIN = 44;
401
407
  /**
402
408
  * F052.33 — should the help note be on screen at all?
403
409
  *
@@ -418,4 +424,4 @@ declare function shouldShowHint(opts: {
418
424
  }): boolean;
419
425
  declare function BodyMap3D(props: BodyMap3DProps): react.JSX.Element;
420
426
 
421
- export { BodyMap3D, type BodyMap3DHint, type BodyMap3DModels, type BodyMap3DProps, type BodyMap3DSex, type BodyMap3DUiLabels, INTENSITY_SIZE, TAP_MAX_DISTANCE, ensureNormals, isTap, seamBlend, seamWeight, serializeReport, shouldShowHint };
427
+ export { BodyMap3D, type BodyMap3DHint, type BodyMap3DModels, type BodyMap3DProps, type BodyMap3DSex, type BodyMap3DUiLabels, INTENSITY_SIZE, TAP_MAX_DISTANCE, TOUCH_MIN, ensureNormals, isTap, seamBlend, seamWeight, serializeReport, shouldShowHint };
package/dist/three.js CHANGED
@@ -52,7 +52,7 @@ var painPointSchema = z.object({
52
52
  type: z.enum(PAIN_TYPES).optional(),
53
53
  timestamp: z.string()
54
54
  });
55
- z.array(painPointSchema);
55
+ z.array(painPointSchema).max(REGIONS.length);
56
56
  function decidePick(region, report, config = {}) {
57
57
  if (!isSelectable(region, config)) return "ignore";
58
58
  return report.some((p) => p.region === region) ? "clear" : "select";
@@ -125,7 +125,7 @@ z.object({
125
125
  intensity: z.number().int().min(0).max(10),
126
126
  quality: z.enum(PAIN_TYPES).optional()
127
127
  })
128
- )
128
+ ).max(REGIONS.length)
129
129
  });
130
130
  function serializeReport(report, opts = {}) {
131
131
  return {
@@ -290,6 +290,7 @@ function webglAvailable() {
290
290
  }
291
291
  }
292
292
  var INTENSITY_SIZE = 46;
293
+ var TOUCH_MIN = 44;
293
294
  function shouldShowHint(opts) {
294
295
  if (opts.openRegion) return false;
295
296
  if (opts.hint === false) return false;
@@ -802,7 +803,7 @@ function BodyMap3D(props) {
802
803
  "data-testid": "bodymap3d-close",
803
804
  "aria-label": L.close,
804
805
  onClick: () => setSelected(null),
805
- style: { ...btn(chrome), width: 40, height: 40, minWidth: 40, padding: 0, borderRadius: "50%", fontSize: 20, lineHeight: 1, color: chrome.mutedText, borderColor: chrome.border, background: chrome.panelBg },
806
+ style: { ...btn(chrome), width: TOUCH_MIN, height: TOUCH_MIN, minWidth: TOUCH_MIN, padding: 0, borderRadius: "50%", fontSize: 20, lineHeight: 1, color: chrome.mutedText, borderColor: chrome.border, background: chrome.panelBg },
806
807
  children: "\xD7"
807
808
  }
808
809
  )
@@ -854,6 +855,6 @@ function BodyMap3D(props) {
854
855
  );
855
856
  }
856
857
 
857
- export { BodyMap3D, INTENSITY_SIZE, TAP_MAX_DISTANCE, ensureNormals, isTap, seamBlend, seamWeight, serializeReport, shouldShowHint };
858
+ export { BodyMap3D, INTENSITY_SIZE, TAP_MAX_DISTANCE, TOUCH_MIN, ensureNormals, isTap, seamBlend, seamWeight, serializeReport, shouldShowHint };
858
859
  //# sourceMappingURL=three.js.map
859
860
  //# sourceMappingURL=three.js.map