@moveris/shared 3.10.0 → 3.11.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/README.md CHANGED
@@ -578,27 +578,27 @@ const status = getStatusMessage('capturing', DEFAULT_LOCALE);
578
578
 
579
579
  #### Feedback Keys
580
580
 
581
- | Key | English | Description |
582
- | ------------------- | ------------------------------ | --------------------------------------------------------------------------------- |
583
- | `no_face` | "No face detected" | Face detection failed |
584
- | `face_not_centered` | "Center your face in the oval" | Face outside guide |
585
- | `too_close` | "Move back a little" | Face too close to camera |
586
- | `too_far` | "Move closer" | Face too far from camera |
587
- | `poor_lighting` | "Improve lighting" | Insufficient light |
588
- | `hold_still` | "Hold still" | Movement detected |
589
- | `capturing` | "Capturing..." | Frame capture in progress |
590
- | `processing` | "Processing..." | API verification in progress |
591
- | `success` | "Verification complete" | Successful completion |
592
- | `failed` | "Verification failed" | Failed verification |
593
- | `eyes_not_visible` | "Eyes not clearly visible" | Eye region featureless |
594
- | `eyes_shadowed` | "Eyes are in shadow…" | Eye region too dark |
595
- | `eyes_overexposed` | "Eye region overexposed…" | Eye region too bright |
596
- | `glasses_glare` | "Glare detected…" | Specular highlights on eyes |
597
- | `eye_quality_poor` | "Eye region quality is poor" | Generic eye quality failure |
598
- | `camera_angle_low` | "Raise camera to eye level" | Camera below face (Y < 0.3) |
599
- | `camera_angle_high` | "Lower camera to eye level" | Camera above face (Y > 0.7) |
600
- | `camera_tilted` | "Hold camera level" | Device tilt > 15° (via transformation matrix, falls back to eye-corner landmarks) |
601
- | `flat_lighting` | "Find better lighting" | Face-region dynamic range < 60 L-units — soft warning, capture continues |
581
+ | Key | English | Description |
582
+ | ------------------- | -------------------------------- | --------------------------------------------------------------------------------- |
583
+ | `no_face` | "No face detected" | Face detection failed |
584
+ | `face_not_centered` | "Center your face in the circle" | Face outside guide |
585
+ | `too_close` | "Move back a little" | Face too close to camera |
586
+ | `too_far` | "Move closer" | Face too far from camera |
587
+ | `poor_lighting` | "Improve lighting" | Insufficient light |
588
+ | `hold_still` | "Hold still" | Movement detected |
589
+ | `capturing` | "Capturing..." | Frame capture in progress |
590
+ | `processing` | "Processing..." | API verification in progress |
591
+ | `success` | "Verification complete" | Successful completion |
592
+ | `failed` | "Verification failed" | Failed verification |
593
+ | `eyes_not_visible` | "Eyes not clearly visible" | Eye region featureless |
594
+ | `eyes_shadowed` | "Eyes are in shadow…" | Eye region too dark |
595
+ | `eyes_overexposed` | "Eye region overexposed…" | Eye region too bright |
596
+ | `glasses_glare` | "Glare detected…" | Specular highlights on eyes |
597
+ | `eye_quality_poor` | "Eye region quality is poor" | Generic eye quality failure |
598
+ | `camera_angle_low` | "Raise camera to eye level" | Camera below face (Y < 0.3) |
599
+ | `camera_angle_high` | "Lower camera to eye level" | Camera above face (Y > 0.7) |
600
+ | `camera_tilted` | "Hold camera level" | Device tilt > 15° (via transformation matrix, falls back to eye-corner landmarks) |
601
+ | `flat_lighting` | "Find better lighting" | Face-region dynamic range < 60 L-units — soft warning, capture continues |
602
602
 
603
603
  ---
604
604
 
package/dist/index.d.mts CHANGED
@@ -849,7 +849,7 @@ declare const DEFAULT_STATUS_MESSAGES: {
849
849
  };
850
850
  type StatusMessageKey = keyof typeof DEFAULT_STATUS_MESSAGES;
