smartcomply-web-sdk 1.0.85 → 1.0.86

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.
@@ -21,7 +21,7 @@ export declare class SmartComply {
21
21
  * CDN tag they installed with (e.g. @1, which floats to the latest
22
22
  * matching release) actually resolved to the version they expect.
23
23
  */
24
- static readonly VERSION = "1.0.85";
24
+ static readonly VERSION = "1.0.86";
25
25
  private http;
26
26
  private clientId;
27
27
  private _sessionToken;
@@ -85,5 +85,5 @@ exports.SmartComply = SmartComply;
85
85
  * CDN tag they installed with (e.g. @1, which floats to the latest
86
86
  * matching release) actually resolved to the version they expect.
87
87
  */
88
- SmartComply.VERSION = "1.0.85";
88
+ SmartComply.VERSION = "1.0.86";
89
89
  //# sourceMappingURL=Smartcomply.js.map
@@ -21,7 +21,7 @@ export declare class SmartComply {
21
21
  * CDN tag they installed with (e.g. @1, which floats to the latest
22
22
  * matching release) actually resolved to the version they expect.
23
23
  */
24
- static readonly VERSION = "1.0.85";
24
+ static readonly VERSION = "1.0.86";
25
25
  private http;
26
26
  private clientId;
27
27
  private _sessionToken;
@@ -81,5 +81,5 @@ export class SmartComply {
81
81
  * CDN tag they installed with (e.g. @1, which floats to the latest
82
82
  * matching release) actually resolved to the version they expect.
83
83
  */
84
- SmartComply.VERSION = "1.0.85";
84
+ SmartComply.VERSION = "1.0.86";
85
85
  //# sourceMappingURL=Smartcomply.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageQuality.d.ts","sourceRoot":"","sources":["../../../src/utils/ImageQuality.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAwC/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,GAAE,MAAY,GAAG,MAAM,CAYjF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAgB9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAShE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,eAAe,CAyEnE;AAED,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,QAAQ,EAAE,OAAO,CAAC;IAClB,+EAA+E;IAC/E,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kFAAkF;IAClF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnE,aAAa,CAiMf;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKvD"}
1
+ {"version":3,"file":"ImageQuality.d.ts","sourceRoot":"","sources":["../../../src/utils/ImageQuality.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;CACzB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAwC/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,GAAE,MAAY,GAAG,MAAM,CAYjF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAgB9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAShE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,eAAe,CAyEnE;AAED,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,QAAQ,EAAE,OAAO,CAAC;IAClB,+EAA+E;IAC/E,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kFAAkF;IAClF,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnE,aAAa,CAoKf;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIrD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKvD"}
@@ -286,40 +286,33 @@ export function assessFraming(imageData, guideBoxPct) {
286
286
  ]);
287
287
  }
288
288
  }
289
- const interiorVariance = sampledVariance(interiorPoints);
290
- // For the whole-frame case only: sample right up to the true edges
291
- // (unlike the interior grid above, which is deliberately inset 10% away
292
- // from them) and check for the same real, varied content there as in the
293
- // interior evidence the document's own content runs genuinely
294
- // edge-to-edge rather than fading into blank background before the
295
- // boundary.
289
+ const { mean: interiorMean, variance: interiorVariance } = sampledMeanAndVariance(interiorPoints);
290
+ // For the whole-frame case: two real photos of genuinely well-framed,
291
+ // uncropped documents were wrongly rejected by an earlier version of this
292
+ // check that classified each edge strip against a FIXED brightness
293
+ // threshold ("document margin" vs. "background") real document margins
294
+ // turned out to vary too much in absolute brightness (~206 to ~247 across
295
+ // two ordinary phone photos of the same document type) for any single
296
+ // global number to hold up; every fix attempt just relocated the false
297
+ // positive to the next real photo tested.
296
298
  //
297
- // Each side is sampled ONLY along its middle third, deliberately
298
- // excluding the corners this is what correctly separates two different
299
- // failure modes that a per-side pass/fail alone can't tell apart:
300
- // - A document that's rotated/held at a slight angle has a real
301
- // triangular sliver of background near one or two CORNERS even
302
- // though the whole document is genuinely in frame. That sliver only
303
- // ever touches the very ends of a side, never its middle — excluding
304
- // corners from the sample makes this case invisible to begin with,
305
- // no majority vote needed.
306
- // - A document cropped off on one whole side (e.g. bottom cut short)
307
- // blanks that side's MIDDLE too, not just its corners — so requiring
308
- // every side's middle-third sample to show content (a strict "all
309
- // four", not a majority) still correctly fails this case, since the
310
- // cropped side's middle is genuinely blank regardless of the other
311
- // three sides.
312
- let allEdgesHaveContent = isWholeFrameBox;
299
+ // Replaced with a RELATIVE check instead of an absolute one: does each
300
+ // edge strip's own tone sit reasonably close to the document's own
301
+ // interior tone? A document's printed margin however light, dark, or
302
+ // off-white is still part of the same physical object as its interior,
303
+ // so the two should be in the same ballpark regardless of lighting. A
304
+ // genuinely different scene bleeding into frame (desk, wall, skin,
305
+ // fabric) is far more likely to diverge meaningfully from the document's
306
+ // own interior tone than an off-white margin ever would. This self-
307
+ // calibrates per photo instead of assuming one lighting condition.
308
+ const EDGE_TONE_TOLERANCE = 60; // gray-level units either side of interiorMean
309
+ let allEdgesMatchInteriorTone = isWholeFrameBox;
313
310
  if (isWholeFrameBox) {
314
311
  const EDGE_SAMPLE_DEPTH = Math.max(2, Math.round(Math.min(W, H) * 0.03));
315
312
  const edgeStripPoints = (fixed, isX, start, end) => {
316
313
  const points = [];
317
- // Middle third of the side's length only — corners (where a rotated
318
- // document's background sliver actually shows up) are excluded.
319
- const midStart = start + (end - start) / 3;
320
- const midEnd = start + (2 * (end - start)) / 3;
321
314
  for (let s = 0; s < SAMPLES_PER_SIDE; s++) {
322
- const t = midStart + ((midEnd - midStart) * s) / (SAMPLES_PER_SIDE - 1);
315
+ const t = start + ((end - start) * s) / (SAMPLES_PER_SIDE - 1);
323
316
  for (let d = 0; d < EDGE_SAMPLE_DEPTH; d++) {
324
317
  const x = isX ? fixed + (fixed === 0 ? d : -d) : Math.round(t);
325
318
  const y = isX ? Math.round(t) : fixed + (fixed === 0 ? d : -d);
@@ -328,38 +321,18 @@ export function assessFraming(imageData, guideBoxPct) {
328
321
  }
329
322
  return points;
330
323
  };
331
- // A real printed document (ID card, passport data page) commonly has
332
- // its own blank margin around the actual content — the physical card
333
- // stock or page background, not "missing document" background. That
334
- // margin is low-variance (same failure signature as a cropped edge)
335
- // but distinctly BRIGHT (white/cream card stock, ~230+), unlike a
336
- // genuinely missing edge, which shows whatever surface the document
337
- // was placed on (desk, skin, fabric — typically darker or more varied
338
- // than plain white). Accept a side as having content if it EITHER has
339
- // real variance OR is a bright, uniform margin; only a low-variance,
340
- // non-bright strip (something else entirely, or true empty space)
341
- // fails. Confirmed against a real Kenya ID report: three of its four
342
- // true edges are genuine ~247-brightness white card margin with near-
343
- // zero variance, and were being wrongly rejected before this check.
344
- const BRIGHT_MARGIN_THRESHOLD = 230;
345
- const sideAcceptable = (points) => {
346
- const { mean, variance } = sampledMeanAndVariance(points);
347
- return variance >= 0.25 || mean >= BRIGHT_MARGIN_THRESHOLD;
324
+ const sideCloseToInteriorTone = (points) => {
325
+ const { mean } = sampledMeanAndVariance(points);
326
+ return Math.abs(mean - interiorMean) <= EDGE_TONE_TOLERANCE;
348
327
  };
349
- allEdgesHaveContent = [
350
- sideAcceptable(edgeStripPoints(0, false, 0, W - 1)), // top
351
- sideAcceptable(edgeStripPoints(H - 1, false, 0, W - 1)), // bottom
352
- sideAcceptable(edgeStripPoints(0, true, 0, H - 1)), // left
353
- sideAcceptable(edgeStripPoints(W - 1, true, 0, H - 1)), // right
328
+ allEdgesMatchInteriorTone = [
329
+ sideCloseToInteriorTone(edgeStripPoints(0, false, 0, W - 1)), // top
330
+ sideCloseToInteriorTone(edgeStripPoints(H - 1, false, 0, W - 1)), // bottom
331
+ sideCloseToInteriorTone(edgeStripPoints(0, true, 0, H - 1)), // left
332
+ sideCloseToInteriorTone(edgeStripPoints(W - 1, true, 0, H - 1)), // right
354
333
  ].every(Boolean);
355
334
  }
356
- // Full-bleed document content runs real and varied along at least 3 of
357
- // the 4 true edges, with nothing outside the box to have been cropped
358
- // from — is the best possible framing outcome, not a failure: there is
359
- // structurally no "outside the document" region left to contrast
360
- // against, so border-edge detection has nothing to measure and is
361
- // skipped in favor of this direct edge-content check.
362
- const isFullBleed = allEdgesHaveContent && interiorVariance >= 0.25;
335
+ const isFullBleed = allEdgesMatchInteriorTone && interiorVariance >= 0.25;
363
336
  // Otherwise: require a solid majority of the border ring to show an edge
364
337
  // AND some real content inside — either alone can false-positive (a
365
338
  // plain wall has no edges but so does a document photographed at very
@@ -1 +1 @@
1
- {"version":3,"file":"ImageQuality.js","sourceRoot":"","sources":["../../../src/utils/ImageQuality.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ImageQuality.js","sourceRoot":"","sources":["../../../src/utils/ImageQuality.ts"],"names":[],"mappings":"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"}
@@ -5780,7 +5780,7 @@ var SmartComplySDK = (() => {
5780
5780
  * CDN tag they installed with (e.g. @1, which floats to the latest
5781
5781
  * matching release) actually resolved to the version they expect.
5782
5782
  */
5783
- _SmartComply.VERSION = "1.0.85";
5783
+ _SmartComply.VERSION = "1.0.86";
5784
5784
  var SmartComply = _SmartComply;
5785
5785
 
5786
5786
  // src/flow/theme.ts
@@ -6108,16 +6108,15 @@ var SmartComplySDK = (() => {
6108
6108
  ]);
6109
6109
  }
6110
6110
  }
6111
- const interiorVariance = sampledVariance(interiorPoints);
6112
- let allEdgesHaveContent = isWholeFrameBox;
6111
+ const { mean: interiorMean, variance: interiorVariance } = sampledMeanAndVariance(interiorPoints);
6112
+ const EDGE_TONE_TOLERANCE = 60;
6113
+ let allEdgesMatchInteriorTone = isWholeFrameBox;
6113
6114
  if (isWholeFrameBox) {
6114
6115
  const EDGE_SAMPLE_DEPTH = Math.max(2, Math.round(Math.min(W2, H2) * 0.03));
6115
6116
  const edgeStripPoints = (fixed, isX, start, end) => {
6116
6117
  const points = [];
6117
- const midStart = start + (end - start) / 3;
6118
- const midEnd = start + 2 * (end - start) / 3;
6119
6118
  for (let s2 = 0; s2 < SAMPLES_PER_SIDE; s2++) {
6120
- const t2 = midStart + (midEnd - midStart) * s2 / (SAMPLES_PER_SIDE - 1);
6119
+ const t2 = start + (end - start) * s2 / (SAMPLES_PER_SIDE - 1);
6121
6120
  for (let d2 = 0; d2 < EDGE_SAMPLE_DEPTH; d2++) {
6122
6121
  const x2 = isX ? fixed + (fixed === 0 ? d2 : -d2) : Math.round(t2);
6123
6122
  const y2 = isX ? Math.round(t2) : fixed + (fixed === 0 ? d2 : -d2);
@@ -6126,23 +6125,22 @@ var SmartComplySDK = (() => {
6126
6125
  }
6127
6126
  return points;
6128
6127
  };
6129
- const BRIGHT_MARGIN_THRESHOLD = 230;
6130
- const sideAcceptable = (points) => {
6131
- const { mean, variance } = sampledMeanAndVariance(points);
6132
- return variance >= 0.25 || mean >= BRIGHT_MARGIN_THRESHOLD;
6128
+ const sideCloseToInteriorTone = (points) => {
6129
+ const { mean } = sampledMeanAndVariance(points);
6130
+ return Math.abs(mean - interiorMean) <= EDGE_TONE_TOLERANCE;
6133
6131
  };
6134
- allEdgesHaveContent = [
6135
- sideAcceptable(edgeStripPoints(0, false, 0, W2 - 1)),
6132
+ allEdgesMatchInteriorTone = [
6133
+ sideCloseToInteriorTone(edgeStripPoints(0, false, 0, W2 - 1)),
6136
6134
  // top
6137
- sideAcceptable(edgeStripPoints(H2 - 1, false, 0, W2 - 1)),
6135
+ sideCloseToInteriorTone(edgeStripPoints(H2 - 1, false, 0, W2 - 1)),
6138
6136
  // bottom
6139
- sideAcceptable(edgeStripPoints(0, true, 0, H2 - 1)),
6137
+ sideCloseToInteriorTone(edgeStripPoints(0, true, 0, H2 - 1)),
6140
6138
  // left
6141
- sideAcceptable(edgeStripPoints(W2 - 1, true, 0, H2 - 1))
6139
+ sideCloseToInteriorTone(edgeStripPoints(W2 - 1, true, 0, H2 - 1))
6142
6140
  // right
6143
6141
  ].every(Boolean);
6144
6142
  }
6145
- const isFullBleed = allEdgesHaveContent && interiorVariance >= 0.25;
6143
+ const isFullBleed = allEdgesMatchInteriorTone && interiorVariance >= 0.25;
6146
6144
  const isFramed = isFullBleed || borderEdgeCoverage >= 0.55 && interiorVariance >= 0.25;
6147
6145
  return { isFramed, borderEdgeCoverage, interiorVariance };
6148
6146
  }