smartcomply-web-sdk 1.0.39 → 1.0.41

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.
Files changed (33) hide show
  1. package/dist/esm/flow/DocumentCapture.d.ts +8 -0
  2. package/dist/esm/flow/DocumentCapture.d.ts.map +1 -1
  3. package/dist/esm/flow/DocumentCapture.js +74 -8
  4. package/dist/esm/flow/DocumentCapture.js.map +1 -1
  5. package/dist/esm/flow/SmartComplyFlow.d.ts.map +1 -1
  6. package/dist/esm/flow/SmartComplyFlow.js +26 -19
  7. package/dist/esm/flow/SmartComplyFlow.js.map +1 -1
  8. package/dist/esm/types/liveness.d.ts +30 -2
  9. package/dist/esm/types/liveness.d.ts.map +1 -1
  10. package/dist/esm/types/onboarding.d.ts +6 -2
  11. package/dist/esm/types/onboarding.d.ts.map +1 -1
  12. package/dist/esm/utils/constants.d.ts +0 -8
  13. package/dist/esm/utils/constants.d.ts.map +1 -1
  14. package/dist/esm/utils/constants.js +0 -9
  15. package/dist/esm/utils/constants.js.map +1 -1
  16. package/dist/flow/DocumentCapture.d.ts +8 -0
  17. package/dist/flow/DocumentCapture.d.ts.map +1 -1
  18. package/dist/flow/DocumentCapture.js +74 -8
  19. package/dist/flow/DocumentCapture.js.map +1 -1
  20. package/dist/flow/SmartComplyFlow.d.ts.map +1 -1
  21. package/dist/flow/SmartComplyFlow.js +26 -19
  22. package/dist/flow/SmartComplyFlow.js.map +1 -1
  23. package/dist/smartcomply.browser.js +203 -25
  24. package/dist/smartcomply.browser.js.map +4 -4
  25. package/dist/types/liveness.d.ts +30 -2
  26. package/dist/types/liveness.d.ts.map +1 -1
  27. package/dist/types/onboarding.d.ts +6 -2
  28. package/dist/types/onboarding.d.ts.map +1 -1
  29. package/dist/utils/constants.d.ts +0 -8
  30. package/dist/utils/constants.d.ts.map +1 -1
  31. package/dist/utils/constants.js +1 -10
  32. package/dist/utils/constants.js.map +1 -1
  33. package/package.json +1 -1