851
851
  declare const FEEDBACK_MESSAGES: {
852
- readonly position_face: "Position your face in the oval";
852
+ readonly position_face: "Position your face in the circle";
853
853
  readonly no_face: "No face detected - move into frame";
854
854
  readonly multiple_faces: "Multiple people detected - please verify alone";
855
855
  readonly move_closer_to_center: "Move closer to center";
package/dist/index.d.ts CHANGED
@@ -849,7 +849,7 @@ declare const DEFAULT_STATUS_MESSAGES: {
849
849
  };
850
850
  type StatusMessageKey = keyof typeof DEFAULT_STATUS_MESSAGES;
851
851
  declare const FEEDBACK_MESSAGES: {
852
- readonly position_face: "Position your face in the oval";
852
+ readonly position_face: "Position your face in the circle";
853
853
  readonly no_face: "No face detected - move into frame";
854
854
  readonly multiple_faces: "Multiple people detected - please verify alone";
855
855
  readonly move_closer_to_center: "Move closer to center";
package/dist/index.js CHANGED
@@ -239,7 +239,7 @@ async function sleep(ms) {
239
239
  }
240
240
 
241
241
  // package.json
242
- var version = "3.10.0";
242
+ var version = "3.11.0";
243
243
 
244
244
  // src/utils/deviceIntelligence.ts
245
245
  var IPINFO_URL = "https://ipinfo.io/json";
@@ -1537,7 +1537,7 @@ var DEFAULT_STATUS_MESSAGES = {
1537
1537
  };
1538
1538
  var FEEDBACK_MESSAGES = {
1539
1539
  // Initial / No face (Red state)
1540
- position_face: "Position your face in the oval",
1540
+ position_face: "Position your face in the circle",
1541
1541
  no_face: "No face detected - move into frame",
1542
1542
  multiple_faces: "Multiple people detected - please verify alone",
1543
1543
  // Poor alignment (Orange state) - alignment < 50%
@@ -1601,7 +1601,7 @@ var ES_LOCALE = {
1601
1601
  },
1602
1602
  feedback: {
1603
1603
  // Initial / No face (Red state)
1604
- position_face: "Posiciona tu rostro en el \xF3valo",
1604
+ position_face: "Posiciona tu rostro en el c\xEDrculo",
1605
1605
  no_face: "No se detecta rostro - mu\xE9vete al marco",
1606
1606
  multiple_faces: "Varias personas detectadas - verifica solo",
1607
1607
  // Poor alignment (Orange state)
@@ -1939,16 +1939,14 @@ function isFaceFullyVisible(boundingBox, frameWidth, frameHeight) {
1939
1939
  var OVAL_REGION_DESKTOP = {
1940
1940
  centerX: 0.5,
1941
1941
  centerY: 0.5,
1942
- width: 0.36,
1943
- height: 0.48
1944
- // 0.36 * (4/3)
1942
+ width: 0.45,
1943
+ height: 0.45
1945
1944
  };
1946
1945
  var OVAL_REGION_MOBILE = {
1947
1946
  centerX: 0.5,
1948
1947
  centerY: 0.5,
1949
- width: 0.48,
1950
- height: 0.64
1951
- // 0.48 * (4/3)
1948
+ width: 0.62,
1949
+ height: 0.62
1952
1950
  };
1953
1951
  var DEFAULT_OVAL_REGION = OVAL_REGION_DESKTOP;
1954
1952
  function isFaceInOval(faceBox, frameWidth, frameHeight, oval = DEFAULT_OVAL_REGION, tolerance = 0.3) {
@@ -1980,7 +1978,7 @@ function isFaceInOval(faceBox, frameWidth, frameHeight, oval = DEFAULT_OVAL_REGI
1980
1978
  } else if (dx > 0.1) {
1981
1979
  feedback = "Move face left";
1982
1980
  } else {
1983
- feedback = "Center your face in the oval";
1981
+ feedback = "Center your face in the circle";
1984
1982
  }
1985
1983
  } else if (tooSmall) {
1986
1984
  feedback = "Move closer";
package/dist/index.mjs CHANGED
@@ -97,7 +97,7 @@ async function sleep(ms) {
97
97
  }
98
98
 
99
99
  // package.json
100
- var version = "3.10.0";
100
+ var version = "3.11.0";
101
101
 
102
102
  // src/utils/deviceIntelligence.ts
103
103
  var IPINFO_URL = "https://ipinfo.io/json";
@@ -1395,7 +1395,7 @@ var DEFAULT_STATUS_MESSAGES = {
1395
1395
  };
1396
1396
  var FEEDBACK_MESSAGES = {
1397
1397
  // Initial / No face (Red state)
1398
- position_face: "Position your face in the oval",
1398
+ position_face: "Position your face in the circle",
1399
1399
  no_face: "No face detected - move into frame",
1400
1400
  multiple_faces: "Multiple people detected - please verify alone",
1401
1401
  // Poor alignment (Orange state) - alignment < 50%
@@ -1459,7 +1459,7 @@ var ES_LOCALE = {
1459
1459
  },
1460
1460
  feedback: {
1461
1461
  // Initial / No face (Red state)
1462
- position_face: "Posiciona tu rostro en el \xF3valo",
1462
+ position_face: "Posiciona tu rostro en el c\xEDrculo",
1463
1463
  no_face: "No se detecta rostro - mu\xE9vete al marco",
1464
1464
  multiple_faces: "Varias personas detectadas - verifica solo",
1465
1465
  // Poor alignment (Orange state)
@@ -1797,16 +1797,14 @@ function isFaceFullyVisible(boundingBox, frameWidth, frameHeight) {
1797
1797
  var OVAL_REGION_DESKTOP = {
1798
1798
  centerX: 0.5,
1799
1799
  centerY: 0.5,
1800
- width: 0.36,
1801
- height: 0.48
1802
- // 0.36 * (4/3)
1800
+ width: 0.45,
1801
+ height: 0.45
1803
1802
  };
1804
1803
  var OVAL_REGION_MOBILE = {
1805
1804
  centerX: 0.5,
1806
1805
  centerY: 0.5,
1807
- width: 0.48,
1808
- height: 0.64
1809
- // 0.48 * (4/3)
1806
+ width: 0.62,
1807
+ height: 0.62
1810
1808
  };
1811
1809
  var DEFAULT_OVAL_REGION = OVAL_REGION_DESKTOP;
1812
1810
  function isFaceInOval(faceBox, frameWidth, frameHeight, oval = DEFAULT_OVAL_REGION, tolerance = 0.3) {
@@ -1838,7 +1836,7 @@ function isFaceInOval(faceBox, frameWidth, frameHeight, oval = DEFAULT_OVAL_REGI
1838
1836
  } else if (dx > 0.1) {
1839
1837
  feedback = "Move face left";
1840
1838
  } else {
1841
- feedback = "Center your face in the oval";
1839
+ feedback = "Center your face in the circle";
1842
1840
  }
1843
1841
  } else if (tooSmall) {
1844
1842
  feedback = "Move closer";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moveris/shared",
3
- "version": "3.10.0",
3
+ "version": "3.11.0",
4
4
  "description": "Core business logic for Moveris Live SDK",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",