@@ -37,6 +37,14 @@ export declare class DocumentCapture {
37
37
  private openCamera;
38
38
  private getCameraErrorMessage;
39
39
  private captureFrame;
40
+ /**
41
+ * Runs the local sharpness/glare/contrast/brightness check against a
42
+ * captured frame. Returns null (never blocks) if quality can't be computed
43
+ * — e.g. a tainted canvas from a cross-origin file, or an unsupported browser.
44
+ */
45
+ private _assessImageQuality;
46
+ /** Same as _assessImageQuality but starting from a Blob/File (upload path). */
47
+ private _assessBlobQuality;
40
48
  private showPreview;
41
49
  private handleCaptureComplete;
42
50
  private handleFileUploadComplete;
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentCapture.d.ts","sourceRoot":"","sources":["../../../src/flow/DocumentCapture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,IAAI,CAAC;IACZ,IAAI,CAAC,EAAE,IAAI,CAAC;CACb;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAA+B;IAC3C,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,cAAc,CAA0D;IAChF,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,oBAAoB,CAAkC;IAE9D;;;OAGG;IACH,OAAO,CACL,SAAS,EAAE,WAAW,EACtB,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,qBAAqB,CAAC;IAgCjC,OAAO,IAAI,IAAI;IAuBf,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,kBAAkB;IAgK1B,+DAA+D;IAC/D,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,gBAAgB;YAuEV,UAAU;IAsDxB,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,YAAY;IA6BpB,OAAO,CAAC,WAAW;IAqEnB,OAAO,CAAC,qBAAqB;IAqC7B,OAAO,CAAC,wBAAwB;IAUhC,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,oBAAoB;IA0E5B,OAAO,CAAC,gBAAgB;IAwDxB,OAAO,CAAC,SAAS;IAgCjB,OAAO,CAAC,YAAY;IA4BpB,OAAO,CAAC,aAAa;IA4ErB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAuC5B,OAAO,CAAC,gBAAgB;CASzB"}
1
+ {"version":3,"file":"DocumentCapture.d.ts","sourceRoot":"","sources":["../../../src/flow/DocumentCapture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,IAAI,CAAC;IACZ,IAAI,CAAC,EAAE,IAAI,CAAC;CACb;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,IAAI,CAA+B;IAC3C,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,cAAc,CAA0D;IAChF,OAAO,CAAC,aAAa,CAAuC;IAC5D,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,oBAAoB,CAAkC;IAE9D;;;OAGG;IACH,OAAO,CACL,SAAS,EAAE,WAAW,EACtB,KAAK,EAAE,WAAW,EAClB,YAAY,EAAE,MAAM,EACpB,YAAY,CAAC,EAAE,OAAO,GACrB,OAAO,CAAC,qBAAqB,CAAC;IAgCjC,OAAO,IAAI,IAAI;IAuBf,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,kBAAkB;IAgK1B,+DAA+D;IAC/D,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,gBAAgB;YAuEV,UAAU;IAsDxB,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,YAAY;IAkCpB;;;;OAIG;YACW,mBAAmB;IAYjC,+EAA+E;YACjE,kBAAkB;IAsBhC,OAAO,CAAC,WAAW;IA6FnB,OAAO,CAAC,qBAAqB;YAqCf,wBAAwB;IAUtC,OAAO,CAAC,YAAY;IAqBpB,OAAO,CAAC,gBAAgB;IAKxB,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,oBAAoB;IA0E5B,OAAO,CAAC,gBAAgB;IAwDxB,OAAO,CAAC,SAAS;IAgCjB,OAAO,CAAC,YAAY;IA4BpB,OAAO,CAAC,aAAa;IA4ErB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAuC5B,OAAO,CAAC,gBAAgB;CASzB"}
@@ -1,3 +1,4 @@
1
+ import { assessQuality } from "../utils/ImageQuality";
1
2
  export class DocumentCapture {
2
3
  constructor() {
3
4
  this.root = null;
@@ -379,14 +380,57 @@ export class DocumentCapture {
379
380
  if (!ctx)
380
381
  return;
381
382
  ctx.drawImage(this.videoEl, 0, 0, canvas.width, canvas.height);
382
- canvas.toBlob((blob) => {
383
+ canvas.toBlob(async (blob) => {
383
384
  if (blob) {
384
385
  this.stopCamera();
385
- this.showPreview(container, theme, blob, documentType);
386
+ // Quality analysis runs synchronously over ~1.2MP of pixel data —
387
+ // show a loading state so the capture->preview transition never
388
+ // looks like a frozen/unresponsive tap on slower devices.
389
+ this.showLoadingState("Analyzing photo...", theme);
390
+ const quality = await this._assessImageQuality(canvas, ctx);
391
+ this.showPreview(container, theme, blob, documentType, quality);
386
392
  }
387
393
  }, "image/jpeg", 0.85);
388
394
  }
389
- showPreview(container, theme, imageData, documentType) {
395
+ /**
396
+ * Runs the local sharpness/glare/contrast/brightness check against a
397
+ * captured frame. Returns null (never blocks) if quality can't be computed
398
+ * — e.g. a tainted canvas from a cross-origin file, or an unsupported browser.
399
+ */
400
+ async _assessImageQuality(canvas, ctx) {
401
+ try {
402
+ const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);
403
+ return assessQuality(imageData);
404
+ }
405
+ catch {
406
+ return null;
407
+ }
408
+ }
409
+ /** Same as _assessImageQuality but starting from a Blob/File (upload path). */
410
+ async _assessBlobQuality(blob) {
411
+ try {
412
+ const url = URL.createObjectURL(blob);
413
+ const imgEl = document.createElement("img");
414
+ await new Promise((resolve, reject) => {
415
+ imgEl.onload = () => resolve();
416
+ imgEl.onerror = () => reject(new Error("Image load failed"));
417
+ imgEl.src = url;
418
+ });
419
+ const canvas = document.createElement("canvas");
420
+ canvas.width = imgEl.naturalWidth;
421
+ canvas.height = imgEl.naturalHeight;
422
+ const ctx = canvas.getContext("2d");
423
+ URL.revokeObjectURL(url);
424
+ if (!ctx)
425
+ return null;
426
+ ctx.drawImage(imgEl, 0, 0);
427
+ return this._assessImageQuality(canvas, ctx);
428
+ }
429
+ catch {
430
+ return null;
431
+ }
432
+ }
433
+ showPreview(container, theme, imageData, documentType, quality) {
390
434
  if (this.root)
391
435
  this.root.innerHTML = "";
392
436
  else {
@@ -413,10 +457,32 @@ export class DocumentCapture {
413
457
  sublabel.style.cssText = `color:${theme.textMuted};font-size:11px;text-align:center;line-height:1.6;`;
414
458
  sublabel.textContent = "All text must be readable and all four corners must be visible.";
415
459
  this.root.appendChild(sublabel);
460
+ // Quality warning banner — only shown when the local check flags an issue.
461
+ // Never blocks (some devices/lighting can't clear the threshold), just warns.
462
+ const qualityIsPoor = !!quality && !quality.isValid;
463
+ if (qualityIsPoor && quality) {
464
+ const warn = document.createElement("div");
465
+ warn.style.cssText = `
466
+ width:100%;box-sizing:border-box;padding:10px 14px;border-radius:10px;
467
+ background:#eab30815;border:1px solid #eab30840;
468
+ color:${theme.text};font-size:12px;line-height:1.5;
469
+ `;
470
+ const issueLine = document.createElement("div");
471
+ issueLine.style.cssText = "font-weight:700;color:#b8860b;";
472
+ issueLine.textContent = `⚠️ ${quality.message}`;
473
+ warn.appendChild(issueLine);
474
+ if (quality.recommendations.length > 0) {
475
+ const rec = document.createElement("div");
476
+ rec.style.cssText = "margin-top:4px;color:" + theme.textSecondary + ";";
477
+ rec.textContent = quality.recommendations.join(" · ");
478
+ warn.appendChild(rec);
479
+ }
480
+ this.root.appendChild(warn);
481
+ }
416
482
  // Buttons
417
483
  const btnRow = document.createElement("div");
418
484
  btnRow.style.cssText = "display:flex;gap:12px;width:100%;";
419
- const retakeBtn = this.createButton("Retake", theme, false);
485
+ const retakeBtn = this.createButton("Retake", theme, qualityIsPoor);
420
486
  retakeBtn.style.flex = "1";
421
487
  retakeBtn.addEventListener("click", () => {
422
488
  if (img._blobUrl) {
@@ -425,7 +491,7 @@ export class DocumentCapture {
425
491
  this.root.innerHTML = "";
426
492
  this.renderChoiceScreen(container, theme, documentType);
427
493
  });
428
- const useBtn = this.createButton("Use Photo ✓", theme, true);
494
+ const useBtn = this.createButton(qualityIsPoor ? "Use Anyway ⚠" : "Use Photo ✓", theme, !qualityIsPoor);
429
495
  useBtn.style.flex = "1";
430
496
  useBtn.addEventListener("click", () => {
431
497
  if (img._blobUrl) {
@@ -469,9 +535,9 @@ export class DocumentCapture {
469
535
  };
470
536
  this.resolveCapture?.(result);
471
537
  }
472
- handleFileUploadComplete(imageData, container, theme, documentType) {
473
- // Show preview first, then handle completion
474
- this.showPreview(container, theme, imageData, documentType);
538
+ async handleFileUploadComplete(imageData, container, theme, documentType) {
539
+ const quality = await this._assessBlobQuality(imageData);
540
+ this.showPreview(container, theme, imageData, documentType, quality);
475
541
  }
476
542
  validateFile(file) {
477
543
  // Check file type
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentCapture.js","sourceRoot":"","sources":["../../../src/flow/DocumentCapture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocumentCapture.js","sourceRoot":"","sources":["../../../src/flow/DocumentCapture.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SmartComplyFlow.d.ts","sourceRoot":"","sources":["../../../src/flow/SmartComplyFlow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SmartComplyFlow.d.ts","sourceRoot":"","sources":["../../../src/flow/SmartComplyFlow.ts"],"names":[],"mappings":"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"}
@@ -240,7 +240,7 @@ export class SmartComplyFlow {
240
240
  this.modal = document.createElement("div");
241
241
  this.modal.id = "sc-flow-modal";
242
242
  this.modal.style.cssText = `
243
- width:100%;max-width:580px;max-height:92vh;
243
+ width:100%;max-width:580px;max-height:95vh;
244
244
  background:${this.theme.bg};
245
245
  border-radius:20px;overflow:hidden;
246
246
  box-shadow:${this.theme.shadow};
@@ -265,7 +265,7 @@ export class SmartComplyFlow {
265
265
  this.contentArea = document.createElement("div");
266
266
  this.contentArea.id = "sc-flow-content";
267
267
  this.contentArea.style.cssText = `
268
- flex:1;overflow-y:auto;padding:20px 24px;
268
+ flex:1;overflow-y:auto;padding:16px 20px;
269
269
  -webkit-overflow-scrolling:touch;
270
270
  `;
271
271
  this.modal.appendChild(this.contentArea);
@@ -416,16 +416,16 @@ export class SmartComplyFlow {
416
416
  }
417
417
  // ── Welcome ────────────────────────────────────────────────────
418
418
  renderWelcome(container) {
419
- container.style.cssText += "display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;";
419
+ container.style.cssText += "display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;";
420
420
  const isDocFlow = this.isDocumentFlow();
421
421
  // Icon + badge row (side by side to save vertical space)
422
422
  const topRow = document.createElement("div");
423
- topRow.style.cssText = "display:flex;flex-direction:column;align-items:center;gap:10px;";
423
+ topRow.style.cssText = "display:flex;flex-direction:column;align-items:center;gap:8px;";
424
424
  const iconWrap = document.createElement("div");
425
425
  iconWrap.style.cssText = `
426
- width:58px;height:58px;border-radius:16px;
426
+ width:50px;height:50px;border-radius:14px;
427
427
  display:flex;align-items:center;justify-content:center;
428
- font-size:26px;
428
+ font-size:22px;
429
429
  background:linear-gradient(135deg,${this.theme.primary}22,${this.theme.primaryGlow});
430
430
  border:1.5px solid ${this.theme.primary}33;
431
431
  `;
@@ -485,7 +485,7 @@ export class SmartComplyFlow {
485
485
  const row = document.createElement("div");
486
486
  row.style.cssText = `
487
487
  display:flex;align-items:center;gap:12px;
488
- padding:9px 14px;
488
+ padding:8px 14px;
489
489
  background:${this.theme.cardBg};
490
490
  ${i < steps.length - 1 ? `border-bottom:1px solid ${this.theme.border};` : ""}
491
491
  `;
@@ -518,18 +518,19 @@ export class SmartComplyFlow {
518
518
  btn.style.cssText += "margin-top:2px;";
519
519
  btn.addEventListener("click", () => this.showStep("country"));
520
520
  container.appendChild(btn);
521
- // Trust badge
521
+ // Trust badge — "Powered by Adhere" already lives in the persistent
522
+ // modal footer below; repeating it here just cost vertical space.
522
523
  const trust = document.createElement("div");
523
524
  trust.style.cssText = `
524
525
  display:flex;align-items:center;gap:6px;
525
526
  color:${this.theme.textMuted};font-size:10.5px;
526
527
  `;
527
- trust.textContent = "🔒 End-to-end encrypted · Powered by Adhere";
528
+ trust.textContent = "🔒 End-to-end encrypted";
528
529
  container.appendChild(trust);
529
530
  }
530
531
  // ── Country Select ──────────────────────────────────────────────
531
532
  renderCountrySelect(container) {
532
- container.style.cssText += "display:flex;flex-direction:column;gap:16px;";
533
+ container.style.cssText += "display:flex;flex-direction:column;gap:14px;";
533
534
  const channels = this.sdkConfig?.channels || {};
534
535
  const countries = Object.keys(channels);
535
536
  // Auto-skip country selection if only one country available
@@ -554,7 +555,7 @@ export class SmartComplyFlow {
554
555
  }
555
556
  // ── ID Type Select ──────────────────────────────────────────────
556
557
  renderIdTypeSelect(container) {
557
- container.style.cssText += "display:flex;flex-direction:column;gap:16px;";
558
+ container.style.cssText += "display:flex;flex-direction:column;gap:14px;";
558
559
  const globalDocFlow = this.isDocumentFlow();
559
560
  const title = this.createStepTitle(globalDocFlow ? "Select document type" : "Select ID type");
560
561
  container.appendChild(title);
@@ -621,7 +622,7 @@ export class SmartComplyFlow {
621
622
  }
622
623
  // ── ID Input (data verification — dynamic fields) ─────────────
623
624
  renderIdInput(container) {
624
- container.style.cssText += "display:flex;flex-direction:column;gap:16px;";
625
+ container.style.cssText += "display:flex;flex-direction:column;gap:14px;";
625
626
  const dataFields = this.selectedChannelFields.filter((f) => f.type !== "upload");
626
627
  const info = resolveIdTypeInfo(this.selectedIdTypeName || this.selectedIdType, false);
627
628
  const cleanStepTitle = (this.selectedIdTypeName || this.selectedIdType)
@@ -656,7 +657,13 @@ export class SmartComplyFlow {
656
657
  // Track input elements for validation
657
658
  const inputEls = [];
658
659
  for (const field of dataFields) {
659
- const fieldKey = field.label.toLowerCase().replace(/[^a-z0-9]+/g, "_");
660
+ // Send the raw label as the payload key — the backend's
661
+ // _SDK_FIELD_KEY_MAP looks up the exact label text (e.g. "National ID",
662
+ // "CAC Number") to remap it to the canonical IVS key. Pre-normalizing
663
+ // it here (as this used to do) produced keys like "national_id" that
664
+ // don't match the map's literal-label entries and silently fall
665
+ // through to the wrong key for several identity types.
666
+ const fieldKey = field.label;
660
667
  const fieldWrap = document.createElement("div");
661
668
  fieldWrap.style.cssText = "display:flex;flex-direction:column;gap:6px;";
662
669
  const label = document.createElement("label");
@@ -788,7 +795,7 @@ export class SmartComplyFlow {
788
795
  identity_type_id: this.selectedChannelId,
789
796
  fields: { ...this.collectedFields },
790
797
  });
791
- if (this.verificationResult.status === "verified" || this.verificationResult.status === "success") {
798
+ if (this.verificationResult.status === "success") {
792
799
  // Save the first collected field value as identifier for liveness
793
800
  const fieldValues = Object.values(this.collectedFields);
794
801
  this.idNumber = fieldValues[0] || "";
@@ -829,7 +836,7 @@ export class SmartComplyFlow {
829
836
  }
830
837
  // ── Document Capture ────────────────────────────────────────────
831
838
  renderDocumentCapture(container) {
832
- container.style.cssText += "display:flex;flex-direction:column;gap:16px;";
839
+ container.style.cssText += "display:flex;flex-direction:column;gap:14px;";
833
840
  // Strip "with face", "(NIN)", "(BVN)" noise from the user-visible title
834
841
  const rawName = this.selectedIdTypeName || this.selectedIdType || "your document";
835
842
  const cleanDocTitle = rawName
@@ -1163,7 +1170,7 @@ export class SmartComplyFlow {
1163
1170
  }
1164
1171
  // ── Liveness ────────────────────────────────────────────────────
1165
1172
  renderLiveness(container) {
1166
- container.style.cssText += "display:flex;flex-direction:column;gap:16px;";
1173
+ container.style.cssText += "display:flex;flex-direction:column;gap:14px;";
1167
1174
  const title = this.createStepTitle("Face verification");
1168
1175
  container.appendChild(title);
1169
1176
  const desc = document.createElement("div");
@@ -1458,7 +1465,7 @@ export class SmartComplyFlow {
1458
1465
  const header = document.createElement("div");
1459
1466
  header.style.cssText = `
1460
1467
  display:flex;align-items:center;justify-content:space-between;
1461
- padding:14px 20px;border-bottom:1px solid ${this.theme.border};
1468
+ padding:11px 20px;border-bottom:1px solid ${this.theme.border};
1462
1469
  `;
1463
1470
  // Left: back button + brand
1464
1471
  const leftArea = document.createElement("div");
@@ -1524,7 +1531,7 @@ export class SmartComplyFlow {
1524
1531
  createFooter() {
1525
1532
  const footer = document.createElement("div");
1526
1533
  footer.style.cssText = `
1527
- padding:12px 20px;border-top:1px solid ${this.theme.border};
1534
+ padding:9px 20px;border-top:1px solid ${this.theme.border};
1528
1535
  display:flex;align-items:center;justify-content:center;gap:6px;
1529
1536
  `;
1530
1537
  const powered = document.createElement("span");
@@ -1549,7 +1556,7 @@ export class SmartComplyFlow {
1549
1556
  createOptionCard(title, subtitle, onClick) {
1550
1557
  const card = document.createElement("button");
1551
1558
  card.style.cssText = `
1552
- width:100%;padding:16px;border-radius:12px;
1559
+ width:100%;padding:13px 16px;border-radius:12px;
1553
1560
  background:${this.theme.cardBg};
1554
1561
  border:2px solid ${this.theme.border};
1555
1562
  cursor:pointer;text-align:left;